diff --git a/Assets/Animations/Player/Body_ThrowHammer.anim b/Assets/Animations/Player/Body_ThrowHammer.anim index a8cebbf..61ceb9e 100644 --- a/Assets/Animations/Player/Body_ThrowHammer.anim +++ b/Assets/Animations/Player/Body_ThrowHammer.anim @@ -1527,13 +1527,6 @@ AnimationClip: floatParameter: 0 intParameter: 0 messageOptions: 0 - - time: 0.51666665 - functionName: - data: - objectReferenceParameter: {fileID: 0} - floatParameter: 0 - intParameter: 0 - messageOptions: 0 - time: 0.51666665 functionName: ThrowHammerObject data: @@ -1541,3 +1534,10 @@ AnimationClip: floatParameter: 0 intParameter: 0 messageOptions: 0 + - time: 0.51666665 + functionName: + data: + objectReferenceParameter: {fileID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 diff --git a/Assets/Prefabs/BreakableTile.prefab b/Assets/Prefabs/BreakableTile.prefab index 524a015..fc5b8ca 100644 --- a/Assets/Prefabs/BreakableTile.prefab +++ b/Assets/Prefabs/BreakableTile.prefab @@ -94,7 +94,7 @@ GameObject: m_Component: - component: {fileID: 7345322822309755345} - component: {fileID: 3364452304498334467} - - component: {fileID: -1797789796822257734} + - component: {fileID: 1775695730761962784} m_Layer: 3 m_Name: BreakableTile m_TagString: Untagged @@ -116,7 +116,7 @@ Transform: m_Children: - {fileID: 7515349249133635430} m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &3364452304498334467 BoxCollider2D: @@ -163,7 +163,7 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 1, y: 1} m_EdgeRadius: 0 ---- !u!114 &-1797789796822257734 +--- !u!114 &1775695730761962784 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -172,7 +172,7 @@ MonoBehaviour: m_GameObject: {fileID: 8175732239415438715} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: edf40d39eadb17a4ebb0368b3ac5399a, type: 3} + m_Script: {fileID: 11500000, guid: c718ee77619077344be4784233d84940, type: 3} m_Name: m_EditorClassIdentifier: _elementSO: {fileID: 11400000, guid: da0ec95da6f0526499978941b1631c3e, type: 2} diff --git a/Assets/Prefabs/Player.prefab b/Assets/Prefabs/Player.prefab index bb521d8..dcd1a99 100644 --- a/Assets/Prefabs/Player.prefab +++ b/Assets/Prefabs/Player.prefab @@ -106,7 +106,7 @@ GameObject: m_Component: - component: {fileID: 8722232351462507904} m_Layer: 0 - m_Name: bone_1 + m_Name: Torso m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -230,7 +230,7 @@ Transform: - {fileID: 6530722701964707747} - {fileID: 4870077556839958209} m_Father: {fileID: 0} - m_RootOrder: 0 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!50 &1716637651858965058 Rigidbody2D: @@ -256,7 +256,7 @@ Rigidbody2D: serializedVersion: 2 m_Bits: 0 m_Interpolate: 0 - m_SleepingMode: 1 + m_SleepingMode: 0 m_CollisionDetection: 0 m_Constraints: 4 --- !u!114 &1693252312754102175 diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 360d6cd..6e22ed7 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -514,7 +514,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 2012902680} m_Father: {fileID: 1173618893} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -3108,7 +3109,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 852eca26194d18e4fac550283d37f0a1, type: 3} m_Name: m_EditorClassIdentifier: - animator: {fileID: 1627236053} + _animator: {fileID: 0} MovementSpeed: 2 _mapLayer: serializedVersion: 2 @@ -4252,7 +4253,6 @@ Transform: - {fileID: 350695915} - {fileID: 1314998801} - {fileID: 1409424113} - - {fileID: 2012902680} - {fileID: 1322461127} - {fileID: 996611801} m_Father: {fileID: 0} @@ -5387,11 +5387,6 @@ Transform: m_CorrespondingSourceObject: {fileID: 965998752200834250, guid: a7f273d812293e54d92972f62e1f0159, type: 3} m_PrefabInstance: {fileID: 5855359588613562702} m_PrefabAsset: {fileID: 0} ---- !u!95 &1627236053 stripped -Animator: - m_CorrespondingSourceObject: {fileID: 2957004661200399871, guid: a7f273d812293e54d92972f62e1f0159, type: 3} - m_PrefabInstance: {fileID: 5855359588613562702} - m_PrefabAsset: {fileID: 0} --- !u!1 &1744467215 GameObject: m_ObjectHideFlags: 0 @@ -5760,7 +5755,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2012902679} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + 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 @@ -5773,7 +5768,7 @@ Transform: - {fileID: 1782147597} - {fileID: 838187539} - {fileID: 1261849835} - m_Father: {fileID: 1173618893} + m_Father: {fileID: 350695915} m_RootOrder: -1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &2068228311 diff --git a/Assets/Scripts/MapElements/BreakableWall.cs b/Assets/Scripts/MapElements/BreakableWall.cs new file mode 100644 index 0000000..c94df51 --- /dev/null +++ b/Assets/Scripts/MapElements/BreakableWall.cs @@ -0,0 +1,68 @@ +using UnityEngine; + +public class BreakableWall : MapElement +{ + private float _respawnElementTimer; + private int _respawnTimeout = 4; + private bool _needRespawn = false; + private bool _characterInRange = false; + + private BoxCollider2D _boxCollider; + private SpriteRenderer _spriteRenderer; + + private void Start() + { + _boxCollider=GetComponent(); + _spriteRenderer= GetComponentInChildren(); + } + + public override void Hit() + { + _boxCollider.isTrigger=true; + _spriteRenderer.enabled = false; + + _respawnElementTimer = _respawnTimeout; + _needRespawn = true; + } + + private void Update() + { + if (_needRespawn) + { + _respawnElementTimer -= Time.deltaTime; + if (_respawnElementTimer <= 0) + { + _respawnElementTimer = _respawnTimeout; + + if(_characterInRange) + { + print("Character is dead"); + } + + _boxCollider.isTrigger = false; + _spriteRenderer.enabled = true; + _needRespawn = false; + } + } + } + + private void OnTriggerEnter2D(Collider2D collider) + { + var character = collider.GetComponent(); + if (character) + { + _characterInRange = true; + } + } + + private void OnTriggerExit2D(Collider2D collider) + { + var character = collider.GetComponent(); + if (character) + { + _characterInRange = false; + } + } + + +} \ No newline at end of file diff --git a/Assets/Scripts/MapElements/BreakableWall.cs.meta b/Assets/Scripts/MapElements/BreakableWall.cs.meta new file mode 100644 index 0000000..49c0e85 --- /dev/null +++ b/Assets/Scripts/MapElements/BreakableWall.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c718ee77619077344be4784233d84940 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MapElements/IMapElement.cs b/Assets/Scripts/MapElements/IMapElement.cs new file mode 100644 index 0000000..d649f52 --- /dev/null +++ b/Assets/Scripts/MapElements/IMapElement.cs @@ -0,0 +1,4 @@ +public interface IMapElement +{ + void Hit(); +} \ No newline at end of file diff --git a/Assets/Scripts/MapElements/IMapElement.cs.meta b/Assets/Scripts/MapElements/IMapElement.cs.meta new file mode 100644 index 0000000..7b2d9c6 --- /dev/null +++ b/Assets/Scripts/MapElements/IMapElement.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b86c6d8ca1e490043a8947dc9f2339a3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/MapElements/MapElement.cs b/Assets/Scripts/MapElements/MapElement.cs index 014d590..9246b53 100644 --- a/Assets/Scripts/MapElements/MapElement.cs +++ b/Assets/Scripts/MapElements/MapElement.cs @@ -1,72 +1,12 @@ using UnityEngine; -public class MapElement : MonoBehaviour +public class MapElement : MonoBehaviour, IMapElement { [SerializeField] private MapElementSO _elementSO; public MapElementSO ElementSO => _elementSO; - private float _respawnElementTimer; - private int _respawnTimeout = 4; - private bool _needRespawn = false; - private bool _characterInRange = false; - - private BoxCollider2D _boxCollider; - private SpriteRenderer _spriteRenderer; - - private void Start() + public virtual void Hit() { - _boxCollider=GetComponent(); - _spriteRenderer= GetComponentInChildren(); } - - public void Hit() - { - _boxCollider.isTrigger=true; - _spriteRenderer.enabled = false; - - _respawnElementTimer = _respawnTimeout; - _needRespawn = true; - } - - private void Update() - { - if (_needRespawn) - { - _respawnElementTimer -= Time.deltaTime; - if (_respawnElementTimer <= 0) - { - _respawnElementTimer = _respawnTimeout; - - if(_characterInRange) - { - print("Character is dead"); - } - - _boxCollider.isTrigger = false; - _spriteRenderer.enabled = true; - _needRespawn = false; - } - } - } - - private void OnTriggerEnter2D(Collider2D collider) - { - var character = collider.GetComponent(); - if (character) - { - _characterInRange = true; - } - } - - private void OnTriggerExit2D(Collider2D other) - { - var character = GetComponent().GetComponent(); - if (character) - { - _characterInRange = false; - } - } - - } \ No newline at end of file diff --git a/Assets/Scripts/Player.cs b/Assets/Scripts/Player.cs index 23b533c..1f17171 100644 --- a/Assets/Scripts/Player.cs +++ b/Assets/Scripts/Player.cs @@ -76,10 +76,7 @@ public class Player : Character _animator.SetTrigger("Body_ThrowHammer"); } } - if (Input.GetAxisRaw("Horizontal") != 0 || Input.GetAxisRaw("Vertical") != 0) - { - base.MoveTo(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical")); - } + base.MoveTo(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical")); } public void ThrowHammerObject()