Input updates

- point and click
- WASD + mouse (WIP)
- Gamepad (WIP)
This commit is contained in:
Pedro Gomes 2025-01-16 19:33:19 +00:00
parent 5ce9c0b3a7
commit 8db9d99a02
50 changed files with 3557 additions and 155 deletions

View File

@ -340,55 +340,67 @@ AnimatorController:
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: throw - m_Name: throw
m_Type: 9 m_Type: 9
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: throwingTime - m_Name: throwingTime
m_Type: 1 m_Type: 1
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: castingTime - m_Name: castingTime
m_Type: 1 m_Type: 1
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: cast - m_Name: cast
m_Type: 9 m_Type: 9
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: melee - m_Name: melee
m_Type: 9 m_Type: 9
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: spinning - m_Name: spinning
m_Type: 4 m_Type: 4
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: dead - m_Name: dead
m_Type: 9 m_Type: 9
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: revived - m_Name: revived
m_Type: 9 m_Type: 9
m_DefaultFloat: 0 m_DefaultFloat: 0
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 0}
- m_Name: HorizontalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: VerticalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers: m_AnimatorLayers:
- serializedVersion: 5 - serializedVersion: 5
m_Name: Base Layer m_Name: Base Layer
@ -528,19 +540,43 @@ BlendTree:
m_Mirror: 0 m_Mirror: 0
- serializedVersion: 2 - serializedVersion: 2
m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3} m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1 m_Threshold: 0.25
m_Position: {x: 0, y: 0} m_Position: {x: 0, y: 1}
m_TimeScale: 1 m_TimeScale: 1
m_CycleOffset: 0 m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed m_DirectBlendParameter: movementSpeed
m_Mirror: 0 m_Mirror: 0
m_BlendParameter: movementSpeed - serializedVersion: 2
m_BlendParameterY: Blend m_Motion: {fileID: -1640272175068026219, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.5
m_Position: {x: 1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6877218540166537120, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.75
m_Position: {x: -1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6411013857362534180, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1
m_Position: {x: 0, y: -1}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
m_BlendParameter: HorizontalAxis
m_BlendParameterY: VerticalAxis
m_MinThreshold: 0 m_MinThreshold: 0
m_MaxThreshold: 1 m_MaxThreshold: 1
m_UseAutomaticThresholds: 1 m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0 m_NormalizedBlendValues: 0
m_BlendType: 0 m_BlendType: 3
--- !u!1102 &5990272421327647975 --- !u!1102 &5990272421327647975
AnimatorState: AnimatorState:
serializedVersion: 6 serializedVersion: 6

View File

@ -676,6 +676,18 @@ AnimatorController:
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 0} m_Controller: {fileID: 0}
- m_Name: HorizontalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
- m_Name: VerticalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 0}
m_AnimatorLayers: m_AnimatorLayers:
- serializedVersion: 5 - serializedVersion: 5
m_Name: Base Layer m_Name: Base Layer
@ -933,19 +945,43 @@ BlendTree:
m_Mirror: 0 m_Mirror: 0
- serializedVersion: 2 - serializedVersion: 2
m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3} m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1 m_Threshold: 0.25
m_Position: {x: 0, y: 0} m_Position: {x: 0, y: 1}
m_TimeScale: 1 m_TimeScale: 1
m_CycleOffset: 0 m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed m_DirectBlendParameter: movementSpeed
m_Mirror: 0 m_Mirror: 0
m_BlendParameter: movementSpeed - serializedVersion: 2
m_BlendParameterY: Blend m_Motion: {fileID: -1640272175068026219, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.5
m_Position: {x: 1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6877218540166537120, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.75
m_Position: {x: -1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6411013857362534180, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1
m_Position: {x: 0, y: -1}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
m_BlendParameter: HorizontalAxis
m_BlendParameterY: VerticalAxis
m_MinThreshold: 0 m_MinThreshold: 0
m_MaxThreshold: 1 m_MaxThreshold: 1
m_UseAutomaticThresholds: 1 m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0 m_NormalizedBlendValues: 0
m_BlendType: 0 m_BlendType: 3
--- !u!1102 &5990272421327647975 --- !u!1102 &5990272421327647975
AnimatorState: AnimatorState:
serializedVersion: 6 serializedVersion: 6

View File

@ -704,6 +704,18 @@ AnimatorController:
m_DefaultInt: 0 m_DefaultInt: 0
m_DefaultBool: 0 m_DefaultBool: 0
m_Controller: {fileID: 9100000} m_Controller: {fileID: 9100000}
- m_Name: HorizontalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
- m_Name: VerticalAxis
m_Type: 1
m_DefaultFloat: 0
m_DefaultInt: 0
m_DefaultBool: 0
m_Controller: {fileID: 9100000}
m_AnimatorLayers: m_AnimatorLayers:
- serializedVersion: 5 - serializedVersion: 5
m_Name: Base Layer m_Name: Base Layer
@ -1017,19 +1029,43 @@ BlendTree:
m_Mirror: 0 m_Mirror: 0
- serializedVersion: 2 - serializedVersion: 2
m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3} m_Motion: {fileID: 3543698089625107784, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1 m_Threshold: 0.25
m_Position: {x: 0, y: 0} m_Position: {x: 0, y: 1}
m_TimeScale: 1 m_TimeScale: 1
m_CycleOffset: 0 m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed m_DirectBlendParameter: movementSpeed
m_Mirror: 0 m_Mirror: 0
m_BlendParameter: movementSpeed - serializedVersion: 2
m_BlendParameterY: Blend m_Motion: {fileID: -1640272175068026219, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.5
m_Position: {x: 1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6877218540166537120, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 0.75
m_Position: {x: -1, y: 0}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
- serializedVersion: 2
m_Motion: {fileID: -6411013857362534180, guid: e1e4fb5684939bb479c83e16bac91038, type: 3}
m_Threshold: 1
m_Position: {x: 0, y: -1}
m_TimeScale: 1
m_CycleOffset: 0
m_DirectBlendParameter: movementSpeed
m_Mirror: 0
m_BlendParameter: HorizontalAxis
m_BlendParameterY: VerticalAxis
m_MinThreshold: 0 m_MinThreshold: 0
m_MaxThreshold: 1 m_MaxThreshold: 1
m_UseAutomaticThresholds: 1 m_UseAutomaticThresholds: 1
m_NormalizedBlendValues: 0 m_NormalizedBlendValues: 0
m_BlendType: 0 m_BlendType: 3
--- !u!1102 &5990272421327647975 --- !u!1102 &5990272421327647975
AnimatorState: AnimatorState:
serializedVersion: 6 serializedVersion: 6

View File

@ -469,12 +469,12 @@ ModelImporter:
cycleOffset: 0 cycleOffset: 0
loop: 0 loop: 0
hasAdditiveReferencePose: 0 hasAdditiveReferencePose: 0
loopTime: 0 loopTime: 1
loopBlend: 0 loopBlend: 1
loopBlendOrientation: 0 loopBlendOrientation: 1
loopBlendPositionY: 0 loopBlendPositionY: 1
loopBlendPositionXZ: 0 loopBlendPositionXZ: 1
keepOriginalOrientation: 0 keepOriginalOrientation: 1
keepOriginalPositionY: 1 keepOriginalPositionY: 1
keepOriginalPositionXZ: 0 keepOriginalPositionXZ: 0
heightFromFeet: 0 heightFromFeet: 0
@ -500,10 +500,10 @@ ModelImporter:
hasAdditiveReferencePose: 0 hasAdditiveReferencePose: 0
loopTime: 1 loopTime: 1
loopBlend: 1 loopBlend: 1
loopBlendOrientation: 0 loopBlendOrientation: 1
loopBlendPositionY: 1 loopBlendPositionY: 1
loopBlendPositionXZ: 0 loopBlendPositionXZ: 1
keepOriginalOrientation: 0 keepOriginalOrientation: 1
keepOriginalPositionY: 1 keepOriginalPositionY: 1
keepOriginalPositionXZ: 0 keepOriginalPositionXZ: 0
heightFromFeet: 0 heightFromFeet: 0
@ -556,12 +556,12 @@ ModelImporter:
cycleOffset: 0 cycleOffset: 0
loop: 0 loop: 0
hasAdditiveReferencePose: 0 hasAdditiveReferencePose: 0
loopTime: 0 loopTime: 1
loopBlend: 0 loopBlend: 1
loopBlendOrientation: 0 loopBlendOrientation: 1
loopBlendPositionY: 0 loopBlendPositionY: 1
loopBlendPositionXZ: 0 loopBlendPositionXZ: 1
keepOriginalOrientation: 0 keepOriginalOrientation: 1
keepOriginalPositionY: 1 keepOriginalPositionY: 1
keepOriginalPositionXZ: 0 keepOriginalPositionXZ: 0
heightFromFeet: 0 heightFromFeet: 0
@ -585,12 +585,12 @@ ModelImporter:
cycleOffset: 0 cycleOffset: 0
loop: 0 loop: 0
hasAdditiveReferencePose: 0 hasAdditiveReferencePose: 0
loopTime: 0 loopTime: 1
loopBlend: 0 loopBlend: 1
loopBlendOrientation: 0 loopBlendOrientation: 1
loopBlendPositionY: 0 loopBlendPositionY: 1
loopBlendPositionXZ: 0 loopBlendPositionXZ: 1
keepOriginalOrientation: 0 keepOriginalOrientation: 1
keepOriginalPositionY: 1 keepOriginalPositionY: 1
keepOriginalPositionXZ: 0 keepOriginalPositionXZ: 0
heightFromFeet: 0 heightFromFeet: 0

View File

@ -4617,6 +4617,51 @@ MonoBehaviour:
OnUIVisibilityChanged: OnUIVisibilityChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
--- !u!1 &2832957514906983756
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 315999698282489082}
- component: {fileID: 7702335359396477653}
m_Layer: 0
m_Name: InputManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &315999698282489082
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2832957514906983756}
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_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7475116342638198534}
m_RootOrder: 33
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &7702335359396477653
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2832957514906983756}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6ae8fd3e6ba25e441b159d1c9468be7f, type: 3}
m_Name:
m_EditorClassIdentifier:
gamepadDetectionThreshold: 0.1
--- !u!1 &2862068214805195629 --- !u!1 &2862068214805195629
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -12936,6 +12981,7 @@ Transform:
- {fileID: 8612537344861635202} - {fileID: 8612537344861635202}
- {fileID: 3475843492364284939} - {fileID: 3475843492364284939}
- {fileID: 1380778743} - {fileID: 1380778743}
- {fileID: 315999698282489082}
m_Father: {fileID: 7475116341965418816} m_Father: {fileID: 7475116341965418816}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -17419,6 +17465,10 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: AbilityBindInstance (3) value: AbilityBindInstance (3)
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6068416968010641387, guid: 8e6107cb87ae02d43b74a0f7156a7754, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8427117269225081217, guid: 8e6107cb87ae02d43b74a0f7156a7754, type: 3} - target: {fileID: 8427117269225081217, guid: 8e6107cb87ae02d43b74a0f7156a7754, type: 3}
propertyPath: gameKey propertyPath: gameKey
value: value:

View File

@ -140,6 +140,7 @@ GameObject:
serializedVersion: 6 serializedVersion: 6
m_Component: m_Component:
- component: {fileID: 5408610653861158196} - component: {fileID: 5408610653861158196}
- component: {fileID: 7232510528443783147}
m_Layer: 30 m_Layer: 30
m_Name: RotationFX m_Name: RotationFX
m_TagString: Untagged m_TagString: Untagged
@ -164,6 +165,20 @@ Transform:
m_Father: {fileID: 8607891234483246272} m_Father: {fileID: 8607891234483246272}
m_RootOrder: 0 m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &7232510528443783147
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6112776810822369217}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b50effa256ffa1347ab62872ddb7198c, type: 3}
m_Name:
m_EditorClassIdentifier:
rotationSpeed: 360
rotationAxis: 2
--- !u!1 &8607891234483246274 --- !u!1 &8607891234483246274
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: db06a138bc1913a47bf87e3144c8a172
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
%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: c84fbdfdd7da4cb47bb5d1783a2b1058, type: 3}
m_Name: Ability1
m_EditorClassIdentifier:
bindingName: Ability1
keyboardKey: 49
gamepadButton: joystick button 0
gamepadAxis:
isAxis: 0
axisDeadzone: 0.2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2742d06c180116b4081691c7978914e9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
%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: c84fbdfdd7da4cb47bb5d1783a2b1058, type: 3}
m_Name: Ability2
m_EditorClassIdentifier:
bindingName: Ability2
keyboardKey: 50
gamepadButton: joystick button 1
gamepadAxis:
isAxis: 0
axisDeadzone: 0.2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1b1841e76dc92c54497a6b0cc65a3b4c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
%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: c84fbdfdd7da4cb47bb5d1783a2b1058, type: 3}
m_Name: Ability3
m_EditorClassIdentifier:
bindingName: Ability3
keyboardKey: 51
gamepadButton: joystick button 2
gamepadAxis:
isAxis: 0
axisDeadzone: 0.2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cb70b7a88547bc045abb0f2ed54807d1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
%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: c84fbdfdd7da4cb47bb5d1783a2b1058, type: 3}
m_Name: Ability4
m_EditorClassIdentifier:
bindingName: Ability4
keyboardKey: 52
gamepadButton: joystick button 3
gamepadAxis:
isAxis: 0
axisDeadzone: 0.2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 35844ec4f29bfd643866a2dc26c4031c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,16 @@
Left Stick: Movement
Right Stick: Aim direction
A/X (Bottom): Basic Ability/Primary Attack
B/Circle (Right): Secondary Ability
X/Square (Left): Third Ability
Y/Triangle (Top): Fourth Ability
Left Bumper (L1): Potion (as you already have)
Right Bumper (R1): Interaction/Pickup
Left Trigger (L2): Show radial menu (inventory, character, etc)
Right Trigger (R2): Hold to show nearby interactables
D-Pad Up: Toggle Character Panel
D-Pad Down: Toggle Inventory
D-Pad Left: Previous Target
D-Pad Right: Next Target
Start/Options: Game Menu
Select/Back: World Map/Quest Log

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e9cc651aa6eb646459ad91dd6ae26f06
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,20 @@
%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: c84fbdfdd7da4cb47bb5d1783a2b1058, type: 3}
m_Name: Potion
m_EditorClassIdentifier:
bindingName: Potion
keyboardKey: 113
gamepadButton: left bumper
gamepadAxis:
isAxis: 0
axisDeadzone: 0.2

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1f4224a53abaaeb488c0fa8c746f0653
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -13,7 +13,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3} - target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.size propertyPath: m_SynchronizeParameters.Array.size
value: 12 value: 16
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3} - target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[5].Name propertyPath: m_SynchronizeParameters.Array.data[5].Name
@ -71,6 +71,38 @@ PrefabInstance:
propertyPath: m_SynchronizeParameters.Array.data[11].Type propertyPath: m_SynchronizeParameters.Array.data[11].Type
value: 9 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Name
value: potion
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Type
value: 9
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Name
value: spellcasting
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Type
value: 4
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Name
value: HorizontalAxis
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Name
value: VerticalAxis
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3} - target: {fileID: 583639914168640231, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType
value: 1 value: 1
@ -256,11 +288,21 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 9b8c4a61274f60b4ea5fb4299cfdbf14, type: 3} m_Script: {fileID: 11500000, guid: 9b8c4a61274f60b4ea5fb4299cfdbf14, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!1 &3834725402999450503 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 2737949628023702085, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
m_PrefabInstance: {fileID: 1209366866749221314}
m_PrefabAsset: {fileID: 0}
--- !u!1 &5688666775976244648 stripped --- !u!1 &5688666775976244648 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 6789946693469576298, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3} m_CorrespondingSourceObject: {fileID: 6789946693469576298, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
m_PrefabInstance: {fileID: 1209366866749221314} m_PrefabInstance: {fileID: 1209366866749221314}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!4 &8086682052194178606 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6985402682562936812, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
m_PrefabInstance: {fileID: 1209366866749221314}
m_PrefabAsset: {fileID: 0}
--- !u!1 &8669955468676664581 stripped --- !u!1 &8669955468676664581 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 7537150360618230983, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3} m_CorrespondingSourceObject: {fileID: 7537150360618230983, guid: 55a572819c594ad4c90a6e68c2f30e0e, type: 3}
@ -277,6 +319,72 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 75ba268000bc14f4287a8a1f8c3dabd6, type: 3} m_Script: {fileID: 11500000, guid: 75ba268000bc14f4287a8a1f8c3dabd6, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!1001 &2782418676659839487
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 8086682052194178606}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 3
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &3052396949806636206 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 2782418676659839487}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &3315893290401286401 --- !u!1001 &3315893290401286401
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -412,6 +520,82 @@ PrefabInstance:
propertyPath: selectedBuildSlots.Array.data[3].binderSlot propertyPath: selectedBuildSlots.Array.data[3].binderSlot
value: 3 value: 3
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value:
objectReference: {fileID: 8669955468676664581}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[1]
value:
objectReference: {fileID: 5688666775976244648}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value:
objectReference: {fileID: 3834725402999450503}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 3052396949806636206}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0

View File

@ -539,6 +539,11 @@ GameObject:
m_CorrespondingSourceObject: {fileID: 5589916253602216950, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3} m_CorrespondingSourceObject: {fileID: 5589916253602216950, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3}
m_PrefabInstance: {fileID: 6299060357122510577} m_PrefabInstance: {fileID: 6299060357122510577}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!4 &2555017478569357764 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 8367684642823880501, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3}
m_PrefabInstance: {fileID: 6299060357122510577}
m_PrefabAsset: {fileID: 0}
--- !u!114 &5587652594478694124 stripped --- !u!114 &5587652594478694124 stripped
MonoBehaviour: MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 1936994702313746461, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3} m_CorrespondingSourceObject: {fileID: 1936994702313746461, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3}
@ -566,3 +571,64 @@ GameObject:
m_CorrespondingSourceObject: {fileID: 3241665675335930526, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3} m_CorrespondingSourceObject: {fileID: 3241665675335930526, guid: 21e6880a6d86aec4fb0f43796c8fac6e, type: 3}
m_PrefabInstance: {fileID: 6299060357122510577} m_PrefabInstance: {fileID: 6299060357122510577}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1001 &8418820756339654015
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 2555017478569357764}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}

View File

@ -1,5 +1,71 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1001 &461977270327753614
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 8747854477309951383}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &767912324630415071 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 461977270327753614}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &5997609963086137483 --- !u!1001 &5997609963086137483
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -9,7 +75,7 @@ PrefabInstance:
m_Modifications: m_Modifications:
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3} - target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.size propertyPath: m_SynchronizeParameters.Array.size
value: 12 value: 16
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3} - target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[5].Name propertyPath: m_SynchronizeParameters.Array.data[5].Name
@ -67,6 +133,38 @@ PrefabInstance:
propertyPath: m_SynchronizeParameters.Array.data[11].Type propertyPath: m_SynchronizeParameters.Array.data[11].Type
value: 9 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Name
value: potion
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Type
value: 9
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Name
value: spellcasting
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Type
value: 4
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Name
value: HorizontalAxis
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Name
value: VerticalAxis
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3} - target: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType
value: 1 value: 1
@ -258,6 +356,11 @@ GameObject:
m_CorrespondingSourceObject: {fileID: 7028857168116585454, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3} m_CorrespondingSourceObject: {fileID: 7028857168116585454, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
m_PrefabInstance: {fileID: 5997609963086137483} m_PrefabInstance: {fileID: 5997609963086137483}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1 &4158422391300705829 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 7678185868654642862, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
m_PrefabInstance: {fileID: 5997609963086137483}
m_PrefabAsset: {fileID: 0}
--- !u!114 &6192144265892874537 stripped --- !u!114 &6192144265892874537 stripped
MonoBehaviour: MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3} m_CorrespondingSourceObject: {fileID: 492335034898022818, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
@ -269,6 +372,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 9b8c4a61274f60b4ea5fb4299cfdbf14, type: 3} m_Script: {fileID: 11500000, guid: 9b8c4a61274f60b4ea5fb4299cfdbf14, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!4 &8747854477309951383 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 3052689789721081116, guid: 088a10fcc3f776e4cbedbecef9997f19, type: 3}
m_PrefabInstance: {fileID: 5997609963086137483}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &5997609963189718090 --- !u!1001 &5997609963189718090
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -368,6 +476,82 @@ PrefabInstance:
propertyPath: defaultBuildSlots.Array.data[3].ability propertyPath: defaultBuildSlots.Array.data[3].ability
value: value:
objectReference: {fileID: 11400000, guid: d58ac5a6fef83a24e93311b30cc34b0d, type: 2} objectReference: {fileID: 11400000, guid: d58ac5a6fef83a24e93311b30cc34b0d, type: 2}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value:
objectReference: {fileID: 636887558303459220}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[1]
value:
objectReference: {fileID: 3652505225288997733}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value:
objectReference: {fileID: 4158422391300705829}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 767912324630415071}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0

View File

@ -107,6 +107,78 @@ PrefabInstance:
propertyPath: defaultBuildSlots.Array.data[3].ability propertyPath: defaultBuildSlots.Array.data[3].ability
value: value:
objectReference: {fileID: 11400000, guid: f9662c8eca616b7468e4d8fa659b55a7, type: 2} objectReference: {fileID: 11400000, guid: f9662c8eca616b7468e4d8fa659b55a7, type: 2}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value:
objectReference: {fileID: 1362499111226863775}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value:
objectReference: {fileID: 1362499111226863775}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 8209752426614665391}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0
@ -316,3 +388,74 @@ GameObject:
m_CorrespondingSourceObject: {fileID: 4560873030512601238, guid: af5fddb774a0f724c92b801e22ea7965, type: 3} m_CorrespondingSourceObject: {fileID: 4560873030512601238, guid: af5fddb774a0f724c92b801e22ea7965, type: 3}
m_PrefabInstance: {fileID: 3288727662027773961} m_PrefabInstance: {fileID: 3288727662027773961}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!4 &8562278068480744587 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6588971775634375810, guid: af5fddb774a0f724c92b801e22ea7965, type: 3}
m_PrefabInstance: {fileID: 3288727662027773961}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &9020586377326726654
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 8562278068480744587}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &8209752426614665391 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 9020586377326726654}
m_PrefabAsset: {fileID: 0}

View File

@ -49,6 +49,72 @@ MonoBehaviour:
- {fileID: 11400000, guid: 4b21d1ec90616ac4a8f0ff30311a6a1f, type: 2} - {fileID: 11400000, guid: 4b21d1ec90616ac4a8f0ff30311a6a1f, type: 2}
- {fileID: 11400000, guid: 6cf7c174663354f4bb94833236e61c18, type: 2} - {fileID: 11400000, guid: 6cf7c174663354f4bb94833236e61c18, type: 2}
- {fileID: 11400000, guid: f0272d37cc7635f4cbdfb40b1a16a9e7, type: 2} - {fileID: 11400000, guid: f0272d37cc7635f4cbdfb40b1a16a9e7, type: 2}
--- !u!1001 &1871391520838421915
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 8127584132837939814}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &1529514672671011018 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 1871391520838421915}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &2176522877944764073 --- !u!1001 &2176522877944764073
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -216,6 +282,78 @@ PrefabInstance:
propertyPath: defaultBuildSlots.Array.data[3].ability propertyPath: defaultBuildSlots.Array.data[3].ability
value: value:
objectReference: {fileID: 11400000, guid: e8ac285f957ac924babbb299999e6dbb, type: 2} objectReference: {fileID: 11400000, guid: e8ac285f957ac924babbb299999e6dbb, type: 2}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value:
objectReference: {fileID: 1366272763912873758}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value:
objectReference: {fileID: 1366272763912873758}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 1529514672671011018}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0
@ -550,9 +688,13 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: Necromancer value: Necromancer
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6899894140144780136, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3} - target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.size propertyPath: m_SynchronizeParameters.Array.size
value: 12 value: 16
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3} - target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[10].Name propertyPath: m_SynchronizeParameters.Array.data[10].Name
@ -570,6 +712,38 @@ PrefabInstance:
propertyPath: m_SynchronizeParameters.Array.data[11].Type propertyPath: m_SynchronizeParameters.Array.data[11].Type
value: 9 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Name
value: potion
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Type
value: 9
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Name
value: spellcasting
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Type
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Name
value: HorizontalAxis
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Name
value: VerticalAxis
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Type
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5dae863231f47364a8cff4666c86675c, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
--- !u!1 &1366272763912873758 stripped --- !u!1 &1366272763912873758 stripped
@ -599,3 +773,8 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 75ba268000bc14f4287a8a1f8c3dabd6, type: 3} m_Script: {fileID: 11500000, guid: 75ba268000bc14f4287a8a1f8c3dabd6, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!4 &8127584132837939814 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4467107156232270255, guid: 5dae863231f47364a8cff4666c86675c, type: 3}
m_PrefabInstance: {fileID: 5563248454827535305}
m_PrefabAsset: {fileID: 0}

View File

@ -1,5 +1,71 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1001 &1782838645173298144
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 1719249078034872000}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &1476199486818197169 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 1782838645173298144}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &2763436073792215827 --- !u!1001 &2763436073792215827
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -107,6 +173,78 @@ PrefabInstance:
propertyPath: defaultBuildSlots.Array.data[3].ability propertyPath: defaultBuildSlots.Array.data[3].ability
value: value:
objectReference: {fileID: 11400000, guid: 96c81c820f0bfe747af956cccd0f0ba4, type: 2} objectReference: {fileID: 11400000, guid: 96c81c820f0bfe747af956cccd0f0ba4, type: 2}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value:
objectReference: {fileID: 3656268380590184611}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value:
objectReference: {fileID: 3656268380590184611}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 1476199486818197169}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0
@ -442,7 +580,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3} - target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.size propertyPath: m_SynchronizeParameters.Array.size
value: 12 value: 16
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3} - target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[6].Name propertyPath: m_SynchronizeParameters.Array.data[6].Name
@ -492,6 +630,38 @@ PrefabInstance:
propertyPath: m_SynchronizeParameters.Array.data[11].Type propertyPath: m_SynchronizeParameters.Array.data[11].Type
value: 9 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Name
value: potion
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Type
value: 9
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Name
value: spellcasting
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Type
value: 4
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Name
value: HorizontalAxis
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Name
value: VerticalAxis
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3} - target: {fileID: 6567432688714911206, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType propertyPath: m_SynchronizeParameters.Array.data[6].SynchronizeType
value: 1 value: 1
@ -502,6 +672,11 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
--- !u!4 &1719249078034872000 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4353885798923642103, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}
m_PrefabInstance: {fileID: 3150237142380810807}
m_PrefabAsset: {fileID: 0}
--- !u!114 &3518186580167511544 stripped --- !u!114 &3518186580167511544 stripped
MonoBehaviour: MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 1973983944860229583, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3} m_CorrespondingSourceObject: {fileID: 1973983944860229583, guid: 78e91c3f61b3c724fbdc0ad0d233215e, type: 3}

View File

@ -1,5 +1,71 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1001 &2239639892059628099
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 186265326639328476}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &1429230204660686610 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 2239639892059628099}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &3831314495265512977 --- !u!1001 &3831314495265512977
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -207,6 +273,10 @@ PrefabInstance:
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0] propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.data[0]
value: value:
@ -219,6 +289,10 @@ PrefabInstance:
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0] propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.data[0]
value: value:
objectReference: {fileID: 5031646247094158430} objectReference: {fileID: 5031646247094158430}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 1429230204660686610}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7 value: 7
@ -546,6 +620,11 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: d5ece5c7a51e20345adcea09015e8780, type: 3} m_SourcePrefab: {fileID: 100100000, guid: d5ece5c7a51e20345adcea09015e8780, type: 3}
--- !u!4 &186265326639328476 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5026741655768996343, guid: d5ece5c7a51e20345adcea09015e8780, type: 3}
m_PrefabInstance: {fileID: 5140627754366678315}
m_PrefabAsset: {fileID: 0}
--- !u!4 &1419554064565073273 stripped --- !u!4 &1419554064565073273 stripped
Transform: Transform:
m_CorrespondingSourceObject: {fileID: 6117129996266291282, guid: d5ece5c7a51e20345adcea09015e8780, type: 3} m_CorrespondingSourceObject: {fileID: 6117129996266291282, guid: d5ece5c7a51e20345adcea09015e8780, type: 3}

View File

@ -1,5 +1,71 @@
%YAML 1.1 %YAML 1.1
%TAG !u! tag:unity3d.com,2011: %TAG !u! tag:unity3d.com,2011:
--- !u!1001 &1323047377024126535
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 1604519788515968365}
m_Modifications:
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.y
value: 0.4
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.x
value: 0.000000021855694
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_Name
value: potion_medium_red
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
--- !u!1 &2205920790569038614 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: 5f1d0835850e6a746b7be9a3856a9501, type: 3}
m_PrefabInstance: {fileID: 1323047377024126535}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &3150897364273738946 --- !u!1001 &3150897364273738946
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -165,7 +231,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3} - target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.size propertyPath: m_SynchronizeParameters.Array.size
value: 12 value: 16
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3} - target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[10].Name propertyPath: m_SynchronizeParameters.Array.data[10].Name
@ -183,8 +249,45 @@ PrefabInstance:
propertyPath: m_SynchronizeParameters.Array.data[11].Type propertyPath: m_SynchronizeParameters.Array.data[11].Type
value: 9 value: 9
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Name
value: potion
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[12].Type
value: 9
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Name
value: spellcasting
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[13].Type
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Name
value: HorizontalAxis
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[14].Type
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Name
value: VerticalAxis
objectReference: {fileID: 0}
- target: {fileID: 7716045718905858460, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
propertyPath: m_SynchronizeParameters.Array.data[15].Type
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3} m_SourcePrefab: {fileID: 100100000, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
--- !u!4 &1604519788515968365 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 4467107156232270255, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
m_PrefabInstance: {fileID: 3150897364273738946}
m_PrefabAsset: {fileID: 0}
--- !u!114 &4224308224228921298 stripped --- !u!114 &4224308224228921298 stripped
MonoBehaviour: MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 1235672432261282576, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3} m_CorrespondingSourceObject: {fileID: 1235672432261282576, guid: cfa80d1224dc4bf46adaf48681a6080c, type: 3}
@ -386,6 +489,70 @@ PrefabInstance:
propertyPath: defaultBuildSlots.Array.data[3].ability propertyPath: defaultBuildSlots.Array.data[3].ability
value: value:
objectReference: {fileID: 11400000, guid: f2c34fbff4781f84aa75dcc83f2fe57b, type: 2} objectReference: {fileID: 11400000, guid: f2c34fbff4781f84aa75dcc83f2fe57b, type: 2}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.size
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].weapons.Array.size
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].weapons.Array.size
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].weapons.Array.data[0]
value:
objectReference: {fileID: 2205920790569038614}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.size
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[1]
value: 1
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[2]
value: 2
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[3]
value: 3
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[4]
value: 4
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[5]
value: 5
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[0].animationTypes.Array.data[6]
value: 6
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[1].animationTypes.Array.data[0]
value: 8
objectReference: {fileID: 0}
- target: {fileID: 7471597901585849079, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: visualWeaponSlots.Array.data[2].animationTypes.Array.data[0]
value: 7
objectReference: {fileID: 0}
- target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3} - target: {fileID: 7687765528848249431, guid: 9c432d220280f704684a6d5b9354c782, type: 3}
propertyPath: sceneViewId propertyPath: sceneViewId
value: 0 value: 0

View File

@ -186,6 +186,7 @@ MonoBehaviour:
key: {fileID: 11400000, guid: 092fa402deb2cef49ad39df894f4525b, type: 2} key: {fileID: 11400000, guid: 092fa402deb2cef49ad39df894f4525b, type: 2}
castingStateController: {fileID: 7040887640505163424} castingStateController: {fileID: 7040887640505163424}
onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2} onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2}
gamepadBinding: {fileID: 11400000, guid: 2742d06c180116b4081691c7978914e9, type: 2}
--- !u!1 &480331571121010796 --- !u!1 &480331571121010796
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -358,7 +359,7 @@ NavMeshAgent:
m_Speed: 4.5 m_Speed: 4.5
m_Acceleration: 45 m_Acceleration: 45
avoidancePriority: 50 avoidancePriority: 50
m_AngularSpeed: 3600 m_AngularSpeed: 0
m_StoppingDistance: 0.25 m_StoppingDistance: 0.25
m_AutoTraverseOffMeshLink: 1 m_AutoTraverseOffMeshLink: 1
m_AutoBraking: 1 m_AutoBraking: 1
@ -409,7 +410,40 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 8d838855b75eb1b49bf5cac84fad9df2, type: 3} m_Script: {fileID: 11500000, guid: 8d838855b75eb1b49bf5cac84fad9df2, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
lookSpeed: 5 lookSpeed: 360
gamepadRotationSpeed: 3600
minimumInputThreshold: 0.1
movementType: 1
gamepadDeadzone: 0.2
gamepadInputCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 1
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 1
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
showDebugVisuals: 1
currentMovementDirection: {x: 0, y: 0}
currentAimDirection: {x: 0, y: 0}
lastAimDirection2: {x: 0, y: 0}
relativeMovementDirection: {x: 0, y: 0}
--- !u!114 &4486792688999778717 --- !u!114 &4486792688999778717
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1336,6 +1370,7 @@ MonoBehaviour:
key: {fileID: 11400000, guid: 8c87c2ccccdd90548bc46b87e6616d7d, type: 2} key: {fileID: 11400000, guid: 8c87c2ccccdd90548bc46b87e6616d7d, type: 2}
castingStateController: {fileID: 7040887640505163424} castingStateController: {fileID: 7040887640505163424}
onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2} onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2}
gamepadBinding: {fileID: 11400000, guid: 1f4224a53abaaeb488c0fa8c746f0653, type: 2}
--- !u!1 &3607197976230645580 --- !u!1 &3607197976230645580
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1938,6 +1973,7 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
lookAt: {fileID: 1543509794229652648} lookAt: {fileID: 1543509794229652648}
gamepadDeadzone: 0.2
--- !u!1 &5880674649554418044 --- !u!1 &5880674649554418044
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2020,6 +2056,7 @@ MonoBehaviour:
key: {fileID: 11400000, guid: 448485539eeac0146bdea3687c26059d, type: 2} key: {fileID: 11400000, guid: 448485539eeac0146bdea3687c26059d, type: 2}
castingStateController: {fileID: 7040887640505163424} castingStateController: {fileID: 7040887640505163424}
onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2} onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2}
gamepadBinding: {fileID: 11400000, guid: 35844ec4f29bfd643866a2dc26c4031c, type: 2}
--- !u!1 &6262495489912555994 --- !u!1 &6262495489912555994
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2119,6 +2156,7 @@ MonoBehaviour:
key: {fileID: 11400000, guid: 8fa70b4cecf91e64bb8b56f58df9a018, type: 2} key: {fileID: 11400000, guid: 8fa70b4cecf91e64bb8b56f58df9a018, type: 2}
castingStateController: {fileID: 7040887640505163424} castingStateController: {fileID: 7040887640505163424}
onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2} onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2}
gamepadBinding: {fileID: 11400000, guid: 1b1841e76dc92c54497a6b0cc65a3b4c, type: 2}
--- !u!1 &6842177883150729818 --- !u!1 &6842177883150729818
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2338,6 +2376,7 @@ MonoBehaviour:
key: {fileID: 11400000, guid: 89726de95474445429e07386fe137ed0, type: 2} key: {fileID: 11400000, guid: 89726de95474445429e07386fe137ed0, type: 2}
castingStateController: {fileID: 7040887640505163424} castingStateController: {fileID: 7040887640505163424}
onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2} onAbilityKeyBinderSpawned: {fileID: 11400000, guid: 9bfd488187aea4848a890711a2d587c8, type: 2}
gamepadBinding: {fileID: 11400000, guid: cb70b7a88547bc045abb0f2ed54807d1, type: 2}
--- !u!1 &7350507655590327706 --- !u!1 &7350507655590327706
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2539,6 +2578,11 @@ MonoBehaviour:
movementMask: movementMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 8 m_Bits: 8
defaultTargetDistance: 2
minDistance: 1
maxDistance: 6
distanceAdjustSpeed: 5
gamepadDeadzone: 0.2
--- !u!1 &8131561142356934979 --- !u!1 &8131561142356934979
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1 m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0} m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0} m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.06332277, g: 0.12671807, b: 0.13228, a: 1} m_IndirectSpecularColor: {r: 0.027658941, g: 0.058103442, b: 0.061011355, a: 1}
m_UseRadianceAmbientProbe: 0 m_UseRadianceAmbientProbe: 0
--- !u!157 &3 --- !u!157 &3
LightmapSettings: LightmapSettings:
@ -1649,7 +1649,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3} - target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x propertyPath: m_AnchoredPosition.x
value: 168.74998 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3} - target: {fileID: 2959850296485017366, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y propertyPath: m_AnchoredPosition.y
@ -2365,7 +2365,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3} - target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.x propertyPath: m_AnchoredPosition.x
value: 506.24997 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3} - target: {fileID: 7475116342296380174, guid: 7cf303e1116e7fb46ba92e7d73321eeb, type: 3}
propertyPath: m_AnchoredPosition.y propertyPath: m_AnchoredPosition.y

View File

@ -12,6 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 4e59b462147ebfc49a7a387e9bf168f4, type: 3} m_Script: {fileID: 11500000, guid: 4e59b462147ebfc49a7a387e9bf168f4, type: 3}
m_Name: Potion m_Name: Potion
m_EditorClassIdentifier: m_EditorClassIdentifier:
displayName:
Icon: {fileID: 21300000, guid: 00bb925151ca0004882e11e583903f24, type: 3} Icon: {fileID: 21300000, guid: 00bb925151ca0004882e11e583903f24, type: 3}
targettingTags: targettingTags:
- {fileID: 11400000, guid: 9e6b298c2ce2856418b205442417a433, type: 2} - {fileID: 11400000, guid: 9e6b298c2ce2856418b205442417a433, type: 2}
@ -21,7 +22,9 @@ MonoBehaviour:
manaCost: 0 manaCost: 0
healthCost: 0 healthCost: 0
classResourceCost: 0 classResourceCost: 0
percentMaxManaCost: 0
percentMaxHealthCost: 0
cooldown: 20 cooldown: 20
castableWhileMoving: 1 castableWhileMoving: 1
animationType: 6 animationType: 7
healingPercent: 0.6 healingPercent: 0.6

View File

@ -1,6 +1,4 @@
using Photon.Pun; using Photon.Pun;
using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
public class AoERayHitLocationSnapshotController : MonoBehaviour public class AoERayHitLocationSnapshotController : MonoBehaviour
@ -8,28 +6,44 @@ public class AoERayHitLocationSnapshotController : MonoBehaviour
public Transform aoeRayHitLocationSnapshot; public Transform aoeRayHitLocationSnapshot;
public LayerMask movementMask; public LayerMask movementMask;
[Header("Gamepad Settings")]
[SerializeField] private float defaultTargetDistance = 5f;
[SerializeField] private float minDistance = 2f;
[SerializeField] private float maxDistance = 10f;
[SerializeField] private float distanceAdjustSpeed = 5f;
[SerializeField] private float gamepadDeadzone = 0.2f;
protected PhotonView photonView; protected PhotonView photonView;
protected Ray ray;
Ray ray;
protected RaycastHit hit; protected RaycastHit hit;
protected Vector3 targetPoint = Vector3.zero;
protected Vector3 targetPoint = new Vector3(); protected bool isCasting;
protected bool isUsingGamepad;
bool isCasting; protected float currentTargetDistance;
protected Vector3 lastValidAimDirection;
protected virtual void Awake() protected virtual void Awake()
{ {
photonView = GetComponentInParent<PhotonView>(); photonView = GetComponentInParent<PhotonView>();
aoeRayHitLocationSnapshot.parent = null; aoeRayHitLocationSnapshot.parent = null;
currentTargetDistance = defaultTargetDistance;
lastValidAimDirection = transform.forward;
} }
private void OnEnable() private void OnEnable()
{ {
CastBarHandler.Instance.OnCastingStateChanged.AddListener(UpdateIsCastingState); if (CastBarHandler.Instance != null)
{
CastBarHandler.Instance.OnCastingStateChanged.AddListener(UpdateIsCastingState);
}
} }
private void OnDisable() private void OnDisable()
{ {
CastBarHandler.Instance.OnCastingStateChanged.RemoveListener(UpdateIsCastingState); if (CastBarHandler.Instance != null)
{
CastBarHandler.Instance.OnCastingStateChanged.RemoveListener(UpdateIsCastingState);
}
} }
protected virtual void Start() protected virtual void Start()
@ -37,24 +51,140 @@ public class AoERayHitLocationSnapshotController : MonoBehaviour
if (!photonView.IsMine) this.enabled = false; if (!photonView.IsMine) this.enabled = false;
} }
protected virtual void Update()
{
if (Camera.main == null) return;
if (isCasting) return;
DetectInputMethod();
if (isUsingGamepad)
{
HandleGamepadAiming();
}
else
{
HandleMouseAiming();
}
}
private void DetectInputMethod()
{
Vector2 gamepadLook = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
);
float rightTrigger = Input.GetAxisRaw("RightTrigger");
float leftTrigger = Input.GetAxisRaw("LeftTrigger");
bool triggerInput = Mathf.Abs(rightTrigger) > gamepadDeadzone || Mathf.Abs(leftTrigger) > gamepadDeadzone;
if (gamepadLook.magnitude > gamepadDeadzone || triggerInput)
{
isUsingGamepad = true;
}
else if (Input.GetAxisRaw("Mouse X") != 0 || Input.GetAxisRaw("Mouse Y") != 0)
{
isUsingGamepad = false;
}
}
private void HandleGamepadAiming()
{
// Get aim direction from right stick
Vector2 aimInput = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
);
// Update target distance based on both triggers
float rightTrigger = Input.GetAxisRaw("RightTrigger");
float leftTrigger = Input.GetAxisRaw("LeftTrigger");
// Right trigger increases distance, left trigger decreases
float distanceChange = (rightTrigger - leftTrigger) * distanceAdjustSpeed * Time.deltaTime;
currentTargetDistance += distanceChange;
currentTargetDistance = Mathf.Clamp(currentTargetDistance, minDistance, maxDistance);
// Calculate target position
Vector3 aimDirection;
if (aimInput.magnitude > gamepadDeadzone)
{
Vector3 cameraForward = Camera.main.transform.forward;
Vector3 cameraRight = Camera.main.transform.right;
cameraForward.y = 0f;
cameraRight.y = 0f;
cameraForward.Normalize();
cameraRight.Normalize();
aimDirection = (cameraForward * aimInput.y + cameraRight * aimInput.x).normalized;
lastValidAimDirection = aimDirection;
}
else
{
aimDirection = lastValidAimDirection;
}
// Calculate target position with ground detection
Vector3 targetPosition = transform.position + aimDirection * currentTargetDistance;
ray = new Ray(targetPosition + Vector3.up * 10f, Vector3.down);
if (Physics.Raycast(ray, out hit, 20f, movementMask))
{
aoeRayHitLocationSnapshot.position = hit.point;
}
else
{
// Fallback if no ground is hit
targetPosition.y = transform.position.y;
aoeRayHitLocationSnapshot.position = targetPosition;
}
}
private void HandleMouseAiming()
{
ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit, 100f, movementMask))
{
aoeRayHitLocationSnapshot.position = hit.point;
}
}
private void UpdateIsCastingState(bool isCasting) private void UpdateIsCastingState(bool isCasting)
{ {
this.isCasting = isCasting; this.isCasting = isCasting;
if (isCasting) if (isCasting)
{ {
ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (isUsingGamepad)
if (Physics.Raycast(ray, out hit, 100f, movementMask))
{ {
aoeRayHitLocationSnapshot.position = hit.point; // Store the current AOE position for the cast
Vector3 currentPos = aoeRayHitLocationSnapshot.position;
currentPos.y = transform.position.y;
targetPoint = currentPos;
}
else
{
ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit, 100f, movementMask))
{
targetPoint = hit.point;
}
} }
} }
} }
private void OnDestroy() private void OnDrawGizmosSelected()
{ {
if (aoeRayHitLocationSnapshot != null) if (!Application.isPlaying) return;
Destroy(aoeRayHitLocationSnapshot.gameObject);
// Draw the current target distance
Gizmos.color = Color.yellow;
Gizmos.DrawWireSphere(transform.position, currentTargetDistance);
// Draw the min/max range
Gizmos.color = Color.red;
Gizmos.DrawWireSphere(transform.position, minDistance);
Gizmos.DrawWireSphere(transform.position, maxDistance);
} }
} }

View File

@ -22,6 +22,8 @@ public class CharacterAnimatorController : MonoBehaviour
public UnityEvent onFishingEnding = new UnityEvent(); public UnityEvent onFishingEnding = new UnityEvent();
public UnityEvent onFishingEnded = new UnityEvent(); public UnityEvent onFishingEnded = new UnityEvent();
PlayerMovement playerMovement;
private void Awake() private void Awake()
{ {
anim = GetComponent<Animator>(); anim = GetComponent<Animator>();
@ -29,6 +31,8 @@ public class CharacterAnimatorController : MonoBehaviour
photonView = GetComponentInParent<PhotonView>(); photonView = GetComponentInParent<PhotonView>();
parentController = GetComponentInParent<CharacterAnimatorParent>(); parentController = GetComponentInParent<CharacterAnimatorParent>();
characterSpin = photonView.GetComponentInChildren<SimpleRotationFX>(); characterSpin = photonView.GetComponentInChildren<SimpleRotationFX>();
playerMovement = GetComponentInParent<PlayerMovement>();
} }
// Start is called before the first frame update // Start is called before the first frame update
@ -68,6 +72,12 @@ public class CharacterAnimatorController : MonoBehaviour
} }
anim.SetFloat("movementSpeed", agent.velocity.magnitude); anim.SetFloat("movementSpeed", agent.velocity.magnitude);
if(playerMovement !=null)
{
anim.SetFloat("HorizontalAxis", Mathf.Clamp(playerMovement.relativeMovementDirection.x, -1f, 1f));
anim.SetFloat("VerticalAxis", Mathf.Clamp(playerMovement.relativeMovementDirection.y, -1f, 1f));
}
} }
private void UpdateIsCastingState(bool isCasting) private void UpdateIsCastingState(bool isCasting)

View File

@ -67,6 +67,34 @@ public static class GameConstants
} }
public static class Input
{
// Movement
public const string HorizontalAxis = "Horizontal";
public const string VerticalAxis = "Vertical";
// Aiming
public const string AimHorizontalAxis = "RightStickHorizontal";
public const string AimVerticalAxis = "RightStickVertical";
// Triggers
public const string RightTrigger = "RightTrigger";
public const string LeftTrigger = "LeftTrigger";
// Face Buttons
public const string ActionButton = "Submit";
public const string CancelButton = "Cancel";
public const string MenuButton = "Menu";
// Shoulder Buttons
public const string RightShoulder = "RightShoulder";
public const string LeftShoulder = "LeftShoulder";
// D-Pad
public const string DPadHorizontal = "DPadHorizontal";
public const string DPadVertical = "DPadVertical";
}
public static class Audio public static class Audio
{ {

View File

@ -0,0 +1,372 @@
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;
public class GameInputSetup
{
[MenuItem("Tools/Setup Complete Game Input")]
public static void SetupGameInput()
{
var inputManagerPath = "ProjectSettings/InputManager.asset";
var serializedObject = new SerializedObject(AssetDatabase.LoadAllAssetsAtPath(inputManagerPath)[0]);
var axesProperty = serializedObject.FindProperty("m_Axes");
// First clear any existing duplicates
ClearExistingAxes(axesProperty);
var axes = new List<InputAxis>()
{
// Movement - Left Stick
new InputAxis()
{
name = "Horizontal",
descriptiveName = "Left Stick Horizontal",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 0,
joyNum = 0
},
new InputAxis()
{
name = "Vertical",
descriptiveName = "Left Stick Vertical",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 1,
invert = true,
joyNum = 0
},
// Keyboard Movement
new InputAxis()
{
name = "Horizontal",
negativeButton = "a",
positiveButton = "d",
gravity = 3f,
sensitivity = 3f,
type = 0,
},
new InputAxis()
{
name = "Vertical",
negativeButton = "s",
positiveButton = "w",
gravity = 3f,
sensitivity = 3f,
type = 0,
},
// Aiming - Right Stick
new InputAxis()
{
name = "RightStickHorizontal",
descriptiveName = "Right Stick Horizontal",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 3,
joyNum = 0
},
// Alternative mapping for different controllers
new InputAxis()
{
name = "RightStickHorizontal",
descriptiveName = "Right Stick Horizontal Alt",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 5,
joyNum = 0
},
new InputAxis()
{
name = "RightStickVertical",
descriptiveName = "Right Stick Vertical",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 4,
invert = true,
joyNum = 0
},
// Alternative mapping for different controllers
new InputAxis()
{
name = "RightStickVertical",
descriptiveName = "Right Stick Vertical Alt",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 6,
invert = true,
joyNum = 0
},
// Primary Abilities (Face Buttons)
new InputAxis()
{
name = "Ability1",
descriptiveName = "Primary Ability (A/X)",
positiveButton = "joystick button 0",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability1",
positiveButton = "1",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability2",
descriptiveName = "Secondary Ability (B/Circle)",
positiveButton = "joystick button 1",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability2",
positiveButton = "2",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability3",
descriptiveName = "Third Ability (X/Square)",
positiveButton = "joystick button 2",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability3",
positiveButton = "3",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability4",
descriptiveName = "Fourth Ability (Y/Triangle)",
positiveButton = "joystick button 3",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Ability4",
positiveButton = "4",
gravity = 1000,
sensitivity = 1000,
type = 0
},
// UI and Special Actions
new InputAxis()
{
name = "Interact",
descriptiveName = "Interact/Confirm",
positiveButton = "joystick button 0",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Interact",
positiveButton = "e",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Menu",
descriptiveName = "Menu/Pause",
positiveButton = "joystick button 7",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Menu",
positiveButton = "escape",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Inventory",
descriptiveName = "Inventory Toggle",
positiveButton = "joystick button 6",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "Inventory",
positiveButton = "i",
gravity = 1000,
sensitivity = 1000,
type = 0
},
// Shoulder Buttons and Triggers
new InputAxis()
{
name = "LeftTrigger",
descriptiveName = "Left Trigger",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 8,
joyNum = 0
},
new InputAxis()
{
name = "RightTrigger",
descriptiveName = "Right Trigger",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 9,
joyNum = 0
},
new InputAxis()
{
name = "LeftBumper",
descriptiveName = "Left Bumper",
positiveButton = "joystick button 4",
gravity = 1000,
sensitivity = 1000,
type = 0
},
new InputAxis()
{
name = "RightBumper",
descriptiveName = "Right Bumper",
positiveButton = "joystick button 5",
gravity = 1000,
sensitivity = 1000,
type = 0
},
// D-Pad
new InputAxis()
{
name = "DPadHorizontal",
descriptiveName = "D-Pad Horizontal",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 5,
joyNum = 0
},
new InputAxis()
{
name = "DPadVertical",
descriptiveName = "D-Pad Vertical",
deadZone = 0.2f,
sensitivity = 1f,
type = 2,
axis = 6,
invert = true,
joyNum = 0
}
};
foreach (var axis in axes)
{
AddAxis(axesProperty, axis);
}
serializedObject.ApplyModifiedProperties();
Debug.Log("Input Manager setup complete! All game controls have been configured.");
}
private static void ClearExistingAxes(SerializedProperty axesProperty)
{
var axesToClear = new HashSet<string>
{
"RightStickHorizontal", "RightStickVertical",
"Ability1", "Ability2", "Ability3", "Ability4",
"LeftTrigger", "RightTrigger",
"LeftBumper", "RightBumper",
"DPadHorizontal", "DPadVertical"
};
var axesToRemove = new List<int>();
for (int i = 0; i < axesProperty.arraySize; ++i)
{
var axisProp = axesProperty.GetArrayElementAtIndex(i);
var name = axisProp.FindPropertyRelative("m_Name").stringValue;
if (axesToClear.Contains(name))
{
axesToRemove.Add(i);
}
}
for (int i = axesToRemove.Count - 1; i >= 0; --i)
{
axesProperty.DeleteArrayElementAtIndex(axesToRemove[i]);
}
}
private static void AddAxis(SerializedProperty axesProperty, InputAxis axis)
{
axesProperty.arraySize++;
var axisProperty = axesProperty.GetArrayElementAtIndex(axesProperty.arraySize - 1);
axisProperty.FindPropertyRelative("m_Name").stringValue = axis.name;
axisProperty.FindPropertyRelative("descriptiveName").stringValue = axis.descriptiveName;
axisProperty.FindPropertyRelative("descriptiveNegativeName").stringValue = axis.descriptiveNegativeName;
axisProperty.FindPropertyRelative("negativeButton").stringValue = axis.negativeButton;
axisProperty.FindPropertyRelative("positiveButton").stringValue = axis.positiveButton;
axisProperty.FindPropertyRelative("altNegativeButton").stringValue = axis.altNegativeButton;
axisProperty.FindPropertyRelative("altPositiveButton").stringValue = axis.altPositiveButton;
axisProperty.FindPropertyRelative("gravity").floatValue = axis.gravity;
axisProperty.FindPropertyRelative("dead").floatValue = axis.deadZone;
axisProperty.FindPropertyRelative("sensitivity").floatValue = axis.sensitivity;
axisProperty.FindPropertyRelative("snap").boolValue = axis.snap;
axisProperty.FindPropertyRelative("invert").boolValue = axis.invert;
axisProperty.FindPropertyRelative("type").intValue = axis.type;
axisProperty.FindPropertyRelative("axis").intValue = axis.axis;
axisProperty.FindPropertyRelative("joyNum").intValue = axis.joyNum;
}
}
[System.Serializable]
public class InputAxis
{
public string name = "";
public string descriptiveName = "";
public string descriptiveNegativeName = "";
public string negativeButton = "";
public string positiveButton = "";
public string altNegativeButton = "";
public string altPositiveButton = "";
public float gravity = 0f;
public float deadZone = 0f;
public float sensitivity = 0f;
public bool snap = false;
public bool invert = false;
public int type = 0;
public int axis = 0;
public int joyNum = 0;
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 08ac96afd5da953418079f41c9812057
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a86db79d0a81a6a4d96de5d131aba5e9
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,51 @@
// GameInputBinding.cs
using UnityEngine;
[CreateAssetMenu(fileName = "InputBinding", menuName = "RiftMayhem/Input/Input Binding")]
public class GameInputBinding : ScriptableObject
{
public string bindingName;
public KeyCode keyboardKey;
public string gamepadButton;
public string gamepadAxis;
public bool isAxis;
public float axisDeadzone = 0.2f;
public float GetValue()
{
if (isAxis && !string.IsNullOrEmpty(gamepadAxis))
{
float axisValue = Input.GetAxis(gamepadAxis);
return Mathf.Abs(axisValue) > axisDeadzone ? axisValue : 0f;
}
if (!string.IsNullOrEmpty(bindingName) && Input.GetButton(bindingName))
return 1f;
return Input.GetKey(keyboardKey) ? 1f : 0f;
}
public bool GetButtonDown()
{
if (!string.IsNullOrEmpty(bindingName) && Input.GetButtonDown(bindingName))
return true;
return Input.GetKeyDown(keyboardKey);
}
public bool GetButton()
{
if (!string.IsNullOrEmpty(bindingName) && Input.GetButton(bindingName))
return true;
return Input.GetKey(keyboardKey);
}
public bool GetButtonUp()
{
if (!string.IsNullOrEmpty(bindingName) && Input.GetButtonUp(bindingName))
return true;
return Input.GetKeyUp(keyboardKey);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c84fbdfdd7da4cb47bb5d1783a2b1058
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,92 @@
// GameInputManager.cs
using UnityEngine;
using System.Collections.Generic;
public class GameInputManager : MonoBehaviour
{
private static GameInputManager _instance;
public static GameInputManager Instance => _instance;
public bool isUsingGamepad { get; private set; }
[SerializeField] private float gamepadDetectionThreshold = 0.1f;
private Dictionary<string, GameInputBinding> inputBindings = new Dictionary<string, GameInputBinding>();
private void Awake()
{
if (_instance != null && _instance != this)
{
Destroy(gameObject);
return;
}
_instance = this;
DontDestroyOnLoad(gameObject);
LoadInputBindings();
}
private void Update()
{
DetectInputMethod();
}
private void DetectInputMethod()
{
// Check gamepad input
bool gamepadInput =
Mathf.Abs(Input.GetAxis(GameConstants.Input.HorizontalAxis)) > gamepadDetectionThreshold ||
Mathf.Abs(Input.GetAxis(GameConstants.Input.VerticalAxis)) > gamepadDetectionThreshold ||
Mathf.Abs(Input.GetAxis(GameConstants.Input.AimHorizontalAxis)) > gamepadDetectionThreshold ||
Mathf.Abs(Input.GetAxis(GameConstants.Input.AimVerticalAxis)) > gamepadDetectionThreshold ||
Input.GetAxis(GameConstants.Input.RightTrigger) > gamepadDetectionThreshold ||
Input.GetAxis(GameConstants.Input.LeftTrigger) > gamepadDetectionThreshold;
if (gamepadInput)
{
isUsingGamepad = true;
}
else if (Input.GetMouseButtonDown(0) || Input.GetMouseButtonDown(1) || Input.anyKeyDown)
{
isUsingGamepad = false;
}
}
private void LoadInputBindings()
{
var bindings = Resources.LoadAll<GameInputBinding>("InputBindings");
foreach (var binding in bindings)
{
inputBindings[binding.bindingName] = binding;
Debug.Log(binding.bindingName);
}
}
public float GetValue(string bindingName)
{
if (inputBindings.TryGetValue(bindingName, out GameInputBinding binding))
return binding.GetValue();
return 0f;
}
public bool GetButtonDown(string bindingName)
{
if (inputBindings.TryGetValue(bindingName, out GameInputBinding binding))
return binding.GetButtonDown();
return false;
}
public bool GetButton(string bindingName)
{
if (inputBindings.TryGetValue(bindingName, out GameInputBinding binding))
return binding.GetButton();
return false;
}
public bool GetButtonUp(string bindingName)
{
if (inputBindings.TryGetValue(bindingName, out GameInputBinding binding))
return binding.GetButtonUp();
return false;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 6ae8fd3e6ba25e441b159d1c9468be7f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,99 @@
using Photon.Pun;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerInput : MonoBehaviour
{
[Header("UI References")]
[SerializeField] private GameObject characterPanel;
[SerializeField] private GameObject inventoryPanel;
[SerializeField] private GameObject radialMenu;
private PhotonView photonView;
private bool isRadialMenuOpen;
private void Awake()
{
photonView = GetComponent<PhotonView>();
}
private void Update()
{
if (!photonView.IsMine) return;
// D-Pad controls
if (Input.GetButtonDown("DPadUp"))
{
TogglePanel(characterPanel);
}
if (Input.GetButtonDown("DPadDown"))
{
TogglePanel(inventoryPanel);
}
// Radial Menu
float leftTrigger = Input.GetAxisRaw("LeftTrigger");
if (leftTrigger > 0.5f && !isRadialMenuOpen)
{
OpenRadialMenu();
}
else if (leftTrigger < 0.5f && isRadialMenuOpen)
{
CloseRadialMenu();
}
if (isRadialMenuOpen)
{
// Handle radial menu selection with right stick
Vector2 rightStick = new Vector2(
Input.GetAxisRaw("RightStickHorizontal"),
Input.GetAxisRaw("RightStickVertical")
);
if (rightStick.magnitude > 0.5f)
{
UpdateRadialMenuSelection(rightStick);
}
}
}
private void TogglePanel(GameObject panel)
{
if (panel.activeSelf)
{
panel.SetActive(false);
}
else
{
// Close other panels first
characterPanel.SetActive(false);
inventoryPanel.SetActive(false);
// Open requested panel
panel.SetActive(true);
}
}
private void OpenRadialMenu()
{
isRadialMenuOpen = true;
radialMenu.SetActive(true);
Time.timeScale = 0.2f; // Slow down time while menu is open
}
private void CloseRadialMenu()
{
isRadialMenuOpen = false;
radialMenu.SetActive(false);
Time.timeScale = 1f;
}
private void UpdateRadialMenuSelection(Vector2 direction)
{
float angle = Mathf.Atan2(direction.y, direction.x) * Mathf.Rad2Deg;
if (angle < 0) angle += 360f;
// Update radial menu UI based on angle
// Each menu item covers 360° / number_of_items degrees
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0a3ff82ff22325446bdcc5e679d6bfc9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -66,6 +66,25 @@ public class Interactable : MonoBehaviour
hasInteracted = false; hasInteracted = false;
} }
// Add these methods to support gamepad interaction
public virtual void OnHighlight()
{
// Add highlight visual effect
// For example, outline shader, floating arrow, etc.
}
public virtual void OnUnhighlight()
{
// Remove highlight effect
}
public virtual string GetInteractionText()
{
// Return the interaction prompt text
// e.g., "Talk", "Loot", "Open", etc.
return "Interact";
}
private void OnDrawGizmosSelected() private void OnDrawGizmosSelected()
{ {
if (interactionTransform == null) if (interactionTransform == null)

View File

@ -0,0 +1,142 @@
using Photon.Pun;
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class GamepadInteractionController : MonoBehaviour
{
[Header("Settings")]
[SerializeField] private float interactionRadius = 3f;
[SerializeField] private float highlightRadius = 5f;
[SerializeField] private LayerMask interactableMask;
[Header("UI References")]
[SerializeField] private GameObject interactionPrompt;
[SerializeField] private Image interactionIcon;
[SerializeField] private TMP_Text interactionText;
private List<Interactable> nearbyInteractables = new List<Interactable>();
private Interactable currentTarget;
private PhotonView photonView;
private bool isShowingInteractables;
private void Awake()
{
photonView = GetComponent<PhotonView>();
}
private void Update()
{
if (!photonView.IsMine) return;
// Show interactables when holding Right Trigger
float rightTrigger = Input.GetAxisRaw("RightTrigger");
isShowingInteractables = rightTrigger > 0.5f;
if (isShowingInteractables)
{
UpdateNearbyInteractables();
HighlightClosestInteractable();
}
else
{
ClearHighlights();
}
// Interact with Right Bumper
if (Input.GetButtonDown("RightBumper") && currentTarget != null)
{
InteractWithCurrent();
}
}
private void UpdateNearbyInteractables()
{
nearbyInteractables.Clear();
Collider[] colliders = Physics.OverlapSphere(transform.position, highlightRadius, interactableMask);
foreach (var collider in colliders)
{
if (collider.TryGetComponent<Interactable>(out var interactable))
{
nearbyInteractables.Add(interactable);
}
}
}
private void HighlightClosestInteractable()
{
float closestDistance = float.MaxValue;
Interactable closest = null;
foreach (var interactable in nearbyInteractables)
{
float distance = Vector3.Distance(transform.position, interactable.transform.position);
if (distance < closestDistance)
{
closestDistance = distance;
closest = interactable;
}
}
// Only highlight if within interaction range
if (closest != null && closestDistance <= interactionRadius)
{
SetCurrentTarget(closest);
}
else
{
ClearCurrentTarget();
}
}
private void SetCurrentTarget(Interactable target)
{
if (currentTarget != target)
{
ClearCurrentTarget();
currentTarget = target;
// Show interaction prompt
interactionPrompt.SetActive(true);
interactionText.text = $"Press RB to {target.GetInteractionText()}";
// Highlight the interactable
target.OnHighlight();
}
}
private void ClearCurrentTarget()
{
if (currentTarget != null)
{
currentTarget.OnUnhighlight();
currentTarget = null;
interactionPrompt.SetActive(false);
}
}
private void ClearHighlights()
{
foreach (var interactable in nearbyInteractables)
{
interactable.OnUnhighlight();
}
nearbyInteractables.Clear();
ClearCurrentTarget();
}
private void InteractWithCurrent()
{
if (currentTarget != null)
{
float distance = Vector3.Distance(transform.position, currentTarget.transform.position);
if (distance <= interactionRadius)
{
currentTarget.Interact(true);
}
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: daa95e02f22b83b4d8d44e8af7a5e1f8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +1,6 @@
using Kryz.CharacterStats.Examples; using Kryz.CharacterStats.Examples;
using Photon.Pun; using Photon.Pun;
using System.Collections; using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
public class AbilityKeyBinder : MonoBehaviour public class AbilityKeyBinder : MonoBehaviour
@ -15,6 +14,7 @@ public class AbilityKeyBinder : MonoBehaviour
[SerializeField] private GameKey key; [SerializeField] private GameKey key;
[SerializeField] private CastingStateController castingStateController; [SerializeField] private CastingStateController castingStateController;
[SerializeField] private GameEvent_AbilityKeyBinder onAbilityKeyBinderSpawned; [SerializeField] private GameEvent_AbilityKeyBinder onAbilityKeyBinderSpawned;
[SerializeField] private GameInputBinding gamepadBinding; // New field for gamepad binding
private PhotonView user; private PhotonView user;
private Taggable userTag; private Taggable userTag;
@ -56,31 +56,38 @@ public class AbilityKeyBinder : MonoBehaviour
onLocalPlayerFainted.Response.AddListener(() => onLocalPlayerFainted.Response.AddListener(() =>
{ {
isDead = true; isDead = true;
}); });
onLocalPlayerPermaDeath.Response.AddListener(() => onLocalPlayerPermaDeath.Response.AddListener(() =>
{ {
isDead = true; isDead = true;
}); });
onLocalPlayerRevived.Response.AddListener(() => onLocalPlayerRevived.Response.AddListener(() =>
{ {
isDead = false; isDead = false;
}); });
onAbilityKeyBinderSpawned.Raise(this); onAbilityKeyBinderSpawned.Raise(this);
} }
// Update is called once per frame
void Update() void Update()
{ {
if (isDead) return; if (isDead) return;
if (Input.GetKeyDown(key.keyCode)) // Check for input using both keyboard and gamepad
bool isInputPressed =
(key != null && Input.GetKeyDown(key.keyCode)) ||
(!string.IsNullOrEmpty(gamepadBinding.bindingName) && GameInputManager.Instance.GetButtonDown(gamepadBinding.bindingName));
bool isInputReleased =
(key != null && Input.GetKeyUp(key.keyCode)) ||
(!string.IsNullOrEmpty(gamepadBinding.bindingName) && GameInputManager.Instance.GetButtonUp(gamepadBinding.bindingName));
if (isInputPressed)
{ {
if (abilityBindInstance != null) if (abilityBindInstance != null)
abilityBindInstance.pressed.SetActive(true); abilityBindInstance.pressed.SetActive(true);
if (IsAbilityOffCooldown() && mana.EnoughMana(ability.GetFinalManaCost(mana)) && health.EnoughHealth(ability.GetFinalHealthCost(health)))
if (IsAbilityOffCooldown() && mana.EnoughMana(ability.GetFinalManaCost(mana)) && health.EnoughHealth(ability.GetFinalHealthCost(health)))
{ {
if (ability is ChanneledAbility) if (ability is ChanneledAbility)
{ {
@ -108,13 +115,14 @@ public class AbilityKeyBinder : MonoBehaviour
} }
} }
} }
if (Input.GetKeyUp(key.keyCode))
if (isInputReleased)
{ {
if (abilityBindInstance != null) if (abilityBindInstance != null)
abilityBindInstance.pressed.SetActive(false); abilityBindInstance.pressed.SetActive(false);
if (currentChanneling != null) if (currentChanneling != null)
{ {
if (networkedChanneling != null) if (networkedChanneling != null)
{ {
networkedChanneling.StopCoroutine(currentChanneling); networkedChanneling.StopCoroutine(currentChanneling);
@ -148,6 +156,7 @@ public class AbilityKeyBinder : MonoBehaviour
abilityBindInstance.manaCost.text = finalManaCost.ToString("F0"); abilityBindInstance.manaCost.text = finalManaCost.ToString("F0");
abilityBindInstance.noMana.SetActive(!mana.EnoughMana(finalManaCost)); abilityBindInstance.noMana.SetActive(!mana.EnoughMana(finalManaCost));
} }
public void OnHealthChanged(float currentHealth) public void OnHealthChanged(float currentHealth)
{ {
finalHealthCost = ability.GetFinalHealthCost(health); finalHealthCost = ability.GetFinalHealthCost(health);
@ -160,9 +169,11 @@ public class AbilityKeyBinder : MonoBehaviour
{ {
return ability.cooldown <= 0 || !cooldownTracker.OnCooldown(ability); return ability.cooldown <= 0 || !cooldownTracker.OnCooldown(ability);
} }
public void BindAbility(BaseAbility ability) public void BindAbility(BaseAbility ability)
{ {
this.ability = ability; this.ability = ability;
onAbilityKeyBinderSpawned.Raise(this); onAbilityKeyBinderSpawned.Raise(this);
} }
}
}

View File

@ -1,73 +1,301 @@
using Photon.Pun; using Photon.Pun;
using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
using UnityEngine.AI; using UnityEngine.AI;
public enum MovementType
{
PointAndClick,
DirectionalInput
}
[RequireComponent(typeof(NavMeshAgent))] [RequireComponent(typeof(NavMeshAgent))]
public class PlayerMovement : MonoBehaviour public class PlayerMovement : MonoBehaviour
{ {
[SerializeField] private float lookSpeed; [Header("Movement Settings")]
[SerializeField] private float lookSpeed = 10f;
[SerializeField] private float gamepadRotationSpeed = 300f;
[SerializeField] private float minimumInputThreshold = 0.1f;
[SerializeField] private MovementType movementType = MovementType.DirectionalInput;
Transform target; [Header("Controller Settings")]
NavMeshAgent agent; [SerializeField] private float gamepadDeadzone = 0.2f;
[SerializeField] private AnimationCurve gamepadInputCurve = AnimationCurve.Linear(0, 0, 1, 1);
Vector3 direction = Vector3.zero; [Header("Debug Visualization")]
Quaternion lookRotation = new Quaternion(); [SerializeField] private bool showDebugVisuals = false;
private Transform target;
private NavMeshAgent agent;
private Vector3 direction = Vector3.zero;
private Quaternion lookRotation = Quaternion.identity;
private Camera mainCamera;
private Plane groundPlane;
private Vector2 lastGamepadAimInput;
private Vector3 lastAimDirection;
private bool isUsingGamepad;
private Vector3 currentMoveDirection;
private bool isMoving;
private PhotonView photonView;
private ProjectileSpawnLocationController aimController;
private Vector3 currentAimPoint;
private bool isAiming;
PhotonView photonView; public Vector2 currentMovementDirection= new Vector2();
public Vector2 currentAimDirection = new Vector2();
ProjectileSpawnLocationController aimController; public Vector2 lastAimDirection2 = new Vector2();
public Vector2 relativeMovementDirection = new Vector2();
private Vector3 mouseAimPoint;
private bool hasMouseAimPoint;
private void Awake() private void Awake()
{ {
agent = GetComponent<NavMeshAgent>(); agent = GetComponent<NavMeshAgent>();
photonView = GetComponent<PhotonView>(); photonView = GetComponent<PhotonView>();
mainCamera = Camera.main;
groundPlane = new Plane(Vector3.up, Vector3.zero);
aimController = GetComponentInChildren<ProjectileSpawnLocationController>(); aimController = GetComponentInChildren<ProjectileSpawnLocationController>();
lastAimDirection = transform.forward;
} }
// Start is called before the first frame update
void Start() void Start()
{ {
if (!photonView.IsMine) this.enabled = false; if (!photonView.IsMine)
}
private void OnDestroy()
{
}
// Update is called once per frame
void Update()
{
if (target != null)
{ {
agent.SetDestination(target.position); this.enabled = false;
FaceTarget(); return;
} }
if (CastBarHandler.Instance.currentAbility is ChanneledAbility && CastBarHandler.Instance.castBar.activeSelf) SetupAgentForDirectionalMovement();
}
private void Update()
{
if (movementType == MovementType.DirectionalInput)
{ {
if (((ChanneledAbility)CastBarHandler.Instance.currentAbility).allowAiming) DetectInputMethod();
// Handle movement first
HandleDirectionalMovement();
// Then handle aiming, with mouse taking priority
if (!isUsingGamepad)
{ {
InstantFaceCast(aimController.GetLookat()); HandleMouseAiming();
} }
else else
{ {
return; HandleGamepadAiming();
hasMouseAimPoint = false; // Reset mouse aim when using gamepad
} }
HandleRelativeForAnimation();
}
else if (target != null)
{
HandlePointAndClickMovement();
}
// Handle channeled ability rotation
if (CastBarHandler.Instance.currentAbility is ChanneledAbility &&
CastBarHandler.Instance.castBar.activeSelf)
{
var channelAbility = (ChanneledAbility)CastBarHandler.Instance.currentAbility;
if (channelAbility.allowAiming)
{
InstantFaceCast(aimController.GetLookat());
}
}
}
private void DetectInputMethod()
{
Vector2 gamepadMove = new Vector2(
Input.GetAxisRaw(GameConstants.Input.HorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.VerticalAxis));
Vector2 gamepadLook = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis));
// Check for mouse movement
if (Input.GetAxis("Mouse X") != 0 || Input.GetAxis("Mouse Y") != 0)
{
isUsingGamepad = false;
return;
}
// Check for gamepad input
if (gamepadMove.magnitude > gamepadDeadzone || gamepadLook.magnitude > gamepadDeadzone)
{
isUsingGamepad = true;
hasMouseAimPoint = false; // Reset mouse aim when using gamepad
}
}
private void HandleDirectionalMovement()
{
if (agent.isStopped) return;
currentMovementDirection = new Vector2(
Input.GetAxisRaw(GameConstants.Input.HorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.VerticalAxis));
Vector3 cameraForward = mainCamera.transform.forward;
Vector3 cameraRight = mainCamera.transform.right;
cameraForward.y = 0f;
cameraRight.y = 0f;
cameraForward.Normalize();
cameraRight.Normalize();
currentMoveDirection = (cameraForward * currentMovementDirection.y +
cameraRight * currentMovementDirection.x).normalized;
isMoving = currentMoveDirection.magnitude >= minimumInputThreshold;
if (isMoving)
{
agent.SetDestination(transform.position + currentMoveDirection);
} }
else else
{ {
return; agent.velocity = Vector3.zero;
agent.SetDestination(transform.position);
}
// If we're using mouse aim, maintain character rotation even while moving
if (!isUsingGamepad && hasMouseAimPoint)
{
Vector3 aimDirection = (mouseAimPoint - transform.position).normalized;
if (aimDirection != Vector3.zero)
{
transform.rotation = Quaternion.LookRotation(aimDirection);
}
}
}
private void HandleAimingRotation()
{
if (isUsingGamepad)
{
HandleGamepadAiming();
}
else
{
HandleMouseAiming();
}
}
private void HandleGamepadAiming()
{
currentAimDirection = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
);
if (currentAimDirection.magnitude > gamepadDeadzone)
{
isAiming = true;
Vector3 cameraForward = mainCamera.transform.forward;
Vector3 cameraRight = mainCamera.transform.right;
cameraForward.y = 0f;
cameraRight.y = 0f;
Vector3 aimDirection = (cameraForward * currentAimDirection.y + cameraRight * currentAimDirection.x).normalized;
lastAimDirection = aimDirection;
lastAimDirection2.x = aimDirection.x;
lastAimDirection2.y = aimDirection.z;
Quaternion targetRotation = Quaternion.LookRotation(aimDirection);
transform.rotation = Quaternion.RotateTowards(
transform.rotation,
targetRotation,
gamepadRotationSpeed * Time.deltaTime
);
}
// Remove the else { isAiming = false; } - we want to maintain the last aim direction
// Instead, maintain the last valid aim direction
else if (lastAimDirection != Vector3.zero)
{
Quaternion targetRotation = Quaternion.LookRotation(lastAimDirection);
transform.rotation = Quaternion.RotateTowards(
transform.rotation,
targetRotation,
gamepadRotationSpeed * Time.deltaTime
);
}
}
private void HandleRelativeForAnimation()
{
// Calculate forward/backward movement relative to aim direction
relativeMovementDirection.y = Vector2.Dot(lastAimDirection2, currentMovementDirection);
// Calculate strafe movement relative to aim direction
// Cross product for left/right movement
relativeMovementDirection.x = lastAimDirection2.x * currentMovementDirection.y -
lastAimDirection2.y * currentMovementDirection.x;
}
private void HandleMouseAiming()
{
Ray ray = mainCamera.ScreenPointToRay(Input.mousePosition);
if (groundPlane.Raycast(ray, out float distance))
{
mouseAimPoint = ray.GetPoint(distance);
mouseAimPoint.y = transform.position.y;
hasMouseAimPoint = true;
Vector3 aimDirection = (mouseAimPoint - transform.position).normalized;
if (aimDirection != Vector3.zero)
{
lastAimDirection = aimDirection;
lastAimDirection2.x = aimDirection.x;
lastAimDirection2.y = aimDirection.z;
// Always update rotation when using mouse
transform.rotation = Quaternion.LookRotation(aimDirection);
}
}
}
private void HandlePointAndClickMovement()
{
agent.SetDestination(target.position);
FaceTarget();
}
private void SetupAgentForDirectionalMovement()
{
agent.updateRotation = false;
agent.stoppingDistance = 0f;
agent.acceleration = 100f;
agent.angularSpeed = 0f;
}
#region Public Methods
public void SetMovementType(MovementType type)
{
movementType = type;
if (movementType == MovementType.DirectionalInput)
{
SetupAgentForDirectionalMovement();
}
else
{
agent.updateRotation = true;
agent.stoppingDistance = 0.5f;
agent.acceleration = 8f;
agent.angularSpeed = 120f;
} }
} }
public void ToggleAgentMoving(bool busy) public void ToggleAgentMoving(bool busy)
{ {
agent.isStopped = busy; agent.isStopped = busy;
if (busy)
{
agent.SetDestination(transform.position);
}
} }
public void MoveToPoint(Vector3 point) public void MoveToPoint(Vector3 point)
@ -79,7 +307,6 @@ public class PlayerMovement : MonoBehaviour
{ {
agent.stoppingDistance = newTarget.radius * 0.8f; agent.stoppingDistance = newTarget.radius * 0.8f;
agent.updateRotation = false; agent.updateRotation = false;
target = newTarget.interactionTransform; target = newTarget.interactionTransform;
FaceTarget(); FaceTarget();
} }
@ -88,7 +315,6 @@ public class PlayerMovement : MonoBehaviour
{ {
agent.stoppingDistance = 0f; agent.stoppingDistance = 0f;
agent.updateRotation = true; agent.updateRotation = true;
target = null; target = null;
} }
@ -127,6 +353,32 @@ public class PlayerMovement : MonoBehaviour
public void StopLocomotion(int index) public void StopLocomotion(int index)
{ {
StopFollowingTarget(); StopFollowingTarget();
agent.SetDestination(this.transform.position); agent.SetDestination(transform.position);
} }
}
#endregion
#region Debug
private void OnDrawGizmos()
{
if (!showDebugVisuals) return;
// Draw movement direction
Gizmos.color = Color.blue;
Gizmos.DrawRay(transform.position, currentMoveDirection * 2f);
// Draw aim direction
Gizmos.color = Color.red;
Gizmos.DrawRay(transform.position, lastAimDirection * 2f);
// Draw aim point if using mouse
if (!isUsingGamepad)
{
Gizmos.color = Color.yellow;
Gizmos.DrawWireSphere(currentAimPoint, 0.2f);
}
}
#endregion
}

View File

@ -1,99 +1,199 @@
using Photon.Pun; using Photon.Pun;
using System.Collections;
using System.Collections.Generic;
using UnityEngine; using UnityEngine;
public class ProjectileSpawnLocationController : MonoBehaviour public class ProjectileSpawnLocationController : MonoBehaviour
{ {
[SerializeField] protected Transform lookAt; [SerializeField] protected Transform lookAt;
Plane plane = new Plane(Vector3.down, 0); [SerializeField] private float gamepadDeadzone = 0.2f;
protected PhotonView photonView; protected PhotonView photonView;
protected PlayerMovement playerMovement;
Plane plane = new Plane(Vector3.up, 0);
Ray ray; Ray ray;
protected Vector3 targetPoint = Vector3.zero;
protected Vector3 targetPoint = new Vector3();
bool isCasting; bool isCasting;
Vector3 castLookatSnapshot; Vector3 castLookatSnapshot;
bool isUsingGamepad;
Vector3 lastValidAimDirection;
protected virtual void Awake() protected virtual void Awake()
{ {
photonView = GetComponentInParent<PhotonView>(); photonView = GetComponentInParent<PhotonView>();
playerMovement = GetComponentInParent<PlayerMovement>();
lastValidAimDirection = transform.forward; // Initialize with a default forward direction
} }
private void OnEnable() private void OnEnable()
{ {
CastBarHandler.Instance.OnCastingStateChanged.AddListener(UpdateIsCastingState); if (CastBarHandler.Instance != null)
{
CastBarHandler.Instance.OnCastingStateChanged.AddListener(UpdateIsCastingState);
}
} }
private void OnDisable() private void OnDisable()
{ {
CastBarHandler.Instance.OnCastingStateChanged.RemoveListener(UpdateIsCastingState); if (CastBarHandler.Instance != null)
{
CastBarHandler.Instance.OnCastingStateChanged.RemoveListener(UpdateIsCastingState);
}
} }
// Start is called before the first frame update
protected virtual void Start() protected virtual void Start()
{ {
if (!photonView.IsMine) this.enabled = false; if (!photonView.IsMine)
{
this.enabled = false;
return;
}
} }
// Update is called once per frame
protected virtual void Update() protected virtual void Update()
{ {
if (Camera.main == null) return; if (Camera.main == null) return;
if (isCasting) if (isCasting)
{ {
lookAt.forward = castLookatSnapshot; lookAt.forward = castLookatSnapshot;
return;
}
if(CastBarHandler.Instance.currentAbility is ChanneledAbility) DetectInputMethod();
{
if(((ChanneledAbility)CastBarHandler.Instance.currentAbility).allowAiming)
{
} if (isUsingGamepad)
else {
{ HandleGamepadAiming();
return; }
} else
} {
else HandleMouseAiming();
}
// Always ensure we have a valid forward direction
if (lookAt.forward == Vector3.zero)
{
lookAt.forward = lastValidAimDirection;
}
}
private void DetectInputMethod()
{
Vector2 gamepadLook = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
);
if (gamepadLook.magnitude > gamepadDeadzone)
{
isUsingGamepad = true;
}
else if (Input.GetAxisRaw("Mouse X") != 0 || Input.GetAxisRaw("Mouse Y") != 0)
{
isUsingGamepad = false;
}
}
private void HandleGamepadAiming()
{
Vector2 aimInput = new Vector2(
Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
);
if (aimInput.magnitude > gamepadDeadzone)
{
Vector3 cameraForward = Camera.main.transform.forward;
Vector3 cameraRight = Camera.main.transform.right;
// Ensure we're working in the horizontal plane
cameraForward.y = 0f;
cameraRight.y = 0f;
cameraForward.Normalize();
cameraRight.Normalize();
Vector3 aimDirection = (cameraForward * aimInput.y + cameraRight * aimInput.x).normalized;
if (aimDirection != Vector3.zero)
{ {
return; lastValidAimDirection = aimDirection;
lookAt.forward = aimDirection;
} }
} }
else
{
// Use the last valid aim direction when no current input
lookAt.forward = lastValidAimDirection;
}
}
private void HandleMouseAiming()
{
ray = Camera.main.ScreenPointToRay(Input.mousePosition); ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (plane.Raycast(ray, out float distance)) if (plane.Raycast(ray, out float distance))
{ {
targetPoint = ray.GetPoint(distance); targetPoint = ray.GetPoint(distance);
targetPoint.y = this.transform.position.y; targetPoint.y = this.transform.position.y;
lookAt.forward = targetPoint - lookAt.position; Vector3 direction = (targetPoint - lookAt.position).normalized;
if (direction != Vector3.zero)
{
lastValidAimDirection = direction;
lookAt.forward = direction;
}
} }
} }
public Vector3 GetLookat() public Vector3 GetLookat()
{ {
return lookAt.forward; return lookAt.forward != Vector3.zero ? lookAt.forward : lastValidAimDirection;
} }
private void UpdateIsCastingState(bool isCasting) private void UpdateIsCastingState(bool isCasting)
{ {
this.isCasting = isCasting; this.isCasting = isCasting;
if(isCasting) if (isCasting)
{ {
ray = Camera.main.ScreenPointToRay(Input.mousePosition); if (isUsingGamepad)
if (plane.Raycast(ray, out float distance))
{ {
targetPoint = ray.GetPoint(distance); Vector2 aimInput = new Vector2(
targetPoint.y = this.transform.position.y; Input.GetAxisRaw(GameConstants.Input.AimHorizontalAxis),
lookAt.forward = targetPoint - lookAt.position; Input.GetAxisRaw(GameConstants.Input.AimVerticalAxis)
castLookatSnapshot = lookAt.forward; );
if (aimInput.magnitude > gamepadDeadzone)
{
Vector3 cameraForward = Camera.main.transform.forward;
Vector3 cameraRight = Camera.main.transform.right;
cameraForward.y = 0f;
cameraRight.y = 0f;
cameraForward.Normalize();
cameraRight.Normalize();
castLookatSnapshot = (cameraForward * aimInput.y + cameraRight * aimInput.x).normalized;
}
else
{
castLookatSnapshot = lastValidAimDirection;
}
}
else
{
ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (plane.Raycast(ray, out float distance))
{
targetPoint = ray.GetPoint(distance);
targetPoint.y = this.transform.position.y;
castLookatSnapshot = (targetPoint - lookAt.position).normalized;
}
}
// Ensure we never have a zero vector for casting
if (castLookatSnapshot == Vector3.zero)
{
castLookatSnapshot = lastValidAimDirection;
} }
} }
} }
} }

View File

@ -94,7 +94,7 @@ Material:
- _Mode: 0 - _Mode: 0
- _OcclusionStrength: 1 - _OcclusionStrength: 1
- _Parallax: 0.02 - _Parallax: 0.02
- _Rotation: 6.8616924 - _Rotation: 86.58252
- _SmoothnessTextureChannel: 0 - _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1 - _SpecularHighlights: 1
- _SrcBlend: 1 - _SrcBlend: 1

View File

@ -293,3 +293,468 @@ InputManager:
type: 0 type: 0
axis: 0 axis: 0
joyNum: 0 joyNum: 0
- serializedVersion: 3
m_Name: Horizontal
descriptiveName: Left Stick Horizontal
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Vertical
descriptiveName: Left Stick Vertical
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 1
type: 2
axis: 1
joyNum: 0
- serializedVersion: 3
m_Name: Horizontal
descriptiveName:
descriptiveNegativeName:
negativeButton: a
positiveButton: d
altNegativeButton:
altPositiveButton:
gravity: 3
dead: 0
sensitivity: 3
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Vertical
descriptiveName:
descriptiveNegativeName:
negativeButton: s
positiveButton: w
altNegativeButton:
altPositiveButton:
gravity: 3
dead: 0
sensitivity: 3
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: RightStickHorizontal
descriptiveName: Right Stick Horizontal
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 3
joyNum: 0
- serializedVersion: 3
m_Name: RightStickHorizontal
descriptiveName: Right Stick Horizontal Alt
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 5
joyNum: 0
- serializedVersion: 3
m_Name: RightStickVertical
descriptiveName: Right Stick Vertical
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 1
type: 2
axis: 4
joyNum: 0
- serializedVersion: 3
m_Name: RightStickVertical
descriptiveName: Right Stick Vertical Alt
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 1
type: 2
axis: 6
joyNum: 0
- serializedVersion: 3
m_Name: Ability1
descriptiveName: Primary Ability (A/X)
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 0
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability1
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: 1
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability2
descriptiveName: Secondary Ability (B/Circle)
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 1
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability2
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: 2
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability3
descriptiveName: Third Ability (X/Square)
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 2
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability3
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: 3
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Ability4
descriptiveName: Fourth Ability (Y/Triangle)
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 3
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Potion
descriptiveName: PotionAbility (Q)
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 4
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 6
joyNum: 0
- serializedVersion: 3
m_Name: Ability4
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: 4
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Interact
descriptiveName: Interact/Confirm
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 0
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Interact
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: e
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Menu
descriptiveName: Menu/Pause
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 7
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Menu
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: escape
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Inventory
descriptiveName: Inventory Toggle
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 6
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: Inventory
descriptiveName:
descriptiveNegativeName:
negativeButton:
positiveButton: i
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: LeftTrigger
descriptiveName: Left Trigger
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 8
joyNum: 0
- serializedVersion: 3
m_Name: RightTrigger
descriptiveName: Right Trigger
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 9
joyNum: 0
- serializedVersion: 3
m_Name: LeftBumper
descriptiveName: Left Bumper
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 4
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: RightBumper
descriptiveName: Right Bumper
descriptiveNegativeName:
negativeButton:
positiveButton: joystick button 5
altNegativeButton:
altPositiveButton:
gravity: 1000
dead: 0
sensitivity: 1000
snap: 0
invert: 0
type: 0
axis: 0
joyNum: 0
- serializedVersion: 3
m_Name: DPadHorizontal
descriptiveName: D-Pad Horizontal
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 0
type: 2
axis: 5
joyNum: 0
- serializedVersion: 3
m_Name: DPadVertical
descriptiveName: D-Pad Vertical
descriptiveNegativeName:
negativeButton:
positiveButton:
altNegativeButton:
altPositiveButton:
gravity: 0
dead: 0.2
sensitivity: 1
snap: 0
invert: 1
type: 2
axis: 6
joyNum: 0
m_UsePhysicalKeys: 0