Merge branch '重构佩佩的脚本来配合存档' into bugfix/merge

This commit is contained in:
2025-01-15 14:01:07 +08:00
41 changed files with 1953 additions and 194 deletions
+37
View File
@@ -0,0 +1,37 @@
%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: 36baaa8bdcb9d8b49b9199833965d2c3, type: 3}
m_Name: Main Camera Blends
m_EditorClassIdentifier:
m_CustomBlends:
- m_From: Clinic Camera
m_To: Body Module Camera
m_Blend:
m_Style: 0
m_Time: 1
m_CustomCurve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 0
m_PostInfinity: 0
m_RotationOrder: 0
- m_From: '**ANY CAMERA**'
m_To: Clinic Camera
m_Blend:
m_Style: 0
m_Time: 1
m_CustomCurve:
serializedVersion: 2
m_Curve: []
m_PreInfinity: 0
m_PostInfinity: 0
m_RotationOrder: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 97ddad596c0b5f94e8bb6e86e444a1cc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
+1 -1
View File
@@ -13,6 +13,6 @@ MonoBehaviour:
m_Name: PeipeiDay1
m_EditorClassIdentifier:
nextScene: {fileID: 11400000, guid: fe71f935f1f9a52458c994362567a211, type: 2}
yarnProject: {fileID: 7545569452688597077, guid: 51b65ccc67faacd4bbf55f6fb0e4bd1e, type: 3}
yarnProject: {fileID: 7545569452688597077, guid: 9a7094b80de0e31488cf2a86c34d18be, type: 3}
firstSceneName: PeipeiFixScene
isEndOfDay: 1
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: be24dc7b2bf99a04296a02983e298e1f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,138 @@
title: EmoPlugIn
tags: 待编辑
colorID: 8
position: -2,-3039
---
<<jump 检查情绪>>
===
title: SpeakPlugIn
tags: 待编辑
colorID: 8
position: 240,-2640
---
<<jump 检查语言>>
===
title: LogicPlugIn
tags: 待编辑
colorID: 8
position: 480,-3040
---
<<jump 检查逻辑>>
===
title: ColorPlugIn
tags: 待编辑
colorID: 8
position: 240,-2840
---
<<jump 检查色觉>>
===
title: MemoryPlugIn
tags: 待编辑
colorID: 8
position: 240,-3040
---
<<jump 检查记忆>>
===
title: UFPlugIn
tags: 待编辑
colorID: 8
position: 0,-2840
---
<<jump 检查UF>>
===
title: EyePlugIn
tags: 待编辑
colorID: 8
position: 480,-2840
---
<<jump 检查视觉>>
===
title: IntoEyeView
tags:
group:视觉检查
colorID: 6
position: 244,271
---
//如果视觉检查任务已经完成了,那么就退出
<<if $isFinishedEyeCheck==true>>
<<jump EyeCheckEnd>>
<<endif>>
//只要看一次,就知道佩佩看不到颜色
<<if $eyenocolorKnown==false>>
<<set $eyenocolorKnown=true>>
<<endif>>
//复查以及复查后的逻辑
<<if $gameStage=="复查">>
<<if $isFinishedEyeCheck==false>>
<<if $currentEyeTarget == "computer">>
<<jump Eye_computerAfterSurgery>>
<<elseif $currentEyeTarget == "poster">>
<<jump Eye_posterAfterSurgery>>
<<elseif $currentEyeTarget == "sky">>
<<jump Eye_skyAfterSurgery>>
<<elseif $currentEyeTarget == "plant">>
<<jump Eye_plantAfterSurgery>>
<<endif>>
<<endif>>
//检查以及检查后,复查前的逻辑
<<elseif $gameStage=="身体检查">>
//如果没检查完,就检查
<<if $isFinishedEyeCheck==false>>
//触发第一次观察佩佩视觉的对话
<<if visited("IntoEyeView")==false>>
<<jump FirstDialogue>>
//如果不是第一次,而且没看过记忆,那么这里没什么好看的,去别处看看
<<elseif visited("End_memoryPaly")==false>>
<<jump EyeCheckEnd>>
//如果不是第一次,看过记忆了后还没来看过视觉(还不知道佩佩可以臆想颜色),那么佩佩会告诉你
<<elseif $eyecolorKnown==false>>
<<jump 佩佩告诉你可以想象颜色>>
<<elseif $currentEyeTarget == "computer">>
<<jump Eye_computer>>
<<elseif $currentEyeTarget == "poster">>
<<jump Eye_poster>>
<<elseif $currentEyeTarget == "sky">>
<<jump Eye_sky>>
<<elseif $currentEyeTarget == "plant">>
<<jump Eye_plant>>
<<endif>>
<<endif>>
<<endif>>
===
title: MemoryDeepIn
tags:
---
<<if visited("OnMemoryViewShow")==false>>
<<jump 第一次进入记忆时>>
<<endif>>
===
title: UFDeepIn
tags:
---
<<jump UF深入检查>>
===
title: EyeDeepIn
tags:
position: -9,21
---
<<switch_fix_system_to Eye>>
<<ModuleHightLight Eye false>>
===
title: OnMemoryInsert
tags:
group:记忆
colorID: 3
position: -1580,-2168
---
<<if visited("OnMemoryInsert")==false>>
<<jump 第一次插入记忆打孔带时>>
<<endif>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: f4263a04a6106cb4d8868973d888a070
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,12 @@
{
"projectFileVersion": 2,
"sourceFiles": [
"*.yarn"
],
"excludeFiles": [
"**/*~/*"
],
"localisation": {},
"baseLanguage": "zh-CHS",
"compilerOptions": {}
}
@@ -0,0 +1,13 @@
fileFormatVersion: 2
guid: 9a7094b80de0e31488cf2a86c34d18be
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 053561912b1654d80a424bb0696a74ae, type: 3}
useAddressableAssets: 0
UseUnityLocalisationSystem: 0
unityLocalisationStringTableCollection: {instanceID: 0}
@@ -0,0 +1,106 @@
title: Start
tags:
colorID: 8
position: 253,-2041
---
<<jump 数据初始化>>
===
title: 数据初始化
tags:
colorID: 4
position: 248,-1739
---
<<declare $gameStage="开场对话">>
///【流程逻辑】
//统计查看记忆数目,用来判断是否收集够,这是完成主目标的必要目标
<<declare $memoryCount=0>>
//记录是否已经完成了UF的检查
<<declare $isFinishedUFCheck=false>>
//记录是否已经完成了视觉的检查
<<declare $isFinishedEyeCheck=false>>
<<declare $hasUncheckedMemory=false>>
//统计进入视觉后触发目标的次数,主要是用来触发第一次点击任意目标触发首次对话,以及判断是否收集够打孔带,这是完成主目标的必要目标
<<declare $eyeTargetTriggerCount=0>>
//方便的触发针对eyetarget的对话,如果不喜欢这种写法可以商量,然后分开写
<<declare $currentEyeTarget="未定义">>
//是否剪断了线
<<declare $isLineCut=false>>
// //是否归还了工具
// <<declare $isReturnTool=false>>
<<declare $PlugCount=0>>
<<declare $PlugAll=false>>
///【谈论对象初始化】
<<declare $chipDiscussCount=0>>
<<declare $ufDiscussCount=0>>
<<declare $eyeDiscussCount=0>>
<<declare $memDiscussCount=0>>
<<declare $emoDiscussCount=0>>
<<declare $logicDiscussCount=0>>
<<declare $speakerDiscussCount=0>>
///【剧情信息】
//一开始选择的UF图像
<<declare $UFPhotoID_PeipeiTalk = 1>>
//是否已经见过UF
<<declare $ufSeen=false>>
//是否已知:为什么要使用UF
<<declare $ufKnown=false>>
<<declare $ufpurposeKnown=false>>
//是否已知:色觉芯片是缺失的
<<declare $chipmissingKnown=false>>
//是否已知:佩佩的眼睛不舒服
<<declare $eyeproblemKnown=false>>
//是否已知:佩佩视觉是黑白的
<<declare $eyenocolorKnown=false>>
//是否已知:佩佩会想象出颜色
<<declare $eyecolorKnown=false>>
//是否插入过视觉产生的打孔带
<<declare $isCheckedPunchTapeFormEye=false>>
<<jump Center>>
///一些状态初始化
//没有色彩晶圆
<<Temp_RemoveChip>>
===
title: Center
description: 脚本跳转中心,GameStage在此处处理,理论上不在其他地方读取GameStage
position: 205,446
colorID: 1
---
// 每次进入维修界面就自动保存
<<auto_save>>
<<if $gameStage =="开场对话">>
<<jump 进入佩佩开场对话>>
<<endif>>
<<if $gameStage == "身体检查">>
<<jump 进入身体检查>>
<<endif>>
<<if $gameStage == "分析">>
<<jump 进入分析>>
<<endif>>
<<if $gameStage == "术前谈话">>
<<jump 进入术前谈话>>
<<endif>>
<<if $gameStage == "手术">>
<<jump 进入手术>>
<<endif>>
<<if $gameStage == "复查">>
<<jump 进入复查>>
<<endif>>
<<if $gameStage == "结束对话">>
<<jump 进入结束对话>>
<<endif>>
<<if $gameStage == "流程结束">>
<<NextYarn>>
<<endif>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 16285cbce17e42d409f13248a71e0c8b
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,36 @@
title: 进入佩佩开场对话
tags:
colorID: 8
position: 272,-1156
---
<<indoor_new 1>>
<<character_init_new 佩佩>>
<<character_auto_blink>>
<<character_pos 佩佩背后别手>>
<<character_fade_in_new>>
【占位】: 佩佩入场,说明来看病的原因,绘图效率低,眼睛痛
【占位】: 说明UF是安装在眼睛上的
<<show_obj "UF眼睛">>
<<hide_dialog>>
<<wait 1>>
<<hide_obj>>
【占位】: 试着绘制
<<hide_dialog>>
<<fade_in 1>>
<<character_pos 画画动作>>
<<fade_out 1>>
<<show_obj UF占位>>
<<wait 1>>
【占位】: 画面看起来颜色错乱
<<hide_obj>>
<<character_pos 无动作>>
<<jump 结束引入对话>>
===
title: 结束引入对话
position: 275,-222
---
<<set $gameStage = "身体检查">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: f5d4550e330b9dc44b1a6fe65530ed6b
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,17 @@
title: 进入分析
tags:
position: 43,-97
---
///可以先用思考专用黑幕,把showobj之外的部分都盖住,做一个思考阶段,把线索回顾一下
【占位】:这里需要说明下问题在于视觉引用记忆的色彩来填色,这是一个bug
【占位】:需要做视觉和记忆的色彩通路剪除
【占位】:剪掉后视觉不会直接填色了,也不会再有颜色被记住了,但是色彩记忆是保留得
【占位】:不过绘图机器人存储的颜色记忆也足够多了,也没什么新得值得记住得东西了
<<jump 结束分析>>
===
title: 结束分析
position: 275,-222
---
<<set $gameStage = "术前谈话">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: e6ee3015bfd6abf419d1c9e0ca8a8f79
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,115 @@
title: 进入复查
tags:
colorID: 8
position: 272,-1156
---
<<switch_fix_system_to BodyModule>>
<<set_EyeColorState EyeManager "CannotImagineColor">>
<<set $eyeTargetTriggerCount=0>>
<<add_task TaskManager 复查视觉模块>>
<<task_moveIn TaskManager>>
<<set $isFinishedEyeCheck=false>>
me: 还没结束…保险起见,我们进视觉复查一下吧。
===
title: EyeCheckEnd_AfterSurgery
tags:
colorID: 3
group:视觉检查
position: 251,1116
---
<<if $isFinishedEyeCheck==true>>
me:这里应该已经彻底检查过了
<<Set_MouseMovementLockState EyeManager false>>
<<switch_fix_system_to BodyModule>>
<<endif>>
<<if $eyeTargetTriggerCount == 1>>
me: 佩佩,试一下吧。还能看见那些颜色吗?
<<hide_dialog>>
<<wait 2>>
peipei: 我…
<<wait 2>>
peipei: 没了吗?症状没了吗……
me: 目前没观察到
<<Set_MouseMovementLockState EyeManager false>>
<<elseif $eyeTargetTriggerCount == 2>>
me: 好了,分析是对的……佩佩,不用再试了。
me:她的精神已经很紧张了。
<<set $isFinishedEyeCheck=true>>
<<Set_MouseMovementLockState EyeManager false>>
<<complete_task TaskManager "重新检查视觉症状">>
<<switch_fix_system_to BodyModule>>
<<complete_task TaskManager 复查视觉模块>>
<<Set_MouseMovementLockState EyeManager false>>
<<jump 结束复查>>
<<endif>>
<<Set_MouseMovementLockState EyeManager false>>
===
title: Eye_skyAfterSurgery
tags:
colorID: 8
group:视觉检查
position: 559,756
---
<<if visited("Eye_skyAfterSurgery")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
<<jump EyeCheckEnd_AfterSurgery>>
<<endif>>
===
title: Eye_computerAfterSurgery
tags:
colorID: 8
group:视觉检查
position: 1228,749
---
<<if visited("Eye_computerAfterSurgery")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
<<endif>>
<<jump EyeCheckEnd_AfterSurgery>>
===
title: Eye_posterAfterSurgery
tags:
colorID: 8
group:视觉检查
position: 1006,747
---
<<if visited("Eye_posterAfterSurgery")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
<<endif>>
<<jump EyeCheckEnd_AfterSurgery>>
===
title: Eye_plantAfterSurgery
tags:
colorID: 8
group:视觉检查
position: 787,755
---
<<if visited("Eye_plantAfterSurgery")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
<<endif>>
<<jump EyeCheckEnd_AfterSurgery>>
===
title: 结束复查
position: 275,-222
---
<<set $gameStage = "结束对话">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 71c15eebe39cb1c4db1c9ed1828ea23a
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,40 @@
title: 进入手术
tags:
colorID: 3
position: 251,-1150
---
<<switch_fix_system_to BodyModule>>
<<set_line_cuttable LineManager MemoryEye true>>
<<clear_tasks TaskManager>>
<<add_task TaskManager "执行视觉-记忆桥截断术">>
<<task_moveIn TaskManager>>
me: 开始吧…截断视觉-记忆桥,阻止视觉模块的记忆反流。
<<ShowTool ToolManager Scissor>>
<<jump CutLine>>
===
title: CutLine
tags:
group:手术相关
position: -273,-66
---
<<if $isLineCut==true>>
<<complete_task TaskManager "执行视觉-记忆桥截断术">>
peipei: 啊…眼睛……我的……
peipei: 好痛!
me: 怎么了?怪了,这不应该引起任何痛觉的…
peipei: ……
peipei: 呼……
peipei: 好像……好多了。
<<jump 结束手术>>
<<else>>
me: 这不是我应该剪断的线……
<<endif>>
===
title: 结束手术
position: 275,-222
---
<<set $gameStage = "复查">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 3f70a8ad040b07049b3ce378298f8e2d
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,18 @@
title: 进入术前谈话
tags:
colorID: 3
position: 251,-1150
---
<<switch_fix_system_to Clinic>>
【占位】:告诉佩佩诊疗方式
【占位】:佩佩有点失落,但是还是接受了
<<jump 结束术前谈话>>
===
title: 结束术前谈话
position: 275,-222
---
<<set $gameStage = "手术">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 6e43f5c15fb2a2841bb644e23f8d1995
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,18 @@
title: 进入结束对话
tags:
colorID: 3
position: 251,-1150
---
<<switch_fix_system_to Clinic>>
【占位】:再次测试绘图,发现ok了
【占位】:佩佩离开
<<jump 结束结束对话>>
===
title: 结束结束对话
position: 275,-222
---
<<set $gameStage = "流程结束">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: c4c50cbb5d438a148af9f38f8ab9d8aa
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,34 @@
title: 视觉收集色彩信息目标检查
tags:
colorID: 3
group:视觉检查
position: 251,1116
---
<<if $eyeTargetTriggerCount == 3>>
<<complete_task TaskManager "检查视觉模块">>
me: 佩佩在看东西的时候,能够唤起记忆来填补失去的颜色……
me: UF的绘图错误也是因为唤起了不该唤起的记忆
me: 说不定……
me: 先去记忆模块看看刚才佩佩都想到了什么吧
<<ModuleAlarm Eye false>>
<<ModuleHightLight Memory true>>
<<set $isFinishedEyeCheck=true>>
<<Set_MouseMovementLockState EyeManager false>>
<<complete_task TaskManager 深入视觉模块>>
<<switch_fix_system_to BodyModule>>
<<complete_task TaskManager 全身检查,寻找错误记忆调用的来源>>
<<complete_task TaskManager 再次检查视觉模块>>
<<add_task TaskManager 查询从视觉中得到的记忆索引 找到异常记忆的来源>>
<<Set_MouseMovementLockState EyeManager false>>
<<else>>
<<Set_MouseMovementLockState EyeManager false>>
<<endif>>
===
title: 结束视觉色彩检查
position: 275,-222
---
<<set $gameStage = "视觉记忆查看">>
<<jump Center>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 979edc8be2e910941b175195fa54c565
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
@@ -0,0 +1,628 @@
title: 进入身体检查
tags:
colorID: 8
position: -449,-3574
---
<<switch_fix_system_to "BodyModule">>
<<jump 身体检查状态>>
===
title: 身体检查状态
position: -436,-2338
---
//退出状态条件
<<if $isFinishedEyeCheck&&$isFinishedUFCheck&&$hasUncheckedMemory==false>>
<<switch_fix_system_to BodyModule>>
【占位】:检查结束
<<jump 结束身体检查>>
<<endif>>
//不同状态的相关提示信息
<<if $isFinishedEyeCheck==true&&$hasUncheckedMemory==true>>
【占位】:应该去看看记忆
<<elseif $isFinishedEyeCheck==false&&$isFinishedUFCheck==true>>
<<if visited("检查视觉")==false>>
【占位】:应该去看看视觉
<<elseif visited("FirstDialogue")==false>>
【占位】:视觉刚刚有报错,应该去看看视觉
<<else>>
【占位】:感觉很奇怪,视觉检查过了啊
【占位】:佩佩告诉你,刚才有些事没告诉你,可以再去检查按下
<<endif>>
<<endif>>
===
title: 结束身体检查
position: -432,-1732
---
<<set $gameStage = "分析">>
<<jump Center>>
===
title: 检查情绪
tags: 待编辑
colorID: 8
group:插线检查
position: -47,-3242
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetNull>>
<<MessageBoxSetText 已与情绪模块建立连接!>>
->检查
<<hide_dialog>>
<<MessageBoxSetNull>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetNormal>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 检测到情绪模块温度高,负荷超过平均值>>
<<wait 0.1>>
<<MessageBoxSetText 仍未到达干预阈值,无需干预>>
<<wait 0.1>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 7853个节点已扫描。>>
<<wait 1>>
<<if visited("EmoPlugIn")==false>>
me: 佩佩,你的情绪模块有点发热。
peipei: 啊——医生……你的手好凉。
<<set $PlugCount=$PlugCount+1>>
<<ModuleHightLight Emo false>>
<<jump PlugFinished>>
<<endif>>
===
title: 检查语言
tags: 待编辑
colorID: 8
group:插线检查
position: 194,-2880
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetNull>>
<<MessageBoxSetText 已与语言模块建立连接!>>
->检查
<<hide_dialog>>
<<MessageBoxSetNull>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetNormal>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 语言模块运转正常,使用频率低>>
<<wait 0.1>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 245个节点已扫描。>>
<<wait 1>>
<<if visited("SpeakPlugIn")==false>>
me: 佩佩,你平时是不是很少和同事交流?
peipei: 主管说,我们是为画画而生的人……
peipei: 要克服懒癌,不能整天和同事交头接耳。
peipei: 她说得对!我不能浪费时间。
<<set $PlugCount=$PlugCount+1>>
<<ModuleHightLight Speak false>>
<<jump PlugFinished>>
<<endif>>
===
title: 检查逻辑
tags: 待编辑
colorID: 8
group:插线检查
position: 428,-3246
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetNull>>
<<MessageBoxSetText 已与逻辑模块建立连接!>>
->检查
<<hide_dialog>>
<<MessageBoxSetNull>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetNormal>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 检测到逻辑模块负荷低于平均值>>
<<wait 0.1>>
<<MessageBoxSetText 仍未到达干预阈值,无需干预>>
<<wait 0.1>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 9071个节点已扫描。>>
<<wait 1>>
<<if visited("LogicPlugIn")==false>>
peipei: 有时候……我觉得UF是一个正在醒来的神,<br>而我只是供奉它的神龛。
me: 但愿这只是一个比喻。
<<set $PlugCount=$PlugCount+1>>
<<ModuleHightLight Logic false>>
<<jump PlugFinished>>
<<endif>>
//待编辑
===
title: 检查色觉
tags: 待编辑
colorID: 8
group:插线检查
position: 195,-3043
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 1>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetNull>>
<<MessageBoxSetWarning>>
<<MessageBoxSetText 未找到色觉晶圆!>>
<<if visited("ColorPlugIn")==false>>
<<set $PlugCount=$PlugCount+1>>
<<ModuleHightLight Color false>>
me: 这似乎是佩佩的核心模块…让我查查。
<<hide_dialog>>
<<OpenProgressWindow WindowManager 数据库查询 正在查询:_美工_核心模块_…… 2>>
me: 核心模块-色觉晶圆训练槽,是美术型机体专门安置色觉晶圆的槽位。
me:佩佩的色觉晶圆应该在这儿,可是问题是…为什么上面是空的?
<<set $chipmissingKnown=true>>
//////理论上应该这里已经解释过这个晶圆槽的?
<<if visited("FirstDialogue")==false>>
me: 如果佩佩没有色觉晶圆,难怪她的视觉里看到的都是黑白……
<<else>>
me: 如果没有色觉晶圆,佩佩可能根本看不见颜色?她可是画师啊……
<<endif>>
me:佩佩,你的色觉晶圆去哪里了,你知道吗?
peipei:哎,它没有在我后脑的那个什么槽里吗?那是我读大学时做的改造。
me:没有,那里是空的。
peipei:啊?噢……我想起来了,很久以前安装UF的时候,手术师说要给它做改造,拿走了。
佩佩: 但具体是什么改造…我记不太清了……条目很多,我就在最后签了个名。
me: 拿走晶圆?是正规手术吗?这太奇怪了。
me: 色觉晶圆……可是每个人都只有一个的啊!
peipei: 应该是的吧……那个人……跟我说UF是公司的礼物,以后我的同事们都要装的。
peipei: 他也是公司的领导,和主管一样。
peipei: 而且后来果然和他说的一样,大家很快都装上了UF模块。
me: 公司领导亲自给佩佩安装UF模块,美术部第一例……先记下来吧。
//获得信息“另一位公司领导装载UF”
<<set $chipmissingKnown=true>>
<<jump PlugFinished>>
<<endif>>
//佩佩很焦虑,不知道该怎么办了
===
title: 检查记忆
tags: 待编辑
colorID: 8
group:插线检查
position: 195,-3243
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetText 已与记忆模块建立连接!>>
<<if $hasUncheckedMemory==true>>
<<MessageBoxSetText 检测到未查看的记忆卡带,可以深入记忆模块调取记忆>>
<<MessageBoxSetNormal>>
<<EnableDeepInButton>>
<<else>>
<<MessageBoxSetText 未检测到可查看的记忆卡带>>
<<MessageBoxSetNormal>>
<<endif>>
<<if visited("MemoryPlugIn")==false>>
<<set $PlugCount=$PlugCount+1>>
<<ModuleHightLight Memory false>>
<<jump PlugFinished>>
<<endif>>
//总体表现:对工作的焦虑、虚弱的身体状态
===
title: 检查UF
tags: 待编辑
colorID: 8
group:插线检查
position: -45,-3043
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetNull>>
<<MessageBoxSetText 已与UF模块建立连接!>>
->检查
<<hide_dialog>>
<<MessageBoxSetNull>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetText UF模块发生兼容性异常,需要深入查看>>
<<random_play_interaction beep_error>>
<<MessageBoxSetError>>
<<EnableDeepInButton>>
===
title: 检查视觉
tags: 待编辑
colorID: 8
group:插线检查
position: 435,-3043
---
<<MessageBoxSetText 正在建立连接…>>
<<wait 0.5>>
<<MessageBoxSetNull>>
<<MessageBoxSetText 已与视觉模块建立连接!>>
->检查
<<hide_dialog>>
<<MessageBoxSetNull>>
<<MessageBoxSetChecking>>
<<wait 1>>
<<MessageBoxSetText 透镜存在使用磨损,整体透光度无异常>>
<<wait 0.1>>
<<MessageBoxSetText 对焦部分无异常>>
<<wait 0.1>>
<<MessageBoxSetText 显像部分记录到异常闪烁,需要深入查看>>
<<random_play_interaction beep_error>>
<<MessageBoxSetError>>
<<MessageBoxSetText " ">>
<<MessageBoxSetText 275个节点已扫描。>>
<<wait 0.5>>
<<EnableDeepInButton>>
<<if visited("EyePlugIn")==false>>
<<set $PlugCount=$PlugCount+1>>
//<<jump 发现视觉异常>>
<<ModuleHightLight Eye false>>
<<ModuleAlarm Eye true>>
<<endif>>
===
title: UF深入检查
tags: 待编辑
color: red
group:UF深入检查
position: -856,-2640
---
<<if visited("UF深入检查")==false>>
【占位】:尝试深入但是禁止深入
【占位】:可以打印log,log显示视觉中出现了色彩干扰了UF
【占位】:虽然进不去,但是看来影响UF的是视觉,需要看看
<<jump 身体检查状态>>
<<else>>
【占位】:UF发生视觉色彩不兼容
<<endif>>
===
title: 佩佩告诉你可以想象颜色
tags:
colorID: 6
group:视觉检查
position: -2053,-2656
---
peipei: 还有一件事,我最好还是主动告诉你。
me: 是什么事呢,佩佩?
peipei: 我不是故意要瞒着的…只是我还以为,这不是什么大问题。
peipei: 我也不知道这是什么原理,但是只要我……
<<set_Eyetarget EyeManager "sky" false>>
peipei: 看到窗外的蓝天了吗?
<<set_EyeColorState EyeManager "CanImagineColor">>
<<EyeEffect_FadeIn EyeManager>>
me: 啊?
peipei: 我其实能够以某种方式看到一些颜色……
<<hide_dialog>>
<<wait 0.5>>
<<OpenSingleButtonWindow WindowManager 非法进程检测 正在向视觉非法写入色彩数据,是否打印索引?>>
<<wait 0.5>>
<<PrintPunchTapes 1>>
<<generate_PunchTape ClueManager 天空 EyeView liuying1-3>>
<<wait 1>>
me: 记忆…向视觉发送了数据?然后生成了这些颜色?
me: 从来没见过……我需要做更多的症状记录……
->放入收藏夹
<<CollectionClue ClueManager>>
me: 佩佩,这个现象很重要,或许能解释你体内的异常。
me: 我需要让你再观察几个东西,你只要重复刚才做的事情就好了。
peipei: 好的,医生。
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
<<set $eyecolorKnown=true>>
<<jump EyeCheckEnd>>
===
title: FirstDialogue
tags:
group:视觉检查
colorID: 8
position: -2476,-2555
---
//!!电脑不会触发这个对话,而电脑是屏幕正中央的
<<if $chipmissingKnown==false>>
me: ……
//me: 不对啊…不是检查仪器的问题。
me:这就是佩佩眼睛里看到的画面吗?如此灰暗……
me:太奇怪了,难道是检查仪器的问题?
<<hide_dialog>>
<<wait 1>>
me: 佩佩,你眼里的世界……一直都是黑白的吗?
<<else>>
me: 这就是佩佩眼睛里看到的画面吗?如此灰暗……
me: 很可能是视觉晶圆失踪造成的。
<<hide_dialog>>
<<wait 1>>
me: 佩佩,你眼里的世界……一直都是黑白的吗?
<<endif>>
peipei: 啊……这个是正常的。
peipei: 已经多久了?我自己都记不清什么时候开始的了……应该是装UF的时候吧。
peipei: 所有美工都这样,大家都已经适应了,我还……太慢。
me: 都?也就是说UF模块一定会让美术同事失去色觉,这……
peipei: 还好啦,医生……我们都是这么过来的。
peipei: 如果连这都接受不了的话,当初就不应该做美工……这是主管说的。
peipei: 我没关系的,医生...
peipei: 因为...这就是做美工必须承担的呀。
me: ……
<<if $chipmissingKnown==false>>
me: 好吧…可是从机体医学的角度来说,这是为什么呢…
<<endif>>
//TODO-↓理论上只有看过一次记忆才会弹出下面内容
<<if visited("End_memoryPaly")==true>>
<<jump 佩佩告诉你可以想象颜色>>
<<endif>>
<<jump EyeCheckEnd>>
===
title: Eye_sky
tags:
colorID: 8
group:视觉检查
position: -2469,-1924
---
<<set_EyeColorState EyeManager "CanImagineColor">>
<<EyeEffect_FadeIn EyeManager>>
<<jump EyeCheckEnd>>
===
title: Eye_computer
tags:
colorID: 8
group:视觉检查
position: -2475,-2383
---
me:这个没有生成颜色,奇怪……
<<jump EyeCheckEnd>>
===
title: Eye_poster
tags:
colorID: 8
group:视觉检查
position: -2474,-2226
---
<<if visited("Eye_poster")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
me:佩佩,看到那张海报了么?
<<set_EyeColorState EyeManager "CanImagineColor">>
<<set_Eyetarget EyeManager "poster">>
peipei: 那是……我的第一张广告画……护肤机油……
me:原来这是你画的。
peipei: 那是我和主管第一次沟通。当时,因为我执意要用笔来作画,她非常生气。
peipei: 你在电视上应该看不到吧?医生……
peipei: 主管生气时,脸红得像辣椒一样噢。
<<EyeEffect_FadeIn EyeManager>>
<<hide_dialog>>
<<wait 0.5>>
<<OpenSingleButtonWindow WindowManager 非法进程检测 正在向视觉非法写入色彩数据,是否打印索引?>>
<<wait 0.5>>
<<PrintPunchTapes 1>>
<<generate_PunchTape ClueManager "海报" "EyeView" "英里生气">>
->放入收藏夹
<<CollectionClue ClueManager>>
//<<jump EyeCheckEnd>>
<<endif>>
<<set_EyeColorState EyeManager "CanImagineColor">>
<<EyeEffect_FadeIn EyeManager>>
<<jump EyeCheckEnd>>
===
title: Eye_plant
tags:
colorID: 8
group:视觉检查
position: -2470,-2075
---
<<if visited("Eye_plant")==false>>
<<set $eyeTargetTriggerCount = $eyeTargetTriggerCount + 1>>
me:佩佩,看到那个绿萝了么?
peipei: 医生,你的绿萝长得很不错喔!
//植物出现颜色;其中一片叶子枯萎了,但也显示出了绿色
peipei: 小时候我养过一盆绿萝。爸爸说等我慢慢长大,这盆绿萝就会跟我一起长大变成绿萝树!
<<set_EyeColorState EyeManager "CanImagineColor">>
<<EyeEffect_FadeIn EyeManager>>
peipei: 可惜……
///<<set_EyeColorState EyeManager "CanImagineColor">>枯萎的叶子变成了正确的黄色
peipei: 我还是把它养死了。
peipei: 我愧疚了好久,那时的我真的以为小草可以长成一棵树。
<<hide_dialog>>
<<wait 0.5>>
<<OpenSingleButtonWindow WindowManager 非法进程检测 正在向视觉非法写入色彩数据,是否打印索引?>>
<<wait 0.5>>
<<PrintPunchTapes 1>>
<<wait 0.5>>
<<generate_PunchTape ClueManager "植物" "EyeView" "liuying1-2">>
->放入收藏夹
<<CollectionClue ClueManager>>
//<<jump EyeCheckEnd>>
<<endif>>
<<set_EyeColorState EyeManager "CanImagineColor">>
<<EyeEffect_FadeIn EyeManager>>
<<jump EyeCheckEnd>>
===
title: EyeCheckEnd
tags:
colorID: 3
group:视觉检查
position: -2052,-2351
---
<<if visited("End_memoryPaly")==false>>
me:没什么头绪,先看看别的地方
<<Set_MouseMovementLockState EyeManager false>>
<<switch_fix_system_to BodyModule>>
<<endif>>
<<if $isFinishedEyeCheck==true>>
me:这里应该已经彻底检查过了
<<Set_MouseMovementLockState EyeManager false>>
<<switch_fix_system_to BodyModule>>
<<endif>>
<<if $eyeTargetTriggerCount == 3>>
<<complete_task TaskManager "检查视觉模块">>
<<ModuleAlarm Eye false>>
<<ModuleHightLight Memory true>>
<<set $isFinishedEyeCheck=true>>
<<Set_MouseMovementLockState EyeManager false>>
<<complete_task TaskManager 深入视觉模块>>
<<switch_fix_system_to BodyModule>>
<<complete_task TaskManager 全身检查,寻找错误记忆调用的来源>>
<<complete_task TaskManager 再次检查视觉模块>>
<<add_task TaskManager 查询从视觉中得到的记忆索引 找到异常记忆的来源>>
<<jump 身体检查状态>>
<<endif>>
<<Set_MouseMovementLockState EyeManager false>>
===
title: 第一次进入记忆时
tags:
group:记忆
position: -1574,-1998
---
<<switch_fix_system_to Memory>>
<<if visited("OnMemoryViewShow")==false>>
me: 把打孔带放进插槽里,读取记忆吧。
<<ShowNotification ClueManager 提示 将打孔带拖至槽位>>
<<endif>>
===
title: End_memoryPaly
tags:
colorID: 3
group:记忆
position: -1248,-2433
---
<<MemoryFinished MemoryManager>>
<<if $memoryCount==3>>
<<complete_task TaskManager "查询所有新索引的记忆">>
peipei: 医生…快停下。
peipei: 我…我的头好痛……
<<hide_dialog>>
<<Set_MouseMovementLockState EyeManager false>>
<<set $ufDiscussCount=3>>
<<set $eyeDiscussCount=2>>
<<switch_fix_system_to "BodyModule">>
<<ModuleHightLight Memory false>>
<<complete_task TaskManager 查询从视觉中得到的记忆索引>>
<<complete_task TaskManager 找到异常记忆的来源>>
<<jump 身体检查状态>>
<<endif>>
===
title: 第一次插入记忆打孔带时
tags:
group:记忆
colorID: 3
position: -1580,-2168
---
me: 需要拖动滑条,校正频率才能播放记忆…
me: 要把两个滑条都拖到正确的位置,先拖动上面这个吧。
<<ShowNotification ClueManager 提示 拖动滑条校准记忆>>
===
title: 天空
tags:
colorID: 8
group:记忆
position: -1585,-2322
---
<<wait 3>>
peipei_child: 医生!看,大象!
docter: 哪里有?…啊,那朵云呀。确实很像大象喔。
docter: 但是佩佩为什么会见过大象呢?
peipei_child: 我在博物馆见过!好大好大的大象标本,有个哥哥跟我说,大象可以比房子还大!
docter: 佩佩是个很有想象力的小朋友噢。
peipei_child: 想象力…是什么?
docter: 我们的大脑里面有一个区域专门控制视觉,但是这个区域也控制想象力。
<<wait 0.5>>
docter: 佩佩以后会成为一个艺术家的。
peipei_child: 艺术家又是什么?
<<wait 0.5>>
peipei_child: 医生快看,它现在更像一个飞机啦!
<<wait 1>>
<<if visited("天空")==false>>
<<set $memoryCount+=1>>
<<endif>>
<<jump End_memoryPaly>>
===
title: 海报
tags:
colorID: 8
group:记忆
position: -1586,-2480
---
<<wait 3>>
unknown:你以为自己独一无二,能靠自己的创作让大家喜爱,引领潮流?
unknown:历史上所有的创作都记录在UF的数据库里,你凭什么觉得自己比他们的创作更高贵?
unknown:你一个月画一张图,UF一晚上画一万张,请给我一个选择你的理由。
unknown:记住,机器人就是为了效率而生的,这就是社会的规则,你改变不了!
unknown:咚——
主管关门的力气把窗户震碎了,我一块块捡起来。
那晚,我只记得……碎成一地的玻璃渣……
还有主管的脸……好红,好烫。
<<if visited("海报")==false>>
<<set $memoryCount+=1>>
e-assistant: 哎,这个记忆我们是不是看到过?
me: 或许这就是问题所在
<<endif>>
<<jump End_memoryPaly>>
===
title: 植物
tags:
colorID: 8
group:记忆
position: -1585,-2634
---
<<wait 3>>
peipei: 要是工作也能画画…要是能永远画画就好了。
同学: 哈哈,可能等我们进入公司就不这么觉得了。听说进公司之后做什么都不会再快乐了。
peipei: 不会的。至少画画这件事情让我感觉到很纯粹的快乐……
peipei: 那种朝九晚五,一眼看到头的生活,我想我反而会受不了的。
同学: 哈哈……
同学: 但愿你是对的。
peipei: 我肯定是对的。
<<wait 1>>
peipei: 如果公司这么讨厌的话,我就不在那里干就好了啊!
<<if visited("植物")==false>>
<<set $memoryCount+=1>>
<<endif>>
<<jump End_memoryPaly>>
===
@@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 70261a3bab381ef4d96ee8ab93621a6e
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 94073015eacc34c1d8fc6786e43d60ca, type: 3}
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -10,7 +10,7 @@ public class FavoritesManager : MonoBehaviour
{
public static FavoritesManager Instance;
private ClueData _clueData;
private ClueData _clueData=new ClueData();
public Button toggleFavoritesButton; // 用于打开/关闭收藏夹的按钮
@@ -14,6 +14,7 @@ namespace AibisDream.FixSystem
public Transform socketPos;
// public Transform _indicatorPos;
private BodyModuleSystem _bodyModuleSystem;
private Material _highlightMaterial;
private Material _alarmMaterial;
@@ -58,24 +59,26 @@ namespace AibisDream.FixSystem
public void PlugIn()
{
// 插入就在示波器显示图片
if (!_bodyModuleSystem.inHotErr)
{
StartCoroutine(FixSystemCenter.SystemDic.Get<IOscilloscopeSystem>()
?.ShowScanImage(data.ScreenPic, data.checkPoints));
}
// 然后触发Yarn节点
DialogController.Instance?.StartDialogNode(_bodyModuleSystem.inHotErr ? "系统过热" : data.PlugInNodeName);
if (DialogController.Instance)
// 然后触发Yarn节点
DialogController.Instance.StartDialogNode(_bodyModuleSystem.inHotErr ? "系统过热" : data.PlugInNodeName);
}
public void PlugOut()
{
FixSystemCenter.SystemDic.Get<IOscilloscopeSystem>()?.HideScanImage();
_bodyModuleSystem.oscilloscopeSystem.MessageBoxSetNull();
StartCoroutine(_bodyModuleSystem.oscilloscopeSystem.DisableDeepInButton());
// TODO 触发Yarn节点(似乎目前没有拔出对话?)
}
public void DeepIn()
{
if(DialogController.Instance)
DialogController.Instance.StartDialogNode(data.DeepInNodeName);
}
public Vector3 GetSocketPos()
{
@@ -138,6 +141,14 @@ namespace AibisDream.FixSystem
}
}
// public void HideModule(bool enable)
// {
// if (targetSpriteRenderer != null && highlightMaterial != null)
// {
// targetSpriteRenderer.material = enable ? highlightMaterial : originalMaterial;
// }
// }
#endregion
}
@@ -145,6 +156,7 @@ namespace AibisDream.FixSystem
public struct BodyModuleData
{
public const string PlugInNodeTemplate = "{0}PlugIn";
public const string DeepInTemplate = "{0}DeepIn";
// ID
public string moduleName;
@@ -154,14 +166,11 @@ namespace AibisDream.FixSystem
public SerializableVector3 modulePos;
public SerializableVector3 socketPos;
// 功能信息
[Header("功能参数")] public bool cantStopRunning;
public string showPicPath;
public CheckPoint[] checkPoints;
public bool cantStopRunning;
// 只读
[JsonIgnore] public string PlugInNodeName => string.Format(PlugInNodeTemplate, moduleName);
[JsonIgnore] public string DeepInNodeName => string.Format(DeepInTemplate, moduleName);
[JsonIgnore]
public Sprite ModulePic
@@ -170,9 +179,6 @@ namespace AibisDream.FixSystem
set => modulePicPath = ResourceKit.SaveSprite(value);
}
public Sprite ScreenPic =>
!string.IsNullOrEmpty(showPicPath) ? ResourceKit.LoadSpriteFromPsd(showPicPath) : null;
[JsonIgnore]
public Vector3 ModulePos
{
@@ -187,18 +193,4 @@ namespace AibisDream.FixSystem
set => socketPos = new SerializableVector3(value);
}
}
[Serializable]
public struct CheckPoint
{
public string id;
private SerializableVector3 _serializablePos3;
[JsonIgnore]
public Vector3 PointPos
{
get => _serializablePos3.ToVector3();
set => _serializablePos3 = new SerializableVector3(value);
}
}
}
@@ -183,6 +183,14 @@ namespace AibisDream.FixSystem
CableSystem.ResetPlug();
}
public void HandleDeepIn()
{
if (CableSystem.curBodyModule)
{
CableSystem.curBodyModule.DeepIn();
}
}
#region
public override string GetConfigPath()
@@ -10,7 +10,7 @@ public class ChipModule : MonoBehaviour
{
private GameObject _chipModule;
private ChipData _chipData = new();
private ChipData _chipData=new ();
private void Awake()
{
@@ -22,6 +22,7 @@ public class ChipModule : MonoBehaviour
}
// Start is called before the first frame update
public void RemoveChipModule()
{
if (_chipModule.activeInHierarchy)
@@ -7,7 +7,7 @@ public class UFModule : MonoBehaviour
{
private GameObject _ufCover;
private GameObject _ufModule;
private UFData _ufData;
private UFData _ufData=new ();
private void Awake()
{
@@ -16,7 +16,7 @@ public class UFModule : MonoBehaviour
// 添加加载逻辑
_ufData.LoadEvent += LoadData;
_ufModule = transform.Find("Module Pic").gameObject;
_ufCover = transform.Find("Cover").gameObject;
_ufCover = _ufModule.transform.Find("Cover").gameObject;
}
// Start is called before the first frame update
@@ -28,6 +28,8 @@ namespace AibisDream.FixSystem
_state = transform.Find("Screen State Text").GetComponent<TMP_Text>();
_deepinButton = new SpriteButton(transform.Find("Deepin Button").gameObject, false);
MessageBoxSetNull();
_deepinButton.OnButtonDown += HandleDeepInButtonClick;
}
private void Update()
@@ -43,6 +45,11 @@ namespace AibisDream.FixSystem
_state.color = Color.red; // 红色
}
private void HandleDeepInButtonClick()
{
FixSystemCenter.SystemDic.Get<BodyModuleSystem>().HandleDeepIn();
}
public void MessageBoxSetWarning()
{
_state.text = "警告";
@@ -172,9 +172,9 @@ namespace AibisDream.FixSystem
// 先切BodyModule
if (!CameraKit.Instance.EqualToCameraState(FixState.BodyModule))
{
yield return MainUIController.Instance?.FadeInSync(0.5f);
//yield return MainUIController.Instance?.FadeInSync(0.5f);
yield return CameraKit.Instance.SwitchCamera(FixState.BodyModule);
yield return MainUIController.Instance?.FadeOutSync(0.5f);
//yield return MainUIController.Instance?.FadeOutSync(0.5f);
}
// 切换相机
yield return CameraKit.Instance.SwitchCamera(FixState.Engine);
@@ -231,7 +231,7 @@ namespace AibisDream.FixSystem
public void SetArgs(string args)
{
throw new NotImplementedException();
}
public IEnumerator Enter()
@@ -272,7 +272,7 @@ namespace AibisDream.FixSystem
public void SetArgs(string args)
{
throw new NotImplementedException();
}
@@ -315,7 +315,7 @@ namespace AibisDream.FixSystem
public void SetArgs(string args)
{
throw new NotImplementedException();
}
public IEnumerator Enter()
+18 -3
View File
@@ -1,5 +1,6 @@
using AibisDream.Framework;
using AibisDream.Kit;
using UnityEngine;
namespace AibisDream.FixSystem
{
@@ -7,13 +8,18 @@ namespace AibisDream.FixSystem
{
public FixState CurState => StateMachine.CurState;
public Canvas deepCanvas;
public override void OnSingletonInit()
{
SystemDic ??= new IOCContainer();
// TODO 这个回头要改
AudioManager.PlayAmb1Audio("amb_room");
// 初始化场景组件
InitScene();
// 初始化状态机
StateMachine = new FixStateMachine();
StartCoroutine(StateMachine.SwitchState(FixState.Clinic));
@@ -21,9 +27,18 @@ namespace AibisDream.FixSystem
public override void OnSingletonDestroy()
{
SystemDic.Clear();
GameLoopManager.Instance.StartCoroutine(StateMachine.QuitState());
CameraKit.Instance.RemoveAllCam();
GameLoopManager.Instance.StartCoroutine(StateMachine.QuitState());
SystemDic.Clear();
}
private void InitScene()
{
if (deepCanvas)
{
deepCanvas.worldCamera = CameraKit.Instance.uiCamera;
deepCanvas.sortingLayerName = "FixTop";
}
}
#region
@@ -27,6 +27,7 @@ namespace AibisDream.Framework
private FixState _curFixState;
private CamState _curInitState;
public Camera uiCamera;
private struct CamState
{
@@ -60,6 +61,25 @@ namespace AibisDream.Framework
#region
/// <summary>
/// 添加UI相机
/// </summary>
public void AddUICamera(Camera camera)
{
if (Camera.main && Camera.main.TryGetComponent<UniversalAdditionalCameraData>(out var cameraData))
{
cameraData.cameraStack.Add(camera);
}
}
public void RemoveUICamera(Camera camera)
{
if (Camera.main && Camera.main.TryGetComponent<UniversalAdditionalCameraData>(out var cameraData))
{
cameraData.cameraStack.Remove(camera);
}
}
public void RegisterCamera(FixState camType, ICinemachineCamera virtualCamera)
{
_virtualCameraDict[camType] = virtualCamera;
+14 -2
View File
@@ -1,6 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using AibisDream.FixSystem;
using AibisDream.Framework;
using AibisDream.Kit;
@@ -185,8 +186,19 @@ namespace AibisDream
private string GetSavePath()
{
_dialogStorage.TryGetValue("$gameStage", out float gameStage);
return $"{SaveFilePath}/{_currentTalkSceneSo.name}_{gameStage}_{DateTime.Now:yyyyMMdd_HHmmss}";
string gameStageStr;
try
{
_dialogStorage.TryGetValue("$gameStage", out float gameStage);
gameStageStr = gameStage.ToString(CultureInfo.InvariantCulture);
}
catch (Exception e)
{
_dialogStorage.TryGetValue("$gameStage", out string gameStage);
gameStageStr = gameStage;
}
return $"{SaveFilePath}/{_currentTalkSceneSo.name}_{gameStageStr}_{DateTime.Now:yyyyMMdd_HHmmss}";
}
#endregion
@@ -23,10 +23,9 @@ public class EyeSystem : MonoBehaviour
public GameObject eyeView;
public ViewCameraManager cameraManager;
private IEyeStateEffect eyeStateEffect;
private EyeData _eyeData = new();
private EyeData _eyeData=new ();
private Tween hsvShiftTween;
private MouseFollowAndZoom mouseFollowAndZoom;
private void Awake()
{
Init();
@@ -37,14 +36,14 @@ public class EyeSystem : MonoBehaviour
FixSystemCenter.SystemDic.Register(this);
var virtualCam = transform.Find("Eye Camera").GetComponent<ICinemachineCamera>();
CameraKit.Instance.RegisterCamera(FixState.Eye, virtualCam);
GameLoopManager.FixDataContainer.Register(_eyeData);
GameLoopManager.FixDataContainer.Register(_eyeData);
// 添加加载逻辑
_eyeData.LoadEvent += LoadData;
}
private void LoadData(EyeData eyedata)
private void LoadData(EyeData eyedata)
{
SetEyeColorState(eyedata.currentState);
}
public void OnEnter()
@@ -233,7 +232,7 @@ public class EyeSystem : MonoBehaviour
private void SetEyeColorState(EyeData.EyeColorState state)
{
_eyeData.currentState = state;
_eyeData.currentState=state;
switch (state)
{
case EyeData.EyeColorState.CanImagineColor:
@@ -452,7 +451,6 @@ public class EyeSystem : MonoBehaviour
}
}
}
public class EyeData : IData
{
public enum EyeColorState
@@ -0,0 +1,82 @@
{
"fixDataContainer": {
"ClueData, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null": {
"punchTapeFavorites": []
},
"AibisDream.ClinicData, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null": {
"characterName": "佩佩",
"faceName": "不开心",
"poseName": "无动作",
"hasDevice": false,
"isShow": true
},
"EyeData, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null": {
"currentState": 1
},
"ChipData, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null": {
"isChipRemoved": false
},
"UFData, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null": {
"isUFCoverRemoved": false,
"isUFRemoved": false
}
},
"floatDict": {
"$memoryCount": 0.0,
"$eyeTargetTriggerCount": 0.0,
"$PlugCount": 0.0,
"$chipDiscussCount": 0.0,
"$ufDiscussCount": 0.0,
"$eyeDiscussCount": 0.0,
"$memDiscussCount": 0.0,
"$emoDiscussCount": 0.0,
"$logicDiscussCount": 0.0,
"$speakerDiscussCount": 0.0,
"$UFPhotoID_PeipeiTalk": 1.0,
"$Yarn.Internal.Visiting.IntoEyeView": 0.0,
"$Yarn.Internal.Visiting.End_memoryPaly": 0.0,
"$Yarn.Internal.Visiting.OnMemoryViewShow": 0.0,
"$Yarn.Internal.Visiting.OnMemoryInsert": 0.0,
"$Yarn.Internal.Visiting.Eye_skyAfterSurgery": 0.0,
"$Yarn.Internal.Visiting.Eye_computerAfterSurgery": 0.0,
"$Yarn.Internal.Visiting.Eye_posterAfterSurgery": 0.0,
"$Yarn.Internal.Visiting.Eye_plantAfterSurgery": 0.0,
"$Yarn.Internal.Visiting.检查视觉": 0.0,
"$Yarn.Internal.Visiting.FirstDialogue": 0.0,
"$Yarn.Internal.Visiting.EmoPlugIn": 0.0,
"$Yarn.Internal.Visiting.SpeakPlugIn": 0.0,
"$Yarn.Internal.Visiting.LogicPlugIn": 0.0,
"$Yarn.Internal.Visiting.ColorPlugIn": 0.0,
"$Yarn.Internal.Visiting.MemoryPlugIn": 0.0,
"$Yarn.Internal.Visiting.EyePlugIn": 0.0,
"$Yarn.Internal.Visiting.UF深入检查": 0.0,
"$Yarn.Internal.Visiting.Eye_poster": 0.0,
"$Yarn.Internal.Visiting.Eye_plant": 0.0,
"$Yarn.Internal.Visiting.天空": 0.0,
"$Yarn.Internal.Visiting.海报": 0.0,
"$Yarn.Internal.Visiting.植物": 0.0
},
"stringDict": {
"$gameStage": "身体检查",
"$currentEyeTarget": "未定义"
},
"boolDict": {
"$isFinishedUFCheck": false,
"$isFinishedEyeCheck": false,
"$hasUncheckedMemory": false,
"$isLineCut": false,
"$PlugAll": false,
"$ufSeen": false,
"$ufKnown": false,
"$ufpurposeKnown": false,
"$chipmissingKnown": false,
"$eyeproblemKnown": false,
"$eyenocolorKnown": false,
"$eyecolorKnown": false,
"$isCheckedPunchTapeFormEye": false
},
"curSceneKey": "PeipeiFixScene",
"curTalkSceneSo": "PeipeiDay1",
"fixState": 1,
"fixStateArgs": ""
}
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3a58d88c3dea8884490a8cfba5f794f4
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+1 -1
View File
@@ -20,7 +20,7 @@ TagManager:
- Post
- ViewPost
- Clinic
-
- DeepCanvas
-
-
-