Initial Unity project commit

This commit is contained in:
2026-07-08 19:53:15 +08:00
commit 75f254212e
15657 changed files with 11633879 additions and 0 deletions
+453
View File
@@ -0,0 +1,453 @@
import os
import re
import uuid
texts = [
'''【文件编号:SHELTER-001 避难首日记录】
日期:204X.12.17
记录人:主角
【第 1 页】
凌晨 3 点 17 分,全城
防空警报拉响,最高
级预警
3 点 42 分,全员抵达
地堡,无人员掉队,
随身物资全部到位
4 点 05 分,地堡主门
关闭,ECHO-7 启动
全封闭安保模式
【第 2 页】
今日完成全员登记,
共 4 人,全部安全
启动基础供电系统,
通风系统全功率运行
,氧气浓度正常
ECHO-7 实时监控地
堡内外环境,无异常
情况
大伙都累坏了,今晚
轮流值班,先好好休
''',
'''【文件编号:RULE-002 地堡生存守则补记】
日期:204X.12.25
记录人:朋友 A
【第 1 页】
躲进来已经一周了
,今天定了新的规矩
所有人轮流值班,每
天两人,负责巡检系
统和物资
每天的食物按配额分
配,不许私藏多吃,
尤其是 B 的零食
【第 2 页】
不许随便碰地堡的控
制面板,尤其是门禁
系统,有事找主角
每天必须记录物资消
耗情况,晚上统一汇
不许熬夜打牌超过 12
点,影响第二天值班
(说的就是 C 和 B
都好好遵守,我们才
能撑得更久''',
'''【文件编号:DAILY-012 罐头吐槽日记】
日期:2050.01.03
记录人:朋友 B
【第 1 页】
我真的要疯了!
连续吃了十八天的罐
头,现在闻到牛肉罐
头的味就想吐
之前囤货的时候还觉
得这个超好吃,现在
只想把剩下的全扔了
【第 2 页】
今天偷偷煮了一包火
锅底料,烫了点罐头
肉和土豆
大伙围着锅抢着吃的
时候,差点哭出来
这是我这半个月吃过
最好吃的东西
要是能出去,我第一
件事就是去吃顿牛油
火锅,涮满毛肚和鸭
肠,吃到撑''',
'''【文件编号:CHECK-003 通风系统巡检记录 03】
日期:2050.01.17
记录人:朋友 C
【第 1 页】
今日巡检全段通风管
道,共 12 个节点
3 号节点滤网积灰较
多,已更换新滤网
7 号节点管道有轻微
异响,拆开发现是一
只小老鼠
【第 2 页】
把小老鼠放出去了,
没想到地堡里还能闯
进来小生命
管道接口都检查了一
遍,无松动无漏气
和 ECHO-7 同步了巡
检数据,AI 更新了系
统记录
通风系统运行正常,
氧气浓度稳定在 21%
,一切良好''',
'''【文件编号:ECHO-RUN-011 全系统接入日志 V2.01】
记录主体:ECHO-7 安保系统
【第 1 页】
[2050.01.25 10:00:00]
全系统对接完成
地堡电力系统全权限
接入,自动调控正常
门禁系统全权限接入
,权限分级生效
【第 2 页】
[2050.01.25 14:00:00]
通风、温控、消防系
统全权限接入,联动
逻辑生效
物资管理系统对接完
成,库存数据同步更
【第 3 页】
[2050.01.25 23:59:59]
当日全系统运行稳定
无故障,无异常指令
核心安保功能正常启
已完成管理员(主角)
指令适配,随时响应
需求''',
'''【文件编号:SUPPLY-017 生存月度记录 02】
日期:2050.02.17
记录人:朋友 A
【第 1 页】
躲进地堡满两个月了
,今日完成全物资盘
饮用水剩余 87%,无
污染,可正常饮用
主食类物资剩余 92%
,按当前配额可支撑
18 个月以上
【第 2 页】
肉类罐头剩余 78%
水果罐头剩余 81%
零食类剩余 65%B
偷偷吃太多了)
药品、急救物资全部
完好,无损耗
燃料、电池等耗材剩
余 90%,足够使用
整体物资充足,只要
按配额使用,完全不
用担心短缺''',
'''【文件编号:DAILY-023 牌局烂账记录】
日期:2050.03.02
记录人:朋友 B
【第 1 页】
今天必须把 C 的烂账
记下来!
昨晚和 A、C 斗地主,
说好输一把一罐水果
罐头
C 连输八把,欠了我
五罐,欠了 A 三罐,
结果今天耍赖不认账
【第 2 页】
说什么昨晚喝了点啤
酒,不算数,还把自
己的罐头锁起来了
我和 A 追着他绕地堡
跑了三圈,最后还是
主角出面,他才不情
不愿的还了两罐
这个仇我记下了,下
次打牌必须把他赢到
连压缩饼干都不剩''',
'''【文件编号:DAILY-027 外出提议记录】
日期:2050.03.17
记录人:朋友 C
【第 1 页】
今天在通风口听了半
天,外面一点动静都
没有
轰炸声已经快一个月
没听到了,说不定战
争已经结束了
我们总不能一辈子躲
在这个地下的铁盒子
里吧
【第 2 页】
我想出去看看,看看
外面到底怎么样了
就算没结束,也可以
去附近的镇上找点新
鲜物资,总比天天吃
罐头强
晚上吃饭的时候跟大
伙提了,A 没说话,B
有点动摇,主角让我
再等等
我真的不想再等了''',
'''【文件编号:MEETING-007 团队会议记录 07】
日期:2050.03.22
记录人:主角
【第 1 页】
今日召开全员会议,
核心议题为外出探查
提议
参会人:主角、朋友 A
、朋友 B、朋友 C
C 提出外出探查周边
环境,确认外界局势
,补充物资
【第 2 页】
我与 A 持保留意见,
目前无法确认外界安
全性,贸然外出风险
过高
B 处于犹豫状态,既
想外出看看,又担心
遇到危险
最终约定,再观察一
个月,若外界持续无
异常,再商议外出事
ECHO-7 已加强对外
界环境的实时监测,
有异常会第一时间预
''',
'''【文件编号:DAILY-031 深夜碎碎念】
日期:2050.04.09
记录人:朋友 B
【第 1 页】
今晚又失眠了,躺在
床上翻来覆去睡不着
地堡里的灯永远是那
个亮度,分不清白天
黑夜,每天都是一样
的流程,一样的饭菜
,一样的人
【第 2 页】
C 天天说要出去,其
实我也心动了
我想念阳光晒在身上
的感觉,想念街上的
人声鼎沸,想念妈妈
做的菜
可是我又害怕,害怕
外面全是废墟,害怕
出去了就再也回不来
我到底该怎么办啊,
跟着他们走,还是留
下来?''',
'''【文件编号:SUPPLY-032 离别物资整理记录】
日期:2050.06.16
记录人:主角
【第 1 页】
最终 A、B、C 还是决
定要离开,明天一早
出发
今天给他们整理了要
带走的物资,按三人
十五天的行程准备
压缩饼干 12 包,罐头
30 罐,饮用水 24 瓶,
装满了三个背包
【第 2 页】
给他们准备了急救包
,常用药品、止血材
料、抗生素都配齐了
还有防身的武器,充
满电的对讲机,和地
堡的频段保持同步
ECHO-7 会一直保持
信号监听,有情况随
时能联系
物资都检查了三遍,
只希望他们一路平安
,顺顺利利的''',
'''【文件编号:LEAVE-001 离别留言册】
日期:2050.06.18
记录人:朋友 A、B、C 联合
【第 1 页】
【朋友 A 留言】
主角,对不起,我们
还是决定走了
不是不相信你,也不
是不信 ECHO-7,只
是我们都想看看外面
的世界
物资我们留了一大半
给你,地堡的系统你
比谁都熟,照顾好自
【第 2 页】
【朋友 B 留言】
主角!我把我藏的最
后一箱零食放在你床
底下了!
不许说我乱吃东西啦
,留给你慢慢吃
要是我们在外面站稳
了,一定回来接你
你也要好好的,不许
天天熬夜调试代码,
记得按时吃饭
【第 3 页】
【朋友 C 留言】
兄弟,谢了这段时间
的照顾
等我出去看看情况,
要是安全了,第一个
回来给你带冰奶茶和
卤味
ECHO-7 会陪着你,
我们也会一直开着对
讲机
再见啦,我们一定会
再见面的''',
'''【文件编号:SHELTER-021 空堡首日记录】
日期:2050.06.19
记录人:主角
【第 1 页】
他们走了
早上六点的门,我送
他们到地堡口,看着
他们的身影消失在山
对讲机一直开着,他
们走了三个小时,还
在跟我报平安
【第 2 页】
地堡里一下子空了,
特别安静,只有 ECHO
-7 的运行声
今天巡检了所有系统
,电力、通风、门禁
都正常,物资也都清
点过了
ECHO-7 一直在问我
有没有什么需求,跟
往常一样,很贴心
【第 3 页】
说不难过是假的,但
我尊重他们的选择
我会守好这个地堡,
等他们回来
也会守好 ECHO-7
这是我花了好几年心
血做出来的,是我最
重要的作品
现在,只剩我和它了'''
]
template = '''%%YAML 1.1
%%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0a6a9ccc104e0964687925ed730d8d9f, type: 3}
m_Name: Before_Text%03d
m_EditorClassIdentifier:
id: 1001
displayName:
description:
icon: {fileID: 0}
pickupPrefab: {fileID: 0}
handModelPrefab: {fileID: 0}
itemType: 0
consumedResult: {fileID: 0}
thirstDelta: 0
hungerDelta: 0
sanityDelta: 0
isStackable: 0
maxStackSize: 1
useCustomHoldSettings: 0
holdPositionOffset: {x: 0, y: 0, z: 0}
holdRotationOffset: {x: 0, y: 0, z: 0}
holdScale: {x: 1, y: 1, z: 1}
showSpecialUseUI: 1
specialUseUIText:
specialUseSprite: {fileID: 0}
useSpecialUseUIPages: 1
specialUseUIPages:
%s'''
meta_template = '''fileFormatVersion: 2
guid: %s
MonoBehaviour:
icon: {instanceID: 0}
executionOrder: 0
'''
out_dir = r'e:\Unity\Unity Program\Test_2022\Assets\_Project\Data\Props\Text'
start_idx = 10
for i, text in enumerate(texts):
idx = start_idx + i
# Parse text into pages
lines = text.split('\n')
pages = []
current_page = []
header = []
in_page = False
for line in lines:
line = line.strip()
if not line:
continue
if re.match(r'^【第\s*\d+\s*页】', line):
if in_page:
pages.append('\n'.join(current_page))
current_page = []
in_page = True
continue
if not in_page:
header.append(line)
else:
current_page.append(line)
if current_page:
pages.append('\n'.join(current_page))
if header:
# Prepend header to the first page
if pages:
pages[0] = '\n'.join(header) + '\n' + pages[0]
else:
pages.append('\n'.join(header))
# Format pages into YAML
pages_yaml = ''
for p in pages:
p_escaped = p.replace('\n', '\\n').replace('"', '\\"')
pages_yaml += f' - text: "{p_escaped}"\n'
file_content = template % (idx, pages_yaml)
filepath = os.path.join(out_dir, f'Before_Text{idx:03d}.asset')
with open(filepath, 'w', encoding='utf-8') as f:
f.write(file_content)
metapath = filepath + '.meta'
if not os.path.exists(metapath):
new_guid = uuid.uuid4().hex
with open(metapath, 'w', encoding='utf-8') as f:
f.write(meta_template % new_guid)
print('Done')