Refactor and reorganize scripts for improved structure and functionality
- Removed obsolete scripts: Chest, BreakableWall, Door, DoorInteract, and UiManager. - Moved Chest and BreakableWall scripts to EnvironmentObjects folder. - Introduced HammerThrower class to manage hammer throwing mechanics. - Updated PlayerController to utilize new InputManager and HammerThrower. - Refactored PlayerState to manage player state and item collection. - Enhanced UI management in UiManager to reflect player item collection. - Updated EnemyAI to remove unused movement logic. - Adjusted KeyChest to interact with PlayerState instead of Player. - Cleaned up code and improved event handling for item collection.
This commit is contained in:
@@ -7,27 +7,23 @@ labels:
|
||||
- gvhp_targets-editor
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
serializedVersion: 3
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
WindowsStoreApps:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
|
||||
@@ -7,26 +7,23 @@ labels:
|
||||
- gvhp_targets-editor
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
serializedVersion: 3
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
WindowsStoreApps:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
|
||||
+8
-11
@@ -7,26 +7,23 @@ labels:
|
||||
- gvhp_targets-editor
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
serializedVersion: 3
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
WindowsStoreApps:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
|
||||
@@ -7,26 +7,23 @@ labels:
|
||||
- gvhp_targets-editor
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
serializedVersion: 3
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
WindowsStoreApps:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
|
||||
+202
-72
@@ -38,12 +38,12 @@ RenderSettings:
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
m_UseRadianceAmbientProbe: 0
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 12
|
||||
serializedVersion: 13
|
||||
m_BakeOnSceneLoad: 0
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
@@ -206,14 +206,14 @@ MonoBehaviour:
|
||||
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_RequiresDepthTexture: 0
|
||||
m_RequiresColorTexture: 0
|
||||
m_Version: 2
|
||||
m_TaaSettings:
|
||||
quality: 3
|
||||
frameInfluence: 0.1
|
||||
jitterScale: 1
|
||||
mipBias: 0
|
||||
varianceClampScale: 0.9
|
||||
contrastAdaptiveSharpening: 0
|
||||
m_Quality: 3
|
||||
m_FrameInfluence: 0.1
|
||||
m_JitterScale: 1
|
||||
m_MipBias: 0
|
||||
m_VarianceClampScale: 0.9
|
||||
m_ContrastAdaptiveSharpening: 0
|
||||
m_Version: 2
|
||||
--- !u!20 &1012724
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -794,6 +794,7 @@ Transform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!483693784 &350695916
|
||||
TilemapRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -811,6 +812,9 @@ TilemapRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -832,9 +836,11 @@ TilemapRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -133646357
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_ChunkSize: {x: 32, y: 32, z: 32}
|
||||
m_ChunkCullingBounds: {x: 0.038461566, y: 0.015863359, z: 0}
|
||||
m_MaxChunkCount: 16
|
||||
@@ -842,7 +848,6 @@ TilemapRenderer:
|
||||
m_SortOrder: 0
|
||||
m_Mode: 0
|
||||
m_DetectChunkCullingBounds: 0
|
||||
m_MaskInteraction: 0
|
||||
--- !u!1839735485 &350695917
|
||||
Tilemap:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -2144,33 +2149,46 @@ Tilemap:
|
||||
m_AllTileFlags: 2147483649
|
||||
m_AnimatedTiles: {}
|
||||
m_TileAssetArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 82
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 82
|
||||
m_Data: {fileID: 11400000, guid: e0bbf4923ef35474fb2c0d4d207a85a2, type: 2}
|
||||
- m_RefCount: 47
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 47
|
||||
m_Data: {fileID: 11400000, guid: b7ab33d01119add43b9f50c7d2155349, type: 2}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
m_TileSpriteArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 47
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 47
|
||||
m_Data: {fileID: 1045964120, guid: 7c2d6acd22d2d0c40b84d99967afb42a, type: 3}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 82
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 82
|
||||
m_Data: {fileID: 221868806, guid: 7c2d6acd22d2d0c40b84d99967afb42a, type: 3}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
m_TileMatrixArray:
|
||||
- m_RefCount: 129
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 129
|
||||
m_Data:
|
||||
e00: 1
|
||||
e01: 0
|
||||
@@ -2189,9 +2207,11 @@ Tilemap:
|
||||
e32: 0
|
||||
e33: 1
|
||||
m_TileColorArray:
|
||||
- m_RefCount: 129
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 129
|
||||
m_Data: {r: 1, g: 1, b: 1, a: 1}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {r: 3.7734e-41, g: 3.7734e-41, b: 3.7734e-41, a: 3.7734e-41}
|
||||
m_TileObjectToInstantiateArray: []
|
||||
m_AnimationFrameRate: 1
|
||||
@@ -2653,7 +2673,7 @@ CompositeCollider2D:
|
||||
m_CompositeGameObject: {fileID: 350695914}
|
||||
--- !u!50 &350695921
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -2664,8 +2684,8 @@ Rigidbody2D:
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_LinearDamping: 0
|
||||
m_AngularDamping: 0.05
|
||||
m_GravityScale: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
@@ -2789,6 +2809,7 @@ Canvas:
|
||||
m_OverridePixelPerfect: 0
|
||||
m_SortingBucketNormalizedSize: 0
|
||||
m_VertexColorAlwaysGammaSpace: 0
|
||||
m_UseReflectionProbes: 0
|
||||
m_AdditionalShaderChannelsFlag: 25
|
||||
m_UpdateRectTransformForStandalone: 0
|
||||
m_SortingLayerID: 0
|
||||
@@ -2808,6 +2829,7 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
_totalCoins: {fileID: 1923750336}
|
||||
_keyIcon: {fileID: 1371746634}
|
||||
_playerState: {fileID: 0}
|
||||
--- !u!1 &411449914
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -2842,6 +2864,7 @@ Transform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!212 &411449916
|
||||
SpriteRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -2859,6 +2882,9 @@ SpriteRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -2880,9 +2906,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -133646357
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_Sprite: {fileID: 2032460506, guid: 7c2d6acd22d2d0c40b84d99967afb42a, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
@@ -2892,7 +2920,6 @@ SpriteRenderer:
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1 &416410544
|
||||
GameObject:
|
||||
@@ -3159,6 +3186,10 @@ PrefabInstance:
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7047733282028940673, guid: 934a57b833e872445ac8463836f55a44, type: 3}
|
||||
propertyPath: m_Enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7047733282028940674, guid: 934a57b833e872445ac8463836f55a44, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: CoinChest
|
||||
@@ -3354,14 +3385,14 @@ MonoBehaviour:
|
||||
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_RequiresDepthTexture: 0
|
||||
m_RequiresColorTexture: 0
|
||||
m_Version: 2
|
||||
m_TaaSettings:
|
||||
quality: 3
|
||||
frameInfluence: 0.1
|
||||
jitterScale: 1
|
||||
mipBias: 0
|
||||
varianceClampScale: 0.9
|
||||
contrastAdaptiveSharpening: 0
|
||||
m_Quality: 3
|
||||
m_FrameInfluence: 0.1
|
||||
m_JitterScale: 1
|
||||
m_MipBias: 0
|
||||
m_VarianceClampScale: 0.9
|
||||
m_ContrastAdaptiveSharpening: 0
|
||||
m_Version: 2
|
||||
--- !u!114 &519420034
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -3514,6 +3545,7 @@ MonoBehaviour:
|
||||
m_LayoutPriority: 1
|
||||
--- !u!212 &600229404
|
||||
SpriteRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -3531,6 +3563,9 @@ SpriteRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -3552,9 +3587,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_Sprite: {fileID: 9121714076949873720, guid: 8205cc62b12996346b6a4111f4c12e31, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
@@ -3564,7 +3601,6 @@ SpriteRenderer:
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!1001 &621498133
|
||||
PrefabInstance:
|
||||
@@ -4687,6 +4723,7 @@ GameObject:
|
||||
m_IsActive: 1
|
||||
--- !u!212 &923801477
|
||||
SpriteRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -4704,6 +4741,9 @@ SpriteRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -4725,9 +4765,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -133646357
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_Sprite: {fileID: 7482667652216324306, guid: f50fac695ca5b9d44b880d4f5d3358a6, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
@@ -4737,7 +4779,6 @@ SpriteRenderer:
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!4 &923801478
|
||||
Transform:
|
||||
@@ -4987,6 +5028,7 @@ Transform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!483693784 &996611804
|
||||
TilemapRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -5004,6 +5046,9 @@ TilemapRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -5025,9 +5070,11 @@ TilemapRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -133646357
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_ChunkSize: {x: 32, y: 32, z: 32}
|
||||
m_ChunkCullingBounds: {x: 0, y: 0, z: 0}
|
||||
m_MaxChunkCount: 16
|
||||
@@ -5035,7 +5082,6 @@ TilemapRenderer:
|
||||
m_SortOrder: 0
|
||||
m_Mode: 0
|
||||
m_DetectChunkCullingBounds: 0
|
||||
m_MaskInteraction: 0
|
||||
--- !u!1839735485 &996611805
|
||||
Tilemap:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -5047,31 +5093,43 @@ Tilemap:
|
||||
m_Tiles: {}
|
||||
m_AnimatedTiles: {}
|
||||
m_TileAssetArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
m_TileSpriteArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
m_TileMatrixArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data:
|
||||
e00: 1.2182863e+37
|
||||
e01: 0
|
||||
@@ -5090,7 +5148,8 @@ Tilemap:
|
||||
e32: 5.06e-43
|
||||
e33: 5.09e-43
|
||||
m_TileColorArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {r: NaN, g: NaN, b: NaN, a: NaN}
|
||||
m_TileObjectToInstantiateArray: []
|
||||
m_AnimationFrameRate: 1
|
||||
@@ -5175,6 +5234,7 @@ MonoBehaviour:
|
||||
m_LayoutPriority: 1
|
||||
--- !u!212 &999064606
|
||||
SpriteRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -5192,6 +5252,9 @@ SpriteRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -5213,9 +5276,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: 0
|
||||
m_SortingLayer: 0
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_Sprite: {fileID: 9121714076949873720, guid: 8205cc62b12996346b6a4111f4c12e31, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
@@ -5225,7 +5290,6 @@ SpriteRenderer:
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!4 &1043752729 stripped
|
||||
Transform:
|
||||
@@ -5247,7 +5311,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1112701721
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -5901,6 +5965,7 @@ GameObject:
|
||||
m_IsActive: 1
|
||||
--- !u!212 &1278962561
|
||||
SpriteRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -5918,6 +5983,9 @@ SpriteRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -5939,9 +6007,11 @@ SpriteRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -1388626623
|
||||
m_SortingLayer: 1
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_Sprite: {fileID: 21300000, guid: af5d092f65b68a4499f43779742fe6b9, type: 3}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_FlipX: 0
|
||||
@@ -5951,7 +6021,6 @@ SpriteRenderer:
|
||||
m_AdaptiveModeThreshold: 0.5
|
||||
m_SpriteTileMode: 0
|
||||
m_WasSpriteAssigned: 1
|
||||
m_MaskInteraction: 0
|
||||
m_SpriteSortPoint: 0
|
||||
--- !u!4 &1278962562
|
||||
Transform:
|
||||
@@ -6261,6 +6330,7 @@ TilemapCollider2D:
|
||||
m_UseDelaunayMesh: 0
|
||||
--- !u!483693784 &1409424115
|
||||
TilemapRenderer:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -6278,6 +6348,9 @@ TilemapRenderer:
|
||||
m_RayTraceProcedural: 0
|
||||
m_RayTracingAccelStructBuildFlagsOverride: 0
|
||||
m_RayTracingAccelStructBuildFlags: 1
|
||||
m_SmallMeshCulling: 1
|
||||
m_ForceMeshLod: -1
|
||||
m_MeshLodSelectionBias: 0
|
||||
m_RenderingLayerMask: 1
|
||||
m_RendererPriority: 0
|
||||
m_Materials:
|
||||
@@ -6299,9 +6372,11 @@ TilemapRenderer:
|
||||
m_AutoUVMaxDistance: 0.5
|
||||
m_AutoUVMaxAngle: 89
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_GlobalIlluminationMeshLod: 0
|
||||
m_SortingLayerID: -133646357
|
||||
m_SortingLayer: 2
|
||||
m_SortingOrder: 0
|
||||
m_MaskInteraction: 0
|
||||
m_ChunkSize: {x: 32, y: 32, z: 32}
|
||||
m_ChunkCullingBounds: {x: 0.019230723, y: 0.004314184, z: 0}
|
||||
m_MaxChunkCount: 16
|
||||
@@ -6309,7 +6384,6 @@ TilemapRenderer:
|
||||
m_SortOrder: 0
|
||||
m_Mode: 0
|
||||
m_DetectChunkCullingBounds: 0
|
||||
m_MaskInteraction: 0
|
||||
--- !u!1839735485 &1409424116
|
||||
Tilemap:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -6361,31 +6435,43 @@ Tilemap:
|
||||
m_AllTileFlags: 2147483649
|
||||
m_AnimatedTiles: {}
|
||||
m_TileAssetArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 4
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 4
|
||||
m_Data: {fileID: 11400000, guid: c172c8f07ca54fc4bb68b1c1845a5789, type: 2}
|
||||
m_TileSpriteArray:
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 0
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 0
|
||||
m_Data: {fileID: 0}
|
||||
- m_RefCount: 4
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 4
|
||||
m_Data: {fileID: 606517438, guid: 7c2d6acd22d2d0c40b84d99967afb42a, type: 3}
|
||||
m_TileMatrixArray:
|
||||
- m_RefCount: 4
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 4
|
||||
m_Data:
|
||||
e00: 1
|
||||
e01: 0
|
||||
@@ -6404,7 +6490,8 @@ Tilemap:
|
||||
e32: 0
|
||||
e33: 1
|
||||
m_TileColorArray:
|
||||
- m_RefCount: 4
|
||||
- serializedVersion: 2
|
||||
m_RefCount: 4
|
||||
m_Data: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_TileObjectToInstantiateArray: []
|
||||
m_AnimationFrameRate: 1
|
||||
@@ -6532,7 +6619,7 @@ CompositeCollider2D:
|
||||
m_CompositeGameObject: {fileID: 1409424112}
|
||||
--- !u!50 &1409424119
|
||||
Rigidbody2D:
|
||||
serializedVersion: 4
|
||||
serializedVersion: 5
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
@@ -6543,8 +6630,8 @@ Rigidbody2D:
|
||||
m_UseFullKinematicContacts: 0
|
||||
m_UseAutoMass: 0
|
||||
m_Mass: 1
|
||||
m_LinearDrag: 0
|
||||
m_AngularDrag: 0.05
|
||||
m_LinearDamping: 0
|
||||
m_AngularDamping: 0.05
|
||||
m_GravityScale: 1
|
||||
m_Material: {fileID: 0}
|
||||
m_IncludeLayers:
|
||||
@@ -7013,6 +7100,33 @@ CapsuleCollider2D:
|
||||
m_Offset: {x: -0.04, y: 0}
|
||||
m_Size: {x: 0.55, y: 0.89}
|
||||
m_Direction: 0
|
||||
--- !u!114 &1627236058
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 681564194}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 59cb4a98d6866124793e8758b2ec958a, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::HammerThrower
|
||||
_spawnPoint: {fileID: 5855359588613562703}
|
||||
_hammerPrefab: {fileID: 6648495433791226095, guid: 111653ffd63dcc64a91ceb9c5d52aa04, type: 3}
|
||||
_throwSpeed: 5
|
||||
--- !u!114 &1627236062
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 681564194}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 45d7bd38990996d4488582b07cbe7e40, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::InputManager
|
||||
--- !u!1 &1638752927
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -7567,6 +7681,7 @@ MonoBehaviour:
|
||||
m_VerticalAlignment: 256
|
||||
m_textAlignment: 65535
|
||||
m_characterSpacing: 0
|
||||
m_characterHorizontalScale: 1
|
||||
m_wordSpacing: 0
|
||||
m_lineSpacing: 0
|
||||
m_lineSpacingMax: 0
|
||||
@@ -7726,6 +7841,10 @@ PrefabInstance:
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7047733282028940673, guid: 934a57b833e872445ac8463836f55a44, type: 3}
|
||||
propertyPath: m_Enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7047733282028940674, guid: 934a57b833e872445ac8463836f55a44, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: CoinChest
|
||||
@@ -8309,7 +8428,18 @@ PrefabInstance:
|
||||
- targetCorrespondingSourceObject: {fileID: 3931708971405200045, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627236057}
|
||||
- targetCorrespondingSourceObject: {fileID: 3931708971405200045, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627236058}
|
||||
- targetCorrespondingSourceObject: {fileID: 3931708971405200045, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1627236062}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
--- !u!4 &5855359588613562703 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 3706253573488771434, guid: a7f273d812293e54d92972f62e1f0159, type: 3}
|
||||
m_PrefabInstance: {fileID: 5855359588613562702}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1660057539 &9223372036854775807
|
||||
SceneRoots:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0ade875a254231c4d8c43cacc7b27bfb
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4d7148405c33f2f45ae0479592e8cb6e
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -3,18 +3,11 @@ using UnityEngine;
|
||||
|
||||
public class PlayerController : Character
|
||||
{
|
||||
[SerializeField]
|
||||
private Transform _hammerSpawnPoint;
|
||||
[SerializeField]
|
||||
private GameObject _hammerPrefab;
|
||||
|
||||
[SerializeField]
|
||||
private Sprite _regularSprite;
|
||||
[SerializeField]
|
||||
private Sprite _noHammerSprite;
|
||||
|
||||
public static Player Instance { get; private set; }
|
||||
|
||||
private GameObject _hammer;
|
||||
|
||||
private bool _isHoldingHammer = true;
|
||||
@@ -23,32 +16,25 @@ public class PlayerController : Character
|
||||
|
||||
private InputManager _inputManager;
|
||||
private PlayerState _playerState;
|
||||
private HammerThrower _hammerThrower;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
if (Instance != null)
|
||||
{
|
||||
Destroy(gameObject);
|
||||
Debug.Log("There's more than one player instance");
|
||||
return;
|
||||
}
|
||||
Instance = this;
|
||||
DontDestroyOnLoad(gameObject);
|
||||
_inputManager = new InputManager();
|
||||
_inputManager = GetComponent<InputManager>();
|
||||
_playerState = GetComponent<PlayerState>();
|
||||
_hammerThrower = GetComponent<HammerThrower>();
|
||||
|
||||
_inputManager.OnMovementInput += OnMovementInput;
|
||||
_inputManager.OnFireButtonPressed += OnFireButtonPressed;
|
||||
_inputManager.OnFire += OnFireButtonPressed;
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
_inputManager.Enable();
|
||||
_inputManager.OnEnable();
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
{
|
||||
_inputManager.Disable();
|
||||
_inputManager.OnDisable();
|
||||
}
|
||||
|
||||
private void Update()
|
||||
@@ -59,8 +45,8 @@ public class PlayerController : Character
|
||||
_isHoldingHammer = true;
|
||||
}
|
||||
|
||||
var move = _inputManager.OnMovementInput.ReadValue<Vector2>();
|
||||
base.MoveTo(move.x, isAllowVertical ? move.y : 0);
|
||||
Vector2 move = _inputManager.Movement;
|
||||
MoveTo(move.x, isAllowVertical ? move.y : 0);
|
||||
}
|
||||
|
||||
private void OnFireButtonPressed()
|
||||
@@ -71,15 +57,19 @@ public class PlayerController : Character
|
||||
}
|
||||
}
|
||||
|
||||
// Animation event
|
||||
public void ThrowHammerObject()
|
||||
{
|
||||
_isHoldingHammer = false;
|
||||
_spriteRenderer.sprite = _noHammerSprite;
|
||||
_hammer = Instantiate(_hammerPrefab, _hammerSpawnPoint.position, _hammerSpawnPoint.rotation);
|
||||
_hammer.transform.localScale = new Vector2(_hammer.transform.localScale.x * (_facingRight ? 1 : -1), _hammer.transform.localScale.y);
|
||||
_hammer.GetComponent<Rigidbody2D>().linearVelocity = new Vector2(gameObject.transform.localScale.x * _hammerSpeed, 0);
|
||||
_hammerThrower.ThrowHammer();
|
||||
UpdatePlayerSprite();
|
||||
}
|
||||
|
||||
private void UpdatePlayerSprite()
|
||||
{
|
||||
_spriteRenderer.sprite = _hammerThrower.HasHammer
|
||||
? _regularSprite
|
||||
: _noHammerSprite;
|
||||
}
|
||||
protected override void SetWalkingAnimation(bool isWalking)
|
||||
{
|
||||
_bonesBack.SetActive(false);
|
||||
|
||||
+27
-27
@@ -13,39 +13,39 @@ public class EnemyAI : Character
|
||||
|
||||
private void Update()
|
||||
{
|
||||
float horizontal = 0;
|
||||
float vertical = 0;
|
||||
// float horizontal = 0;
|
||||
// float vertical = 0;
|
||||
|
||||
Vector2 directionToPlayer = Player.Instance.transform.position - transform.position;
|
||||
directionToPlayer.Normalize();
|
||||
// Vector2 directionToPlayer = Player.Instance.transform.position - transform.position;
|
||||
// directionToPlayer.Normalize();
|
||||
|
||||
float verticalDistance = Player.Instance.transform.position.y - transform.position.y;
|
||||
// float verticalDistance = Player.Instance.transform.position.y - transform.position.y;
|
||||
|
||||
if (Mathf.Abs(verticalDistance) > 0.1f && (isCanClimbUp || isCanGoDown))
|
||||
{
|
||||
vertical = Mathf.Sign(verticalDistance);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Mathf.Abs(Player.Instance.transform.position.x - transform.position.x) < 0.1f)
|
||||
{
|
||||
horizontal = 0;
|
||||
}
|
||||
else if (directionToPlayer.x < 0)
|
||||
{ horizontal = -1; }
|
||||
else if (directionToPlayer.x > 0)
|
||||
{ horizontal = 1; }
|
||||
}
|
||||
// if (Mathf.Abs(verticalDistance) > 0.1f && (isCanClimbUp || isCanGoDown))
|
||||
// {
|
||||
// vertical = Mathf.Sign(verticalDistance);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// if (Mathf.Abs(Player.Instance.transform.position.x - transform.position.x) < 0.1f)
|
||||
// {
|
||||
// horizontal = 0;
|
||||
// }
|
||||
// else if (directionToPlayer.x < 0)
|
||||
// { horizontal = -1; }
|
||||
// else if (directionToPlayer.x > 0)
|
||||
// { horizontal = 1; }
|
||||
// }
|
||||
|
||||
if (Input.GetKey(KeyCode.T))
|
||||
{ vertical = 1; }
|
||||
if (Input.GetKey(KeyCode.G))
|
||||
{ vertical = -1; }
|
||||
// if (Input.GetKey(KeyCode.T))
|
||||
// { vertical = 1; }
|
||||
// if (Input.GetKey(KeyCode.G))
|
||||
// { vertical = -1; }
|
||||
|
||||
Debug.Log($"Enemy Position: {transform.position}, Player Position: {Player.Instance.transform.position}");
|
||||
Debug.Log($"Vertical Distance: {verticalDistance}, Vertical Movement: {vertical}");
|
||||
// Debug.Log($"Enemy Position: {transform.position}, Player Position: {Player.Instance.transform.position}");
|
||||
// Debug.Log($"Vertical Distance: {verticalDistance}, Vertical Movement: {vertical}");
|
||||
|
||||
base.MoveTo(horizontal, vertical);
|
||||
// base.MoveTo(horizontal, vertical);
|
||||
}
|
||||
|
||||
private float VerticalMove(float verticalDistance)
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 86cce1993173eb04daddb1edd164da94
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8251b2e2708d87d4ebc446c84ec5ed01
|
||||
@@ -21,18 +21,18 @@ public class Chest : MonoBehaviour
|
||||
|
||||
private void OnTriggerEnter2D(Collider2D collider)
|
||||
{
|
||||
var player=collider.GetComponent<Player>();
|
||||
if (player != null && !_isOpen)
|
||||
var playerState=collider.GetComponent<PlayerState>();
|
||||
if (playerState != null && !_isOpen)
|
||||
{
|
||||
_isOpen = true;
|
||||
animator.SetTrigger("OpenChest");
|
||||
switch (_treasureSO.Treasure)
|
||||
{
|
||||
case TreasureType.Coin:
|
||||
player.AddCoin();
|
||||
playerState.AddCoin();
|
||||
break;
|
||||
case TreasureType.Key:
|
||||
player.SetKey();
|
||||
playerState.SetKey();
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ded23e667cffbfd46b2633ae22204797
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: af69aa896ad8a3947947ed21a9b9cacd
|
||||
+3
-3
@@ -13,10 +13,10 @@ public class DoorInteract : MonoBehaviour
|
||||
|
||||
private void OnTriggerEnter2D(Collider2D collider)
|
||||
{
|
||||
var player = collider.GetComponent<Player>();
|
||||
if (player!=null)
|
||||
var playerState = collider.GetComponent<PlayerState>();
|
||||
if (playerState!=null)
|
||||
{
|
||||
if (player.IsHasKey())
|
||||
if (playerState.HasKey)
|
||||
{
|
||||
_door.OpenDoor();
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 73fd9f6c116c2de4ab3d773fbb908df4
|
||||
@@ -0,0 +1,49 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
public class HammerThrower : MonoBehaviour
|
||||
{
|
||||
[SerializeField] private Transform _spawnPoint;
|
||||
[SerializeField] private GameObject _hammerPrefab;
|
||||
[SerializeField] private float _throwSpeed = 10f;
|
||||
|
||||
private GameObject _currentHammer;
|
||||
private bool _hasHammer = true;
|
||||
private bool _facingRight = true;
|
||||
|
||||
public bool HasHammer => _hasHammer;
|
||||
|
||||
public void SetFacingDirection(bool facingRight)
|
||||
{
|
||||
_facingRight = facingRight;
|
||||
}
|
||||
|
||||
public void ThrowHammer()
|
||||
{
|
||||
if (!_hasHammer)
|
||||
return;
|
||||
|
||||
_hasHammer = false;
|
||||
|
||||
_currentHammer = Instantiate(_hammerPrefab, _spawnPoint.position, _spawnPoint.rotation);
|
||||
|
||||
float direction = _facingRight ? 1f : -1f;
|
||||
|
||||
var rb = _currentHammer.GetComponent<Rigidbody2D>();
|
||||
rb.linearVelocity = new Vector2(direction * _throwSpeed, 0);
|
||||
|
||||
// Flip hammer visually
|
||||
var scale = _currentHammer.transform.localScale;
|
||||
scale.x = Mathf.Abs(scale.x) * direction;
|
||||
_currentHammer.transform.localScale = scale;
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
// Hammer destroyed → hammer returned
|
||||
if (!_hasHammer && _currentHammer == null)
|
||||
{
|
||||
_hasHammer = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 59cb4a98d6866124793e8758b2ec958a
|
||||
@@ -1,14 +1,16 @@
|
||||
using System.Security;
|
||||
using UnityEngine;
|
||||
|
||||
public class KeyChest : MonoBehaviour
|
||||
{
|
||||
private void OnTriggerEnter2D(Collider2D collider)
|
||||
{
|
||||
var player = collider.GetComponent<Player>();
|
||||
if (player != null)
|
||||
var playerState = collider.GetComponent<PlayerState>();
|
||||
if (playerState != null)
|
||||
{
|
||||
player.SetKey();
|
||||
playerState.SetKey();
|
||||
Destroy(gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c118ced0938185545aca68bbd218fcc0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,24 +1,43 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using UnityEngine.InputSystem;
|
||||
|
||||
public class InputManager : MonoBehaviour
|
||||
{
|
||||
private InputActions _inputActions;
|
||||
private InputActions _actions;
|
||||
|
||||
public event EventHandler<Vector2> OnMovementInput;
|
||||
public event EventHandler OnFireButtonPressed;
|
||||
public Vector2 Movement { get; private set; }
|
||||
public event Action OnFire;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_inputActions = new InputActions();
|
||||
_inputActions.Player.Movement.performed += ctx => OnMovementInput?.Invoke(ctx.ReadValue<Vector2>());
|
||||
_inputActions.Player.Fire.performed += ctx => OnFireButtonPressed?.Invoke();
|
||||
_actions = new InputActions();
|
||||
|
||||
// Movement
|
||||
_actions.Player.Movement.performed += OnMovementPerformed;
|
||||
_actions.Player.Movement.canceled += OnMovementCanceled;
|
||||
|
||||
// Fire
|
||||
_actions.Player.Fire.performed += ctx => OnFire?.Invoke();
|
||||
}
|
||||
|
||||
private void OnEnable()
|
||||
public void OnEnable()
|
||||
{
|
||||
_inputActions.Enable();
|
||||
_actions.Enable();
|
||||
}
|
||||
|
||||
private void OnDisable()
|
||||
public void OnDisable()
|
||||
{
|
||||
_inputActions.Disable();
|
||||
_actions.Disable();
|
||||
}
|
||||
|
||||
private void OnMovementPerformed(InputAction.CallbackContext ctx)
|
||||
{
|
||||
Movement = ctx.ReadValue<Vector2>();
|
||||
}
|
||||
|
||||
private void OnMovementCanceled(InputAction.CallbackContext ctx)
|
||||
{
|
||||
Movement = Vector2.zero;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 45d7bd38990996d4488582b07cbe7e40
|
||||
@@ -0,0 +1,44 @@
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
|
||||
public class UiManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private TextMeshProUGUI _totalCoins;
|
||||
[SerializeField]
|
||||
private GameObject _keyIcon;
|
||||
|
||||
private PlayerState _playerState;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
_playerState = GetComponent<PlayerState>();
|
||||
if (_playerState != null)
|
||||
{
|
||||
_playerState.OnPlayerTakeItem += UpdateUi;
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateUi(object sender, TreasureType e)
|
||||
{
|
||||
switch (e)
|
||||
{
|
||||
case TreasureType.Coin:
|
||||
_totalCoins.text = _playerState.TotalCoins.ToString();
|
||||
break;
|
||||
case TreasureType.Key:
|
||||
_keyIcon.SetActive(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void OnDestroy()
|
||||
{
|
||||
if (_playerState != null)
|
||||
{
|
||||
_playerState.OnPlayerTakeItem -= UpdateUi;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ae8d1d59de450ae4e8be540c1a9d37ff
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c718ee77619077344be4784233d84940
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b3ead8e41e973dd43b93a8638ea30a36
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c43502b5415adc044b631292348c83e8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,3 +1,6 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
public class PlayerState : MonoBehaviour
|
||||
{
|
||||
public int Lives = 3;
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 907b91debf5d5864780e9466f4017f38
|
||||
@@ -1,29 +0,0 @@
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
|
||||
public class UiManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private TextMeshProUGUI _totalCoins;
|
||||
[SerializeField]
|
||||
private GameObject _keyIcon;
|
||||
|
||||
// Start is called before the first frame update
|
||||
void Start()
|
||||
{
|
||||
Player.Instance.OnPlayerTakeItem += Instance_OnPlayerTakeItem;
|
||||
}
|
||||
|
||||
private void Instance_OnPlayerTakeItem(object sender, TreasureType e)
|
||||
{
|
||||
switch(e)
|
||||
{
|
||||
case TreasureType.Coin:
|
||||
_totalCoins.text = Player.Instance.TotalCoins.ToString();
|
||||
break;
|
||||
case TreasureType.Key:
|
||||
_keyIcon.SetActive(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ff6c3960de97db14f89d6633159838dc
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user