浏览代码

Merge branch 'pr-bash' into main

/devlogs-3-input
Ciro Continisio 4 年前
当前提交
7c088a1f
共有 154 个文件被更改,包括 6720 次插入1830 次删除
  1. 917
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/IdleWithStaff.anim
  2. 51
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef.controller
  3. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_CaneHit.fbx.meta
  4. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Collect.fbx.meta
  5. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Idle.fbx.meta
  6. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Jump.fbx.meta
  7. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Walk.fbx.meta
  8. 4
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_faint.fbx.meta
  9. 2
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_run.fbx.meta
  10. 87
      UOP1_Project/Assets/Art/Characters/PlantCritter/Animation/PlantCritter.controller
  11. 610
      UOP1_Project/Assets/Prefabs/Characters/PigChef.prefab
  12. 219
      UOP1_Project/Assets/Prefabs/Characters/PlantCritter.prefab
  13. 5
      UOP1_Project/Assets/Prefabs/Furniture/LinenRoundChair.prefab
  14. 5
      UOP1_Project/Assets/Prefabs/Furniture/RoundTable.prefab
  15. 5
      UOP1_Project/Assets/Prefabs/Furniture/WoodenChair.prefab
  16. 5
      UOP1_Project/Assets/Prefabs/Furniture/WoodenTable.prefab
  17. 2
      UOP1_Project/Assets/Prefabs/GameplayEssentials/SpawnSystem.prefab
  18. 20
      UOP1_Project/Assets/Prefabs/Items/WalkingCane.prefab
  19. 6
      UOP1_Project/Assets/Prefabs/Props/Collectible Item.prefab
  20. 45
      UOP1_Project/Assets/Prefabs/Props/FryingPan.prefab
  21. 86
      UOP1_Project/Assets/Scenes/ArtShowcase.unity
  22. 37
      UOP1_Project/Assets/Scenes/ArtShowcase/LightingData.asset
  23. 1001
      UOP1_Project/Assets/Scenes/ArtShowcase/Lightmap-0_comp_light.exr
  24. 49
      UOP1_Project/Assets/Scenes/Examples/InteractionExample.unity
  25. 235
      UOP1_Project/Assets/Scenes/TestingGround.unity
  26. 30
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/PigChef_TransitionTable.asset
  27. 1
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Walking.asset
  28. 15
      UOP1_Project/Assets/Scripts/Characters/Protagonist.cs
  29. 635
      UOP1_Project/Assets/Scripts/Input/GameInput.cs
  30. 6
      UOP1_Project/Assets/Scripts/Input/InputReader.cs
  31. 2
      UOP1_Project/Assets/Scripts/Interaction/InteractionManager.cs
  32. 27
      UOP1_Project/Assets/Scripts/Inventory/CollectibleItem.cs
  33. 8
      UOP1_Project/Assets/Scripts/Inventory/ItemPicker.cs
  34. 2
      UOP1_Project/Assets/Scripts/SpawnSystem.cs
  35. 2
      UOP1_Project/Assets/Scripts/StateMachine/Editor/TransitionTableEditorWindow.cs
  36. 42
      UOP1_Project/Assets/Settings/Input/GameInput.inputactions
  37. 1001
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/RunWithStaff.anim
  38. 8
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/RunWithStaff.anim.meta
  39. 1001
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/WalkWithStaff.anim
  40. 8
      UOP1_Project/Assets/Art/Characters/PigChef/Animation/WalkWithStaff.anim.meta
  41. 8
      UOP1_Project/Assets/Art/Props/WoodenBench.meta
  42. 118
      UOP1_Project/Assets/Prefabs/Furniture/WoodenBench.prefab
  43. 7
      UOP1_Project/Assets/Prefabs/Furniture/WoodenBench.prefab.meta
  44. 15
      UOP1_Project/Assets/ScriptableObjects/StateMachine/AlwaysFalseCondition.asset
  45. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/AlwaysFalseCondition.asset.meta
  46. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies.meta
  47. 14
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/ActivateWeapon.asset
  48. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/ActivateWeapon.asset.meta
  49. 20
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/AttackTrigger.asset
  50. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/AttackTrigger.asset.meta
  51. 20
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/IsWalking_False_OnExit.asset
  52. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/IsWalking_False_OnExit.asset.meta
  53. 15
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/IsHoldingAttackAction.asset
  54. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/IsHoldingAttackAction.asset.meta
  55. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/Timer_AttackAnimation.asset
  56. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/Timer_AttackAnimation.asset.meta
  57. 17
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Attack.asset
  58. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Attack.asset.meta
  59. 44
      UOP1_Project/Assets/Scripts/Characters/Critter.cs
  60. 11
      UOP1_Project/Assets/Scripts/Characters/Critter.cs.meta
  61. 40
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ActivateWeaponSO.cs
  62. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ActivateWeaponSO.cs.meta
  63. 29
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/DestroyCritterSO.cs
  64. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/DestroyCritterSO.cs.meta
  65. 39
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/FaceProtagonistSO.cs
  66. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/FaceProtagonistSO.cs.meta
  67. 29
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ResetGetHitStateSO.cs
  68. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ResetGetHitStateSO.cs.meta
  69. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/AlwaysFalseConditionSO.cs
  70. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/AlwaysFalseConditionSO.cs.meta
  71. 37
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/HasReceivedEventSO.cs
  72. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/HasReceivedEventSO.cs.meta
  73. 31
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterGettingHitSO.cs
  74. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterGettingHitSO.cs.meta
  75. 29
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterKilledHitSO.cs
  76. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterKilledHitSO.cs.meta
  77. 32
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsHoldingAttackActionConditionSO.cs
  78. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsHoldingAttackActionConditionSO.cs.meta
  79. 48
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/PlayerIsInZoneSO.cs
  80. 11
      UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/PlayerIsInZoneSO.cs.meta
  81. 17
      UOP1_Project/Assets/Scripts/Characters/Weapon.cs
  82. 11
      UOP1_Project/Assets/Scripts/Characters/Weapon.cs.meta
  83. 35
      UOP1_Project/Assets/Scripts/Characters/ZoneTriggerController.cs
  84. 11
      UOP1_Project/Assets/Scripts/Characters/ZoneTriggerController.cs.meta
  85. 107
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.fbx.meta
  86. 8
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.mat.meta
  87. 66
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.fbx
  88. 145
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.mat
  89. 1001
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.png
  90. 92
      UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.png.meta
  91. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter.meta
  92. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Actions.meta
  93. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions.meta
  94. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAlertZone.asset
  95. 8
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAlertZone.asset.meta
  96. 16
      UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAttackZone.asset

917
UOP1_Project/Assets/Art/Characters/PigChef/Animation/IdleWithStaff.anim
文件差异内容过多而无法显示
查看文件

51
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef.controller


m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionDuration: 0.2
m_TransitionOffset: 0
m_ExitTime: 0.8076923
m_HasExitTime: 0

m_TransitionDuration: 0.1
m_TransitionOffset: 0
m_ExitTime: 0.7580645
m_HasExitTime: 1
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1

m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: -5252816984213320552, guid: c478a391cfbc4b74ebda3f9a57283705,
type: 3}
m_Motion: {fileID: 7400000, guid: e75fc203107f62d4cb7bdf94806fcc25, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:

m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_Conditions:
- m_ConditionMode: 1
m_ConditionEvent: IsWalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 3444333041856388052}
m_Solo: 0

m_TransitionDuration: 0.1
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8943662
m_HasExitTime: 1

m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsWalking
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -5457889688521372895}
m_Solo: 0

m_TransitionDuration: 0.1
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.8943662
m_HasExitTime: 1

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

m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionDuration: 0.2
m_TransitionOffset: 0
m_ExitTime: 0.8076923
m_HasExitTime: 0

m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: CaneHit
m_Speed: 1
m_Speed: 2
m_CycleOffset: 0
m_Transitions:
- {fileID: -3235251470832908421}

m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionDuration: 0.2
m_TransitionOffset: 0
m_ExitTime: 0.98747915
m_HasExitTime: 0

m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.1
m_TransitionDuration: 0.2
m_TransitionOffset: 0
m_ExitTime: 0.7580645
m_HasExitTime: 0

m_Name: Blend Tree
m_Childs:
- serializedVersion: 2
m_Motion: {fileID: -3419257869308726280, guid: d7866876f824fdd439187217dc8684f0,
type: 3}
m_Motion: {fileID: 7400000, guid: 5976cd6b402e9564c9451dbdae1c5871, type: 2}
m_Threshold: 0
m_Position: {x: 0, y: 0}
m_TimeScale: 1

- serializedVersion: 2
m_Motion: {fileID: 6200578666267062213, guid: 1da1da422bdf1a54788013b6f1edbd45,
type: 3}
m_Motion: {fileID: 7400000, guid: f2c6830f0e8743443a792b8ed6663b59, type: 2}
m_Threshold: 0.8
m_Position: {x: 0, y: 0}
m_TimeScale: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_CaneHit.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Collect.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Idle.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Jump.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_Walk.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

4
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_faint.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
generateSecondaryUV: 1
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1

2
UOP1_Project/Assets/Art/Characters/PigChef/Animation/PigChef_run.fbx.meta


addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 1
importVisibility: 0
importBlendShapes: 1
importCameras: 1
importLights: 1

87
UOP1_Project/Assets/Art/Characters/PlantCritter/Animation/PlantCritter.controller


m_Transitions:
- {fileID: 1304842204124139703}
- {fileID: -6117320398294166135}
- {fileID: 3149742496627694283}
- {fileID: 1218776814813949288}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}

m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_Conditions:
- m_ConditionMode: 2
m_ConditionEvent: IsDead
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -5704565605198617748}
m_Solo: 0

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &-4558656106610778546
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: IsDead
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -1129748727142868905}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.70000005
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-4130062669359518069
AnimatorState:
serializedVersion: 5

m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &-3863499363013708062
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: GetHit
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -3077816066201406678}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.70000005
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &-3077816066201406678
AnimatorState:
serializedVersion: 5

m_CycleOffset: 0
m_Transitions:
- {fileID: -5220075001053048283}
- {fileID: -4558656106610778546}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: Killed
m_Type: 9
- m_Name: IsDead
m_Type: 4
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0

m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &3149742496627694283
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: Killed
m_EventTreshold: 0
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: -1129748727142868905}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0.25
m_TransitionOffset: 0
m_ExitTime: 0.89830506
m_HasExitTime: 0
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1102 &3282315440550505860
AnimatorState:
serializedVersion: 5

m_CycleOffset: 0
m_Transitions:
- {fileID: 2566808087933946074}
- {fileID: -3863499363013708062}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0

610
UOP1_Project/Assets/Prefabs/Characters/PigChef.prefab
文件差异内容过多而无法显示
查看文件

219
UOP1_Project/Assets/Prefabs/Characters/PlantCritter.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &460632930
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 460632931}
- component: {fileID: 460632933}
- component: {fileID: 460632932}
m_Layer: 0
m_Name: AlertZone
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &460632931
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 460632930}
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: 8221149608678237085}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!135 &460632933
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 460632930}
m_Material: {fileID: 0}
m_IsTrigger: 1
m_Enabled: 1
serializedVersion: 2
m_Radius: 7
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &460632932
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 460632930}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7eb40f37003e762489325a71829af192, type: 3}
m_Name:
m_EditorClassIdentifier:
_enterZone:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 443910769}
m_MethodName: set_isPlayerInAlertZone
m_Mode: 0
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
_layers:
serializedVersion: 2
m_Bits: 512
--- !u!1 &575482847
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 575482848}
- component: {fileID: 575482850}
- component: {fileID: 575482849}
m_Layer: 0
m_Name: AttackZone
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &575482848
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 575482847}
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: 8221149608678237085}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!135 &575482850
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 575482847}
m_Material: {fileID: 0}
m_IsTrigger: 1
m_Enabled: 1
serializedVersion: 2
m_Radius: 1.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!114 &575482849
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 575482847}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7eb40f37003e762489325a71829af192, type: 3}
m_Name:
m_EditorClassIdentifier:
_enterZone:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 443910769}
m_MethodName: set_isPlayerInAttackZone
m_Mode: 0
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
_layers:
serializedVersion: 2
m_Bits: 512
--- !u!136 &236781474
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8745063237678790951}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.5180242
m_Height: 5
m_Direction: 1
m_Center: {x: -0.01654327, y: 2, z: 0.03308654}
--- !u!136 &1330865802894030747
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8745063237678790951}
m_Material: {fileID: 0}
m_IsTrigger: 1
m_Enabled: 1
m_Radius: 0.38419735
m_Height: 0.9338093
m_Direction: 1
m_Center: {x: 0, y: 0.50470877, z: 0.03308642}
--- !u!95 &950100416
Animator:
serializedVersion: 3

m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorControllerStateOnDisable: 0
--- !u!114 &-1101864067322258500
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8745063237678790951}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1eeda163c70b3cb4ebb88ba92f608fd8, type: 3}
m_Name:
m_EditorClassIdentifier:
_transitionTableSO: {fileID: 11400000, guid: c106e88137c90384bb4b18ba46869b64, type: 2}
_debugger:
debugTransitions: 0
appendConditionsInfo: 1
appendActionsInfo: 1
currentState:
--- !u!114 &443910769
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8745063237678790951}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d83d74df43f0a0b42afeaffe5c3e02cc, type: 3}
m_Name:
m_EditorClassIdentifier:
_fullHealth: 20
--- !u!1001 &8475173613595968630
PrefabInstance:
m_ObjectHideFlags: 0

- target: {fileID: -8679921383154817045, guid: 415e24332f8993c4da4c452ed27d2873,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
value: 1.09
value: 0
value: 9.556302e-17
value: 0
value: -7.58
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 415e24332f8993c4da4c452ed27d2873,
type: 3}

type: 3}
m_PrefabInstance: {fileID: 8475173613595968630}
m_PrefabAsset: {fileID: 0}
--- !u!4 &8221149608678237085 stripped
Transform:
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 415e24332f8993c4da4c452ed27d2873,
type: 3}
m_PrefabInstance: {fileID: 8475173613595968630}
m_PrefabAsset: {fileID: 0}

5
UOP1_Project/Assets/Prefabs/Furniture/LinenRoundChair.prefab


propertyPath: m_Name
value: LinenRoundChair
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 4a3a9ff36fc83054e92377c5d19d8b8c,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 4a3a9ff36fc83054e92377c5d19d8b8c, type: 3}
--- !u!1 &4916672299026840286 stripped

5
UOP1_Project/Assets/Prefabs/Furniture/RoundTable.prefab


propertyPath: m_Name
value: RoundTable
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: f6229270de600de43988496f212ee05a,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f6229270de600de43988496f212ee05a, type: 3}
--- !u!1 &1361401871558226816 stripped

5
UOP1_Project/Assets/Prefabs/Furniture/WoodenChair.prefab


propertyPath: m_Name
value: WoodenChair
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 2828e4decae56ce49ab172678a17cad5,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 2828e4decae56ce49ab172678a17cad5, type: 3}
--- !u!1 &8499599955814031790 stripped

5
UOP1_Project/Assets/Prefabs/Furniture/WoodenTable.prefab


propertyPath: m_Name
value: WoodenTable
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 3ecf234f9612ea44b994cb79d406e461,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3ecf234f9612ea44b994cb79d406e461, type: 3}
--- !u!1 &2200193680915662420 stripped

2
UOP1_Project/Assets/Prefabs/GameplayEssentials/SpawnSystem.prefab


_defaultSpawnIndex: 0
_playerPrefab: {fileID: 5557640735889932260, guid: 062b3805bf6784e4d9c599ee60eaa002,
type: 3}
_playerTransformAnchor: {fileID: 11400000, guid: 35fc4039342b6ba458d0d4429e89ee74,
type: 2}
_playerInstantiatedChannel: {fileID: 11400000, guid: 2723b3f59f7ede3498fe7e385d2bb6ee,
type: 2}
_spawnLocations:

20
UOP1_Project/Assets/Prefabs/Items/WalkingCane.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!136 &969440480837226763
CapsuleCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4112729716880871686}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
m_Radius: 0.091426246
m_Height: 1.1348616
m_Direction: 1
m_Center: {x: -0.01, y: -0.011085637, z: -0.02}
--- !u!1001 &3878215223713049687
PrefabInstance:
m_ObjectHideFlags: 0

objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: c5d242d6bd84e46af8b2bb85418929ef, type: 3}
--- !u!1 &4112729716880871686 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: c5d242d6bd84e46af8b2bb85418929ef,
type: 3}
m_PrefabInstance: {fileID: 3878215223713049687}
m_PrefabAsset: {fileID: 0}

6
UOP1_Project/Assets/Prefabs/Props/Collectible Item.prefab


m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2126586097156616357}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_IsTrigger: 1
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 1, y: 1, z: 1}

m_Script: {fileID: 11500000, guid: 49f5b1dd052cb44c895e54e5b56c5cfa, type: 3}
m_Name:
m_EditorClassIdentifier:
currentItem: {fileID: 11400000, guid: 8aff2c01ad67b48d0a0627754d613415, type: 2}
itemImages:
_currentItem: {fileID: 11400000, guid: 8aff2c01ad67b48d0a0627754d613415, type: 2}
_itemImages:
- {fileID: 2126586096464319711}
- {fileID: 2126586096979771816}
- {fileID: 2126586097710057018}

45
UOP1_Project/Assets/Prefabs/Props/FryingPan.prefab


- component: {fileID: 3516024816309364338}
- component: {fileID: 532751197952338391}
- component: {fileID: 2341943470874959133}
- component: {fileID: 5014624704208733057}
- component: {fileID: 5113541021563803720}
- component: {fileID: 8314518154369723250}
m_Layer: 0
m_Name: FryingPan
m_TagString: Untagged

m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!65 &5014624704208733057
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4287635054787804360}
m_Material: {fileID: 0}
m_IsTrigger: 1
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 0.5486597, y: 0.13224906, z: 0.54617786}
m_Center: {x: 0, y: -0.07155061, z: 0.5646882}
--- !u!54 &5113541021563803720
Rigidbody:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4287635054787804360}
serializedVersion: 2
m_Mass: 1
m_Drag: 0
m_AngularDrag: 0.05
m_UseGravity: 0
m_IsKinematic: 0
m_Interpolate: 0
m_Constraints: 0
m_CollisionDetection: 0
--- !u!114 &8314518154369723250
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4287635054787804360}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 37d3da059d8e76b439a7bd852dfb1f1f, type: 3}
m_Name:
m_EditorClassIdentifier:
_attackStrength: 5

86
UOP1_Project/Assets/Scenes/ArtShowcase.unity


m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.12963848, g: 0.3062157, b: 0.59012824, a: 1}
m_IndirectSpecularColor: {r: 0.15172704, g: 0.34956533, b: 0.7081114, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:

m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 2
m_BakeResolution: 20
m_BakeResolution: 5
m_AtlasSize: 1024
m_AO: 1
m_AOMaxDistance: 1

m_Type: 1
m_Shape: 0
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
m_Intensity: 1
m_Intensity: 0.67
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208

m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 2.3877232e-38, w: 0}
m_BoundingSphereOverride: {x: 0, y: 1.9338656e+12, z: 6.81e-43, w: 8.437878e+10}
m_UseBoundingSphereOverride: 0
m_ShadowRadius: 0
m_ShadowAngle: 0

- {fileID: 1729674923}
- {fileID: 871645980}
- {fileID: 85027788}
- {fileID: 1815966489}
- {fileID: 1815966489}
m_Father: {fileID: 0}
m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

- {fileID: 662585785}
- {fileID: 751507856}
- {fileID: 2019839953}
- {fileID: 1817848111}
m_Father: {fileID: 0}
m_RootOrder: 7
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

m_CorrespondingSourceObject: {fileID: 3243281902740937391, guid: 410782ac32370144dbb0fabfcd95242b,
type: 3}
m_PrefabInstance: {fileID: 1815966488}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &1817848110
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 1541407383}
m_Modifications:
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalPosition.x
value: 19.21
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalPosition.z
value: -0.01999998
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_RootOrder
value: 24
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 6817864098021700600, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
propertyPath: m_Name
value: WoodenBench
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: dfee6f41f09d9354d9c13429b3bbc666, type: 3}
--- !u!4 &1817848111 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6185197018001484098, guid: dfee6f41f09d9354d9c13429b3bbc666,
type: 3}
m_PrefabInstance: {fileID: 1817848110}
m_PrefabAsset: {fileID: 0}
--- !u!1 &1829969738
GameObject:

37
UOP1_Project/Assets/Scenes/ArtShowcase/LightingData.asset
文件差异内容过多而无法显示
查看文件

1001
UOP1_Project/Assets/Scenes/ArtShowcase/Lightmap-0_comp_light.exr
文件差异内容过多而无法显示
查看文件

49
UOP1_Project/Assets/Scenes/Examples/InteractionExample.unity


- target: {fileID: 1657732992883833910, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}
propertyPath: m_LocalRotation.y
value: 0.03563515
value: 0.03581318
value: -0.009175836
value: -0.008454343
value: 0.24919106
value: 0.22959732
objectReference: {fileID: 0}
- target: {fileID: 1657732992883833910, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}
propertyPath: m_LocalRotation.w
value: 0.97258985
value: 0.035795752
value: 0.03581318
value: -0.0085278535
value: -0.008454343
value: 0.23159355
value: 0.22959732
objectReference: {fileID: 0}
- target: {fileID: 2808035858438402709, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}
propertyPath: m_LocalRotation.w
value: 0.97258985
value: 0.2295973
value: 0.22959732
value: 0.03581321
value: 0.03581318
value: -0.00845435
value: -0.008454343
objectReference: {fileID: 0}
- target: {fileID: 2955398947125553842, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}
propertyPath: m_LocalRotation.w
value: 0.97258985
objectReference: {fileID: 0}
- target: {fileID: 8745341640208226293, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}

- target: {fileID: 8745341641394998850, guid: 45632f0a227c860489bcba0eb1f4ec3e,
type: 3}
propertyPath: m_LocalPosition.x
value: -0.73545265
value: -0.88254315
value: -9.9729185
value: -11.967503
value: 0.24919108
value: 0.22959733
value: 0.03563516
value: 0.03581318
value: -0.009175838
value: -0.008454344
value: -0.73545265
value: -0.88254315
value: -9.9729185
value: -11.967503
value: 0.967755
value: 0.97258985
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 45632f0a227c860489bcba0eb1f4ec3e, type: 3}

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

30
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/PigChef_TransitionTable.asset


- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 0222b854529fb8f418abda000d3b9b32, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: e128814ff6dbf63449bbc4dc8b6dc066, type: 2}
ToState: {fileID: 11400000, guid: bda8bfafdf35e3e4092bb96279d4894c, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: ac445a33a0d072a4b96458c8ea343d49, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: bda8bfafdf35e3e4092bb96279d4894c, type: 2}
ToState: {fileID: 11400000, guid: e128814ff6dbf63449bbc4dc8b6dc066, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 373ff606aeb23834eb964bdf9a6f6e3c, type: 2}
Operator: 0
- ExpectedResult: 1
Condition: {fileID: 11400000, guid: a79b812272ab8314aa305b39f9a2740a, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: 027d32476800b3543b2f5446a59054c8, type: 2}
ToState: {fileID: 11400000, guid: bda8bfafdf35e3e4092bb96279d4894c, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: ac445a33a0d072a4b96458c8ea343d49, type: 2}
Operator: 0
- FromState: {fileID: 11400000, guid: bda8bfafdf35e3e4092bb96279d4894c, type: 2}
ToState: {fileID: 11400000, guid: 027d32476800b3543b2f5446a59054c8, type: 2}
Conditions:
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: 373ff606aeb23834eb964bdf9a6f6e3c, type: 2}
Operator: 0
- ExpectedResult: 0
Condition: {fileID: 11400000, guid: a79b812272ab8314aa305b39f9a2740a, type: 2}
Operator: 0

1
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Walking.asset


- {fileID: 11400000, guid: 096d532f9a47f3145892efa1c4322e72, type: 2}
- {fileID: 11400000, guid: fa0ce5b895dcf17499819f0d6f2dce96, type: 2}
- {fileID: 11400000, guid: 5aac41c53e47f1040a52303b2000ceb5, type: 2}
- {fileID: 11400000, guid: 74800142628360a42bb516b1e5c630e1, type: 2}

15
UOP1_Project/Assets/Scripts/Characters/Protagonist.cs


[SerializeField] private InputReader _inputReader = default;
public TransformAnchor gameplayCameraTransform;
[SerializeField] private VoidEventChannelSO _openInventoryChannel = default;
[HideInInspector] public bool attackInput;
[HideInInspector] public Vector3 movementInput; //Initial input coming from the Protagonist script
[HideInInspector] public Vector3 movementVector; //Final movement vector, manipulated by the StateMachine actions
[HideInInspector] public ControllerColliderHit lastHit;

_inputReader.jumpEvent += OnJumpInitiated;
_inputReader.jumpCanceledEvent += OnJumpCanceled;
_inputReader.moveEvent += OnMove;
_inputReader.extraActionEvent += OnExtraAction;
_inputReader.openInventoryEvent += OnOpenInventory;
_inputReader.attackEvent += OnAttack;
//...
}

_inputReader.jumpEvent -= OnJumpInitiated;
_inputReader.jumpCanceledEvent -= OnJumpCanceled;
_inputReader.moveEvent -= OnMove;
_inputReader.extraActionEvent -= OnExtraAction;
_inputReader.openInventoryEvent -= OnOpenInventory;
_inputReader.startedRunning -= OnStartedRunning;
_inputReader.stoppedRunning -= OnStoppedRunning;
//...

private void OnStartedRunning() => isRunning = true;
// This handler is just used for debug, for now
private void OnExtraAction()
private void OnOpenInventory()
extraActionInput = true;
_openInventoryChannel.RaiseEvent();
private void OnAttack() => attackInput = true;
}

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


public class @GameInput : IInputActionCollection, IDisposable
{
public InputActionAsset asset { get; }
public @GameInput()
{
asset = InputActionAsset.FromJson(@"{
public InputActionAsset asset { get; }
public @GameInput()
{
asset = InputActionAsset.FromJson(@"{
""name"": ""GameInput"",
""maps"": [
{

""interactions"": """"
},
{
""name"": ""ExtraAction"",
""name"": ""OpenInventory"",
""type"": ""Button"",
""id"": ""1b6ae4df-f5e6-42fc-92b6-3dcc2e126563"",
""expectedControlType"": ""Button"",

{
""name"": """",
""id"": ""91ce58d8-88e1-4ade-945b-59c4f0939828"",
""path"": ""<Keyboard>/j"",
""path"": ""<Keyboard>/f"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",
""action"": ""Attack"",
""isComposite"": false,
""isPartOfComposite"": false
},
{
""name"": """",
""id"": ""4c248131-d3fe-4545-b4dc-ba0690c01312"",
""path"": ""<Mouse>/leftButton"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",

{
""name"": """",
""id"": ""937b421c-9467-4b47-a1fd-445b9b44d5c9"",
""path"": ""<Keyboard>/l"",
""path"": ""<Keyboard>/q"",
""action"": ""ExtraAction"",
""action"": ""OpenInventory"",
""isComposite"": false,
""isPartOfComposite"": false
},

""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",
""action"": ""ExtraAction"",
""action"": ""OpenInventory"",
""isComposite"": false,
""isPartOfComposite"": false
},

""isPartOfComposite"": false
},
{
""name"": ""Keyboard TFGH"",
""name"": ""Keyboard IJKL"",
""id"": ""8e17360e-f036-4963-93f6-05d14787dfb5"",
""path"": ""2DVector(mode=1)"",
""interactions"": """",

{
""name"": ""up"",
""id"": ""9a4ec3f5-78bf-4f42-b7d7-f1edd7ce12dc"",
""path"": ""<Keyboard>/t"",
""path"": ""<Keyboard>/i"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",

{
""name"": ""down"",
""id"": ""5d82874e-55d8-4d54-84f5-c4d59dc3b39c"",
""path"": ""<Keyboard>/g"",
""path"": ""<Keyboard>/k"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",

{
""name"": ""left"",
""id"": ""13a13bd5-f4ec-4f5b-9a8e-ef1165cc9f5f"",
""path"": ""<Keyboard>/f"",
""path"": ""<Keyboard>/j"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",

{
""name"": ""right"",
""id"": ""78626b57-196b-4f24-9a3f-af2477d3633b"",
""path"": ""<Keyboard>/h"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",
""action"": ""RotateCamera"",
""isComposite"": false,
""isPartOfComposite"": true
},
{
""name"": ""up"",
""id"": ""4e483eb2-4460-4dc1-af9f-9bcb31ebe837"",
""path"": ""<Gamepad>/rightStick/up"",
""path"": ""<Keyboard>/l"",
""interactions"": """",
""processors"": """",
""groups"": ""KeyboardOrGamepad"",

}
]
}");
// Gameplay
m_Gameplay = asset.FindActionMap("Gameplay", throwIfNotFound: true);
m_Gameplay_Move = m_Gameplay.FindAction("Move", throwIfNotFound: true);
m_Gameplay_Jump = m_Gameplay.FindAction("Jump", throwIfNotFound: true);
m_Gameplay_Attack = m_Gameplay.FindAction("Attack", throwIfNotFound: true);
m_Gameplay_Interact = m_Gameplay.FindAction("Interact", throwIfNotFound: true);
m_Gameplay_Pause = m_Gameplay.FindAction("Pause", throwIfNotFound: true);
m_Gameplay_ExtraAction = m_Gameplay.FindAction("ExtraAction", throwIfNotFound: true);
m_Gameplay_RotateCamera = m_Gameplay.FindAction("RotateCamera", throwIfNotFound: true);
m_Gameplay_MouseControlCamera = m_Gameplay.FindAction("MouseControlCamera", throwIfNotFound: true);
m_Gameplay_Run = m_Gameplay.FindAction("Run", throwIfNotFound: true);
// Menus
m_Menus = asset.FindActionMap("Menus", throwIfNotFound: true);
m_Menus_MoveSelection = m_Menus.FindAction("MoveSelection", throwIfNotFound: true);
m_Menus_Confirm = m_Menus.FindAction("Confirm", throwIfNotFound: true);
m_Menus_Cancel = m_Menus.FindAction("Cancel", throwIfNotFound: true);
m_Menus_MouseMove = m_Menus.FindAction("MouseMove", throwIfNotFound: true);
m_Menus_Unpause = m_Menus.FindAction("Unpause", throwIfNotFound: true);
// Dialogues
m_Dialogues = asset.FindActionMap("Dialogues", throwIfNotFound: true);
m_Dialogues_MoveSelection = m_Dialogues.FindAction("MoveSelection", throwIfNotFound: true);
m_Dialogues_AdvanceDialogue = m_Dialogues.FindAction("AdvanceDialogue", throwIfNotFound: true);
}
// Gameplay
m_Gameplay = asset.FindActionMap("Gameplay", throwIfNotFound: true);
m_Gameplay_Move = m_Gameplay.FindAction("Move", throwIfNotFound: true);
m_Gameplay_Jump = m_Gameplay.FindAction("Jump", throwIfNotFound: true);
m_Gameplay_Attack = m_Gameplay.FindAction("Attack", throwIfNotFound: true);
m_Gameplay_Interact = m_Gameplay.FindAction("Interact", throwIfNotFound: true);
m_Gameplay_Pause = m_Gameplay.FindAction("Pause", throwIfNotFound: true);
m_Gameplay_OpenInventory = m_Gameplay.FindAction("OpenInventory", throwIfNotFound: true);
m_Gameplay_RotateCamera = m_Gameplay.FindAction("RotateCamera", throwIfNotFound: true);
m_Gameplay_MouseControlCamera = m_Gameplay.FindAction("MouseControlCamera", throwIfNotFound: true);
m_Gameplay_Run = m_Gameplay.FindAction("Run", throwIfNotFound: true);
// Menus
m_Menus = asset.FindActionMap("Menus", throwIfNotFound: true);
m_Menus_MoveSelection = m_Menus.FindAction("MoveSelection", throwIfNotFound: true);
m_Menus_Confirm = m_Menus.FindAction("Confirm", throwIfNotFound: true);
m_Menus_Cancel = m_Menus.FindAction("Cancel", throwIfNotFound: true);
m_Menus_MouseMove = m_Menus.FindAction("MouseMove", throwIfNotFound: true);
m_Menus_Unpause = m_Menus.FindAction("Unpause", throwIfNotFound: true);
// Dialogues
m_Dialogues = asset.FindActionMap("Dialogues", throwIfNotFound: true);
m_Dialogues_MoveSelection = m_Dialogues.FindAction("MoveSelection", throwIfNotFound: true);
m_Dialogues_AdvanceDialogue = m_Dialogues.FindAction("AdvanceDialogue", throwIfNotFound: true);
}
public void Dispose()
{
UnityEngine.Object.Destroy(asset);
}
public void Dispose()
{
UnityEngine.Object.Destroy(asset);
}
public InputBinding? bindingMask
{
get => asset.bindingMask;
set => asset.bindingMask = value;
}
public InputBinding? bindingMask
{
get => asset.bindingMask;
set => asset.bindingMask = value;
}
public ReadOnlyArray<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputDevice>? devices
{
get => asset.devices;
set => asset.devices = value;
}
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public ReadOnlyArray<InputControlScheme> controlSchemes => asset.controlSchemes;
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public bool Contains(InputAction action)
{
return asset.Contains(action);
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
public IEnumerator<InputAction> GetEnumerator()
{
return asset.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public void Enable()
{
asset.Enable();
}
public void Enable()
{
asset.Enable();
}
public void Disable()
{
asset.Disable();
}
public void Disable()
{
asset.Disable();
}
// Gameplay
private readonly InputActionMap m_Gameplay;
private IGameplayActions m_GameplayActionsCallbackInterface;
private readonly InputAction m_Gameplay_Move;
private readonly InputAction m_Gameplay_Jump;
private readonly InputAction m_Gameplay_Attack;
private readonly InputAction m_Gameplay_Interact;
private readonly InputAction m_Gameplay_Pause;
private readonly InputAction m_Gameplay_ExtraAction;
private readonly InputAction m_Gameplay_RotateCamera;
private readonly InputAction m_Gameplay_MouseControlCamera;
private readonly InputAction m_Gameplay_Run;
public struct GameplayActions
{
private @GameInput m_Wrapper;
public GameplayActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @Move => m_Wrapper.m_Gameplay_Move;
public InputAction @Jump => m_Wrapper.m_Gameplay_Jump;
public InputAction @Attack => m_Wrapper.m_Gameplay_Attack;
public InputAction @Interact => m_Wrapper.m_Gameplay_Interact;
public InputAction @Pause => m_Wrapper.m_Gameplay_Pause;
public InputAction @ExtraAction => m_Wrapper.m_Gameplay_ExtraAction;
public InputAction @RotateCamera => m_Wrapper.m_Gameplay_RotateCamera;
public InputAction @MouseControlCamera => m_Wrapper.m_Gameplay_MouseControlCamera;
public InputAction @Run => m_Wrapper.m_Gameplay_Run;
public InputActionMap Get() { return m_Wrapper.m_Gameplay; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(GameplayActions set) { return set.Get(); }
public void SetCallbacks(IGameplayActions instance)
{
if (m_Wrapper.m_GameplayActionsCallbackInterface != null)
{
@Move.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Move.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Move.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Jump.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Jump.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Jump.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Attack.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Attack.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Attack.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Interact.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Interact.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Interact.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Pause.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@Pause.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@Pause.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@ExtraAction.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnExtraAction;
@ExtraAction.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnExtraAction;
@ExtraAction.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnExtraAction;
@RotateCamera.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@RotateCamera.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@RotateCamera.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@MouseControlCamera.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@MouseControlCamera.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@MouseControlCamera.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@Run.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
@Run.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
@Run.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
}
m_Wrapper.m_GameplayActionsCallbackInterface = instance;
if (instance != null)
{
@Move.started += instance.OnMove;
@Move.performed += instance.OnMove;
@Move.canceled += instance.OnMove;
@Jump.started += instance.OnJump;
@Jump.performed += instance.OnJump;
@Jump.canceled += instance.OnJump;
@Attack.started += instance.OnAttack;
@Attack.performed += instance.OnAttack;
@Attack.canceled += instance.OnAttack;
@Interact.started += instance.OnInteract;
@Interact.performed += instance.OnInteract;
@Interact.canceled += instance.OnInteract;
@Pause.started += instance.OnPause;
@Pause.performed += instance.OnPause;
@Pause.canceled += instance.OnPause;
@ExtraAction.started += instance.OnExtraAction;
@ExtraAction.performed += instance.OnExtraAction;
@ExtraAction.canceled += instance.OnExtraAction;
@RotateCamera.started += instance.OnRotateCamera;
@RotateCamera.performed += instance.OnRotateCamera;
@RotateCamera.canceled += instance.OnRotateCamera;
@MouseControlCamera.started += instance.OnMouseControlCamera;
@MouseControlCamera.performed += instance.OnMouseControlCamera;
@MouseControlCamera.canceled += instance.OnMouseControlCamera;
@Run.started += instance.OnRun;
@Run.performed += instance.OnRun;
@Run.canceled += instance.OnRun;
}
}
}
public GameplayActions @Gameplay => new GameplayActions(this);
// Gameplay
private readonly InputActionMap m_Gameplay;
private IGameplayActions m_GameplayActionsCallbackInterface;
private readonly InputAction m_Gameplay_Move;
private readonly InputAction m_Gameplay_Jump;
private readonly InputAction m_Gameplay_Attack;
private readonly InputAction m_Gameplay_Interact;
private readonly InputAction m_Gameplay_Pause;
private readonly InputAction m_Gameplay_OpenInventory;
private readonly InputAction m_Gameplay_RotateCamera;
private readonly InputAction m_Gameplay_MouseControlCamera;
private readonly InputAction m_Gameplay_Run;
public struct GameplayActions
{
private @GameInput m_Wrapper;
public GameplayActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @Move => m_Wrapper.m_Gameplay_Move;
public InputAction @Jump => m_Wrapper.m_Gameplay_Jump;
public InputAction @Attack => m_Wrapper.m_Gameplay_Attack;
public InputAction @Interact => m_Wrapper.m_Gameplay_Interact;
public InputAction @Pause => m_Wrapper.m_Gameplay_Pause;
public InputAction @OpenInventory => m_Wrapper.m_Gameplay_OpenInventory;
public InputAction @RotateCamera => m_Wrapper.m_Gameplay_RotateCamera;
public InputAction @MouseControlCamera => m_Wrapper.m_Gameplay_MouseControlCamera;
public InputAction @Run => m_Wrapper.m_Gameplay_Run;
public InputActionMap Get() { return m_Wrapper.m_Gameplay; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(GameplayActions set) { return set.Get(); }
public void SetCallbacks(IGameplayActions instance)
{
if (m_Wrapper.m_GameplayActionsCallbackInterface != null)
{
@Move.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Move.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Move.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMove;
@Jump.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Jump.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Jump.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnJump;
@Attack.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Attack.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Attack.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnAttack;
@Interact.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Interact.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Interact.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnInteract;
@Pause.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@Pause.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@Pause.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnPause;
@OpenInventory.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnOpenInventory;
@OpenInventory.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnOpenInventory;
@OpenInventory.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnOpenInventory;
@RotateCamera.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@RotateCamera.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@RotateCamera.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRotateCamera;
@MouseControlCamera.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@MouseControlCamera.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@MouseControlCamera.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnMouseControlCamera;
@Run.started -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
@Run.performed -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
@Run.canceled -= m_Wrapper.m_GameplayActionsCallbackInterface.OnRun;
}
m_Wrapper.m_GameplayActionsCallbackInterface = instance;
if (instance != null)
{
@Move.started += instance.OnMove;
@Move.performed += instance.OnMove;
@Move.canceled += instance.OnMove;
@Jump.started += instance.OnJump;
@Jump.performed += instance.OnJump;
@Jump.canceled += instance.OnJump;
@Attack.started += instance.OnAttack;
@Attack.performed += instance.OnAttack;
@Attack.canceled += instance.OnAttack;
@Interact.started += instance.OnInteract;
@Interact.performed += instance.OnInteract;
@Interact.canceled += instance.OnInteract;
@Pause.started += instance.OnPause;
@Pause.performed += instance.OnPause;
@Pause.canceled += instance.OnPause;
@OpenInventory.started += instance.OnOpenInventory;
@OpenInventory.performed += instance.OnOpenInventory;
@OpenInventory.canceled += instance.OnOpenInventory;
@RotateCamera.started += instance.OnRotateCamera;
@RotateCamera.performed += instance.OnRotateCamera;
@RotateCamera.canceled += instance.OnRotateCamera;
@MouseControlCamera.started += instance.OnMouseControlCamera;
@MouseControlCamera.performed += instance.OnMouseControlCamera;
@MouseControlCamera.canceled += instance.OnMouseControlCamera;
@Run.started += instance.OnRun;
@Run.performed += instance.OnRun;
@Run.canceled += instance.OnRun;
}
}
}
public GameplayActions @Gameplay => new GameplayActions(this);
// Menus
private readonly InputActionMap m_Menus;
private IMenusActions m_MenusActionsCallbackInterface;
private readonly InputAction m_Menus_MoveSelection;
private readonly InputAction m_Menus_Confirm;
private readonly InputAction m_Menus_Cancel;
private readonly InputAction m_Menus_MouseMove;
private readonly InputAction m_Menus_Unpause;
public struct MenusActions
{
private @GameInput m_Wrapper;
public MenusActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @MoveSelection => m_Wrapper.m_Menus_MoveSelection;
public InputAction @Confirm => m_Wrapper.m_Menus_Confirm;
public InputAction @Cancel => m_Wrapper.m_Menus_Cancel;
public InputAction @MouseMove => m_Wrapper.m_Menus_MouseMove;
public InputAction @Unpause => m_Wrapper.m_Menus_Unpause;
public InputActionMap Get() { return m_Wrapper.m_Menus; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(MenusActions set) { return set.Get(); }
public void SetCallbacks(IMenusActions instance)
{
if (m_Wrapper.m_MenusActionsCallbackInterface != null)
{
@MoveSelection.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@MoveSelection.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@MoveSelection.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@Confirm.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Confirm.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Confirm.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Cancel.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@Cancel.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@Cancel.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@MouseMove.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@MouseMove.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@MouseMove.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@Unpause.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
@Unpause.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
@Unpause.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
}
m_Wrapper.m_MenusActionsCallbackInterface = instance;
if (instance != null)
{
@MoveSelection.started += instance.OnMoveSelection;
@MoveSelection.performed += instance.OnMoveSelection;
@MoveSelection.canceled += instance.OnMoveSelection;
@Confirm.started += instance.OnConfirm;
@Confirm.performed += instance.OnConfirm;
@Confirm.canceled += instance.OnConfirm;
@Cancel.started += instance.OnCancel;
@Cancel.performed += instance.OnCancel;
@Cancel.canceled += instance.OnCancel;
@MouseMove.started += instance.OnMouseMove;
@MouseMove.performed += instance.OnMouseMove;
@MouseMove.canceled += instance.OnMouseMove;
@Unpause.started += instance.OnUnpause;
@Unpause.performed += instance.OnUnpause;
@Unpause.canceled += instance.OnUnpause;
}
}
}
public MenusActions @Menus => new MenusActions(this);
// Menus
private readonly InputActionMap m_Menus;
private IMenusActions m_MenusActionsCallbackInterface;
private readonly InputAction m_Menus_MoveSelection;
private readonly InputAction m_Menus_Confirm;
private readonly InputAction m_Menus_Cancel;
private readonly InputAction m_Menus_MouseMove;
private readonly InputAction m_Menus_Unpause;
public struct MenusActions
{
private @GameInput m_Wrapper;
public MenusActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @MoveSelection => m_Wrapper.m_Menus_MoveSelection;
public InputAction @Confirm => m_Wrapper.m_Menus_Confirm;
public InputAction @Cancel => m_Wrapper.m_Menus_Cancel;
public InputAction @MouseMove => m_Wrapper.m_Menus_MouseMove;
public InputAction @Unpause => m_Wrapper.m_Menus_Unpause;
public InputActionMap Get() { return m_Wrapper.m_Menus; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(MenusActions set) { return set.Get(); }
public void SetCallbacks(IMenusActions instance)
{
if (m_Wrapper.m_MenusActionsCallbackInterface != null)
{
@MoveSelection.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@MoveSelection.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@MoveSelection.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnMoveSelection;
@Confirm.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Confirm.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Confirm.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnConfirm;
@Cancel.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@Cancel.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@Cancel.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnCancel;
@MouseMove.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@MouseMove.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@MouseMove.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnMouseMove;
@Unpause.started -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
@Unpause.performed -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
@Unpause.canceled -= m_Wrapper.m_MenusActionsCallbackInterface.OnUnpause;
}
m_Wrapper.m_MenusActionsCallbackInterface = instance;
if (instance != null)
{
@MoveSelection.started += instance.OnMoveSelection;
@MoveSelection.performed += instance.OnMoveSelection;
@MoveSelection.canceled += instance.OnMoveSelection;
@Confirm.started += instance.OnConfirm;
@Confirm.performed += instance.OnConfirm;
@Confirm.canceled += instance.OnConfirm;
@Cancel.started += instance.OnCancel;
@Cancel.performed += instance.OnCancel;
@Cancel.canceled += instance.OnCancel;
@MouseMove.started += instance.OnMouseMove;
@MouseMove.performed += instance.OnMouseMove;
@MouseMove.canceled += instance.OnMouseMove;
@Unpause.started += instance.OnUnpause;
@Unpause.performed += instance.OnUnpause;
@Unpause.canceled += instance.OnUnpause;
}
}
}
public MenusActions @Menus => new MenusActions(this);
// Dialogues
private readonly InputActionMap m_Dialogues;
private IDialoguesActions m_DialoguesActionsCallbackInterface;
private readonly InputAction m_Dialogues_MoveSelection;
private readonly InputAction m_Dialogues_AdvanceDialogue;
public struct DialoguesActions
{
private @GameInput m_Wrapper;
public DialoguesActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @MoveSelection => m_Wrapper.m_Dialogues_MoveSelection;
public InputAction @AdvanceDialogue => m_Wrapper.m_Dialogues_AdvanceDialogue;
public InputActionMap Get() { return m_Wrapper.m_Dialogues; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(DialoguesActions set) { return set.Get(); }
public void SetCallbacks(IDialoguesActions instance)
{
if (m_Wrapper.m_DialoguesActionsCallbackInterface != null)
{
@MoveSelection.started -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@MoveSelection.performed -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@MoveSelection.canceled -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@AdvanceDialogue.started -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
@AdvanceDialogue.performed -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
@AdvanceDialogue.canceled -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
}
m_Wrapper.m_DialoguesActionsCallbackInterface = instance;
if (instance != null)
{
@MoveSelection.started += instance.OnMoveSelection;
@MoveSelection.performed += instance.OnMoveSelection;
@MoveSelection.canceled += instance.OnMoveSelection;
@AdvanceDialogue.started += instance.OnAdvanceDialogue;
@AdvanceDialogue.performed += instance.OnAdvanceDialogue;
@AdvanceDialogue.canceled += instance.OnAdvanceDialogue;
}
}
}
public DialoguesActions @Dialogues => new DialoguesActions(this);
private int m_KeyboardOrGamepadSchemeIndex = -1;
public InputControlScheme KeyboardOrGamepadScheme
{
get
{
if (m_KeyboardOrGamepadSchemeIndex == -1)
m_KeyboardOrGamepadSchemeIndex = asset.FindControlSchemeIndex("KeyboardOrGamepad");
return asset.controlSchemes[m_KeyboardOrGamepadSchemeIndex];
}
}
public interface IGameplayActions
{
void OnMove(InputAction.CallbackContext context);
void OnJump(InputAction.CallbackContext context);
void OnAttack(InputAction.CallbackContext context);
void OnInteract(InputAction.CallbackContext context);
void OnPause(InputAction.CallbackContext context);
void OnExtraAction(InputAction.CallbackContext context);
void OnRotateCamera(InputAction.CallbackContext context);
void OnMouseControlCamera(InputAction.CallbackContext context);
void OnRun(InputAction.CallbackContext context);
}
public interface IMenusActions
{
void OnMoveSelection(InputAction.CallbackContext context);
void OnConfirm(InputAction.CallbackContext context);
void OnCancel(InputAction.CallbackContext context);
void OnMouseMove(InputAction.CallbackContext context);
void OnUnpause(InputAction.CallbackContext context);
}
public interface IDialoguesActions
{
void OnMoveSelection(InputAction.CallbackContext context);
void OnAdvanceDialogue(InputAction.CallbackContext context);
}
// Dialogues
private readonly InputActionMap m_Dialogues;
private IDialoguesActions m_DialoguesActionsCallbackInterface;
private readonly InputAction m_Dialogues_MoveSelection;
private readonly InputAction m_Dialogues_AdvanceDialogue;
public struct DialoguesActions
{
private @GameInput m_Wrapper;
public DialoguesActions(@GameInput wrapper) { m_Wrapper = wrapper; }
public InputAction @MoveSelection => m_Wrapper.m_Dialogues_MoveSelection;
public InputAction @AdvanceDialogue => m_Wrapper.m_Dialogues_AdvanceDialogue;
public InputActionMap Get() { return m_Wrapper.m_Dialogues; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
public bool enabled => Get().enabled;
public static implicit operator InputActionMap(DialoguesActions set) { return set.Get(); }
public void SetCallbacks(IDialoguesActions instance)
{
if (m_Wrapper.m_DialoguesActionsCallbackInterface != null)
{
@MoveSelection.started -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@MoveSelection.performed -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@MoveSelection.canceled -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnMoveSelection;
@AdvanceDialogue.started -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
@AdvanceDialogue.performed -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
@AdvanceDialogue.canceled -= m_Wrapper.m_DialoguesActionsCallbackInterface.OnAdvanceDialogue;
}
m_Wrapper.m_DialoguesActionsCallbackInterface = instance;
if (instance != null)
{
@MoveSelection.started += instance.OnMoveSelection;
@MoveSelection.performed += instance.OnMoveSelection;
@MoveSelection.canceled += instance.OnMoveSelection;
@AdvanceDialogue.started += instance.OnAdvanceDialogue;
@AdvanceDialogue.performed += instance.OnAdvanceDialogue;
@AdvanceDialogue.canceled += instance.OnAdvanceDialogue;
}
}
}
public DialoguesActions @Dialogues => new DialoguesActions(this);
private int m_KeyboardOrGamepadSchemeIndex = -1;
public InputControlScheme KeyboardOrGamepadScheme
{
get
{
if (m_KeyboardOrGamepadSchemeIndex == -1) m_KeyboardOrGamepadSchemeIndex = asset.FindControlSchemeIndex("KeyboardOrGamepad");
return asset.controlSchemes[m_KeyboardOrGamepadSchemeIndex];
}
}
public interface IGameplayActions
{
void OnMove(InputAction.CallbackContext context);
void OnJump(InputAction.CallbackContext context);
void OnAttack(InputAction.CallbackContext context);
void OnInteract(InputAction.CallbackContext context);
void OnPause(InputAction.CallbackContext context);
void OnOpenInventory(InputAction.CallbackContext context);
void OnRotateCamera(InputAction.CallbackContext context);
void OnMouseControlCamera(InputAction.CallbackContext context);
void OnRun(InputAction.CallbackContext context);
}
public interface IMenusActions
{
void OnMoveSelection(InputAction.CallbackContext context);
void OnConfirm(InputAction.CallbackContext context);
void OnCancel(InputAction.CallbackContext context);
void OnMouseMove(InputAction.CallbackContext context);
void OnUnpause(InputAction.CallbackContext context);
}
public interface IDialoguesActions
{
void OnMoveSelection(InputAction.CallbackContext context);
void OnAdvanceDialogue(InputAction.CallbackContext context);
}
}

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


public event UnityAction jumpCanceledEvent = delegate { };
public event UnityAction attackEvent = delegate { };
public event UnityAction interactEvent = delegate { }; // Used to talk, pickup objects, interact with tools like the cooking cauldron
public event UnityAction extraActionEvent = delegate { }; // Used to bring up the inventory
public event UnityAction openInventoryEvent = delegate { }; // Used to bring up the inventory
public event UnityAction pauseEvent = delegate { };
public event UnityAction<Vector2> moveEvent = delegate { };
public event UnityAction<Vector2, bool> cameraMoveEvent = delegate { };

attackEvent.Invoke();
}
public void OnExtraAction(InputAction.CallbackContext context)
public void OnOpenInventory(InputAction.CallbackContext context)
extraActionEvent.Invoke();
openInventoryEvent.Invoke();
}
public void OnInteract(InputAction.CallbackContext context)

2
UOP1_Project/Assets/Scripts/Interaction/InteractionManager.cs


private void OnTriggerExit(Collider other)
{
ResetInteraction();
}

27
UOP1_Project/Assets/Scripts/Inventory/CollectibleItem.cs


using UnityEngine;
public class CollectibleItem : MonoBehaviour
{
[SerializeField] private Item _currentItem;
[SerializeField] private SpriteRenderer[] _itemImages;
[SerializeField]
private Item currentItem;
[SerializeField]
private SpriteRenderer[] itemImages;
private void Start()
{
SetItem();

{
Debug.Log("current item " + currentItem);
return currentItem;
Debug.Log("current item " + _currentItem);
return _currentItem;
//this function is only for testing
// TODO: This function is only for testing
for (int i = 0; i < itemImages.Length; i++)
for (int i = 0; i < _itemImages.Length; i++)
itemImages[i].sprite = currentItem.PreviewImage;
_itemImages[i].sprite = _currentItem.PreviewImage;
}
}
if (other.gameObject.GetComponent<ItemPicker>())
if (other.gameObject.TryGetComponent<ItemPicker>(out ItemPicker itemPickerComp))
other.gameObject.GetComponent<ItemPicker>().PickItem(currentItem);
itemPickerComp.PickItem(_currentItem);
}
}
}

8
UOP1_Project/Assets/Scripts/Inventory/ItemPicker.cs


public class ItemPicker : MonoBehaviour
{
[SerializeField]
ItemEventChannelSo AddItemEvent;
[SerializeField] private ItemEventChannelSo _addItemEvent;
if (AddItemEvent != null)
AddItemEvent.RaiseEvent(item);
if (_addItemEvent != null)
_addItemEvent.RaiseEvent(item);
}
}

2
UOP1_Project/Assets/Scripts/SpawnSystem.cs


[Header("Asset References")]
[SerializeField] private Protagonist _playerPrefab = default;
[SerializeField] private TransformAnchor _playerTransformAnchor = default;
[SerializeField] private TransformEventChannelSO _playerInstantiatedChannel = default;
[Header("Scene References")]

Protagonist playerInstance = InstantiatePlayer(_playerPrefab, spawnLocation);
_playerInstantiatedChannel.RaiseEvent(playerInstance.transform); // The CameraSystem will pick this up to frame the player
_playerTransformAnchor.Transform = playerInstance.transform;
}
private Transform GetSpawnLocation(int index, Transform[] spawnLocations)

2
UOP1_Project/Assets/Scripts/StateMachine/Editor/TransitionTableEditorWindow.cs


private UnityEditor.Editor _transitionTableEditor;
[MenuItem("Transition Table Editor", menuItem = "ChopChop/State Machine/Transition Table Editor")]
[MenuItem("Transition Table Editor", menuItem = "ChopChop/Transition Table Editor")]
internal static void Display()
{
if (_window == null)

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


"interactions": ""
},
{
"name": "ExtraAction",
"name": "OpenInventory",
"type": "Button",
"id": "1b6ae4df-f5e6-42fc-92b6-3dcc2e126563",
"expectedControlType": "Button",

{
"name": "",
"id": "91ce58d8-88e1-4ade-945b-59c4f0939828",
"path": "<Keyboard>/j",
"path": "<Keyboard>/f",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",
"action": "Attack",
"isComposite": false,
"isPartOfComposite": false
},
{
"name": "",
"id": "4c248131-d3fe-4545-b4dc-ba0690c01312",
"path": "<Mouse>/leftButton",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",

{
"name": "",
"id": "937b421c-9467-4b47-a1fd-445b9b44d5c9",
"path": "<Keyboard>/l",
"path": "<Keyboard>/q",
"action": "ExtraAction",
"action": "OpenInventory",
"isComposite": false,
"isPartOfComposite": false
},

"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",
"action": "ExtraAction",
"action": "OpenInventory",
"isComposite": false,
"isPartOfComposite": false
},

"isPartOfComposite": false
},
{
"name": "Keyboard TFGH",
"name": "Keyboard IJKL",
"id": "8e17360e-f036-4963-93f6-05d14787dfb5",
"path": "2DVector(mode=1)",
"interactions": "",

{
"name": "up",
"id": "9a4ec3f5-78bf-4f42-b7d7-f1edd7ce12dc",
"path": "<Keyboard>/t",
"path": "<Keyboard>/i",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",

{
"name": "down",
"id": "5d82874e-55d8-4d54-84f5-c4d59dc3b39c",
"path": "<Keyboard>/g",
"path": "<Keyboard>/k",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",

{
"name": "left",
"id": "13a13bd5-f4ec-4f5b-9a8e-ef1165cc9f5f",
"path": "<Keyboard>/f",
"path": "<Keyboard>/j",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",

{
"name": "right",
"id": "78626b57-196b-4f24-9a3f-af2477d3633b",
"path": "<Keyboard>/h",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",
"action": "RotateCamera",
"isComposite": false,
"isPartOfComposite": true
},
{
"name": "up",
"id": "4e483eb2-4460-4dc1-af9f-9bcb31ebe837",
"path": "<Gamepad>/rightStick/up",
"path": "<Keyboard>/l",
"interactions": "",
"processors": "",
"groups": "KeyboardOrGamepad",

1001
UOP1_Project/Assets/Art/Characters/PigChef/Animation/RunWithStaff.anim
文件差异内容过多而无法显示
查看文件

8
UOP1_Project/Assets/Art/Characters/PigChef/Animation/RunWithStaff.anim.meta


fileFormatVersion: 2
guid: f2c6830f0e8743443a792b8ed6663b59
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

1001
UOP1_Project/Assets/Art/Characters/PigChef/Animation/WalkWithStaff.anim
文件差异内容过多而无法显示
查看文件

8
UOP1_Project/Assets/Art/Characters/PigChef/Animation/WalkWithStaff.anim.meta


fileFormatVersion: 2
guid: 5976cd6b402e9564c9451dbdae1c5871
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Art/Props/WoodenBench.meta


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

118
UOP1_Project/Assets/Prefabs/Furniture/WoodenBench.prefab


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!65 &534883411797647977
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6084573853626076775}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 2.4, y: 0.50987154, z: 0.600662}
m_Center: {x: 0, y: 0.2549355, z: 0}
--- !u!65 &2494597459909641156
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6084573853626076775}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Size: {x: 0.11534482, y: 0.17235331, z: 0.6}
m_Center: {x: 1.1423309, y: 0.5438234, z: 0}
--- !u!1001 &5934761996929322665
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: -8778574258118410034, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalPosition.x
value: -2.7853966
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalPosition.y
value: 0.0000000834465
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalPosition.z
value: -4.021866
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -1848364327098884977, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_Materials.Array.data[0]
value:
objectReference: {fileID: 2100000, guid: 5b2ffc78155b95d4089248e8c087729d, type: 2}
- target: {fileID: 919132149155446097, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_Name
value: WoodenBench
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
propertyPath: m_StaticEditorFlags
value: 4294967295
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 2aae116101adc3646bd2ede6a10564e9, type: 3}
--- !u!1 &6084573853626076775 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: -8778574258118410034, guid: 2aae116101adc3646bd2ede6a10564e9,
type: 3}
m_PrefabInstance: {fileID: 5934761996929322665}
m_PrefabAsset: {fileID: 0}

7
UOP1_Project/Assets/Prefabs/Furniture/WoodenBench.prefab.meta


fileFormatVersion: 2
guid: dfee6f41f09d9354d9c13429b3bbc666
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

15
UOP1_Project/Assets/ScriptableObjects/StateMachine/AlwaysFalseCondition.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: e0777347f401c614ab014959b4281dc3, type: 3}
m_Name: AlwaysFalseCondition
m_EditorClassIdentifier:
cacheResult: 1

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/AlwaysFalseCondition.asset.meta


fileFormatVersion: 2
guid: 2492917d447c2d7439673eb7fd6f403d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies.meta


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

14
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/ActivateWeapon.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: 505a5fc22f9d36c4592a17e08c85263d, type: 3}
m_Name: ActivateWeapon
m_EditorClassIdentifier:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/ActivateWeapon.asset.meta


fileFormatVersion: 2
guid: 0b38abb4ef196264188f86997cf47770
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

20
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/AttackTrigger.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: 4c70afd7f911db7449d578cc18700875, type: 3}
m_Name: AttackTrigger
m_EditorClassIdentifier:
parameterType: 3
parameterName: CaneHit
boolValue: 0
intValue: 0
floatValue: 0
whenToRun: 0

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/AttackTrigger.asset.meta


fileFormatVersion: 2
guid: 5cb6e4529b034ff4dbc7a7aa863ce969
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

20
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/IsWalking_False_OnExit.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: 4c70afd7f911db7449d578cc18700875, type: 3}
m_Name: IsWalking_False_OnExit
m_EditorClassIdentifier:
parameterType: 0
parameterName: IsWalking
boolValue: 0
intValue: 0
floatValue: 0
whenToRun: 1

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Actions/IsWalking_False_OnExit.asset.meta


fileFormatVersion: 2
guid: 74800142628360a42bb516b1e5c630e1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

15
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/IsHoldingAttackAction.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: 6f0c74685e74c2546a191f9f99c8b4f8, type: 3}
m_Name: IsHoldingAttackAction
m_EditorClassIdentifier:
cacheResult: 1

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/IsHoldingAttackAction.asset.meta


fileFormatVersion: 2
guid: ac445a33a0d072a4b96458c8ea343d49
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/Timer_AttackAnimation.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: 8139f9f328ed1144690b7a9ffca2d5b4, type: 3}
m_Name: Timer_AttackAnimation
m_EditorClassIdentifier:
cacheResult: 1
timerLength: 1.15

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/Conditions/Timer_AttackAnimation.asset.meta


fileFormatVersion: 2
guid: 373ff606aeb23834eb964bdf9a6f6e3c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

17
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Attack.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: 35432205b9a6a374bbbfe6b7cac92179, type: 3}
m_Name: Attack
m_EditorClassIdentifier:
_actions:
- {fileID: 11400000, guid: 5cb6e4529b034ff4dbc7a7aa863ce969, type: 2}
- {fileID: 11400000, guid: 0b38abb4ef196264188f86997cf47770, type: 2}

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Protagonist/States/Attack.asset.meta


fileFormatVersion: 2
guid: bda8bfafdf35e3e4092bb96279d4894c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

44
UOP1_Project/Assets/Scripts/Characters/Critter.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Critter : MonoBehaviour
{
[SerializeField] private int _fullHealth = 20;
private int _currentHealth = default;
public bool isPlayerInAlertZone { get; set; }
public bool isPlayerInAttackZone { get; set; }
public bool getHit { get; set; }
public bool isDead { get; set; }
private void Awake()
{
_currentHealth = _fullHealth;
}
private void ReceiveAnAttack(int damange)
{
_currentHealth -= damange;
getHit = true;
if (_currentHealth <= 0)
{
isDead = true;
}
}
private void OnTriggerEnter(Collider other)
{
Weapon playerWeapon = other.GetComponent<Weapon>();
if (!getHit && playerWeapon != null && playerWeapon.Enable)
{
ReceiveAnAttack(playerWeapon.AttackStrength);
}
}
public void DestroyCritter()
{
GameObject.Destroy(this.gameObject);
}
}

11
UOP1_Project/Assets/Scripts/Characters/Critter.cs.meta


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

40
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ActivateWeaponSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "ActivateWeapon", menuName = "State Machines/Actions/Activate Weapon")]
public class ActivateWeaponSO : StateActionSO
{
protected override StateAction CreateAction() => new ActivateWeapon();
}
public class ActivateWeapon : StateAction
{
private Weapon _weapon;
public override void Awake(StateMachine stateMachine)
{
_weapon = stateMachine.gameObject.GetComponentInChildren<Weapon>();
}
public override void OnUpdate()
{
}
public override void OnStateEnter()
{
if (_weapon != null)
{
_weapon.Enable = true;
}
}
public override void OnStateExit()
{
if (_weapon != null)
{
_weapon.Enable = false;
}
}
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ActivateWeaponSO.cs.meta


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

29
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/DestroyCritterSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "DestroyCritter", menuName = "State Machines/Actions/Destroy Critter")]
public class DestroyCritterSO : StateActionSO
{
protected override StateAction CreateAction() => new DestroyCritter();
}
public class DestroyCritter : StateAction
{
private Critter _critter;
public override void Awake(StateMachine stateMachine)
{
_critter = stateMachine.GetComponent<Critter>();
}
public override void OnUpdate()
{
}
public override void OnStateEnter()
{
_critter.DestroyCritter();
}
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/DestroyCritterSO.cs.meta


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

39
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/FaceProtagonistSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "FaceProtagonist", menuName = "State Machines/Actions/Face Protagonist")]
public class FaceProtagonistSO : StateActionSO
{
public TransformAnchor playerAnchor;
protected override StateAction CreateAction() => new FaceProtagonist();
}
public class FaceProtagonist : StateAction
{
TransformAnchor _protagonist;
Transform _actor;
public override void Awake(StateMachine stateMachine)
{
_actor = stateMachine.transform;
_protagonist = ((FaceProtagonistSO)OriginSO).playerAnchor;
}
public override void OnUpdate()
{
if (_protagonist.isSet)
{
Vector3 relativePos = _protagonist.Transform.position - _actor.position;
relativePos.y = 0f; // Force rotation to be only on Y axis.
Quaternion rotation = Quaternion.LookRotation(relativePos);
_actor.rotation = rotation;
}
}
public override void OnStateEnter()
{
}
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/FaceProtagonistSO.cs.meta


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

29
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ResetGetHitStateSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "ResetGetHitState", menuName = "State Machines/Actions/Reset Get Hit State")]
public class ResetGetHitStateSO : StateActionSO
{
protected override StateAction CreateAction() => new ResetGetHitState();
}
public class ResetGetHitState : StateAction
{
private Critter _critter;
public override void Awake(StateMachine stateMachine)
{
_critter = stateMachine.GetComponent<Critter>();
}
public override void OnUpdate()
{
}
public override void OnStateExit()
{
_critter.getHit = false;
}
}

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Actions/ResetGetHitStateSO.cs.meta


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

11
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/AlwaysFalseConditionSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
//[CreateAssetMenu(menuName = "State Machines/Conditions/Always False")]
public class AlwaysFalseConditionSO : StateConditionSO<AlwaysFalseCondition> { }
public class AlwaysFalseCondition : Condition
{
protected override bool Statement() => false;
}

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


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

37
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/HasReceivedEventSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(menuName = "State Machines/Conditions/Has Received Event")]
public class HasReceivedEventSO : StateConditionSO<HasReceivedEventCondition>
{
public VoidEventChannelSO voidEvent;
}
public class HasReceivedEventCondition : Condition
{
private HasReceivedEventSO _originSO => (HasReceivedEventSO)base.OriginSO; // The SO this Condition spawned from
private bool _eventTriggered;
public override void Awake(StateMachine stateMachine)
{
_eventTriggered = false;
_originSO.voidEvent.OnEventRaised += EventReceived;
}
protected override bool Statement()
{
return _eventTriggered;
}
private void EventReceived()
{
_eventTriggered = true;
}
public override void OnStateExit()
{
_eventTriggered = false;
}
}

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


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

31
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterGettingHitSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "IsCritterGettingHit", menuName = "State Machines/Conditions/Is Critter Getting Hit")]
public class IsCritterGettingHitSO : StateConditionSO
{
protected override Condition CreateCondition() => new IsCritterGettingHit();
}
public class IsCritterGettingHit : Condition
{
private Critter _critter;
public override void Awake(StateMachine stateMachine)
{
_critter = stateMachine.GetComponent<Critter>();
}
protected override bool Statement()
{
bool result = false;
if (_critter != null)
{
result = _critter.getHit;
}
return result;
}
}

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


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

29
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsCritterKilledHitSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(fileName = "IsCritterKilled", menuName = "State Machines/Conditions/Is Critter Killed")]
public class IsCritterKilledHitSO : StateConditionSO
{
protected override Condition CreateCondition() => new IsCritterKilled();
}
public class IsCritterKilled : Condition
{
private Critter _critter;
public override void Awake(StateMachine stateMachine)
{
_critter = stateMachine.GetComponent<Critter>();
}
protected override bool Statement()
{
bool result = false;
if (_critter != null)
{
result = _critter.isDead;
}
return result;
}
}

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


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

32
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/IsHoldingAttackActionConditionSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
[CreateAssetMenu(menuName = "State Machines/Conditions/Is Holding Attack Action")]
public class IsHoldingAttackActionConditionSO : StateConditionSO<IsHoldingAttackActionCondition> { }
public class IsHoldingAttackActionCondition : Condition
{
//Component references
private Protagonist _protagonistScript;
public override void Awake(StateMachine stateMachine)
{
_protagonistScript = stateMachine.GetComponent<Protagonist>();
}
protected override bool Statement()
{
if (_protagonistScript.attackInput)
{
// Consume the input
_protagonistScript.attackInput = false;
return true;
}
else
{
return false;
}
}
}

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


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

48
UOP1_Project/Assets/Scripts/Characters/StateMachine/Conditions/PlayerIsInZoneSO.cs


using UnityEngine;
using UOP1.StateMachine;
using UOP1.StateMachine.ScriptableObjects;
public enum ZoneType
{
Alert,
Attack
}
[CreateAssetMenu(fileName = "PlayerIsInZone", menuName = "State Machines/Conditions/Player Is In Zone")]
public class PlayerIsInZoneSO : StateConditionSO
{
public ZoneType zone;
protected override Condition CreateCondition() => new PlayerIsInZone();
}
public class PlayerIsInZone : Condition
{
private Critter _critter;
public override void Awake(StateMachine stateMachine)
{
_critter = stateMachine.GetComponent<Critter>();
}
protected override bool Statement()
{
bool result = false;
if (_critter != null) {
switch (((PlayerIsInZoneSO)OriginSO).zone)
{
case ZoneType.Alert:
result = _critter.isPlayerInAlertZone;
break;
case ZoneType.Attack:
result = _critter.isPlayerInAttackZone;
break;
default:
break;
}
}
return result;
}
}

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


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

17
UOP1_Project/Assets/Scripts/Characters/Weapon.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Weapon : MonoBehaviour
{
[SerializeField] private int _attackStrength = default;
private bool _enable = false;
public bool Enable { get; set; }
public int AttackStrength
{
get => _attackStrength;
}
}

11
UOP1_Project/Assets/Scripts/Characters/Weapon.cs.meta


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

35
UOP1_Project/Assets/Scripts/Characters/ZoneTriggerController.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
[System.Serializable]
public class BoolEvent : UnityEvent<bool> {
}
/// <summary>
/// A generic class for a "zone", that is a trigger collider that can detect if an object of a certain type (layer) entered or exited it.
/// Implements <code>OnTriggerEnter</code> and <code>OnTriggerExit</code> so it needs to be on the same object that holds the Collider.
/// </summary>
public class ZoneTriggerController : MonoBehaviour
{
[SerializeField] private BoolEvent _enterZone = default;
[SerializeField] private LayerMask _layers = default;
private void OnTriggerEnter(Collider other)
{
if ((1 << other.gameObject.layer & _layers) != 0)
{
_enterZone.Invoke(true);
}
}
private void OnTriggerExit(Collider other)
{
if ((1 << other.gameObject.layer & _layers) != 0)
{
_enterZone.Invoke(false);
}
}
}

11
UOP1_Project/Assets/Scripts/Characters/ZoneTriggerController.cs.meta


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

107
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.fbx.meta


fileFormatVersion: 2
guid: 2aae116101adc3646bd2ede6a10564e9
ModelImporter:
serializedVersion: 19301
internalIDToNameTable: []
externalObjects:
- first:
type: UnityEngine:Material
assembly: UnityEngine.CoreModule
name: Bench_Top_Wood
second: {fileID: 2100000, guid: f657668e157b7b9419cda1f450f3263c, type: 2}
- first:
type: UnityEngine:Material
assembly: UnityEngine.CoreModule
name: No Name
second: {fileID: 2100000, guid: a38c2800cdfa8e04b9f2587c3c77a3ca, type: 2}
materials:
materialImportMode: 0
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importVisibility: 0
importBlendShapes: 0
importCameras: 0
importLights: 0
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 1
useFileUnits: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15
secondaryUVHardAngle: 88
secondaryUVPackMargin: 8
useFileScale: 1
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 0
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 1
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 0
humanoidOversampling: 1
avatarSetup: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.mat.meta


fileFormatVersion: 2
guid: 5b2ffc78155b95d4089248e8c087729d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

66
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.fbx


Kaydara FBX Binary �_FBXHeaderExtension\FBXHeaderVersionI�x
FBXVersionI��EncryptionTypeI�CreationTimeStamp�VersionI��YearI��MonthIDayI'HourI?MinuteI8WSecondI+t MillisecondI��4CreatorS/Blender (stable FBX IO) - 2.79 (sub 0) - 3.7.13R' SceneInfoSGlobalInfoSceneInfoSUserData$ TypeSUserData=VersionId MetaDatakVersionId�TitleS�SubjectS�AuthorS�KeywordsS�RevisionSCommentSE Properties70m9PS DocumentUrlSKStringSUrlSS /foobar.fbx�<PSSrcDocumentUrlSKStringSUrlSS /foobar.fbx�$PSOriginalSCompoundSSCLPSOriginal|ApplicationVendorSKStringSSSBlender Foundation�OPSOriginal|ApplicationNameSKStringSSSBlender (stable FBX IO)�GPSOriginal|ApplicationVersionSKStringSSS 2.79 (sub 0)PMPSOriginal|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000�<PSOriginal|FileNameSKStringSSS /foobar.fbx�%PS LastSavedSCompoundSS(MPSLastSaved|ApplicationVendorSKStringSSSBlender Foundation�PPSLastSaved|ApplicationNameSKStringSSSBlender (stable FBX IO)�HPSLastSaved|ApplicationVersionSKStringSSS 2.79 (sub 0)8NPSLastSaved|DateTime_GMTSDateTimeSSS01/01/1970 00:00:00.000�FileIdR(�*��$�¿Ȱ*�+��� CreationTimeS1970-01-01 10:00:00:0004CreatorS/Blender (stable FBX IO) - 2.79 (sub 0) - 3.7.13� GlobalSettings8VersionI�u Properties70�)PSUpAxisSintSIntegerSI�-PS
UpAxisSignSintSIntegerSI�,PS FrontAxisSintSIntegerSI; 0PS FrontAxisSignSintSIntegerSIu ,PS CoordAxisSintSIntegerSI� 0PS CoordAxisSignSintSIntegerSI� 1PSOriginalUpAxisSintSIntegerSI����5
5PSOriginalUpAxisSignSintSIntegerSI{
8PSUnitScaleFactorSdoubleSNumberSD�?�
@PSOriginalUnitScaleFactorSdoubleSNumberSD�? HPS AmbientColorSColorRGBSColorSDDDn APS DefaultCameraSKStringSSSProducer Perspective� %PSTimeModeSenumSSI � 3PS TimeSpanStartSKTimeSTimeSL" 2PS TimeSpanStopSKTimeSTimeSL����
h 8PSCustomFrameRateSdoubleSNumberSD8@� Documents� CountI� DocumentL��3SSceneSScene| Properties70. &PS SourceObjectSobjectSSo 3PSActiveAnimStackNameSKStringSSS�  RootNodeL�
References�4 Definitions VersionId CountIn
ObjectTypeSGlobalSettingsaCountI�
ObjectTypeSGeometry�CountI� PropertyTemplateSFbxMesh� Properties70:APSColorSColorRGBSColorSD�������?D�������?D�������?�DPSBBoxMinSVector3DSVectorSDDD�DPSBBoxMaxSVector3DSVectorSDDD/PSPrimary VisibilitySboolSSIS*PS Casts ShadowsSboolSSI�,PSReceive ShadowsSboolSSIW$
ObjectTypeSModel�CountIJ$ PropertyTemplateSFbxNode=$ Properties70n2PSQuaternionInterpolateSenumSSI�KPSRotationOffsetSVector3DSVectorSDDDJPS RotationPivotSVector3DSVectorSDDDwJPS ScalingOffsetSVector3DSVectorSDDD�IPS ScalingPivotSVector3DSVectorSDDD
.PSTranslationActiveSboolSSIcKPSTranslationMinSVector3DSVectorSDDD�KPSTranslationMaxSVector3DSVectorSDDD�,PSTranslationMinXSboolSSI0,PSTranslationMinYSboolSSIj,PSTranslationMinZSboolSSI�,PSTranslationMaxXSboolSSI�,PSTranslationMaxYSboolSSI,PSTranslationMaxZSboolSSIP*PS RotationOrderSenumSSI�6PSRotationSpaceForLimitOnlySboolSSI�;PSRotationStiffnessXSdoubleSNumberSD&;PSRotationStiffnessYSdoubleSNumberSDo;PSRotationStiffnessZSdoubleSNumberSD�0PSAxisLenSdoubleSNumberSD$@HPS PreRotationSVector3DSVectorSDDDZIPS PostRotationSVector3DSVectorSDDD�+PSRotationActiveSboolSSI�HPS RotationMinSVector3DSVectorSDDD?HPS RotationMaxSVector3DSVectorSDDDv)PS RotationMinXSboolSSI�)PS RotationMinYSboolSSI�)PS RotationMinZSboolSSI)PS RotationMaxXSboolSSIR)PS RotationMaxYSboolSSI�)PS RotationMaxZSboolSSI�(PS InheritTypeSenumSSI�*PS ScalingActiveSboolSSILGPS
ScalingMinSVector3DSVectorSDDD�GPS
ScalingMaxSVector3DSVectorSD�?D�?D�?�(PS ScalingMinXSboolSSI (PS ScalingMinYSboolSSIC(PS ScalingMinZSboolSSIy(PS ScalingMaxXSboolSSI�(PS ScalingMaxYSboolSSI�(PS ScalingMaxZSboolSSIDQPSGeometricTranslationSVector3DSVectorSDDD�NPSGeometricRotationSVector3DSVectorSDDD�MPSGeometricScalingSVector3DSVectorSD�?D�?D�??6PS MinDampRangeXSdoubleSNumberSD�6PS MinDampRangeYSdoubleSNumberSD�6PS MinDampRangeZSdoubleSNumberSD 6PS MaxDampRangeXSdoubleSNumberSDO6PS MaxDampRangeYSdoubleSNumberSD�6PS MaxDampRangeZSdoubleSNumberSD�9PSMinDampStrengthXSdoubleSNumberSD!9PSMinDampStrengthYSdoubleSNumberSDh9PSMinDampStrengthZSdoubleSNumberSD�9PSMaxDampStrengthXSdoubleSNumberSD�9PSMaxDampStrengthYSdoubleSNumberSD= 9PSMaxDampStrengthZSdoubleSNumberSD� 7PSPreferedAngleXSdoubleSNumberSD� 7PSPreferedAngleYSdoubleSNumberSD !7PSPreferedAngleZSdoubleSNumberSDB!(PSLookAtPropertySobjectSSz!*PSUpVectorPropertySobjectSS�!!PSShowSboolSSI�!8PSNegativePercentShapeSupportSboolSSI5"8PSDefaultAttributeIndexSintSIntegerSI����f"#PSFreezeSboolSSI�"#PSLODBoxSboolSSI�"NPSLcl TranslationSLcl TranslationSSADDDI#HPS Lcl RotationS Lcl RotationSSADDD�#FPS Lcl ScalingS Lcl ScalingSSAD�?D�?D�?�#2PS
VisibilityS
VisibilitySSAD�?0$EPSVisibility InheritanceSVisibility InheritanceSSI�+
ObjectTypeSMaterial�$CountI�+PropertyTemplateSFbxSurfacePhong�+ Properties70%1PS ShadingModelSKStringSSSPhongP%'PS
MultiLayerSboolSSI�%BPS EmissiveColorSColorSSADDD�%2PSEmissiveFactorSNumberSSAD�?/&APS AmbientColorSColorSSAD�������?D�������?D�������?n&1PS AmbientFactorSNumberSSAD�?�&APS DiffuseColorSColorSSAD�������?D�������?D�������?�&1PS DiffuseFactorSNumberSSAD�?O'EPSTransparentColorSColorSSADDD�'6PSTransparencyFactorSNumberSSAD�'+PSOpacitySNumberSSAD�? (FPS NormalMapSVector3DSVectorSDDDo(APSBumpSVector3DSVectorSDDD�(3PS
BumpFactorSdoubleSNumberSD�? )MPSDisplacementColorSColorRGBSColorSDDDT);PSDisplacementFactorSdoubleSNumberSD�?�)SPSVectorDisplacementColorSColorRGBSColorSDDD*APSVectorDisplacementFactorSdoubleSNumberSD�?T*BPS SpecularColorSColorSSAD�������?D�������?D�������?�*2PSSpecularFactorSNumberSSAD�?�*-PS ShininessSNumberSSAD4@+5PSShininessExponentSNumberSSAD4@d+DPSReflectionColorSColorSSADDD�+4PSReflectionFactorSNumberSSAD�?�0
ObjectTypeSTexture,CountI�0PropertyTemplateSFbxFileTexture�0 Properties70�,+PSTextureTypeUseSenumSSI�,(PS AlphaSourceSenumSSI-6PS Texture alphaSdoubleSNumberSD�?>--PSPremultiplyAlphaSboolSSI�-4PSCurrentTextureBlendModeSenumSSI�-/PSCurrentMappingTypeSenumSSI�-,PSUVSetSKStringSSSdefault+.&PS WrapModeUSenumSSI_.&PS WrapModeVSenumSSI�.#PSUVSwapSboolSSI�.HPS TranslationSVector3DSVectorSDDD9/EPSRotationSVector3DSVectorSDDD�/DPSScalingSVector3DSVectorSD�?D�?D�?�/QPSTextureRotationPivotSVector3DSVectorSDDDH0PPSTextureScalingPivotSVector3DSVectorSDDD~0(PS UseMaterialSboolSSI�0&PS UseMipMapSboolSSI�4
ObjectTypeSVideo1CountI�4 PropertyTemplateSFbxVideo�4 Properties70�1(PSWidthSintSIntegerSI�1)PSHeightSintSIntegerSI�1'PSPathSKStringSUrlSS+2'PS
AccessModeSenumSSIf2-PS
StartFrameSintSIntegerSI�2,PS StopFrameSintSIntegerSI�2,PSOffsetSKTimeSTimeSL32PS PlaySpeedSdoubleSNumberSDP3(PS FreeRunningSboolSSI3!PSLoopSboolSSI�3*PS InterlaceModeSenumSSI�3*PS ImageSequenceSboolSSI346PSImageSequenceOffsetSintSIntegerSIs42PS FrameRateSdoubleSNumberSD�4,PS LastFrameSintSIntegerSI@yObjectsMo+GeometryL,@r-SBench_MeshGeometrySMesh[5 Properties70|5GeometryVersionI|�>( Verticesd� xu�pU�Ǘ@g�(5-���"嗭J .��q����[���� ��AV~X ?��K��d�$� R�Ң�"PC���.���@1��^����w����~�7�={ι{�1�xU�� cL���G���=aΏ�¹��9Ŏ ������{q̸o4�2���`d˧��V���;�Ep5�0�ّ�c`�F�8F��}D�)�zi�!���j���OC��=�wB�_�o,�䵷�_V�B�l=��[�
����� �>�����s���� �>_�>�`5�S?
���? �7S<K7�~y�R�_�����ǜ>�\�}��-��ė��{����4�ɧ�9{�f��}���ܯ�����XE>ss0NS�,�m����^��p��; ���V�:l�=ܸ)gl*��D)r>on>̹��w��_��q\,�K<�E �aν^�3S����G 7��œ{=����)����� 7Ȳ��F�������z�M��� �9�z�qu��M&��sU9�%3.��9�z�����xЋue9��l�Y]����2�"�x��k�l�t��΍��e;�>�ut�>x���ޟ �������~ă^����3���vă>��Շ�H�7�A�y����?�%�����Q=�����Q���#\�D�&��t�!��S�>��U�O׷Q����b����b|�X;5"�7 8���cz6s&r~9/�.o�H�,F��e�Ѻ�Z7p�3�s)��Һ�Z����+���a�=g~_��zF�?�þ�8�S�Q�8��O���������\~�\�}��7c>������_w�.jؤ(g��� ���XL�\\��G��ϲ��F._������uEI rv�y:���C�,Gn�x��U;��K�E���zQ���n"��e?�}��o��x� �xr~W%}GV5�a��7�'ʛ<Lz��/|�Y�Z��~���e�{Ln�Qg<����n���S�;��9\w�G|�Z����*��/��{!ry۷0ozϭ��/�\���ɦ��X�3뱊�ʳ�Gy�j ���ם�z��J�,m_||5r�I��C��q�d%r��W�\9����/�_d1N՗�kk��>�?�-ﱕ|~UA�z��|X�k�<�E��T��y u��?�wFtk�qw��9 �[�r�Dܗ�TH��M�"�2�9g�������7�|�<į��� �&�ͳ(��{��#����L�+���ډ���|�g;��<ԅ=F�'{4�kq4�f�^�,!}����Ŵ�gk����0�������F�2>G�7�!W�)�� r}���=J���/����>�� O��}��dO�㑽�~������B���I��Pw6��`��Ĭ��U�vm!~�Ͱ"��������>�W�X���c|����������^6��{����>�d���C?K���!T��]�}1�o��!�\Mj��ٸe�0+t,��b.py�3�����1�<u'�+������Q~�#1}Fl]����g�g|��ݐ3�1�������c���'���W���J��f�t���l��yf�Y���&��M?N�����o.���I�q[U��X=�4r�����C�˛���7W��Zo��\�ʠ��ѥx^�RV���q9�w7#��; �s3�|Pw6��՘��_��/��'�r�>����{�?��;�`=�
��{�t�Ƒ{�X��5����$�v ��c��x��u�wG�A���>� {�,�)�C�z_�z������^�b�!����ۊm��S�X7>-�¼�<}]}�8����`���H��(�l*��t-#����E�חҺ��!�r�C�ՅR�/3kQϞ�����e�������3�_�Lz���o��XL<�.:QBqfmC�MP]D ���%�3����/u���F���N}���9}ǝ�|���> ��i� 73���ƍ���a�������z�(��������u�������}~���|��_�I��ٹ���� 0����.�n=��n����I���0כ���)ng���p�rA���z������q�Tw<go����a��c)n�L���O�_��~=�L��޾N�ٍoЫW�+���7���,�G����K�8����un���Aϒ����3�����ʿ�g��8�C~��H<�C���Ӈ�ݾ�}��!������>����>����b���YQ����Q������IT�|�0���^�H�aTo��o����ӑ���j���|7��y�/}H�k�Y����;=�&��WG��ߋ�g;�@�����Po�M��[�G4�}���q]�I��z��R�\}��H���(WwQ��弁���?��W6y���嬵�-?1����.?Q�NӾ ?��[��#&DNPolygonVertexIndexi�Ax-� �Oe��v�I *SBI�$I�lc�-�"c�d�ƞu�d��}!e)ı�%dI�$I�����rZ������������~���{��H$����+WrSs�_x������������� �/�#�7��T��x����|�?�����K���� GO.�9�@��7�4���Qk�p ^� C`0L�I0F�D�Sa
��.�@2t���@#h �a9���0 f�L��\��.����X
9�
Z����B;��Í�-��^�z�\�������o�^$�LՓ��|�m���[���p�\!��,�"U�ΐ+�W��&�Iի�)�]�ը'�wS��p�|Ox j� /��0�s��}��� ���Pj��;�c{o����kqMI�����ƾ��}2` ����(8�y�/���d��w���=��w��p�^]�|�� �`|�q��W`�#?>�:�ҫ�8��ϳ���K�e���3���,}~>3������3p�]�}p?Ԃ���J- [���k���;���7�M�=w��ȫ��� ��! |��q��{y�Jr��9�!7�z�)4�����S��9�R���籧�we7�FT�ن��ɰ���sM-a=�g{;p���y�
zm��wm��K��5�߭�7�����x.���_y8yp�`�7���,r��<�9d��)0���� ���<��O
�O��sCA�J�J-��wx>��TDZ��<1�0�s<7/<s��H�%a(L��7�=��4��c��Dž��G�á&&w�:n� ������y�1�W�.�ɞ[ܿl�0�sq|��#���q$x�Lzc��k �> ����1g���P\��K�g೸��)��Po2>������Ϳ)����;��0���� ĻP�w��k��Ou����q��_y�_o|�UM�������{�Y��ۍ�j�N��p{i䙑gS�������k�7������W�ˡ9l"ψc}q��:�iM�����9��Н�
���9T�� ^��Z��q*�@�o����Υ�%6�uƽֹ���d�����]�D|qxW|Zx?| �ނ���MԷa#��o��M%{��fhI^G]M� T��[���_C����q=�1׾�c;�3���9�
���p N�)8 '�8�#��wa���Ѐ��Q'4$��x}�.������;N=�^���u��ý_���j��;�Z��Tݹ�$ w�5��Su�T��A���F���������ݏ*�O����@>Cu/]s�8�~���ȟ����g���T&Lul�<����"�%�L�/� �r��rd��=׹������޺�����^�?�����]�kt��}�_y��i*��FqEdgesi�dx �iO�aT�PPCq:�<�
�L�-�J��H0�
�20@@@QP��+�PKWn�t�R�����(������V��Q>�?�� �Aә.t%�nt���$�p�З��2�� !��<�F1�1��1'�qL�)&�4�����9�g*1Lc:/�"��� f2����e�G< $�
I�c> Xȫ,"���,!�t2�d)Yd�:o�C.�XΛ��JV��5���:
(��bJ(��r*�D%�����԰��b7{�ǻ�� �8L-�s���8PG= ��$��9�E��K.q�+4�M|÷\��k\�7��V���h�w�����=�� �����z� ��LWB��C�F8��C_"�O$B��F�(c�f<O2��L%�iLg6 ,"�Ť�F:�d�M�,c+y�<�)��R��H%U԰���f{�O-G8N�4p��9�眧�&�i�w��O��o��_:��7AӅ�ѓ^����'�AD1��<�3�G< $��<泀�$�B*KH#� 2�&�\V��5�%�|��R�z�)�� �QN�D%��B�l����b/�8�Aޣ����zNr�Ӝ���)�q��\�"���i�k�i�׹A+m�s����'������SULayerElementNormalI�FVersionIe�FNameS3GMappingInformationTypeSByPolygonVertexcG ReferenceInformationTypeSDirectFU� Normalsd�� x��{t��GP䀧�R<�=���y��є���*Z_��P�$���" �"H%�ʣYHH��N2�� *8�@�H����w�r��w!������3�ϝ��o~�ۙ��]�;|�d��X�˦�S��7���\~�q=�g�O��D�.�TG����J�oϩɠT��_A��đsH�o�IG��SO�� �S�&��!�����Gʨ�����f��S���v� �ˎɟ����r6��bG�C'?g.���߿ ��!]�P}�E�E��rY�Wٳ��UT߾u�Ju��8Vٓ۵������/]�;�=V�!��&~���gի~������]��p}��k�̝T_�����VJ��'�w�H����Z҉g��� =�ش}����R)n��=Q���[��D;/�y�&��'�� ����12�tu�}�u�J�z��)ұ٤w)����tY4캐 ���g�%m�u���%�<_C~��Σ�,�=��������^�)eǛ�>�-��ߍ�-��� �T����Q��>���uS-��;Wͣ�Ll�xrp��)k�˺��o$���^G �����W�;y����RYtZٹd��~��Y���}�¬�v�/��V�(o�PC�J/�A�Hyv�a�?�� ��֫vY� ��86����&e_���W���';e��q�L�P?��Qn���I��MP���bkp?���C�H_�#��w��C�Ŏ��瑩��w�+q?��۵��q��v�~w������v�ו;�����~:���~�3�s�u��Nh��w���_�����٫���tЮ'~�������!��7�^v=ׯWߍ{��ո�q7���^��C܍{��oq���ͫ����J��H_�Yͣ 5��Y`4�[ ��<��7(7��'��:�nti �X�����YE��ɣ�Tύ�P{����4�jrӜ�qb�8J��F������?~�f�T���o����|��dC.�z�i}�����!>ͮ]��ݩ�&*ϲ'�[u����J����l��ם��8O�n����>���fVGp�W���L����[��8�t�J�;���òǪ�#��}�ls�L�+��>8B�xsa��͡o�~|]���2���������"��[C��4��`>��5j~I�Q�K=����ĉ���O�7�?�\�?�0~��|�P�Vln.�s�ƾ�N��]���"*g���T�Ղ��� Q?�/�\r�N~�γ���K��^�� �[�����}~�8�v s��4^�M*dV��Hrsޡ���Lցb�mN�@����e����N��� ��*��o����Q8?��%��^<�0�ty�� ��� S?�9�=f�c夁��CM�|�����m1o[u�Q^�۟܅sE�I�=��r�g��rk�:�K<P�s?٢� ]�;��Kw���Ӹ���YK:��r�_q>im�n�c����u��9�0�f�<�e�K�'/ݫ���Q��Y֏A�����1��`��`>4�U��;�u�(��j=ⱂ�������(�]��/�s �֍�o��3�g zo�����\��a�.�j�M*Q~�^�=~�b�9���.��ߜ;b��6������+0^f�D�O�y��_#� ▽ת��+u�ʸ�>���kW��WF�[�����]'�ԙ
��&7�8��7������$BܮP��̇������dg��Q���2�tk� jߥ�ب�� e����D1�oD��i��h���oۧ�^�v59��GٿL���̉y���y�suT���`1�o�sem�D���ݩ�~`}w��kr��?a�����~i�� �.���j�g�Y�x��n�<jhr�r+�l�1�;���+��>h��_�� ����`�.7�.�sI3p�K�qkqN).�݅81.���_���K)��g�S�v��դ˚.�Ii�9;�ף5%�Ʒu(G��ܸ-o��o ~ �N1�u���K�5 �6o<��tt�u�9�'��[�-s���1�IG������T\��T\E���O��t�a��s�dg����׵<;~5�]U���HqcL5~=���qϥO�_�� �GL�fS}+K�'�\V��h�V�"��ڍ:v�ѳ��̺ב�o=�n�G탗d�'�J]��u�G|}��=ct49��t���}��Q犑�~�rt.Z�����h�:�sT��sT:w%n����9-x�9-��=��"nv��y�6����yB�o�N�����w��1lƅ��q�OXI.�ޣ֋�U|�i*>#����l�68x��w�����i��g� ������<�\N/G<�ܞ�����xoB��׾�:�7�*#�}�����ͳ���/�G�ة*~D�����d��Q��X���hs{�]u�.�F��̏��-��u;ڵ�7�:(�r���r��5��<��<��_}~�|�ʅ;�&�o[�����ס���
����R����>�,��x���b�;�}7�kvm���2�y�^���yT�).�T�_�9�o=��#ō��p�}�}bk���(�49ꢤzR^<�8���+)�����ʞ�/m��l@�ƺ\�<
��ҩd����+HO�}mu����{����N�8�Q����^���n�}7����L����2�W>ު�D��)��q���9��
�I��Ƈ�� ~K�T��LǷ�F��'w ~�S�1.b–"�S�=~��}N[���<����KT�O�Ρ�c���fJ<����~�p�����h�� ��Va����1�D����&h���nx�&4����<P���$G�;�,�5�y�z��uc3�]v�Up+���~,�;�4y3iR��5K�� ��u\��\�7�g�9;z=� �s"y� ��<��a*'�� ���/Q^df��ԭ��{�6py<�ʧ�`^�)�~���f���h7�=��^K5�C�ו�b��d�_v�пP;��|f�Z�7m%�� ��]]n������@/�B��&�ĸ�G���#��]�=F��o\����l�`���WOf@W�[���>�����e��O:�\.xׅ1}��_� q��Y�)��X�)��rR�z�G�ߣ��!����.UЭ�����P����L�s���鸿��_�+r9��}���RW,R����?uj=O���O�����w�����'Eyy��k9�������g�9i#o���C�;:��x��~���3����a�Wo(�r�tО��=�0��7���w�pS�}K7��W�~:^���ʻ:�w �~:h7�w�����@C��� ~'�ƅ���GC��q�.��X8���� m�̣���j�O����^v�q�~_���?�v�q?�����8���q�v=ׯWߍ{��j�O����o����!��7ŋW?�KO�yBp?+żC�l���|��p� �>��r��P�)�Ə�~��k���~�yH:���V$���>=W"}#�\)R�{�N��w�� ���o~~�7� �g���]N)��I)�#���M�������;"�E��W)� ���!�>a�x8?���ƅx8?�<��=�?�_�����~XMw���F���������WLayerElementColorI�UVersionIe�UNameSCol�UMappingInformationTypeSByPolygonVertexVReferenceInformationTypeS IndexToDirectvVMColorsd@�?�?�?�?�? W�
ColorIndexi�sxc`ހ��Q<�iw�f @(���BW�.O � ��#ˍ�6���X>!Wc3��j�7P�OĘ��od=�r0>�ll�:bilf ����,G ]�(w�26�/l���olLayerElementUVISWVersionIenW
NameSUVMap�WMappingInformationTypeSByPolygonVertex�WReferenceInformationTypeS IndexToDirect/gDUVd�7x]Y{|��?6+ �xiZ�rɥ&�F?g�6Č�D}Bk2��T��Z��Y����M������1���5��C,�\�$?��<��G���9�<�y�����Bw��� ԉ�Mv���h!;�'��`�8���������9iGq��Y��7O�Q9Ȏ~������}����1����؃}2��Q��+��W�{��ju�o����M�t)�泥�N>�9 tX�y;
������.��{oD��=_`�������r|�6j�u����l�';1� �07ob����}��!��v x����һ�W5�g;�����r��|��}�~�&�����KwA�_T�f�=���zѻ�^���w�� ���@��&��H�+`�`���g.��zy�&���Cq��3���u}�6�앾z�oÖ�\�G��;�������-�7f�\�+=+�=�ǼR��ެ����;���G����� -�gx�wϴ�|��e�av4G���Q��tp��a��,�r�~j �>��$�v ����^�����vt�ӡ��K�������b]-�W�O�O�����2����1�_?��:9���7�s8��;�SDW@���ߒ_�>�cyY����:�Q���x͛@sy4�S����?�)���G�ܛ�����7jh�eL��e�t��K���`Ggė��G�:�J�a��J����@?﫳��7z���
9M�
E�������������n�!^����1��w.q��'&6��}� ����OC.��g"��rq���� '�OL����G����j�,�N�����J��K{���yT��X'�s`'�y
� :��|q ���a�Ďǹ��d�w(_���ɎM�Q\��7�R�||)8��%�=�?��S�������IObi}8�E���+����} ��E�7b]��+ğ��ӣ`�·}d�J�:�.�W\�A=��^�xK-!������� �Cr2����������X�ǿ9�9a�'�H�9<���~��c?�k/�֫�� _��|��X���|�u������t��%������&�r���/�j�ņ���/)�x����?]�}��|��M�_Iy���_]>���S��rp��8��~�G*<�ⵒ�G�L�O�Ѵj�Q����!�*��^"|(��Ҁ�wƒ�w?�!�� r�ԗ��r�'���Yz��$盀롷�*��E��K� ���O�˦���zl�{���(֩; 霸�$��`��7_��q�E��O'=���q9�7e+�gf8��W���|p<t�&�^�]>������|G�ޣ�@�gF=��z�o��o�����#���gr-ԸDt|:�KGt�I��;7������G^L���d��������L��?6u����H���r������|cE��]�p�
f ��|��ꕨٚ���FV����2������[-_!��]�|yeDm��@"� }�ߤ�3"����o��g�;x�W��>'��z�=����J)�4�A�6� �Ԯ��/Ď�"z/�c�+ϭ�`���l��WUN�y�xf���������.�����]~��������G��� K���@>�������/����gYڌL�?5f��� s�N����d{�}�Ռ���������{���ױ=�������[,_q�2����z�ɭ��ză_��^s~��)��p�S��H_�wU:Ż^I�Q��?��r?7�&h���z5�����\*w���n��ɣ�2�?D�>O���5'��<���o�����������i�Ï�N�Wt�yz�&·C�����Y5��������T��o ~��/�;�b�?��z!�]¼�{�s��l<y���~��Oq����#��7�?��yb�l����H�3�"3!�W� �'�?���D~�� ?��G�ڣ��8�c�������Y �~@��I~��A��TM���[0r��"��>��1k�����qv^lځ��p<�s�^�+��:�A6pr���7�p�Qr�I��=���{�E�A��^�r�� �o+�a4%�S��M8��y�p=�9SH�;(^ͅs�O^)�g���������z���Q|��T������? �g�8��\�� ���ˢ �󳫰�Z-(?.�'}����>�.?���˨�>�r�����g�ߔ��|y% ���ۀ����/H���t�%\G|G�!��W ���T:�<��?�����P�$�C�?��P����U�_��m�C�vD�RG߃?g �Ī_�_z�;ft�����'����闖��]�v����@�����DТq4���vխ��� Z�y�h�W��W�@�z=��{�>t<�'�� ?���&e;��:w:p�쏮���k�X���4�:�)���G|ou��,� Z�?y��6�G�{�B�������Wfs&��j2����A�~�-�7A���o9Z(�?�����/л��_|�
��>�s��xx3�_y�:��׈�y�"��-��^�"��|��,� �'�D�y��h�U7�w���cQ��������X����W����{���?Rn��w�=� �j�x�j������C��?n�86��������������U6�f���[]6�� �+�^c&Q=������/�e"��VRވ��Pп9�?o*�񏓿l��# ϣ !��z�-�#}_�� ��|E��3,-�>N��6z_1�{!> Ӣ���my%����/� w?2����f�&����\�_G�^r?qK�3�+R�`����D��������������)T�����s��t���=��ݧN=�����|_ �(���)����#o���?.�xoQ�a&�ϵ�M�d��9����w���>��ѣa/���Hk����n��2 ���w"N�{���{����V����_)O�����5I�o�yc�)�o ������"X@��O���<���d���'��K���j�~b���3m�#��M�ע|�����N �罒n�͠T�YtO������P�U�Ä�d�BȣjQ����P����*�����l����>�M�M��󓹿 �y+���E���������g�H��׀�x� �0�)���m��N�Ԋ�/������r4���{�{��݆�35Z������]<�l�����C�?��CTcz�����{��y��UX} ����ao}`��C��-"�?NF?���Ƽ߷��v��p�Sv���r6��ZN����O�����^�~�Xo�]珧�1��%�*\�~��-����i@�aj�#������8߸|��L����.�� �w���W�𢡊${5+E|軧�~��n�{�wt�>}!��_W���}��yoS�h�3��ȧ� ����{�p�&�J�T�}�p��k��O���?�s���g��>ߧi&��Ր}�//�ڋ�:��U-��yW��{�J�zo:^��tԙL��]��$���/��?]���kЂ��s� ���єͫu���_���8gV���{������L�?��'�S���jp/�������\�ߥ>�Gw�����կ��B��Z�
�������c�����?d���>��)?���zoA�Aʩ���p-�_��^��1�ً���~H�8�'��-]�|�x��o�ė�I �� C�#�^�T���O�������/�� 5�'����y�7�=?�_�#����j�魧��{�!��*�M�R?�7~C����D�?)���D����ę�'q�1�.���Y��ŇNh=C���=�>r�����)w����bW�\���j��{��e������r���i9�39�ɰ���Ej.��q�aދ���l_���ӽ��{�ץr>�^��-*j��e\ ��� ei3a��N�?Tw��+�}��d���Q��ϕ?����1��޸Z����ϴ�?|�6�blUVIndexi�x-��]W_l۶��l�4���il;�m��m�N�Զ�6��Z���o����w���{1#��k���D"�!���03��0�?&���̝�G��3���P��Xo�/��Of��9ӓ�3}=�l�r"9��C�ƹ�nN��7!?uu�T��P��Q� ���o�����<��*�y�%���O �B-� c� 4fV�]!t���/�g� ^���`����;���`0ފ$"��g)�
�i@�I�~@_�/� 
腡H@/ Ez1���� [� p��蟒���p_�p�/@m\�-dax�Q�O�#'�E�
���&��P���J�� *��>9�+u,�$ٗ,�"4���~�sXq�0����4`�����������?�5���vr#��{A3�������_IϿI���� 6 e�7�6�>�7I�'�Ÿ�=hU`3����~��Д�>H���1���-�������*�<���������fp�fdV
�~��O���0�
s��#m�ǵ^��m$�#] w���p���:S��3�g��Y���7���pw�~�����u��μ�.�0�D�y�~�s{�!�)�<����ߗK����������#!�o�mr/�{i=�|D�;!��c��}�$�'0w�$X��%K��^�~��ڄ~ ܽ���C=��7� �=9��@������'�m�aX��#�0KH��԰�����1��Mz>�p���zb�T«C�;4��'��-���o����{DŽ%x|X >?��8 ����H����\�=��xߑ�ѓ�?�d�=�;���>��yx<r;��L 5q�u��+�9��'%��Gߧ{!�\��w�����^S�����=������<��p.�����7�>Ԯqm�஭�W'�͂����d�'��K�&��~ּ$+�]z~�{��5�c�Lg�՝,E��Y[�'�������N���}��ג��~�,J���P�:%\���/I�u��ɾ���=z��djp��Y ֹ��hߞ�Q�~~%���H���@F�9t�3�k�����w�!���A�J?�3K�'�0��W���`(!�&� Ӓ��rP��z!34��� 1�E$�CkHG] ���f��@> w��x�п���6���Ep�1� �ᛀ�����F��>�E? �q�;��z}x���~�LN�^���W�f���g������={���'�|Ԣ7��F]���uO�> w�}�� <�}삆�3H�z�n�<���+�Z| ���{�iP_��w 6^��Jހ)x]X�'����W\^mLayerElementMaterialI�lVersionIe�lNameS�l MappingInformationTypeSAllSame*mReferenceInformationTypeS IndexToDirectQm Materialsi@oLayerI�mVersionId�m LayerElement�mTypeSLayerElementNormal�m
TypedIndexIan LayerElement8nTypeSLayerElementColorTn
TypedIndexI�n LayerElement�nTypeSLayerElementUV�n
TypedIndexI3o LayerElement
oTypeSLayerElementMaterial&o
TypedIndexIq)ModelL�� SWoodenBenchModelSMesh�oVersionI��p Properties70pFPS Lcl ScalingS Lcl ScalingSSAD����?D����?D����?Tp8PSDefaultAttributeIndexSintSIntegerSI�p(PS InheritTypeSenumSSI�p
MultiLayerI�p MultiTakeI�pShadingCqCullingS
CullingOffu+MaterialL*j�SBench_Top_WoodMaterialSmqVersionIf�q
ShadingModelSPhong�q
MultiLayerI�t Properties70rBPS EmissiveColorSColorSSAD����?D����?D����?Ur2PSEmissiveFactorSNumberSSAD�rAPS AmbientColorSColorSSADDD�rAPS DiffuseColorSColorSSAD����?D����?D����?FsEPSTransparentColorSColorSSAD�?D�?D�?�sBPS SpecularColorSColorSSADDD�s2PSSpecularFactorSNumberSSADt-PS ShininessSNumberSSADTt5PSShininessExponentSNumberSSAD�tDPSReflectionColorSColorSSAD�?D�?D�?�t4PSReflectionFactorSNumberSSADlw.TextureLk �(SBench_Wood_TextureTextureSjuTypeSTextureVideoClip�uVersionI��u TextureNameSBench_Wood_TextureTexture�u%MediaS BenchTextureCombined2.pngVideoCv<FileNameS7D:\Unity-Open-Project\MyStuff\BenchTextureCombined2.png�v<RelativeFilenameS7D:\Unity-Open-Project\MyStuff\BenchTextureCombined2.png_w Properties70�v%PSUVSetSKStringSSSw(PS UseMaterialSboolSSIRw&PS UseMipMapSboolSSI3y7VideoL�� 9S BenchTextureCombined2.pngVideoSClip�w TypeSClipax Properties70Tx^PSPathSKStringSUrlSS7D:\Unity-Open-Project\MyStuff\BenchTextureCombined2.png|x UseMipMapI�x<FilenameS7D:\Unity-Open-Project\MyStuff\BenchTextureCombined2.png&y<RelativeFilenameS7D:\Unity-Open-Project\MyStuff\BenchTextureCombined2.png9z ConnectionsyCSOOL�� L�yCSOOL,@r-L�� �yCSOOL*j�L�� z*CSOPLk �(L*j�S DiffuseColor,zCSOOL�� 9Lk �(qzTakesdzCurrentS��� ���f�v���&~��Z�j���~�� �u�)

145
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: WoodenBench
m_Shader: {fileID: -6465566751694194690, guid: bf36778a400a0894b86a1f49c422fa62,
type: 3}
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: f9222abb4aea72f41be8159a444c852f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: f9222abb4aea72f41be8159a444c852f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTexture:
m_Texture: {fileID: 2800000, guid: f9222abb4aea72f41be8159a444c852f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecularMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- Foam_Amount: 5
- Foam_Cutoff: 3.5
- Foam_Evolution_Speed: 1.25
- Foam_Scale: 5
- Global_Fading: 30
- Light_Probe_Contribution: 2.5
- Refaction_Scale: 5
- Refraction_Evolution_Speed: 1.5
- Refraction_Height: 0.2
- Vector1_398E6F7F: 0.5
- Vector1_495DBFDC: 0
- Vector1_551A8284: 0.1
- Vector1_5BC4323: 8
- Vector1_6B55B4E: 2
- Vector1_77A997E: 0.5
- Vector1_93E6CC20: 0
- Vector1_A4EAD20D: 0.1
- Vector1_CCBA7087: 0
- Vector1_EA388E7D: 10
- Vector1_F8AD0BCD: 8
- Water_Depth: 1.5
- Wave_Height: 0.25
- Wave_Scale: 10
- Wave_Speed: 2
- _AlphaClip: 0
- _Blend: 0
- _BumpScale: 1
- _Cull: 2
- _Cutoff: 0.5
- _Dissolve: 0
- _DstBlend: 0
- _EnvironmentReflections: 1
- _FresnelOpacity: 0.5
- _Fresnel_Power: 3
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _LightProbeContribution: 3.5
- _MainTint_VariationIntensity: 0
- _Metallic: 0
- _OcclusionStrength: 1
- _OutlineDepthSensitivity: 0
- _OutlineNormalsSensitivity: 0
- _OutlineThickness: 0
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Surface: 0
- _Wind_Density: 0
- _Wind_Direction: 0
- _Wind_Speed: 0
- _Wind_Strength: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- Color_4818C45D: {r: 0, g: 0, b: 0, a: 0}
- Color_9BF846A1: {r: 0.55998576, g: 0.8301887, b: 0.7961739, a: 0.2705882}
- Color_E53190CD: {r: 0, g: 0, b: 0, a: 0}
- Foam_Color: {r: 1, g: 1, b: 1, a: 0.5450981}
- Shallow_Water_Color: {r: 0.44313726, g: 0.8750768, b: 0.8980392, a: 0.3176471}
- Trough_Color: {r: 0, g: 0.03410326, b: 0.7215686, a: 0.4627451}
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _MainColor: {r: 1, g: 1, b: 1, a: 0}
- _MainTint: {r: 1, g: 1, b: 1, a: 0}
- _Offset: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
- _SpecularColor: {r: 0, g: 0, b: 0, a: 0}
- _Tiling: {r: 1, g: 1, b: 0, a: 0}
--- !u!114 &8633878897990286939
MonoBehaviour:
m_ObjectHideFlags: 11
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 2

1001
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.png
文件差异内容过多而无法显示
查看文件

92
UOP1_Project/Assets/Art/Props/WoodenBench/WoodenBench.png.meta


fileFormatVersion: 2
guid: f9222abb4aea72f41be8159a444c852f
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter.meta


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

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Actions.meta


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

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions.meta


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

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAlertZone.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: a4e6588ded1ea1f44b197643d201de8e, type: 3}
m_Name: ProtagonistInAlertZone
m_EditorClassIdentifier:
cacheResult: 1
zone: 0

8
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAlertZone.asset.meta


fileFormatVersion: 2
guid: 27c06ead5f7a1ed4d89197fe9a61d0c2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:

16
UOP1_Project/Assets/ScriptableObjects/StateMachine/Enemies/PlantCritter/Conditions/ProtagonistInAttackZone.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: a4e6588ded1ea1f44b197643d201de8e, type: 3}
m_Name: ProtagonistInAttackZone
m_EditorClassIdentifier:
cacheResult: 1
zone: 1

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

正在加载...
取消
保存