浏览代码

Merge branch 'main' into whiteboxing

/main
Ciro Continisio 4 年前
当前提交
e6dcfc27
共有 279 个文件被更改,包括 2042 次插入1410 次删除
  1. 3
      UOP1_Project/Assets/.DS_Store
  2. 1
      UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-English (en).asset
  3. 1
      UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-French (fr).asset
  4. 5
      UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-Italian (it).asset
  5. 489
      UOP1_Project/Assets/Art/Characters/BardHare/Animation/BardHare.controller
  6. 1
      UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions.asset
  7. 2
      UOP1_Project/Assets/Prefabs/Characters/BardHare.prefab
  8. 21
      UOP1_Project/Assets/Prefabs/UI/WIP/Credits_Panel.prefab
  9. 52
      UOP1_Project/Assets/Prefabs/UI/WIP/Settings/Settings_Panel.prefab
  10. 2
      UOP1_Project/Assets/Prefabs/UI/WIP/Settings/Setting_Field.prefab
  11. 166
      UOP1_Project/Assets/Scenes/Managers/Gameplay.unity
  12. 124
      UOP1_Project/Assets/Scenes/Menus/MainMenu.unity
  13. 122
      UOP1_Project/Assets/Scenes/WIP/TestingGround.unity
  14. 66
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/BardHare_TransitionTable.asset
  15. 2
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/BardHare_TransitionTable.asset.meta
  16. 36
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Townsfolk/Townsfolk_TransitionTable.asset
  17. 12
      UOP1_Project/Assets/Scripts/Dialogues/DialogueDataSO.cs
  18. 4
      UOP1_Project/Assets/Scripts/Events/ScriptableObjects/UI/TabEventChannelSO.cs
  19. 40
      UOP1_Project/Assets/Scripts/Input/GameInput.cs
  20. 38
      UOP1_Project/Assets/Scripts/Input/InputReader.cs
  21. 4
      UOP1_Project/Assets/Scripts/Inventory/ScriptableObjects/ItemType.cs
  22. 22
      UOP1_Project/Assets/Scripts/Menu/MenuSelectionHandler.cs
  23. 15
      UOP1_Project/Assets/Scripts/Menu/MultiInputButton.cs
  24. 37
      UOP1_Project/Assets/Scripts/Quests/Editor/DialogueLine.uxml
  25. 112
      UOP1_Project/Assets/Scripts/Quests/Editor/QuestEditorWindow.cs
  26. 4
      UOP1_Project/Assets/Scripts/Quests/Editor/StepDetail.uxml
  27. 12
      UOP1_Project/Assets/Scripts/Quests/Resources/QuestEditorWindow.uss
  28. 6
      UOP1_Project/Assets/Scripts/Quests/Resources/QuestEditorWindow.uxml
  29. 35
      UOP1_Project/Assets/Scripts/Quests/ScriptableObjects/StepSO.cs
  30. 47
      UOP1_Project/Assets/Scripts/UI/UIButtonSetter.cs
  31. 105
      UOP1_Project/Assets/Scripts/UI/UIManager.cs
  32. 130
      UOP1_Project/Assets/Scripts/UI/UIMenuManager.cs
  33. 2
      UOP1_Project/Assets/Scripts/UI/UIMainMenu.cs.meta
  34. 4
      UOP1_Project/Assets/Scripts/UI/UIInteractionIndicator.cs
  35. 4
      UOP1_Project/Assets/Scripts/UI/UIInteraction.cs
  36. 2
      UOP1_Project/Assets/Scripts/UI/UICredits.cs.meta
  37. 2
      UOP1_Project/Assets/Scripts/UI/UIButtonPrompt.cs
  38. 30
      UOP1_Project/Assets/Settings/Input/GameInput.inputactions
  39. 6
      UOP1_Project/UserSettings/EditorUserSettings.asset
  40. 22
      UOP1_Project/Assets/Prefabs/UI/Shared/Button/Button.prefab
  41. 93
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/InteractionItem.prefab
  42. 783
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/GameScreen.prefab
  43. 126
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/Inventory Inspector.prefab
  44. 2
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InspectorDescription.prefab
  45. 2
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InspectorIngredient.prefab
  46. 18
      UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InventoryTab.prefab
  47. 24
      UOP1_Project/Assets/Scripts/UI/Inventory/UIInventoryItem.cs
  48. 4
      UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorIngredients.cs
  49. 3
      UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorIngredientFiller.cs
  50. 2
      UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorDescription.cs
  51. 2
      UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorPreview.cs
  52. 3
      UOP1_Project/Assets/Scripts/UI/Settings/UISettingTabFiller.cs
  53. 2
      UOP1_Project/Assets/Scripts/UI/Settings/UISettingTabsFiller.cs
  54. 13
      UOP1_Project/Assets/Scripts/UI/Dialogue/UIDialogueChoiceFiller.cs
  55. 4
      UOP1_Project/Assets/Scripts/UI/Dialogue/UIDialogueChoicesManager.cs
  56. 65
      UOP1_Project/Assets/Prefabs/UI/Shared/Popup/Confirmation_Popup.prefab
  57. 4
      .DS_Store
  58. 8
      UOP1_Project/Assets/AddressableAssetsData/OSX.meta
  59. 59
      UOP1_Project/Assets/DialogueUSS.uss
  60. 11
      UOP1_Project/Assets/DialogueUSS.uss.meta
  61. 22
      UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions_it.asset
  62. 8
      UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions_it.asset.meta
  63. 8
      UOP1_Project/Assets/Prefabs/UI/GameplayScene.meta
  64. 8
      UOP1_Project/Assets/Prefabs/UI/MainMenu.meta
  65. 8
      UOP1_Project/Assets/Prefabs/UI/Shared.meta
  66. 8
      UOP1_Project/Assets/ScriptableObjects/Quests/Questline1/Quest3/Step3.meta
  67. 8
      UOP1_Project/Assets/ScriptableObjects/Quests/Questline3.meta
  68. 45
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Config/NPCPathwayConfigTownsfolk4.asset
  69. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Config/NPCPathwayConfigTownsfolk4.asset.meta
  70. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/Actions.meta
  71. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/Conditions.meta
  72. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/States.meta
  73. 15
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/IsANewLineDisplayed.asset
  74. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/IsANewLineDisplayed.asset.meta
  75. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StartTalking_RandomTimerElapsed.asset
  76. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StartTalking_RandomTimerElapsed.asset.meta
  77. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalkingToProtagonist_RandomTimerElapsed.asset
  78. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalkingToProtagonist_RandomTimerElapsed.asset.meta
  79. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalking_RandomTimerElapsed.asset
  80. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalking_RandomTimerElapsed.asset.meta
  81. 52
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsANewLineDisplayedSO.cs
  82. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsANewLineDisplayedSO.cs.meta
  83. 25
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/TimeElapsedRandomConditionSO.cs
  84. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/TimeElapsedRandomConditionSO.cs.meta
  85. 31
      UOP1_Project/Assets/Scripts/Inventory/ScriptableObjects/InventoryTabSO.cs
  86. 1
      UOP1_Project/Assets/Scripts/Quests/.DS_Store
  87. 36
      UOP1_Project/Assets/Scripts/Quests/Editor/DialoguePreview.cs
  88. 11
      UOP1_Project/Assets/Scripts/Quests/Editor/DialoguePreview.cs.meta
  89. 8
      UOP1_Project/Assets/Scripts/UI/Dialogue.meta
  90. 8
      UOP1_Project/Assets/Scripts/UI/Inventory.meta

3
UOP1_Project/Assets/.DS_Store
文件差异内容过多而无法显示
查看文件

1
UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-English (en).asset


m_ReadOnly: 1
m_SerializedLabels:
- Locale-en
- Preload
- m_GUID: 7b418d2f8c70a4bffabe178921caf86b
m_Address: Buttons_en
m_ReadOnly: 1

1
UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-French (fr).asset


m_ReadOnly: 1
m_SerializedLabels:
- Locale-fr
- Preload
- m_GUID: 5e42d58442b78425db9a6b1aca9a9c43
m_Address: Buttons_fr
m_ReadOnly: 1

5
UOP1_Project/Assets/AddressableAssetsData/AssetGroups/Localization-String-Tables-Italian (it).asset


m_ReadOnly: 1
m_SerializedLabels:
- Locale-it
- m_GUID: 6ff28064e4e684b65b9c22aa501c01c5
m_Address: Interactions_it
m_ReadOnly: 1
m_SerializedLabels:
- Locale-it
m_ReadOnly: 1
m_Settings: {fileID: 11400000, guid: bffab80dc16c4464b92b2e97b6a1964c, type: 2}
m_SchemaSet:

489
UOP1_Project/Assets/Art/Characters/BardHare/Animation/BardHare.controller


m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1101 &-9092154409766127825
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.9603175
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1107 &-8922074601772979250
AnimatorStateMachine:
serializedVersion: 6

m_ExitPosition: {x: 870, y: 160, z: 0}
m_ParentStateMachinePosition: {x: 960, y: -20, z: 0}
m_DefaultState: {fileID: -5498160952533448129}
--- !u!1102 &-8469571835042200281
--- !u!1101 &-8330992559062188889
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: JumpUp
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96411484
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &-7913247318419321385
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: JumpUp
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96411484
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-5943099573550533948
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1

m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: 7922362597612938490}
- {fileID: -4421386546069748714}
- {fileID: 813894584215551175}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_Transitions:
- {fileID: 3943266464784214337}
- {fileID: 1201560230152072265}
- {fileID: -7913247318419321385}
- {fileID: -8330992559062188889}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &-4421386546069748714
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 7467964322136481553}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8295455
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1109 &-4394027057195029758
AnimatorTransition:
m_ObjectHideFlags: 1

m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1101 &-3813820208879679561
--- !u!1101 &-3446933760404224606
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}

m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_Conditions: []
m_DstStateMachine: {fileID: -8922074601772979250}
m_IsExit: 1
m_IsExit: 0
m_ExitTime: 0.9603175
m_HasExitTime: 0
m_ExitTime: 0.7916667
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1

m_CycleOffset: 0
m_Transitions:
- {fileID: 5016800082881321634}
- {fileID: 171725598432738298}
- {fileID: 4353565650259770779}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1109 &-2571972952110134739
AnimatorTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 6
m_ConditionEvent: RandomIdle
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 7467964322136481553}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!114 &-2560727757387082229
MonoBehaviour:
m_ObjectHideFlags: 1

m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1101 &-2085247292988123788
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 3583411645183670853}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.95689654
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-2050654672260532050
AnimatorState:
serializedVersion: 6

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &-1664865702140399576
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96411484
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!114 &-1278029081251987127
MonoBehaviour:
m_ObjectHideFlags: 1

- serializedVersion: 1
m_State: {fileID: 7467964322136481553}
m_Position: {x: 400, y: 220, z: 0}
- serializedVersion: 1
m_State: {fileID: -8469571835042200281}
m_Position: {x: 140, y: 110, z: 0}
- serializedVersion: 1
m_State: {fileID: 3583411645183670853}
m_Position: {x: 820, y: 130, z: 0}
- {fileID: 1349388855333511327}
- {fileID: 8944268493305491835}
- {fileID: -2571972952110134739}
m_StateMachineTransitions: {}
m_StateMachineBehaviours:
- {fileID: -1278029081251987127}

m_ParentStateMachinePosition: {x: -190, y: -40, z: 0}
m_DefaultState: {fileID: -8469571835042200281}
m_DefaultState: {fileID: -2982860026827336943}
--- !u!1109 &-384121867820306950
AnimatorTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: JumpDown
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 4077334438025311903}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0

m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
m_Controller: {fileID: 0}
m_Controller: {fileID: 9100000}
m_Controller: {fileID: 0}
- m_Name: JumpUp
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: JumpDown
m_Type: 9
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer

m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1101 &171725598432738298
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 3583411645183670853}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.9603175
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &506854443335118827
AnimatorState:
serializedVersion: 6

m_Transitions:
- {fileID: -5889163485102351479}
- {fileID: 768716371077858704}
- {fileID: 1291868367040009996}
- {fileID: 5450956186395528051}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &689868256378094573
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 7467964322136481553}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8295455
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &735038263065974624
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2982860026827336943}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8295455
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &768716371077858704
AnimatorStateTransition:
m_ObjectHideFlags: 1

m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &1201560230152072265
--- !u!1101 &813894584215551175
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}

m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 506854443335118827}
m_DstStateMachine: {fileID: -8922074601772979250}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 0

m_ExitTime: 0.9906015
m_ExitTime: 0.8295455
--- !u!1101 &1348238984624469047
--- !u!1101 &1201560230152072265
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}

m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2982860026827336943}
m_DstState: {fileID: 506854443335118827}
m_Solo: 0
m_Mute: 0
m_IsExit: 0

m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1109 &1349388855333511327
AnimatorTransition:
--- !u!1101 &1291868367040009996
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}

- m_ConditionMode: 6
m_ConditionEvent: RandomIdle
m_EventTreshold: 1
m_ConditionEvent: IsTalking
m_ConditionEvent: JumpUp
m_DstState: {fileID: -8469571835042200281}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96231157
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &1348238984624469047
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2982860026827336943}
serializedVersion: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.9906015
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &2274748286261154411
AnimatorState:
serializedVersion: 6

m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1102 &3583411645183670853
--- !u!1109 &3618554181139686882
AnimatorTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: JumpUp
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -5943099573550533948}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1101 &3943266464784214337
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionOffset: 0
m_ExitTime: 0.9906015
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &4077334438025311903
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1

m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: -3813820208879679561}
- {fileID: -3446933760404224606}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &3943266464784214337
--- !u!1101 &4353565650259770779
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}

m_Conditions:
- m_ConditionMode: 1
- m_ConditionMode: 2
m_ConditionEvent: IsTalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}

m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionDuration: 0.25
m_ExitTime: 0.9906015
m_ExitTime: 0.9603175
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0

m_Mute: 0
m_IsExit: 0
serializedVersion: 1
--- !u!1101 &5450956186395528051
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: JumpDown
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 0}
m_Solo: 0
m_Mute: 0
m_IsExit: 1
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.96231157
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &6375416532858191911
AnimatorStateTransition:
m_ObjectHideFlags: 1

m_CycleOffset: 0
m_Transitions:
- {fileID: 1348238984624469047}
- {fileID: -2085247292988123788}
- {fileID: -1664865702140399576}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &7922362597612938490
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2982860026827336943}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8295455
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1107 &8113754229338220148
AnimatorStateMachine:
serializedVersion: 6

m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates: []
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -5943099573550533948}
m_Position: {x: 700, y: 40, z: 0}
- serializedVersion: 1
m_State: {fileID: 4077334438025311903}
m_Position: {x: 700, y: 230, z: 0}
m_ChildStateMachines:
- serializedVersion: 1
m_StateMachine: {fileID: -8922074601772979250}

m_Position: {x: 340, y: -30, z: 0}
m_Position: {x: 340, y: -10, z: 0}
m_AnyStateTransitions: []
m_EntryTransitions:
- {fileID: -4394027057195029758}

- {fileID: 5363044950688599843}
- {fileID: 3618554181139686882}
- {fileID: -384121867820306950}
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_AnyStatePosition: {x: -120, y: -50, z: 0}
--- !u!1109 &8944268493305491835
AnimatorTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -2982860026827336943}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 1

1
UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions.asset


m_Tables:
- {fileID: 11400000, guid: 8c990337c09944296842b163021829c8, type: 2}
- {fileID: 11400000, guid: 75a54b82bfa6f4f9e8239e9940432c0d, type: 2}
- {fileID: 11400000, guid: 6ff28064e4e684b65b9c22aa501c01c5, type: 2}
m_Extensions: []
m_Group: String Table
references:

2
UOP1_Project/Assets/Prefabs/Characters/BardHare.prefab


m_Script: {fileID: 11500000, guid: 1eeda163c70b3cb4ebb88ba92f608fd8, type: 3}
m_Name:
m_EditorClassIdentifier:
_transitionTableSO: {fileID: 11400000, guid: 40a97759ea1c18c47ad6a9bfe0cacd99, type: 2}
_transitionTableSO: {fileID: 11400000, guid: 9a856fbf5f8a165408eb9fb51d367494, type: 2}
_debugger:
debugTransitions: 0
appendConditionsInfo: 1

21
UOP1_Project/Assets/Prefabs/UI/WIP/Credits_Panel.prefab


- component: {fileID: 8357250151446615846}
- component: {fileID: 8357250151446615848}
- component: {fileID: 8357250151446615847}
- component: {fileID: 8494119970005686344}
m_Layer: 5
m_Name: Credits_Panel
m_TagString: Untagged

m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!114 &8494119970005686344
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8357250151446615845}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 89d2d3089773c4b30a761dd235b33ed6, type: 3}
m_Name:
m_EditorClassIdentifier:
_inputReader: {fileID: 11400000, guid: 945ec0365077176418488737deed54be, type: 2}
--- !u!1001 &3825510706580971660
PrefabInstance:
m_ObjectHideFlags: 0

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 11400000, guid: e254a2d838f7f4c869b9b8ddf049f4b4,
type: 2}
objectReference: {fileID: 8494119970005686344}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: RaiseEvent
value: CloseCreditsScreen
value: VoidEventChannelSO, Assembly-CSharp
value: UICreditsScreen, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}

52
UOP1_Project/Assets/Prefabs/UI/WIP/Settings/Settings_Panel.prefab


m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!224 &1847093151952770123
RectTransform:
m_ObjectHideFlags: 0

m_GameObject: {fileID: 1847093151952770122}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_LocalScale: {x: 1.0009267, y: 1.0009267, z: 1.0009267}
m_Children:
- {fileID: 1847093151714995252}
- {fileID: 1847093150031373199}

m_Key:
m_FallbackState: 0
_settingFieldsFiller: {fileID: 1247507422823214019}
_inputReader: {fileID: 11400000, guid: 945ec0365077176418488737deed54be, type: 2}
--- !u!1 &3622180757932086533
GameObject:
m_ObjectHideFlags: 0

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_SizeDelta.y
value: 0
value: 100
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
value: 470.81906
value: 0
value: -50
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_SizeDelta.y
value: 0
value: 100
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
value: 788.03174
value: 0
value: -50
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 11400000, guid: c42d49d01efc749a9a5326b51dcc32af,
type: 2}
objectReference: {fileID: 1300813244}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: RaiseEvent
value: CloseScreen
value: VoidEventChannelSO, Assembly-CSharp
value: UISettings, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_SizeDelta.y
value: 0
value: 100
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
value: 153.60635
value: 0
value: -50
objectReference: {fileID: 0}
- target: {fileID: 9115052875433558163, guid: f972fe86e7dcf4b0e911528970aea6c4,
type: 3}

- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}
propertyPath: m_AnchorMax.y
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}

- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}
propertyPath: m_AnchorMin.y
value: 0
value: 1
value: 0
value: 1122.9397
objectReference: {fileID: 0}
- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}

- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 0
value: 561.46985
value: 0
value: -41.65665
objectReference: {fileID: 0}
- target: {fileID: 7048424685039854726, guid: bfbbc6fd7e74c4e288fdadc2265eef46,
type: 3}

2
UOP1_Project/Assets/Prefabs/UI/WIP/Settings/Setting_Field.prefab


- component: {fileID: 7048424685039854727}
- component: {fileID: 5960076895796773585}
m_Layer: 5
m_Name: Setting_Item
m_Name: Setting_Field
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0

166
UOP1_Project/Assets/Scenes/Managers/Gameplay.unity


- component: {fileID: 1869732380}
- component: {fileID: 1869732379}
- component: {fileID: 1869732378}
- component: {fileID: 1869732383}
- component: {fileID: 1869732382}
m_Layer: 5
m_Name: Canvas

- {fileID: 4949818870599756131}
- {fileID: 1479900142}
m_Father: {fileID: 0}
m_RootOrder: 5
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}

_defaultSelection: {fileID: 0}
currentSelection: {fileID: 0}
mouseSelection: {fileID: 0}
--- !u!114 &1869732383
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1869732377}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e5eb1a5a891704b35b2ad0529d003d43, type: 3}
m_Name:
m_EditorClassIdentifier:
_selectionHandler: {fileID: 1869732382}
_popupPanel: {fileID: 1479900143}
_dialogueController: {fileID: 1540519756}
_inventoryPanel: {fileID: 1172743538}
_interactionPanel: {fileID: 6822594372875662427}
_pauseScreen: {fileID: 4949818870599756129}
_settingScreen: {fileID: 1847093150938251762}
_gameState: {fileID: 11400000, guid: 159f9c22d98e249ceb08f2c5de2311a4, type: 2}
_mainMenu: {fileID: 11400000, guid: 431ff81b74b48fb4d9301fb76ca633dd, type: 2}
_inputReader: {fileID: 11400000, guid: 945ec0365077176418488737deed54be, type: 2}
_onSceneReady: {fileID: 11400000, guid: b729e40fc41dd8b4ea7aaf5c857f7186, type: 2}
_openUIDialogueEvent: {fileID: 11400000, guid: d987db4881d794f2da0013a89588d890,
type: 2}
_closeUIDialogueEvent: {fileID: 11400000, guid: 53a7f1f01ef364704b1d45d01f2421ae,
type: 2}
_openInventoryScreenForCookingEvent: {fileID: 11400000, guid: 146c579dca5c2f248a607ef66a36d765,
type: 2}
_setInteractionEvent: {fileID: 11400000, guid: 818cc55cb05226248bdb15ace58eab84,
type: 2}
_loadMenuEvent: {fileID: 11400000, guid: 33cec85652903d245b99985f9cec9841, type: 2}
_onInteractionEndedEvent: {fileID: 11400000, guid: c499d87f35465124f8fb2751b150430d,
type: 2}
--- !u!1001 &1395789391981611399
PrefabInstance:
m_ObjectHideFlags: 0

m_SourcePrefab: {fileID: 100100000, guid: 1d09c349511c34e2d8b16f139aadb731, type: 3}
--- !u!114 &6822594372875662427 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 1798069423737873425, guid: 1d09c349511c34e2d8b16f139aadb731,
m_CorrespondingSourceObject: {fileID: 4351352784699630511, guid: 1d09c349511c34e2d8b16f139aadb731,
type: 3}
m_PrefabInstance: {fileID: 6822594372875662426}
m_PrefabAsset: {fileID: 0}

objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: cb311613a647f46b6a6c9dc887acd1a9, type: 3}
--- !u!1001 &8313085415731550940
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_RootOrder
value: 4
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalPosition.x
value: 1263.33
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalPosition.y
value: 226.177
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalPosition.z
value: 125.77474
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863404, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863410, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: m_Name
value: UIManager
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _popupPanel
value:
objectReference: {fileID: 1479900143}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _pauseScreen
value:
objectReference: {fileID: 4949818870599756129}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _setHealthBar
value:
objectReference: {fileID: 11400000, guid: 22e3f27f002de44b4948988138dd9377,
type: 2}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _healthDisplay
value:
objectReference: {fileID: 0}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _inflictDamage
value:
objectReference: {fileID: 11400000, guid: be921b398c68d450e9e3c55dde697149,
type: 2}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _restoreHealth
value:
objectReference: {fileID: 11400000, guid: de4a39f85969d44cba990125224ff7ef,
type: 2}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _settingScreen
value:
objectReference: {fileID: 1847093150938251762}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _inventoryPanel
value:
objectReference: {fileID: 1172743538}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _interactionPanel
value:
objectReference: {fileID: 6822594372875662427}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _selectionHandler
value:
objectReference: {fileID: 1869732382}
- target: {fileID: 8313085416397863411, guid: 2af68f4e6b94140cfbcdee05fcc28ce3,
type: 3}
propertyPath: _dialogueController
value:
objectReference: {fileID: 1540519756}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 2af68f4e6b94140cfbcdee05fcc28ce3, type: 3}
--- !u!1001 &8957403574244887918
PrefabInstance:
m_ObjectHideFlags: 0

124
UOP1_Project/Assets/Scenes/Menus/MainMenu.unity


m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 381379602, guid: 88498729c08b74b588c91db70fc55665, type: 3}
propertyPath: _creditsPanel
value:
objectReference: {fileID: 381379599}
- target: {fileID: 892254965, guid: 88498729c08b74b588c91db70fc55665, type: 3}
propertyPath: m_IsActive
value: 0

propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 31749703340760393, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_Name
value: MainMenu_Panel
objectReference: {fileID: 0}
- target: {fileID: 1610677297365239011, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_LocalPosition.x

type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1847093150164366842, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1847093150164366843, guid: 88498729c08b74b588c91db70fc55665,

- target: {fileID: 1847093151642812976, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_SizeDelta.x
value: 1123.475
value: 0
value: 561.7375
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1847093151642812976, guid: 88498729c08b74b588c91db70fc55665,
type: 3}

- target: {fileID: 3186328487752006996, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_Navigation.m_Mode
value: 4
objectReference: {fileID: 0}
- target: {fileID: 3186328487752006996, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_Navigation.m_SelectOnRight
value:
objectReference: {fileID: 1543443444}
- target: {fileID: 5162818538747690425, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_AnchorMax.y

propertyPath: m_AnchoredPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7769909179566977161, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_Navigation.m_Mode
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7769909179566977161, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
propertyPath: m_Navigation.m_SelectOnLeft
value:
objectReference: {fileID: 762854225}
value: 1
value: 0
value: 1
value: 0
value: 1123.475
value: 0
value: 561.7375
value: 0
value: -248.28325
value: 0
value: 1
value: 0
value: 1
value: 0
value: 1123.475
value: 0
value: 561.7375
value: 0
value: -144.96996
value: 0
value: 1
value: 0
value: 1
value: 0
value: 1123.475
value: 0
value: 561.7375
value: 0
value: -351.59656
value: 0
value: 1
value: 0
value: 1
value: 0
value: 1123.475
value: 0
value: 561.7375
value: 0
value: -558.2232
value: 0
value: 1
value: 0
value: 1
value: 0
value: 1123.475
value: 0
value: 561.7375
value: 0
value: -454.90985
value: 0
--- !u!114 &381379599 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 440164879255287192, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
m_PrefabInstance: {fileID: 381379598}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 89d2d3089773c4b30a761dd235b33ed6, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &762854225 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 3186328487752006996, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
m_PrefabInstance: {fileID: 381379598}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 77b26c7a54d143a7b78bcba222262814, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1304619404 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 90523872167386449, guid: 88498729c08b74b588c91db70fc55665,

m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1419319618}
m_Enabled: 1
--- !u!114 &1543443444 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 7769909179566977161, guid: 88498729c08b74b588c91db70fc55665,
type: 3}
m_PrefabInstance: {fileID: 381379598}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 77b26c7a54d143a7b78bcba222262814, type: 3}
m_Name:
m_EditorClassIdentifier:

122
UOP1_Project/Assets/Scenes/WIP/TestingGround.unity
文件差异内容过多而无法显示
查看文件

66
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/BardHare_TransitionTable.asset


- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 13401f769215f3245807de4b2ea14759, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 11d32529e8bdbc24e81d7b578426352c, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 1aad0cd7a387c6544a113d9fa8df1ce3, type: 2}
ToState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
Conditions:

- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 1748abd46aa04284b8bf442050ef790f, type: 2}
Operator: 1
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 87426477fd21a254d8cd4ff826d4ee29, type: 2}
- FromState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
- FromState: {fileID: 11400000, guid: e8445f4dd402c244d8f2e2e0440bd834, type: 2}
ToState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
Conditions:
- ExpectedResult: 0

Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: ad97f6f8066c4d4499492813bfed08d3, type: 2}
Operator: 0
ToState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: dcb00df815f03384cb096d4556e5ba95, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
ToState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
Operator: 1
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: f7264f99aeb6a8046b637306314556da, type: 2}
- FromState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
ToState: {fileID: 11400000, guid: e8445f4dd402c244d8f2e2e0440bd834, type: 2}
Conditions:
Condition: {fileID: 11400000, guid: 1748abd46aa04284b8bf442050ef790f, type: 2}
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
ToState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
ToState: {fileID: 11400000, guid: e8445f4dd402c244d8f2e2e0440bd834, type: 2}
- FromState: {fileID: 11400000, guid: e8445f4dd402c244d8f2e2e0440bd834, type: 2}
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
Operator: 0
- ExpectedResult: 1
- FromState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: ad97f6f8066c4d4499492813bfed08d3, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: daed10358ee01bc4c8d68fe4ff3f0d40, type: 2}
ToState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
Conditions:
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 1748abd46aa04284b8bf442050ef790f, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 40db78531f0c5cd49904c91aea4d8d2a, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: daed10358ee01bc4c8d68fe4ff3f0d40, type: 2}
ToState: {fileID: 11400000, guid: 1aad0cd7a387c6544a113d9fa8df1ce3, type: 2}
Conditions:
- ExpectedResult: 1

Condition: {fileID: 11400000, guid: 13401f769215f3245807de4b2ea14759, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 40db78531f0c5cd49904c91aea4d8d2a, type: 2}
Operator: 0
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 1
- FromState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
ToState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
ToState: {fileID: 11400000, guid: daed10358ee01bc4c8d68fe4ff3f0d40, type: 2}
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 1
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
Operator: 0

2
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/BardHare_TransitionTable.asset.meta


fileFormatVersion: 2
guid: 40a97759ea1c18c47ad6a9bfe0cacd99
guid: 9a856fbf5f8a165408eb9fb51d367494
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

36
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Townsfolk/Townsfolk_TransitionTable.asset


- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 13401f769215f3245807de4b2ea14759, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 11d32529e8bdbc24e81d7b578426352c, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
ToState: {fileID: 11400000, guid: 0e91b8fa2c44dc346b693ecfce70a7f1, type: 2}
Conditions:

Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 1748abd46aa04284b8bf442050ef790f, type: 2}
Operator: 1
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 87426477fd21a254d8cd4ff826d4ee29, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 0e91b8fa2c44dc346b693ecfce70a7f1, type: 2}
ToState: {fileID: 11400000, guid: 1aad0cd7a387c6544a113d9fa8df1ce3, type: 2}

Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 1748abd46aa04284b8bf442050ef790f, type: 2}
Operator: 0
Operator: 1
- FromState: {fileID: 11400000, guid: 0e91b8fa2c44dc346b693ecfce70a7f1, type: 2}
ToState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
Conditions:

- FromState: {fileID: 11400000, guid: 3388e91c73e51e845a78aa522a2f2bda, type: 2}
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 1
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: dcb00df815f03384cb096d4556e5ba95, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: f7264f99aeb6a8046b637306314556da, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 7aedcd9c179a4824eaf24451ab5689ba, type: 2}
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: f4c89ffbe6ca8fe46ae22ec9d191671a, type: 2}
Operator: 0
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 0e91b8fa2c44dc346b693ecfce70a7f1, type: 2}
ToState: {fileID: 11400000, guid: b815b7da412ff164abfb213e11d27ace, type: 2}
Conditions:
- ExpectedResult: 0
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: 4f15fe7b4afb565469f360b403d50f64, type: 2}
Operator: 0

12
UOP1_Project/Assets/Scripts/Dialogues/DialogueDataSO.cs


public List<Choice> Choices => _choices;
public DialogueType DialogueType => _dialogueType;
public void SetActor(ActorSO newActor)
{
_actor = newActor;
}
#if UNITY_EDITOR
//TODO: Add support for branching conversations

{
SetDialogueLines();
//SetDialogueLines();
}
void SetDialogueLines()
{

}
}
#endif
}

public LocalizedString Response => _response;
public DialogueDataSO NextDialogue => _nextDialogue;
public ChoiceActionType ActionType => _actionType;
public void SetNextDialogue(DialogueDataSO dialogue)
{
_nextDialogue = dialogue;
}
}

4
UOP1_Project/Assets/Scripts/Events/ScriptableObjects/UI/TabEventChannelSO.cs


[CreateAssetMenu(menuName = "Events/UI/Inventory Tab Event Channel")]
public class TabEventChannelSO : ScriptableObject
{
public UnityAction<InventoryTabType> OnEventRaised;
public void RaiseEvent(InventoryTabType item)
public UnityAction<InventoryTabSO> OnEventRaised;
public void RaiseEvent(InventoryTabSO item)
{
if (OnEventRaised != null)
OnEventRaised.Invoke(item);

40
UOP1_Project/Assets/Scripts/Input/GameInput.cs


""expectedControlType"": """",
""processors"": """",
""interactions"": """"
},
{
""name"": ""CloseInventory"",
""type"": ""Button"",
""id"": ""43e7e8b3-1957-4ce6-9d0e-92ed54cb4e41"",
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """"
}
],
""bindings"": [

""action"": ""Navigate"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": """",
""id"": ""0c4a1130-8e0c-4035-a7ea-22f8e8e802b8"",
""path"": ""<Keyboard>/tab"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",
""action"": ""CloseInventory"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""f135a32f-88e8-4fc1-807b-4d428a2da2e0"",
""path"": ""<Gamepad>/buttonNorth"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",
""action"": ""CloseInventory"",
""isComposite"": false,
""isPartOfComposite"": false
}
]
},

m_Menus_Click = m_Menus.FindAction("Click", throwIfNotFound: true);
m_Menus_Point = m_Menus.FindAction("Point", throwIfNotFound: true);
m_Menus_RightClick = m_Menus.FindAction("RightClick", throwIfNotFound: true);
m_Menus_CloseInventory = m_Menus.FindAction("CloseInventory", throwIfNotFound: true);
// Dialogues
m_Dialogues = asset.FindActionMap("Dialogues", throwIfNotFound: true);
m_Dialogues_MoveSelection = m_Dialogues.FindAction("MoveSelection", throwIfNotFound: true);

private readonly InputAction m_Menus_Click;
private readonly InputAction m_Menus_Point;
private readonly InputAction m_Menus_RightClick;
private readonly InputAction m_Menus_CloseInventory;
public struct MenusActions
{
private @GameInput m_Wrapper;

public InputAction @Click => m_Wrapper.m_Menus_Click;
public InputAction @Point => m_Wrapper.m_Menus_Point;
public InputAction @RightClick => m_Wrapper.m_Menus_RightClick;
public InputAction @CloseInventory => m_Wrapper.m_Menus_CloseInventory;
public InputActionMap Get() { return m_Wrapper.m_Menus; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }

@RightClick.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnRightClick;
@RightClick.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnRightClick;
@RightClick.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnRightClick;
@CloseInventory.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnCloseInventory;
@CloseInventory.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnCloseInventory;
@CloseInventory.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnCloseInventory;
}
m_Wrapper.m_MenusActionsCallbackInterface = instance;
if (instance != null)

@RightClick.started += instance.OnRightClick;
@RightClick.performed += instance.OnRightClick;
@RightClick.canceled += instance.OnRightClick;
@CloseInventory.started += instance.OnCloseInventory;
@CloseInventory.performed += instance.OnCloseInventory;
@CloseInventory.canceled += instance.OnCloseInventory;
}
}
}

void OnClick(InputAction.CallbackContext context);
void OnPoint(InputAction.CallbackContext context);
void OnRightClick(InputAction.CallbackContext context);
void OnCloseInventory(InputAction.CallbackContext context);
}
public interface IDialoguesActions
{

38
UOP1_Project/Assets/Scripts/Input/InputReader.cs


public event UnityAction menuPauseEvent = delegate { };
public event UnityAction menuCloseEvent = delegate { };
public event UnityAction openInventoryEvent = delegate { }; // Used to bring up the inventory
public event UnityAction closeInventoryEvent = delegate { }; // Used to bring up the inventory
public event UnityAction<float> menuSwitchTab = delegate { };
public event UnityAction<float> TabSwitched = delegate { };
private GameInput gameInput;

EnableGameplayInput();
}
private void OnDisable()
{
DisableAllInput();

public void OnOpenInventory(InputAction.CallbackContext context)
{
}
}

if (context.phase == InputActionPhase.Performed)
{ menuCloseEvent.Invoke();
{
menuCloseEvent.Invoke();
}
}
public void OnInventoryActionButton(InputAction.CallbackContext context)
{

interactEvent.Invoke();
}
public void OnJump(InputAction.CallbackContext context)
{

public void OnPause(InputAction.CallbackContext context)
{
if (context.phase == InputActionPhase.Performed)
{ menuPauseEvent.Invoke();
{
menuPauseEvent.Invoke();
}
}
public void OnRotateCamera(InputAction.CallbackContext context)
{

public void OnConfirm(InputAction.CallbackContext context)
{
if (context.phase == InputActionPhase.Performed)
menuClickButtonEvent.Invoke();
menuClickButtonEvent.Invoke();
}

if (context.phase == InputActionPhase.Performed)
{
menuUnpauseEvent.Invoke();
}
}
public void EnableDialogueInput()
{

public void OnChangeTab(InputAction.CallbackContext context)
{
if (context.phase == InputActionPhase.Performed)
menuSwitchTab.Invoke(context.ReadValue<float>());
TabSwitched.Invoke(context.ReadValue<float>());
}
public void OnSubmit(InputAction.CallbackContext context)
{

{
}
public void OnRightClick(InputAction.CallbackContext context)
{

{
}
public void OnCloseInventory(InputAction.CallbackContext context)
{
closeInventoryEvent.Invoke();
}
}

4
UOP1_Project/Assets/Scripts/Inventory/ScriptableObjects/ItemType.cs


[Tooltip("The tab type under which the item will be added")]
[SerializeField] private InventoryTabType _tabType = default;
[SerializeField] private InventoryTabSO _tabType = default;
public LocalizedString ActionName => _actionName;
public LocalizedString TypeName => _typeName;

public InventoryTabType TabType => _tabType;
public InventoryTabSO TabType => _tabType;
}

22
UOP1_Project/Assets/Scripts/Menu/MenuSelectionHandler.cs


}
public void UpdateDefault(GameObject newDefault)
{
_defaultSelection = newDefault;
_defaultSelection = newDefault;
}
/// <summary>

yield return new WaitForSeconds(.03f); // Necessary wait otherwise the highlight won't show up
if (_defaultSelection != null)
EventSystem.current.SetSelectedGameObject(_defaultSelection);
UpdateSelection(_defaultSelection);
EventSystem.current.SetSelectedGameObject(null);
EventSystem.current.SetSelectedGameObject(null);
}
/// <summary>

private void HandleMoveSelection()
{
Cursor.visible = false;
// Handle case where no UI element is selected because mouse left selectable bounds
if (EventSystem.current.currentSelectedGameObject == null)
EventSystem.current.SetSelectedGameObject(currentSelection);

public void HandleMouseExit(GameObject UIElement)
{
if (EventSystem.current.currentSelectedGameObject != UIElement)
{
return;

/// <returns></returns>
public bool AllowsSubmit()
{
// if LMB is not down, there is no edge case to handle, allow the event to continue
return !_inputReader.LeftMouseDown()
// if we know mouse & keyboard are on different elements, do not allow interaction to continue

public void UpdateSelection(GameObject UIElement)
{
if ((UIElement.GetComponent<MultiInputSelectableElement>() != null)|| (UIElement.GetComponent<MultiInputButton>() != null))
if ((UIElement.GetComponent<MultiInputSelectableElement>() != null) || (UIElement.GetComponent<MultiInputButton>() != null))
}
// Debug

// }
private void Update()
{
if ((EventSystem.current!=null)&& (EventSystem.current.currentSelectedGameObject == null)&& (currentSelection != null))
if ((EventSystem.current != null) && (EventSystem.current.currentSelectedGameObject == null) && (currentSelection != null))
}
}

15
UOP1_Project/Assets/Scripts/Menu/MultiInputButton.cs


public class MultiInputButton : Button
{
private MenuSelectionHandler _menuSelectionHandler;
public bool IsSelected;
private new void Awake()
{
_menuSelectionHandler = transform.root.gameObject.GetComponentInChildren<MenuSelectionHandler>();

public override void OnSelect(BaseEventData eventData)
{
Debug.Log("Onselect ");
IsSelected = true;
public void UpdateDefault()
public void UpdateSelected()
Debug.Log("Select");
if(_menuSelectionHandler==null)
if (_menuSelectionHandler == null)
Debug.Log("UpdateSelected");
_menuSelectionHandler.UpdateSelection(gameObject);
_menuSelectionHandler.UpdateSelection(gameObject);
}
public override void OnSubmit(BaseEventData eventData)

37
UOP1_Project/Assets/Scripts/Quests/Editor/DialogueLine.uxml


<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xsi="http://www.w3.org/2001/XMLSchema-instance" engine="UnityEngine.UIElements" editor="UnityEditor.UIElements" noNamespaceSchemaLocation="../../UIElementsSchema/UIElements.xsd" editor-extension-mode="False">
<ui:VisualElement name="line-box" style="flex-direction: column; padding-left: 2px; padding-right: 2px; padding-top: 2px; padding-bottom: 2px;">
<ui:VisualElement name="lines" style="flex-direction: row; width: 100%;">
<ui:VisualElement name="left-line" style="margin-left: 5px; margin-right: 5px; margin-top: 5px; margin-bottom: 5px; width: 50%; padding-left: 0; padding-right: 0; padding-top: 0; padding-bottom: 0;">
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="left-line-label" style="background-color: rgb(158, 222, 115); white-space: normal; color: rgba(73, 94, 0, 255);" />
</ui:VisualElement>
<ui:VisualElement name="right-line" style="width: 50%; margin-left: 5px; margin-right: 5px; margin-top: 5px; margin-bottom: 5px;">
<ui:Label text="This is line 2." display-tooltip-when-elided="true" name="right-line-label" style="background-color: rgb(243, 145, 137); white-space: normal; color: rgb(106, 9, 0);" />
<Style src="/Assets/DialogueUSS.uss" />
<ui:VisualElement name="DialogueWithBranches">
<ui:VisualElement name="Dialogue" style="align-items: stretch; min-width: 50%;">
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="Line" class="DefaultLine" />
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="Line" class="DefaultLine" />
<ui:VisualElement name="Choices" class="Choices">
<ui:VisualElement name="Dialogue" class="Choice">
<ui:Button text="Yes" name="Button" class="ChoiceButton" />
<ui:VisualElement name="Default" style="align-items: stretch; min-width: 50%;">
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="winDialogue" class="CompletionLine" />
<ui:VisualElement name="Choices" class="Choices">
<ui:VisualElement name="Choice" class="Choice">
<ui:Button text="Yes" name="Button" class="ChoiceButton" />
<ui:VisualElement name="Dialogue" style="align-items: stretch; min-width: 50%;">
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="Line" class="CompletionLine" />
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="Choice" style="align-items: stretch; min-width: 50%;">
<ui:Button text="Yes" name="Button" class="ChoiceButton" />
<ui:VisualElement name="Dialogue" style="align-items: stretch; min-width: 50%;">
<ui:Label text="This is line 1." display-tooltip-when-elided="true" name="Line" class="IncompletionLine" />
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="buttons" style="flex-direction: row; justify-content: space-around;">
<ui:Button text="Yes" name="btn-0" style="width: 45%; background-color: rgb(115, 115, 115);" />
<ui:Button text="No" name="btn-1" style="width: 45%; background-color: rgb(115, 115, 115);" />
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

112
UOP1_Project/Assets/Scripts/Quests/Editor/QuestEditorWindow.cs


}
public class QuestEditorWindow : EditorWindow
{
private Image actorPreview;
private QuestSO currentSeletedQuest;
QuestlineSO selectedQuestLine;
int idQuestlineSelected;

// Import UXML
var visualTree = Resources.Load<VisualTreeAsset>("QuestEditorWindow");
root.Add(visualTree.CloneTree());
//Add Image
VisualElement preview = root.Q<VisualElement>("actor-preview");
actorPreview = new Image();
preview.Add(actorPreview);
//Import USS
var styleSheet = Resources.Load<StyleSheet>("QuestEditorWindow");

if (quest == null)
return;
if (quest.Steps == null)
return;
if (quest.Steps.Count > 0 && quest.Steps[0].Actor != null)
LoadActorImage(quest.Steps[0].Actor.name);
return;
//Clear actor conversations area
rootVisualElement.Q<VisualElement>("actor-conversations").Clear();
foreach (StepSO step in quest.Steps)

private void LoadAndInitStepUXML(StepSO step)
{
//Clear actor conversations area
VisualElement actorConversationsVE = rootVisualElement.Q<VisualElement>("actor-conversations");
ScrollView actorConversationsVE = rootVisualElement.Q<ScrollView>("actor-conversations");
// Import UXML
var stepVisualTree = AssetDatabase.LoadAssetAtPath<VisualTreeAsset>("Assets/Scripts/Quests/Editor/StepDetail.uxml");
VisualElement stepVE = stepVisualTree.CloneTree();

isDoneToggle.value = step.IsDone;
isDoneToggle.SetEnabled(false);
//SD
if (step.DialogueBeforeStep != null)
LoadAndInitStartDialogueLineUXML(step.DialogueBeforeStep, dialogueAreaVE);
DialogueDataSO dialogueToPreview = new DialogueDataSO();
dialogueToPreview = step.StepToDialogue();
if (dialogueToPreview != null)
{
//setPreview Actor for each step
Image actorPreview = LoadActorImage(step.Actor.name);
//Add Image
VisualElement preview = stepVE.Q<VisualElement>("actor-preview");
preview.Add(actorPreview);
//CD ID if any
if (step.CompleteDialogue != null)
LoadAndInitOptionsDialogueLineUXML(step.CompleteDialogue, step.IncompleteDialogue, dialogueAreaVE);
VisualElement VE = CreateDialoguePreviewWithBranching(dialogueToPreview);
dialogueAreaVE.Add(VE);
}
//Type (Check Item etc)
if (step.Type == StepType.Dialogue)

private void LoadAndInitStartDialogueLineUXML(DialogueDataSO startDialogue, VisualElement parent)
{
// Import UXML
var dialogueVisualTree = AssetDatabase.LoadAssetAtPath<VisualTreeAsset>("Assets/Scripts/Quests/Editor/DialogueLine.uxml");
// Set line
foreach (LocalizedString line in startDialogue.DialogueLines)
{
VisualElement dialogueVE = dialogueVisualTree.CloneTree();
Label leftLineLabel = dialogueVE.Q<Label>("left-line-label");
leftLineLabel.text = line.GetLocalizedStringImmediateSafe();
Label rightLineLabel = dialogueVE.Q<Label>("right-line-label");
rightLineLabel.style.display = DisplayStyle.None;
// Set options
VisualElement buttonArea = dialogueVE.Q<VisualElement>("buttons");
if (startDialogue.Choices.Count == 0)
{
buttonArea.style.display = DisplayStyle.None;
}
else if (startDialogue.Choices.Count <= 2)
{
for (int i = 0; i < 2; i++)
{
Button btn = buttonArea.Q<Button>($"btn-{i}");
if (i < startDialogue.Choices.Count)
btn.text = startDialogue.Choices[i].Response.GetLocalizedStringImmediateSafe();
else
btn.style.display = DisplayStyle.None;
}
}
parent.Add(dialogueVE);
}
}
private void LoadAndInitOptionsDialogueLineUXML(DialogueDataSO completeDialogue, DialogueDataSO incompleteDialogue, VisualElement parent)

// Set line
Label leftLineLabel = dialogueVE.Q<Label>("left-line-label");
Label rightLineLabel = dialogueVE.Q<Label>("right-line-label");
leftLineLabel.text = completeDialogue.DialogueLines[0].GetLocalizedStringImmediateSafe();
if (incompleteDialogue != null)

}
private void LoadActorImage(string actorName)
private Image LoadActorImage(string actorName)
Image actorPreview = new Image();
return actorPreview;
}
private void DisplayAllProperties(Object data, string visualElementName)

{
}
}
private VisualElement CreateDialoguePreviewWithBranching(DialogueDataSO dialogueDataSO)
{
VisualElement dialoguePreviewVE = new VisualElement();
dialoguePreviewVE.name = "Dialogue";
foreach (LocalizedString localizedString in dialogueDataSO.DialogueLines)
{
Label dialogueLine = new Label();
dialogueLine.name = dialogueDataSO.DialogueType.ToString();
dialogueLine.text = localizedString.GetLocalizedStringImmediateSafe();
dialoguePreviewVE.Add(dialogueLine);
}
if (dialogueDataSO.Choices != null)
{
VisualElement choicesVE = new VisualElement();
choicesVE.name = "Choices";
for (int i = 0; i < dialogueDataSO.Choices.Count; i++)
{
VisualElement choiceVE = new VisualElement();
Choice choice = dialogueDataSO.Choices[i];
Button dialogueButton = new Button();
dialogueButton.name = "Button" + idQuestlineSelected;
dialogueButton.text = choice.Response.GetLocalizedStringImmediateSafe();
choiceVE.Add(dialogueButton);
if (choice.NextDialogue != null)
choiceVE.Add(CreateDialoguePreviewWithBranching(choice.NextDialogue));
choiceVE.name = "Choice";
choicesVE.Add(choiceVE);
}
dialoguePreviewVE.Add(choicesVE);
}
return dialoguePreviewVE;
}
}
class Lines
{
public string line;
public bool isText;//or is Button
}

4
UOP1_Project/Assets/Scripts/Quests/Editor/StepDetail.uxml


<ui:Label text="Step1" display-tooltip-when-elided="true" name="step-title-label" style="-unity-font-style: bold;" />
<ui:Toggle name="step-done-toggle" text="IsDone" value="false" style="-unity-font-style: normal;" />
</ui:VisualElement>
<ui:VisualElement name="dialogue-area" />
<ui:VisualElement name="dialogue-area">
<ui:VisualElement name="actor-preview" />
</ui:VisualElement>
<ui:VisualElement name="item-validate" style="flex-direction: row; justify-content: space-around;">
<ui:Label text="Check Item:" display-tooltip-when-elided="true" name="step-type" style="-unity-font-style: bold;" />
<ui:Label text="Apple" display-tooltip-when-elided="true" name="item-to-validate" />

12
UOP1_Project/Assets/Scripts/Quests/Resources/QuestEditorWindow.uss


width: 20px;
height: 20px;
}
#actor-preview {
width: 100px;
height: 100px;
margin-left: auto;
margin-right: auto;
}
.3rdColumn {
width: 40%;
background-color: rgb(185, 185, 185);
}

6
UOP1_Project/Assets/Scripts/Quests/Resources/QuestEditorWindow.uxml


<ui:UXML xmlns:ui="UnityEngine.UIElements" xmlns:uie="UnityEditor.UIElements" xsi="http://www.w3.org/2001/XMLSchema-instance" engine="UnityEngine.UIElements" editor="UnityEditor.UIElements" noNamespaceSchemaLocation="../../../UIElementsSchema/UIElements.xsd" editor-extension-mode="False">
<Style src="QuestEditorWindow.uss" />
<Style src="/Assets/DialogueUSS.uss" />
<ui:VisualElement name="quest-editor-window" style="flex-direction: row; height: 100%; width: 100%; min-height: 700px;">
<ui:VisualElement name="1st-column" style="width: 30%;">
<ui:VisualElement name="questlines" class="padding5 ColorStyling1" style="width: auto; height: 150px;">

<ui:VisualElement name="dialogue-info-scroll" style="height: 100%;" />
</ui:VisualElement>
</ui:VisualElement>
<ui:VisualElement name="3rd-column" style="width: 40%; background-color: rgb(185, 185, 185);">
<ui:VisualElement name="3rd-column" class="3rdColumn">
<ui:VisualElement name="actor-preview" style="width: 100px; height: 100px; margin-left: auto; margin-right: auto;" />
<ui:VisualElement name="actor-conversations" style="padding-left: 5px; padding-right: 5px; padding-top: 5px; padding-bottom: 5px;" />
<ui:ScrollView name="actor-conversations" show-vertical-scroller="true" style="height: 100%;" />
</ui:VisualElement>
</ui:VisualElement>
</ui:UXML>

35
UOP1_Project/Assets/Scripts/Quests/ScriptableObjects/StepSO.cs


using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Localization;
using UnityEngine.Serialization;
public enum StepType
{

_isDone = true;
}
public DialogueDataSO StepToDialogue()
{
DialogueDataSO dialogueData = new DialogueDataSO();
dialogueData.SetActor(Actor);
if (DialogueBeforeStep != null)
{
dialogueData = DialogueBeforeStep;
if (DialogueBeforeStep.Choices != null)
{
if (CompleteDialogue != null)
{
if (dialogueData.Choices.Count > 0)
{
if (dialogueData.Choices[0].NextDialogue == null)
dialogueData.Choices[0].SetNextDialogue(CompleteDialogue);
}
}
if (IncompleteDialogue != null)
{
if (dialogueData.Choices.Count > 1)
{
if (dialogueData.Choices[1].NextDialogue == null)
dialogueData.Choices[1].SetNextDialogue(IncompleteDialogue);
}
}
}
}
return dialogueData;
}
}

47
UOP1_Project/Assets/Scripts/UI/UIButtonSetter.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.Localization;
using UnityEngine.Localization.Components;
using UnityEngine.UI;

[SerializeField] private MultiInputButton _button = default;
private VoidEventChannelSO _buttonClickedEvent = default;
public void SetButton(VoidEventChannelSO buttonEvent, bool select)
public UnityAction Clicked = default;
private bool isDefaultSelection = false;
private void OnDisable()
_buttonClickedEvent = buttonEvent;
if (select)
_button.UpdateDefault();
_button.IsSelected = false;
isDefaultSelection = false;
public void SelectButton()
public void SetButton(bool isSelect)
{
isDefaultSelection = isSelect;
if (isSelect)
_button.UpdateSelected();
}
public void SetButton(LocalizedString localizedString, bool isSelected)
_button.UpdateDefault();
_buttonText.StringReference = localizedString;
if (isSelected)
SelectButton();
public void Click()
public void SetButton(string tableEntryReference, bool isSelected)
_buttonClickedEvent.RaiseEvent();
_buttonText.StringReference.TableEntryReference = tableEntryReference;
if (isSelected)
SelectButton();
void SelectButton()
{
_button.Select();
}
public void Click()
{
Clicked.Invoke();
}
}

105
UOP1_Project/Assets/Scripts/UI/UIManager.cs


[Header("Scene UI")]
[SerializeField]
private MenuSelectionHandler _selectionHandler = default;
[SerializeField] private UIPopupSetter _popupPanel = default;
[SerializeField] private UIPopup _popupPanel = default;
[SerializeField]private UIDialogueManager _dialogueController = default;
[SerializeField] private UIDialogueManager _dialogueController = default;
[SerializeField]private UIInventoryManager _inventoryPanel = default;
[SerializeField] private UIInventory _inventoryPanel = default;
[SerializeField]private UIInteractionManager _interactionPanel = default;
[SerializeField] private UIInteraction _interactionPanel = default;
[SerializeField] private UIPauseScreenSetter _pauseScreen = default;
[SerializeField] private UIPause _pauseScreen = default;
[SerializeField] private UISettingManager _settingScreen = default;
[SerializeField] private UISettings _settingScreen = default;
[Header("Gameplay Components")]
[SerializeField] private GameStateSO _gameState = default;

[Header("Inventory Events")]
[SerializeField] private VoidEventChannelSO _openInventoryScreenForCookingEvent = default;
[SerializeField] private VoidEventChannelSO _closeUIInventoryEvent = default;
[Header("Pause Events")]
[SerializeField] private VoidEventChannelSO _clickUnpauseEvent = default;
[SerializeField] private VoidEventChannelSO _clickBackToMenuEvent = default;
[Header("Setting Events")]
[SerializeField] private VoidEventChannelSO _openSettingEvent = default;
[SerializeField] private VoidEventChannelSO _closeSettingScreenEvent = default;
[Header("Popup Events")]
[SerializeField] private VoidEventChannelSO _closePopupEvent = default;
[SerializeField] private BoolEventChannelSO _confirmPopupEvent = default;
[Header("Broadcasting on ")]
[SerializeField] private LoadEventChannelSO _loadMenuEvent = default;

bool isForCooking = false;
private void Start()
{
_onSceneReady.OnEventRaised += ResetUI;

_openInventoryScreenForCookingEvent.OnEventRaised += SetInventoryScreenForCooking;
_setInteractionEvent.OnEventRaised += SetInteractionPanel;
_closeUIInventoryEvent.OnEventRaised += CloseInventoryScreen;
_inventoryPanel.Closed += CloseInventoryScreen;

_setInteractionEvent.OnEventRaised -= SetInteractionPanel;
_inputReader.openInventoryEvent -= SetInventoryScreen;
_closeUIInventoryEvent.OnEventRaised -= CloseInventoryScreen;
_inventoryPanel.Closed -= CloseInventoryScreen;
Time.timeScale = 0; // Pause time
_inputReader.menuPauseEvent -= OpenUIPause; // you can open UI pause menu again, if it's closed
_inputReader.menuPauseEvent -= OpenUIPause; // you cant open the UI Pause again once it's open
_inputReader.menuUnpauseEvent += CloseUIPause; // you can close the UI Pause popup if it's open
// Time.timeScale = 0; // Pause time
_openSettingEvent.OnEventRaised += OpenSettingScreen;//once the UI Pause popup is open, listen to open Settings
_clickBackToMenuEvent.OnEventRaised += ShowBackToMenuConfirmationPopup;//once the UI Pause popup is open, listen to back to menu button
_clickUnpauseEvent.OnEventRaised += CloseUIPause;//once the UI Pause popup is open, listen to unpause event
_pauseScreen.SettingsScreenOpened += OpenSettingScreen;//once the UI Pause popup is open, listen to open Settings
_pauseScreen.BackToMainRequested += ShowBackToMenuConfirmationPopup;//once the UI Pause popup is open, listen to back to menu button
_pauseScreen.Resumed += CloseUIPause;//once the UI Pause popup is open, listen to unpause event
_pauseScreen.gameObject.SetActive(true);

Time.timeScale = 1; // unpause time
_inputReader.menuPauseEvent += OpenUIPause; // you can open UI pause menu again, if it's closed
_inputReader.menuUnpauseEvent -= CloseUIPause; // you can't close a closed popup
_openSettingEvent.OnEventRaised -= OpenSettingScreen;
_clickBackToMenuEvent.OnEventRaised -= ShowBackToMenuConfirmationPopup;
_clickUnpauseEvent.OnEventRaised -= CloseUIPause;
_pauseScreen.SettingsScreenOpened -= OpenSettingScreen;//once the UI Pause popup is open, listen to open Settings
_pauseScreen.BackToMainRequested -= ShowBackToMenuConfirmationPopup;//once the UI Pause popup is open, listen to back to menu button
_pauseScreen.Resumed -= CloseUIPause;//once the UI Pause popup is open, listen to unpause event
_selectionHandler.Unselect();
_gameState.ResetToPreviousGameState();
_selectionHandler.Unselect();
_gameState.ResetToPreviousGameState();
_clickUnpauseEvent.OnEventRaised -= CloseUIPause; // unsub from clause pause popup since it's inactive
_inputReader.menuCloseEvent += CloseSettingScreen; // sub to close setting event from input reader
_closeSettingScreenEvent.OnEventRaised += CloseSettingScreen; // sub to close setting event with event
_settingScreen.Closed += CloseSettingScreen; // sub to close setting event with event
_pauseScreen.gameObject.SetActive(false); // Set pause screen to inactive

void CloseSettingScreen()
{
//unsub from close setting events
_inputReader.menuCloseEvent -= CloseSettingScreen;
_closeSettingScreenEvent.OnEventRaised -= CloseSettingScreen;
_settingScreen.Closed -= CloseSettingScreen;
_clickUnpauseEvent.OnEventRaised += CloseUIPause; // unsub from clause pause popup since it's inactive
_settingScreen.gameObject.SetActive(false);

{
_pauseScreen.gameObject.SetActive(false); // Set pause screen to inactive
_clickUnpauseEvent.OnEventRaised -= CloseUIPause; // unsub from clause pause popup since it's inactive
_inputReader.menuCloseEvent += HideBackToMenuConfirmationPopup;
_closePopupEvent.OnEventRaised += HideBackToMenuConfirmationPopup;
_popupPanel.ClosePopupAction += HideBackToMenuConfirmationPopup;
_confirmPopupEvent.OnEventRaised += BackToMainMenu;
_popupPanel.ConfirmationResponseAction += BackToMainMenu;
_inputReader.EnableMenuInput();
_popupPanel.gameObject.SetActive(true);

void BackToMainMenu(bool confirm)
{
_confirmPopupEvent.OnEventRaised -= BackToMainMenu;
if (confirm)
if (confirm)
_inputReader.menuCloseEvent -= HideBackToMenuConfirmationPopup;
_closePopupEvent.OnEventRaised -= HideBackToMenuConfirmationPopup;
_pauseScreen.gameObject.SetActive(true); // Set pause screen to inactive
_clickUnpauseEvent.OnEventRaised += CloseUIPause; // unsub from clause pause popup since it's inactive
_popupPanel.ClosePopupAction -= HideBackToMenuConfirmationPopup;
_popupPanel.ConfirmationResponseAction -= BackToMainMenu;
_selectionHandler.Unselect();
_pauseScreen.gameObject.SetActive(true); // Set pause screen to inactive
// time is still set to 0 and Input is still set to menuInput
//going out from confirmaiton popup screen gets us back to the pause screen

OpenInventoryScreen();
}
void SetInventoryScreen()
void SetInventoryScreen()
{
isForCooking = false;
OpenInventoryScreen();

_inputReader.menuUnpauseEvent -= CloseUIPause; // you can close the UI Pause popup when you are in inventory
_inputReader.menuCloseEvent += CloseInventoryScreen;
_inputReader.closeInventoryEvent += CloseInventoryScreen;
_inventoryPanel.FillInventory(TabType.recipe, true);
_inventoryPanel.FillInventory(InventoryTabType.Recipe, true);
}
else

_inventoryPanel.gameObject.SetActive(true);
_inputReader.EnableMenuInput();

{
_inputReader.menuPauseEvent += OpenUIPause; // you cant open the UI Pause again when you are in inventory
_inputReader.closeInventoryEvent -= CloseInventoryScreen;
if (isForCooking)
{
_onInteractionEndedEvent.RaiseEvent();

}
void SetInteractionPanel(bool isOpenEvent, InteractionType interactionType)
void SetInteractionPanel(bool isOpenEvent, InteractionType interactionType)
_interactionPanel.FillInteractionPanel(interactionType);
_interactionPanel.FillInteractionPanel(interactionType);
}

130
UOP1_Project/Assets/Scripts/UI/UIMenuManager.cs


public class UIMenuManager : MonoBehaviour
{
[SerializeField] private UIPopupSetter _popupPanel = default;
[SerializeField] private GameObject _settingsPanel = default;
[SerializeField] private GameObject _creditsPanel = default;
[SerializeField] private GameObject _mainMenuPanel = default;
[SerializeField] private Button _continueButton = default;
[SerializeField] private Button _NewGameButton = default;
[SerializeField] private UIPopup _popupPanel = default;
[SerializeField] private UISettings _settingsPanel = default;
[SerializeField] private UICredits _creditsPanel = default;
[SerializeField] private UIMainMenu _mainMenuPanel = default;
[SerializeField] private InputReader _inputReader = default;
[Header("Broadcasting on")]

private VoidEventChannelSO _continueGameEvent = default;
[Header("Listening to")]
[SerializeField]
private VoidEventChannelSO _closePopupEvent = default;
[SerializeField]
private VoidEventChannelSO _closeSettingsEvent = default;
[SerializeField]
private VoidEventChannelSO _closeCreditsEvent = default;
[SerializeField]
private BoolEventChannelSO _confirmPopupEvent = default;
[SerializeField] private InputReader _inputReader = default;
SetMenuScreen();
SetMenuScreen();
_continueButton.interactable = _hasSaveData;
if(_hasSaveData)
{
_continueButton.Select();
}
else
{
_NewGameButton.Select();
}
_mainMenuPanel.SetMenuScreen(_hasSaveData);
_mainMenuPanel.ContinueButtonAction += _continueGameEvent.RaiseEvent;
_mainMenuPanel.NewGameButtonAction += ButtonStartNewGameClicked;
_mainMenuPanel.SettingsButtonAction += OpenSettingsScreen;
_mainMenuPanel.CreditsButtonAction += OpenCreditsScreen;
_mainMenuPanel.ExitButtonAction += ShowExitConfirmationPopup;
public void ButtonContinueGameClicked()
{
_continueGameEvent.RaiseEvent();
}
public void ButtonStartNewGameClicked()
void ButtonStartNewGameClicked()
if(!_hasSaveData)
if (!_hasSaveData)
ConfirmStartNewGame();
ConfirmStartNewGame();
ShowStartNewGameConfirmationPopup();
ShowStartNewGameConfirmationPopup();
void ConfirmStartNewGame()
{
_startNewGameEvent.RaiseEvent();

{
_confirmPopupEvent.OnEventRaised += StartNewGamePopupResponse;
_closePopupEvent.OnEventRaised += HidePopup;
_popupPanel.ConfirmationResponseAction += StartNewGamePopupResponse;
_popupPanel.ClosePopupAction += HidePopup;
_popupPanel.gameObject.SetActive(true);
_popupPanel.SetPopup(PopupType.NewGame);

void StartNewGamePopupResponse(bool startNewGameConfirmed)
void StartNewGamePopupResponse(bool startNewGameConfirmed)
_confirmPopupEvent.OnEventRaised -= StartNewGamePopupResponse;
_popupPanel.ConfirmationResponseAction -= StartNewGamePopupResponse;
_popupPanel.ClosePopupAction -= HidePopup;
_closePopupEvent.OnEventRaised -= HidePopup;
if(startNewGameConfirmed)
if (startNewGameConfirmed)
_continueGameEvent.RaiseEvent();
_continueGameEvent.RaiseEvent();
SetMenuScreen();
_mainMenuPanel.SetMenuScreen(_hasSaveData);
_closePopupEvent.OnEventRaised -= HidePopup;
_confirmPopupEvent.UnsubscribeAll();
_popupPanel.ClosePopupAction -= HidePopup;
SetMenuScreen();
_mainMenuPanel.SetMenuScreen(_hasSaveData);
_settingsPanel.SetActive(true);
_inputReader.menuCloseEvent += CloseSettingsScreen;
_closeSettingsEvent.OnEventRaised += CloseSettingsScreen;
_settingsPanel.gameObject.SetActive(true);
_settingsPanel.SetSettingsScreen();
_settingsPanel.Closed += CloseSettingsScreen;
_inputReader.menuCloseEvent -= CloseSettingsScreen;
_closeSettingsEvent.OnEventRaised -= CloseSettingsScreen;
_settingsPanel.SetActive(false);
SetMenuScreen();
_settingsPanel.Closed -= CloseSettingsScreen;
_settingsPanel.gameObject.SetActive(false);
_mainMenuPanel.SetMenuScreen(_hasSaveData);
_creditsPanel.SetActive(true);
_inputReader.menuCloseEvent += CloseCreditsScreen;
_closeCreditsEvent.OnEventRaised += CloseCreditsScreen;
_creditsPanel.gameObject.SetActive(true);
_creditsPanel.closeCreditsAction += CloseCreditsScreen;

{
_inputReader.menuCloseEvent -= CloseCreditsScreen;
_closeCreditsEvent.OnEventRaised -= CloseCreditsScreen;
_creditsPanel.SetActive(false);
SetMenuScreen();
_creditsPanel.closeCreditsAction -= CloseCreditsScreen;
_creditsPanel.gameObject.SetActive(false);
_mainMenuPanel.SetMenuScreen(_hasSaveData);
public void ShowQuitPopup()
public void ShowExitConfirmationPopup()
_popupPanel.ConfirmationResponseAction += HideExitConfirmationPopup;
_confirmPopupEvent.OnEventRaised += HideQuitPopup;
void HideQuitPopup(bool quitConfirmed)
void HideExitConfirmationPopup(bool quitConfirmed)
_confirmPopupEvent.OnEventRaised -= HideQuitPopup;
_popupPanel.gameObject.SetActive(false);
if(quitConfirmed)
_popupPanel.ConfirmationResponseAction -= HideExitConfirmationPopup;
_popupPanel.gameObject.SetActive(false);
if (quitConfirmed)
_onGameExitEvent.OnEventRaised();
_onGameExitEvent.OnEventRaised();
SetMenuScreen();
_mainMenuPanel.SetMenuScreen(_hasSaveData);
_confirmPopupEvent.OnEventRaised -= HideQuitPopup;
_popupPanel.ConfirmationResponseAction -= HideExitConfirmationPopup;
_popupPanel.ConfirmationResponseAction -= StartNewGamePopupResponse;
_confirmPopupEvent.OnEventRaised -= StartNewGamePopupResponse;
}

2
UOP1_Project/Assets/Scripts/UI/UIMainMenu.cs.meta


fileFormatVersion: 2
guid: d21c5d8dcb2bf4a9a9adc2d2b723cfa6
guid: 8066ac094bd2544ceaed725a352c8f25
MonoImporter:
externalObjects: {}
serializedVersion: 2

4
UOP1_Project/Assets/Scripts/UI/UIInteractionIndicator.cs


using TMPro;
using UnityEngine.UI;
public class UIInteractionItemFiller : MonoBehaviour
public class UIInteractionIndicator : MonoBehaviour
UIButtonPromptSetter buttonPromptSetter = default;
UIButtonPrompt buttonPromptSetter = default;
public void FillInteractionPanel(InteractionSO interactionItem)
{

4
UOP1_Project/Assets/Scripts/UI/UIInteraction.cs


using System.Collections.Generic;
using UnityEngine;
public class UIInteractionManager : MonoBehaviour
public class UIInteraction : MonoBehaviour
private UIInteractionItemFiller _interactionItem = default;
private UIInteractionIndicator _interactionItem = default;
public void FillInteractionPanel(InteractionType interactionType)
{

2
UOP1_Project/Assets/Scripts/UI/UICredits.cs.meta


fileFormatVersion: 2
guid: 9017e8eb9e8364152b6600ce8d330ffd
guid: 89d2d3089773c4b30a761dd235b33ed6
MonoImporter:
externalObjects: {}
serializedVersion: 2

2
UOP1_Project/Assets/Scripts/UI/UIButtonPrompt.cs


using UnityEngine;
using UnityEngine.UI;
public class UIButtonPromptSetter : MonoBehaviour
public class UIButtonPrompt : MonoBehaviour
{
[SerializeField] Image _interactionKeyBG = default;

30
UOP1_Project/Assets/Settings/Input/GameInput.inputactions


"expectedControlType": "",
"processors": "",
"interactions": ""
},
{
"name": "CloseInventory",
"type": "Button",
"id": "43e7e8b3-1957-4ce6-9d0e-92ed54cb4e41",
"expectedControlType": "Button",
"processors": "",
"interactions": ""
}
],
"bindings": [

"action": "Navigate",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "",
"id": "0c4a1130-8e0c-4035-a7ea-22f8e8e802b8",
"path": "<Keyboard>/tab",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",
"action": "CloseInventory",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "f135a32f-88e8-4fc1-807b-4d428a2da2e0",
"path": "<Gamepad>/buttonNorth",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",
"action": "CloseInventory",
"isComposite": false,
"isPartOfComposite": false
}
]
},

6
UOP1_Project/UserSettings/EditorUserSettings.asset


value: 22424703114646680e0b0227036c683926582c2f3f3c2f3e2a0e0f3cf7ee3007d1ea37e5eb742a323016f6
flags: 0
RecentlyUsedScenePath-7:
value: 22424703114646680e0b0227036c721518020b6501292f3e002c1326acf53a31f6fe
value: 22424703114646680e0b0227036c721118161f2f3e3b69172c241823eee12d76f7e93ffdfe
value: 22424703114646680e0b0227036c721118161f2f3e3b69172c241823eee12d76f7e93ffdfe
value: 22424703114646680e0b0227036c683926582c2f3f3c2f3e2a0e0f3cf7ee3076f7e93ffdfe
value: 22424703114646680e0b0227036c683926582c2f3f3c2f3e2a0e0f3cf7ee3076f7e93ffdfe
value: 22424703114646680e0b0227036c721518020b6501292f3e002c1326acf53a31f6fe
flags: 0
UnityEditor.ShaderGraph.Blackboard:
value: 18135939215a0a5004000b0e15254b524c030a3f2964643d120d1230e9e93a3fd6e826abbd3c3e302a07a37e0901373ae01e0008f707250d171df81a53a5485d41895ac825e0100ec20313c0d91cddccd3d0c7efcca9bd80908fecb0f9cfddf1eff4e7a1b1eae482f0fdaee1e1928b86d888ed909c968797a7cf

22
UOP1_Project/Assets/Prefabs/UI/Shared/Button/Button.prefab


m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:

m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}

m_TargetGraphic: {fileID: 6880293173517029546}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 11400000, guid: 30f6db2122a30480b996908173e1c7d7, type: 2}
m_MethodName: RaiseEvent
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
m_Calls: []
--- !u!1 &6063084967698345726
GameObject:
m_ObjectHideFlags: 0

m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:

m_fontAsset: {fileID: 11400000, guid: bb1c0fa0546634b36a7684080c5e13b4, type: 2}
m_sharedMaterial: {fileID: 2296753957421111848, guid: bb1c0fa0546634b36a7684080c5e13b4,
type: 2}
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []

m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 5795051186182416585}
m_TargetAssemblyTypeName:
m_MethodName: set_text
m_Mode: 0
m_Arguments:

93
UOP1_Project/Assets/Prefabs/UI/GameplayScene/InteractionItem.prefab


- component: {fileID: 5343201796417159315}
- component: {fileID: 2325994533620355897}
- component: {fileID: 5827123645950163235}
- component: {fileID: 3906127430495164392}
m_Layer: 5
m_Name: InteractionTitle
m_TagString: Untagged

m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 7833966164169029321}
m_RootOrder: 0
m_RootOrder: 1
m_AnchorMin: {x: 0.3526238, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -5.1, y: 0.099998474}
m_SizeDelta: {x: -19.043617, y: -22.682178}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 139.31, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5343201796417159315
CanvasRenderer:

m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text:
m_text: Talk
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: fe129390af88b40faa85c89db6820ea6, type: 2}
m_sharedMaterial: {fileID: -5592514773993622969, guid: fe129390af88b40faa85c89db6820ea6,

m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &3906127430495164392
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8444413815119477384}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
m_Name:
m_EditorClassIdentifier:
m_HorizontalFit: 2
m_VerticalFit: 0
--- !u!1 &9211289335331061973
GameObject:
m_ObjectHideFlags: 0

- component: {fileID: 4497022575651776856}
- component: {fileID: 3906777715444100303}
- component: {fileID: 3771874263071569758}
- component: {fileID: 9027062869609188091}
- component: {fileID: 4962621659089340232}
m_Layer: 5
m_Name: InteractionItem
m_TagString: Untagged

m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 8561783461039203306}
- {fileID: 8561783461039203306}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 22.77, y: 0}
m_SizeDelta: {x: 245.53693, y: 100}
m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 0}
m_AnchoredPosition: {x: -39.1728, y: 0}
m_SizeDelta: {x: 0, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4497022575651776856
CanvasRenderer:

m_EditorClassIdentifier:
_interactionName: {fileID: 5827123645950163235}
buttonPromptSetter: {fileID: 8799470841924692670}
--- !u!114 &9027062869609188091
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9211289335331061973}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 3245ec927659c4140ac4f8d17403cc18, type: 3}
m_Name:
m_EditorClassIdentifier:
m_HorizontalFit: 1
m_VerticalFit: 0
--- !u!114 &4962621659089340232
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9211289335331061973}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Padding:
m_Left: 0
m_Right: 20
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 3
m_Spacing: 5
m_ChildForceExpandWidth: 0
m_ChildForceExpandHeight: 1
m_ChildControlWidth: 0
m_ChildControlHeight: 1
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
--- !u!1001 &7580524552602297928
PrefabInstance:
m_ObjectHideFlags: 0

- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}
propertyPath: m_RootOrder
value: 1
value: 0
value: 0.3526238
value: 0
value: 1
value: 0
value: 0.046688084
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}

- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}
propertyPath: m_SizeDelta.x
value: -1
value: 100
objectReference: {fileID: 0}
- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}

- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}
propertyPath: m_AnchoredPosition.x
value: -1.5
value: 0
value: 0.099998474
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7263154644691972514, guid: 037cb8c24491a434b942daa78a265cdd,
type: 3}

783
UOP1_Project/Assets/Prefabs/UI/GameplayScene/GameScreen.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &968371501
--- !u!1 &408546762860347465
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}

m_Component:
- component: {fileID: 968371502}
- component: {fileID: 968371504}
- component: {fileID: 968371503}
- component: {fileID: 3370183546670484844}
- component: {fileID: 4126609042909153638}
- component: {fileID: 4351352784699630511}
m_Name: KeyName
m_Name: InteractionIndicator
--- !u!224 &968371502
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968371501}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1666695261}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -0.9000015}
m_SizeDelta: {x: 0, y: -27.465355}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &968371504
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968371501}
m_CullTransparentMesh: 0
--- !u!114 &968371503
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968371501}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: A
m_isRightToLeft: 0
m_fontAsset: {fileID: 0}
m_sharedMaterial: {fileID: 0}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 21.45
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 1
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 10.376236, y: 3.72703, z: 9.798893, w: 4.238579}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!1 &1327404833
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1327404834}
- component: {fileID: 1327404836}
- component: {fileID: 1327404835}
m_Layer: 5
m_Name: BG
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1327404834
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1327404833}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1666695261}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 2.5}
m_SizeDelta: {x: 0, y: -20.75956}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1327404836
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1327404833}
m_CullTransparentMesh: 0
--- !u!114 &1327404835
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1327404833}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 2945bfd764e74401e9550b61f87a1711, type: 3}
m_Type: 0
m_PreserveAspect: 1
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &1666695260
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1666695261}
- component: {fileID: 1666695262}
m_Layer: 5
m_Name: InteractionKey (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1666695261
--- !u!224 &3370183546670484844
m_GameObject: {fileID: 1666695260}
m_GameObject: {fileID: 408546762860347465}
- {fileID: 1327404834}
- {fileID: 968371502}
m_Father: {fileID: 6638366390932958226}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.046688084, y: 0}
m_AnchorMax: {x: 0.3526238, y: 1}
m_AnchoredPosition: {x: -1.5, y: 0.099998474}
m_SizeDelta: {x: -1, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1666695262
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1666695260}
m_CullTransparentMesh: 0
--- !u!1 &1981595047
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1981595048}
- component: {fileID: 1981595051}
- component: {fileID: 1981595050}
- component: {fileID: 1981595049}
m_Layer: 5
m_Name: InteractionTitle (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1981595048
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1981595047}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 6638366390932958226}
m_RootOrder: 1
- {fileID: 5217981830189993323}
m_Father: {fileID: 7806438032765429205}
m_RootOrder: 0
m_AnchorMin: {x: 0.3526238, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: -5.100006, y: 0.099998474}
m_SizeDelta: {x: -19.043617, y: -22.682178}
m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 0}
m_AnchoredPosition: {x: -226, y: 42}
m_SizeDelta: {x: 452, y: 84}
--- !u!222 &1981595051
--- !u!222 &4126609042909153638
m_GameObject: {fileID: 1981595047}
m_CullTransparentMesh: 0
--- !u!114 &1981595050
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1981595047}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Inventory
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4278190080
m_fontColor: {r: 0, g: 0, b: 0, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 30.3
m_fontSizeBase: 36
m_fontWeight: 400
m_enableAutoSizing: 1
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 1
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 1
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!114 &1981595049
m_GameObject: {fileID: 408546762860347465}
m_CullTransparentMesh: 1
--- !u!114 &4351352784699630511
m_GameObject: {fileID: 1981595047}
m_GameObject: {fileID: 408546762860347465}
m_Script: {fileID: 11500000, guid: 56eb0353ae6e5124bb35b17aff880f16, type: 3}
m_Script: {fileID: 11500000, guid: 8f5450ac502f84bd89a993767b4d01e0, type: 3}
m_StringReference:
m_TableReference:
m_TableCollectionName: GUID:7e97a5d681d6e4480b18b504a66e69b2
m_TableEntryReference:
m_KeyId: 8945393664
m_Key:
m_FallbackState: 0
m_FormatArguments: []
m_UpdateString:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1981595050}
m_TargetAssemblyTypeName:
m_MethodName: set_text
m_Mode: 0
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName:
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
_listInteractions:
- {fileID: 11400000, guid: 5cbae6c9eb2234189b57465fc303296b, type: 2}
- {fileID: 11400000, guid: 34232253270b147a4ac05a42a1882cd7, type: 2}
- {fileID: 11400000, guid: be11dea017adc4146bebe7603a32ac65, type: 2}
_interactionItem: {fileID: 1190722457586240764}
--- !u!1 &867124562088404035
GameObject:
m_ObjectHideFlags: 0

serializedVersion: 6
m_Component:
- component: {fileID: 7806438032765429205}
- component: {fileID: 1872709969965671691}
m_Layer: 5
m_Name: Bot Panel
m_TagString: Untagged

m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 5405141848621952428}
- {fileID: 6638366390932958226}
- {fileID: 3370183546670484844}
m_AnchorMin: {x: 0.68944675, y: 0.049791142}
m_AnchorMax: {x: 0.9653441, y: 0.14520888}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 0}
m_AnchoredPosition: {x: -57, y: 44}
m_SizeDelta: {x: 452, y: 84}
--- !u!114 &1872709969965671691
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 867124562088404035}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 30649d3a9faa99c48a7b1166b86bf2a0, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Padding:
m_Left: 10
m_Right: 10
m_Top: 10
m_Bottom: 10
m_ChildAlignment: 8
m_Spacing: 10
m_ChildForceExpandWidth: 0
m_ChildForceExpandHeight: 1
m_ChildControlWidth: 0
m_ChildControlHeight: 1
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
m_ReverseArrangement: 0
--- !u!1 &6822594373627009031
GameObject:
m_ObjectHideFlags: 0

m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6822594373627009031}
m_CullTransparentMesh: 0
--- !u!1 &8320703179963651321
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5405141848621952428}
- component: {fileID: 2048258856896756348}
- component: {fileID: 1798069423737873425}
m_Layer: 5
m_Name: InteractionPanel
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5405141848621952428
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8320703179963651321}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 5217981830189993323}
m_Father: {fileID: 7806438032765429205}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 219.22314, y: 0}
m_Pivot: {x: 1, y: 0}
--- !u!222 &2048258856896756348
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8320703179963651321}
m_CullTransparentMesh: 0
--- !u!114 &1798069423737873425
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8320703179963651321}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 8f5450ac502f84bd89a993767b4d01e0, type: 3}
m_Name:
m_EditorClassIdentifier:
_listInteractions:
- {fileID: 11400000, guid: 34232253270b147a4ac05a42a1882cd7, type: 2}
- {fileID: 11400000, guid: be11dea017adc4146bebe7603a32ac65, type: 2}
- {fileID: 11400000, guid: 5cbae6c9eb2234189b57465fc303296b, type: 2}
_interactionItem: {fileID: 1190722457586240764}
m_TransformParent: {fileID: 5405141848621952428}
m_TransformParent: {fileID: 3370183546670484844}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_AnchorMax.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_AnchorMin.y
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_SizeDelta.y
value: 84
objectReference: {fileID: 0}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_AnchoredPosition.x
value: 50
objectReference: {fileID: 0}
- target: {fileID: 1006702126982453226, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_AnchoredPosition.y
value: -42
objectReference: {fileID: 0}
- target: {fileID: 2325994533620355897, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_text
value: Talk
objectReference: {fileID: 0}
- target: {fileID: 3906127430495164392, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_HorizontalFit
value: 2
objectReference: {fileID: 0}
- target: {fileID: 5827123645950163235, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_StringReference.m_TableEntryReference.m_KeyId
value: 90730127360
objectReference: {fileID: 0}
- target: {fileID: 5827123645950163235, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_StringReference.m_TableReference.m_TableCollectionName
value: GUID:aa5b18277a15a4113950a3cc2f1e9909
objectReference: {fileID: 0}
- target: {fileID: 7011926376560294723, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_text
value:
objectReference: {fileID: 0}
value: 0.5
value: 1
value: 0.5
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}

- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_AnchorMax.y
value: 1
value: 0
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}

- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_SizeDelta.x
value: -0.0000076293945
value: 193.62
value: 0
value: 84
objectReference: {fileID: 0}
- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}

- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
value: -0
value: 0
value: -0
value: 0
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}

propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 9211289335331061973, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
propertyPath: m_Name
value: InteractionItem
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: db08b77f6847f4a8eb29ee9db04444e9, type: 3}
--- !u!224 &5217981830189993323 stripped
RectTransform:
m_CorrespondingSourceObject: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
m_PrefabInstance: {fileID: 2656605275679865762}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1190722457586240764 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 3771874263071569758, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
m_PrefabInstance: {fileID: 2656605275679865762}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 349da538f36aa4586bea2dabc1823587, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &6822594372048639223
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 7806438032765429205}
m_Modifications:
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_Pivot.x
value: 1
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_Pivot.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_AnchorMax.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_AnchorMin.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: 221.62048
value: 68.62
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: 83.05115
value: 84
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: 519.7228
value: 139.31
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 8561783461039203306, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: -51.525574
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
value: -42
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 657795093660955452, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 9211289335331061973, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: Button Inventory
value: InteractionItem
- target: {fileID: 657795093660955452, guid: b01383ebcda1049008a325f2ca7e6aca,
- target: {fileID: 9211289335331061973, guid: db08b77f6847f4a8eb29ee9db04444e9,
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3451373362961513096, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_Enabled
- target: {fileID: 3451373362961513096, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_StringReference.m_TableEntryReference.m_KeyId
value: 8945393664
objectReference: {fileID: 0}
- target: {fileID: 3451373362961513096, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_StringReference.m_TableReference.m_TableCollectionName
value: GUID:7e97a5d681d6e4480b18b504a66e69b2
objectReference: {fileID: 0}
- target: {fileID: 5795051186182416585, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_text
value: Inventory
objectReference: {fileID: 0}
- target: {fileID: 5795051186182416585, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_sharedMaterial
value:
objectReference: {fileID: 0}
- target: {fileID: 6063084967698345726, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6880293173517029546, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 21300000, guid: 468a7df47cf4a4c289ce9d02a92a25d1,
type: 3}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 11400000, guid: 30f6db2122a30480b996908173e1c7d7,
type: 2}
m_SourcePrefab: {fileID: 100100000, guid: b01383ebcda1049008a325f2ca7e6aca, type: 3}
--- !u!224 &6638366390932958226 stripped
m_SourcePrefab: {fileID: 100100000, guid: db08b77f6847f4a8eb29ee9db04444e9, type: 3}
--- !u!224 &5217981830189993323 stripped
m_CorrespondingSourceObject: {fileID: 184241180236232933, guid: b01383ebcda1049008a325f2ca7e6aca,
m_CorrespondingSourceObject: {fileID: 7833966164169029321, guid: db08b77f6847f4a8eb29ee9db04444e9,
m_PrefabInstance: {fileID: 6822594372048639223}
m_PrefabInstance: {fileID: 2656605275679865762}
--- !u!114 &1190722457586240764 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 3771874263071569758, guid: db08b77f6847f4a8eb29ee9db04444e9,
type: 3}
m_PrefabInstance: {fileID: 2656605275679865762}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 349da538f36aa4586bea2dabc1823587, type: 3}
m_Name:
m_EditorClassIdentifier:

126
UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/Inventory Inspector.prefab


m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 124570665470296045}
m_Father: {fileID: 7499314617860786457}
m_Father: {fileID: 6561198984233327144}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}

m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:

m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:

m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &7499314617860786458
--- !u!1 &6561198984233327147
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}

m_Component:
- component: {fileID: 7499314617860786457}
- component: {fileID: 5219158542763655557}
- component: {fileID: 1125162379129252214}
- component: {fileID: 6696775684869215864}
- component: {fileID: 6561198984233327144}
- component: {fileID: 4359911492745493063}
- component: {fileID: 8066896218347226441}
m_Layer: 5
m_Name: Inventory Inspector
m_TagString: Untagged

m_IsActive: 1
--- !u!224 &7499314617860786457
--- !u!224 &6561198984233327144
m_GameObject: {fileID: 7499314617860786458}
m_GameObject: {fileID: 6561198984233327147}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}

- {fileID: 1310611228648264730}
m_Father: {fileID: 0}
m_Father: {fileID: 7499314617860786457}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}

m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &5219158542763655557
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7499314617860786458}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9017e8eb9e8364152b6600ce8d330ffd, type: 3}
m_Name:
m_EditorClassIdentifier:
_inspectorDescriptionFiller: {fileID: 8401370031897072280}
_recipeIngredientsFiller: {fileID: 5706159857568002318}
--- !u!222 &1125162379129252214
--- !u!222 &4359911492745493063
m_GameObject: {fileID: 7499314617860786458}
m_GameObject: {fileID: 6561198984233327147}
--- !u!114 &6696775684869215864
--- !u!114 &8066896218347226441
m_GameObject: {fileID: 7499314617860786458}
m_GameObject: {fileID: 6561198984233327147}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}

m_Color: {r: 0, g: 0, b: 0, a: 0.65882355}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:

m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &7499314617860786458
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7499314617860786457}
- component: {fileID: 1125162379129252214}
- component: {fileID: 635454430512939246}
m_Layer: 5
m_Name: Inventory Inspector
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7499314617860786457
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7499314617860786458}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 6561198984233327144}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.06}
m_AnchorMax: {x: 0.48, y: 0.45}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1125162379129252214
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7499314617860786458}
m_CullTransparentMesh: 0
--- !u!114 &635454430512939246
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7499314617860786458}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e22db440a2cce4752b6edaa61c9b41b1, type: 3}
m_Name:
m_EditorClassIdentifier:
_inspectorDescription: {fileID: 8401370031897072280}
_recipeIngredients: {fileID: 5706159857568002318}
m_TransformParent: {fileID: 7499314617860786457}
m_TransformParent: {fileID: 6561198984233327144}
- target: {fileID: 2752258931120570592, guid: fca99b3d000214a42a6c17cebaa4fffb,
type: 3}
propertyPath: m_UpdateString.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: TMPro.TextMeshProUGUI, Unity.TextMeshPro
objectReference: {fileID: 0}
- target: {fileID: 5418752264980940646, guid: fca99b3d000214a42a6c17cebaa4fffb,
type: 3}
propertyPath: m_text
value: No translation found for 'New Entry' in Scene Names
objectReference: {fileID: 0}
- target: {fileID: 6885412833861187076, guid: fca99b3d000214a42a6c17cebaa4fffb,
type: 3}
propertyPath: m_UpdateString.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: TMPro.TextMeshProUGUI, Unity.TextMeshPro
objectReference: {fileID: 0}
- target: {fileID: 7245790260144332786, guid: fca99b3d000214a42a6c17cebaa4fffb,
type: 3}
propertyPath: m_Pivot.x

propertyPath: m_Name
value: Panel Description
objectReference: {fileID: 0}
- target: {fileID: 7385809990148588569, guid: fca99b3d000214a42a6c17cebaa4fffb,
type: 3}
propertyPath: m_text
value: No translation found for 'New Entry' in Scene Names
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fca99b3d000214a42a6c17cebaa4fffb, type: 3}
--- !u!224 &7499314617765273574 stripped

m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 7499314617860786457}
m_TransformParent: {fileID: 6561198984233327144}
m_Modifications:
- target: {fileID: 182579719192307743, guid: 87ec0c6e99b114ddb9aec2a692e59eb1,
type: 3}

2
UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InspectorDescription.prefab


- component: {fileID: 7245790260144332784}
- component: {fileID: 8650135857950233228}
m_Layer: 5
m_Name: Panel Description
m_Name: InspectorDescription
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0

2
UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InspectorIngredient.prefab


- component: {fileID: 8441529737247663060}
- component: {fileID: 882661226890377539}
m_Layer: 5
m_Name: Panel Ingredients
m_Name: InspectorIngredient
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0

18
UOP1_Project/Assets/Prefabs/UI/GameplayScene/Inventory/InventoryTab.prefab


- component: {fileID: 6416758842641707247}
- component: {fileID: 7574264689645128330}
m_Layer: 5
m_Name: IngredientTypeTab
m_Name: InventoryTab
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0

m_TargetGraphic: {fileID: 8095513507935635956}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_Calls:
- m_Target: {fileID: 7574264689645128330}
m_TargetAssemblyTypeName: UIInventoryTab, Assembly-CSharp
m_MethodName: ClickButton
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &7574264689645128330
MonoBehaviour:
m_ObjectHideFlags: 0

_actionButton: {fileID: 6416758842641707247}
_selectedIconColor: {r: 0.5803922, g: 0.427451, b: 0.28627452, a: 1}
_deselectedIconColor: {r: 0.7176471, g: 0.61960787, b: 0.48235297, a: 1}
_changeTabEvent: {fileID: 11400000, guid: 1aa5529abb4a341bd855f71a5493ec8c, type: 2}
_currentTabType: {fileID: 0}
--- !u!1 &8749842262858920214
GameObject:
m_ObjectHideFlags: 0

24
UOP1_Project/Assets/Scripts/UI/Inventory/UIInventoryItem.cs


using UnityEngine.UI;
using TMPro;
using UnityEngine.Localization.Components;
using UnityEngine.Events;
public class InventoryItemFiller : MonoBehaviour
public class UIInventoryItem : MonoBehaviour
{
[SerializeField] private Image _itemPreviewImage = default;
[SerializeField] private TextMeshProUGUI _itemCount = default;

[SerializeField] private Button _itemButton = default;
[SerializeField] private Image _bgInactiveImage = default;
ItemEventChannelSO _currentItemEvent;
public UnityAction<Item> ItemSelected;
public void SetItem(ItemStack itemStack, bool isSelected, ItemEventChannelSO selectItemEvent)
public void SetItem(ItemStack itemStack, bool isSelected)
{
_itemPreviewImage.gameObject.SetActive(true);
_itemCount.gameObject.SetActive(true);

_bgInactiveImage.gameObject.SetActive(false);
UnhoverItem();
_currentItemEvent = selectItemEvent;
_currentItem = itemStack;
_imgSelected.gameObject.SetActive(isSelected);

public void SetInactiveItem()
{
UnhoverItem();
_currentItem = null;
_itemPreviewImage.gameObject.SetActive(false);
_itemCount.gameObject.SetActive(false);
_bgImage.gameObject.SetActive(false);

public void HoverItem()
{
_imgHover.gameObject.SetActive(true);
}
public void UnhoverItem()
{

public void SelectItem()
{
_imgSelected.gameObject.SetActive(true);
if(_currentItemEvent!=null && _currentItem.Item!=null )
_currentItemEvent.RaiseEvent(_currentItem.Item);
if (ItemSelected != null && _currentItem != null && _currentItem.Item != null)
{
_imgSelected.gameObject.SetActive(true);
ItemSelected.Invoke(_currentItem.Item);
}
else
{
_imgSelected.gameObject.SetActive(false);
}
}

4
UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorIngredients.cs


using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class RecipeIngredientsFiller : MonoBehaviour
public class UIInspectorIngredients : MonoBehaviour
private List<IngredientFiller> instantiatedGameObjects = new List<IngredientFiller>();
private List<UIInspectorIngredientFiller> instantiatedGameObjects = new List<UIInspectorIngredientFiller>();
public void FillIngredients(List<ItemStack> listofIngredients, bool[] availabilityArray)
{

3
UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorIngredientFiller.cs


using UnityEngine.UI;
using UnityEngine.Localization.Components;
using TMPro;
using UnityEngine.Localization;
public class IngredientFiller : MonoBehaviour
public class UIInspectorIngredientFiller : MonoBehaviour
{
[SerializeField]

2
UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorDescription.cs


using UnityEngine.Localization.Components;
public class InspectorDescriptionFiller : MonoBehaviour
public class UIInspectorDescription : MonoBehaviour
{
[SerializeField] private LocalizeStringEvent _textDescription = default;

2
UOP1_Project/Assets/Scripts/UI/Inventory/UIInspectorPreview.cs


using UnityEngine;
using UnityEngine.UI;
public class InspectorPreviewFiller : MonoBehaviour
public class UIInspectorPreview : MonoBehaviour
{
[SerializeField]
private Image _previewImage = default;

3
UOP1_Project/Assets/Scripts/UI/Settings/UISettingTabFiller.cs


[SerializeField] private Color _colorUnselectedTab;
SettingTabType _currentTabType;
public void SetTab(settingTab settingTab, bool isSelected)
public void SetTab(SettingTab settingTab, bool isSelected)
{
_localizedTabTitle.StringReference = settingTab.title;
_currentTabType = settingTab.settingTabsType;

2
UOP1_Project/Assets/Scripts/UI/Settings/UISettingTabsFiller.cs


{
[SerializeField]
private UISettingTabFiller [] _settingTabsList = default;
public void FillTabs(List<settingTab> settingTabs)
public void FillTabs(List<SettingTab> settingTabs)
{
for (int i = 0; i < settingTabs.Count; i++)
{

13
UOP1_Project/Assets/Scripts/UI/Dialogue/UIDialogueChoiceFiller.cs


{
currentChoice = choiceToFill;
_choiceText.StringReference = choiceToFill.Response;
_actionButton.interactable = true;
_actionButton.interactable = true;
Debug.Log("Select");
_actionButton.UpdateDefault();
_actionButton.UpdateSelected();
else
{
Debug.Log("Not selected");
}
_makeAChoiceEvent.RaiseEvent(currentChoice);
_makeAChoiceEvent.RaiseEvent(currentChoice);
}

4
UOP1_Project/Assets/Scripts/UI/Dialogue/UIDialogueChoicesManager.cs


{
if (i < choices.Count)
{
listChoiceButtons[i].FillChoice(choices[i], i == 0);
listChoiceButtons[i].FillChoice(choices[i], i == 0);
}
else

}
}

65
UOP1_Project/Assets/Prefabs/UI/Shared/Popup/Confirmation_Popup.prefab


_titleText: {fileID: 2039863246}
_descriptionText: {fileID: 1866803534}
_buttonClose: {fileID: 4522327115018139732}
_popupButton1: {fileID: 1305894367536927122}
_popupButton2: {fileID: 6193337729689869391}
_popupButton1: {fileID: 333038048474534334}
_popupButton2: {fileID: 4860351073892375651}
_buttonClickedEvent: {fileID: 11400000, guid: eac31df6531974a71ae9be0774b27ae2,
type: 2}
_closePopupEvent: {fileID: 11400000, guid: 849b97e2c22a94f13b2c9870145abc4c, type: 2}
_confirmPopupEvent: {fileID: 11400000, guid: 2b8629cd2aced42e5a2b0d0cb5fb1af4, type: 2}
--- !u!1 &6177104812845493700
GameObject:
m_ObjectHideFlags: 0

type: 3}
propertyPath: m_Navigation.m_SelectOnRight
value:
objectReference: {fileID: 5931516840387701227}
objectReference: {fileID: 0}
- target: {fileID: 297632141197697312, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Name

propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Navigation.m_Mode
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Navigation.m_SelectOnRight
value:
objectReference: {fileID: 3999416306740657415}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 344bb0b18b7db4b4e8874973eb391ca1, type: 3}
--- !u!224 &1305894367536927133 stripped

m_PrefabInstance: {fileID: 1602752435333050556}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1305894367536927122 stripped
--- !u!114 &333038048474534334 stripped
m_CorrespondingSourceObject: {fileID: 297632141197697326, guid: 344bb0b18b7db4b4e8874973eb391ca1,
m_CorrespondingSourceObject: {fileID: 1342405351670587650, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
m_PrefabInstance: {fileID: 1602752435333050556}
m_PrefabAsset: {fileID: 0}

m_Script: {fileID: 11500000, guid: d21c5d8dcb2bf4a9a9adc2d2b723cfa6, type: 3}
m_Script: {fileID: 11500000, guid: 4100492e3231549df8aa06bff38e1ce9, type: 3}
--- !u!114 &1566308155770987574 stripped
--- !u!114 &8101017140907667674 stripped
m_CorrespondingSourceObject: {fileID: 252969180845692042, guid: 344bb0b18b7db4b4e8874973eb391ca1,
m_CorrespondingSourceObject: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
m_PrefabInstance: {fileID: 1602752435333050556}
m_PrefabAsset: {fileID: 0}

m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Script: {fileID: 11500000, guid: 77b26c7a54d143a7b78bcba222262814, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &5895846343219592545

type: 3}
propertyPath: m_Navigation.m_SelectOnLeft
value:
objectReference: {fileID: 1566308155770987574}
objectReference: {fileID: 0}
- target: {fileID: 297632141197697312, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Name

propertyPath: _currentType
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Navigation.m_Mode
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
propertyPath: m_Navigation.m_SelectOnLeft
value:
objectReference: {fileID: 8101017140907667674}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 344bb0b18b7db4b4e8874973eb391ca1, type: 3}
--- !u!224 &6193337729689869376 stripped

m_PrefabInstance: {fileID: 5895846343219592545}
m_PrefabAsset: {fileID: 0}
--- !u!114 &6193337729689869391 stripped
--- !u!114 &4860351073892375651 stripped
m_CorrespondingSourceObject: {fileID: 297632141197697326, guid: 344bb0b18b7db4b4e8874973eb391ca1,
m_CorrespondingSourceObject: {fileID: 1342405351670587650, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
m_PrefabInstance: {fileID: 5895846343219592545}
m_PrefabAsset: {fileID: 0}

m_Script: {fileID: 11500000, guid: d21c5d8dcb2bf4a9a9adc2d2b723cfa6, type: 3}
m_Script: {fileID: 11500000, guid: 4100492e3231549df8aa06bff38e1ce9, type: 3}
--- !u!114 &5931516840387701227 stripped
--- !u!114 &3999416306740657415 stripped
m_CorrespondingSourceObject: {fileID: 252969180845692042, guid: 344bb0b18b7db4b4e8874973eb391ca1,
m_CorrespondingSourceObject: {fileID: 7373103914063609958, guid: 344bb0b18b7db4b4e8874973eb391ca1,
type: 3}
m_PrefabInstance: {fileID: 5895846343219592545}
m_PrefabAsset: {fileID: 0}

m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Script: {fileID: 11500000, guid: 77b26c7a54d143a7b78bcba222262814, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &6177104811887306383

- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.size
value: 0
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 11400000, guid: 7c54b41498f9a487ca9f96f8cde68524,
type: 2}
objectReference: {fileID: 6177104812556640679}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState

type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: RaiseEvent
value: ClosePopupButtonClicked
value: VoidEventChannelSO, Assembly-CSharp
value: UIPopupSetter, Assembly-CSharp
objectReference: {fileID: 0}
- target: {fileID: 7745052901829238491, guid: b01383ebcda1049008a325f2ca7e6aca,
type: 3}

4
.DS_Store
文件差异内容过多而无法显示
查看文件

8
UOP1_Project/Assets/AddressableAssetsData/OSX.meta


fileFormatVersion: 2
guid: 99cd85814d7df4e3aa792603d4c4bfd3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

59
UOP1_Project/Assets/DialogueUSS.uss


Label#winDialogue {
margin-left: 5px;
margin-right: 5px;
margin-top: 5px;
margin-bottom: 5px;
background-color: rgb(158, 222, 115);
white-space: normal;
color: rgb(73, 94, 0);
}
Label#loseDialogue {
margin-left: 5px;
margin-right: 5px;
margin-top: 5px;
margin-bottom: 5px;
background-color: rgb(222, 115, 143);
white-space: normal;
color: rgb(89, 0, 9);
}
#Choices Button {
background-color: rgb(115, 115, 115);
}
Label#defaultDialogue {
margin-left: 5px;
margin-right: 5px;
margin-top: 5px;
margin-bottom: 5px;
background-color: rgb(209, 209, 209);
white-space: normal;
color: rgb(101, 101, 101);
}
Label#startDialogue {
margin-left: 5px;
margin-right: 5px;
margin-top: 5px;
margin-bottom: 5px;
background-color: rgb(209, 209, 209);
white-space: normal;
color: rgb(101, 101, 101);
}
#Dialogue {
align-items: stretch;
min-width: 50%;
}
#Choices {
align-items: stretch;
flex-direction: row;
justify-content: center;
}
#Choice {
align-items: stretch;
min-width: 50%;
}

11
UOP1_Project/Assets/DialogueUSS.uss.meta


fileFormatVersion: 2
guid: 33f1afe432a6d49bf91bda9df012a949
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0}
disableValidation: 0

22
UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions_it.asset


%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: e9620f8c34305754d8cc9a7e49e852d9, type: 3}
m_Name: Interactions_it
m_EditorClassIdentifier:
m_LocaleId:
m_Code: it
m_SharedData: {fileID: 11400000, guid: aa5b18277a15a4113950a3cc2f1e9909, type: 2}
m_Metadata:
m_Items: []
m_TableData: []
references:
version: 1

8
UOP1_Project/Assets/LocalizationFiles/AssetTables/Interaction/Interactions_it.asset.meta


fileFormatVersion: 2
guid: 6ff28064e4e684b65b9c22aa501c01c5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Prefabs/UI/GameplayScene.meta


fileFormatVersion: 2
guid: 57b3f3864c40b4162960b9a42a69e97c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Prefabs/UI/MainMenu.meta


fileFormatVersion: 2
guid: de8685342270c4f88a0412f8e65e7428
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Prefabs/UI/Shared.meta


fileFormatVersion: 2
guid: 5f77c963d4dac4bf18b954ce08131fc1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/Quests/Questline1/Quest3/Step3.meta


fileFormatVersion: 2
guid: 7705ad9018dc044ae915f6d9a1a8c3e5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/Quests/Questline3.meta


fileFormatVersion: 2
guid: cc0d7169fb8564bec9db9943e8075cb4
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

45
UOP1_Project/Assets/ScriptableObjects/StateMachine/Config/NPCPathwayConfigTownsfolk4.asset


%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: 76542500a512494489526e9bcfd3a1b8, type: 3}
m_Name: NPCPathwayConfigTownsfolk4
m_EditorClassIdentifier:
_stopDuration: 0.5
_speed: 1
Waypoints:
- waypoint: {x: -0.85746765, y: 0.2386721, z: 18.665764}
corners:
- {x: -0.85746765, y: 0.29796824, z: 18.665764}
- {x: -14.727016, y: 0.023244983, z: 3.4424734}
- waypoint: {x: -14.727016, y: 0.009132994, z: 3.4424734}
corners:
- {x: -14.727016, y: 0.023244983, z: 3.4424734}
- {x: 0, y: 0.011909485, z: 0}
- {x: 2.8, y: 0.011909485, z: -0.79999924}
- {x: 4.8, y: 0.011909485, z: -0.8999996}
- {x: 5.6, y: 0.061909676, z: -0.8999996}
- {x: 17.306187, y: 0.6537565, z: 0.9256344}
- waypoint: {x: 17.306187, y: 0.6071178, z: 0.9256344}
corners:
- {x: 17.306187, y: 0.6537565, z: 0.9256344}
- {x: 23.4, y: 1.3619099, z: 11.8}
- {x: 24.35562, y: 1.6066635, z: 14.649771}
- waypoint: {x: 24.35562, y: 1.5449709, z: 14.649771}
corners:
- {x: 24.35562, y: 1.6066635, z: 14.649771}
- {x: -0.85746765, y: 0.29796824, z: 18.665764}
_lineColor: {r: 0, g: 0.19270587, b: 1, a: 1}
_textSize: 20
_textColor: {r: 1, g: 1, b: 1, a: 1}
_probeRadius: 5
DisplayProbes: 0
ToggledNavMeshDisplay: 1
RealTimeEnabled: 1

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Config/NPCPathwayConfigTownsfolk4.asset.meta


fileFormatVersion: 2
guid: 2a85764ae534c9c4da142db0581b69da
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/Actions.meta


fileFormatVersion: 2
guid: b2b01ec8987f48b499b7f982f1733013
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/Conditions.meta


fileFormatVersion: 2
guid: e467b75771df5a64c874de6ac2f4f8b2
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/BardHare/States.meta


fileFormatVersion: 2
guid: 459a03bcc52461f4ab92cebcc6f15d55
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

15
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/IsANewLineDisplayed.asset


%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: 4c79d6f5f75586e4fa3fc91bdc6734b4, type: 3}
m_Name: IsANewLineDisplayed
m_EditorClassIdentifier:
_onLineDisplayed: {fileID: 11400000, guid: d987db4881d794f2da0013a89588d890, type: 2}

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/IsANewLineDisplayed.asset.meta


fileFormatVersion: 2
guid: f7264f99aeb6a8046b637306314556da
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StartTalking_RandomTimerElapsed.asset


%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: 176cefe776b9f114393e9f982ce6e208, type: 3}
m_Name: StartTalking_RandomTimerElapsed
m_EditorClassIdentifier:
minTimerLength: 1
maxTimerLength: 4

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StartTalking_RandomTimerElapsed.asset.meta


fileFormatVersion: 2
guid: 11d32529e8bdbc24e81d7b578426352c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalkingToProtagonist_RandomTimerElapsed.asset


%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: 176cefe776b9f114393e9f982ce6e208, type: 3}
m_Name: StopTalkingToProtagonist_RandomTimerElapsed
m_EditorClassIdentifier:
minTimerLength: 3
maxTimerLength: 5

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalkingToProtagonist_RandomTimerElapsed.asset.meta


fileFormatVersion: 2
guid: dcb00df815f03384cb096d4556e5ba95
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalking_RandomTimerElapsed.asset


%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: 176cefe776b9f114393e9f982ce6e208, type: 3}
m_Name: StopTalking_RandomTimerElapsed
m_EditorClassIdentifier:
minTimerLength: 5
maxTimerLength: 8

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/NPC/Conditions/StopTalking_RandomTimerElapsed.asset.meta


fileFormatVersion: 2
guid: 87426477fd21a254d8cd4ff826d4ee29
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

52
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsANewLineDisplayedSO.cs


using UnityEngine;
using UnityEngine.Localization;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "IsANewLineDisplayed", menuName = "State Machines/Conditions/Is A New Line Displayed")]
public class IsANewLineDisplayedSO : StateConditionSO {
[SerializeField] private DialogueLineChannelSO _onLineDisplayed = default;
protected override Condition CreateCondition() => new IsANewLineDisplayedCondition(_onLineDisplayed);
}
public class IsANewLineDisplayedCondition : Condition
{
private DialogueLineChannelSO _sayLineEvent;
private bool _isAnewLineDisplayed = false;
public IsANewLineDisplayedCondition(DialogueLineChannelSO sayLineEvent)
{
_sayLineEvent = sayLineEvent;
}
protected override bool Statement()
{
return _isAnewLineDisplayed;
}
public override void OnStateEnter()
{
if (_sayLineEvent != null)
{
_sayLineEvent.OnEventRaised += OnLineDisplayed;
}
}
public override void OnStateExit()
{
if (_sayLineEvent != null)
{
_sayLineEvent.OnEventRaised -= OnLineDisplayed;
}
_isAnewLineDisplayed = false;
}
private void OnLineDisplayed(LocalizedString line, ActorSO actor)
{
_isAnewLineDisplayed = true;
}
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsANewLineDisplayedSO.cs.meta


fileFormatVersion: 2
guid: 4c79d6f5f75586e4fa3fc91bdc6734b4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

25
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/TimeElapsedRandomConditionSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(menuName = "State Machines/Conditions/Time elapsed random")]
public class TimeElapsedRandomConditionSO : StateConditionSO<TimeElapsedRandomCondition>
{
public float minTimerLength = .5f;
public float maxTimerLength = .5f;
}
public class TimeElapsedRandomCondition : Condition
{
private float _startTime;
private float timerLength = .5f;
private TimeElapsedRandomConditionSO _originSO => (TimeElapsedRandomConditionSO)base.OriginSO; // The SO this Condition spawned from
public override void OnStateEnter()
{
_startTime = Time.time;
timerLength = Random.Range(_originSO.minTimerLength, _originSO.maxTimerLength);
}
protected override bool Statement() => Time.time >= _startTime + timerLength;
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/TimeElapsedRandomConditionSO.cs.meta


fileFormatVersion: 2
guid: 176cefe776b9f114393e9f982ce6e208
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

31
UOP1_Project/Assets/Scripts/Inventory/ScriptableObjects/InventoryTabSO.cs


using UnityEngine;
using UnityEngine.Localization;
// Created with collaboration from:
// https://forum.unity.com/threads/inventory-system.980646/
public enum InventoryTabType
{
Customization,
CookingItem,
Recipe
}
[CreateAssetMenu(fileName = "InventoryTabType", menuName = "Inventory/Inventory Tab Type", order = 51)]
public class InventoryTabSO : ScriptableObject
{
[Tooltip("The tab Name that will be displayed in the inventory")]
[SerializeField]
private LocalizedString _tabName = default;
[Tooltip("The tab Picture that will be displayed in the inventory")]
[SerializeField]
private Sprite _tabIcon = default;
[Tooltip("The tab type used to reference the item")]
[SerializeField] private InventoryTabType _tabType = default;
public LocalizedString TabName => _tabName;
public Sprite TabIcon => _tabIcon;
public InventoryTabType TabType => _tabType;
}

1
UOP1_Project/Assets/Scripts/Quests/.DS_Store
文件差异内容过多而无法显示
查看文件

36
UOP1_Project/Assets/Scripts/Quests/Editor/DialoguePreview.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Localization;
using UnityEngine.UIElements;
public class DialoguePreview : MonoBehaviour
{
private VisualElement CreateDialoguePreviewWithBranching(DialogueDataSO dialogueDataSO)
{
VisualElement dialoguePreviewVE = new VisualElement();
DialogueDataSO currentDialogue = dialogueDataSO;
foreach (LocalizedString localizedString in currentDialogue.DialogueLines)
{
Label dialogueLine = new Label();
dialogueLine.text = localizedString.GetLocalizedStringImmediateSafe();
dialoguePreviewVE.Add(dialogueLine);
}
if (currentDialogue.Choices != null)
{
foreach (Choice choice in currentDialogue.Choices)
{
Button dialogueButton = new Button();
dialogueButton.text = choice.Response.GetLocalizedStringImmediateSafe();
dialoguePreviewVE.Add(dialogueButton);
dialoguePreviewVE.Add(CreateDialoguePreviewWithBranching(choice.NextDialogue));
}
}
return dialoguePreviewVE;
}
}

11
UOP1_Project/Assets/Scripts/Quests/Editor/DialoguePreview.cs.meta


fileFormatVersion: 2
guid: 293d889c6c87c4f579c4dbc768dffba0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Scripts/UI/Dialogue.meta


fileFormatVersion: 2
guid: b1539c5374c824cb6bb9f640c4270fb6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Scripts/UI/Inventory.meta


fileFormatVersion: 2
guid: e9d0d2195859e4a3c89e18068364e3d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

部分文件因为文件数量过多而无法显示

正在加载...
取消
保存