Created throw hammer animation with no hammer skinning

This commit is contained in:
2023-06-29 12:47:09 +03:00
parent da82aa478c
commit 7510e69eb8
16 changed files with 12649 additions and 2843 deletions
+3 -3
View File
@@ -3,7 +3,7 @@ using UnityEngine;
public class Character : MonoBehaviour
{
[SerializeField]
private Animator animator;
protected Animator _animator;
[SerializeField]
private float MovementSpeed = 1.5f;
[SerializeField]
@@ -65,7 +65,7 @@ public class Character : MonoBehaviour
FlipCharacter();
}
animator.SetBool("Walk", h_movement != 0);
//animator.SetBool("Walk", h_movement != 0);
_isOnLadder = mapElement == MapElementType.Ladder || GetMapElement(Vector2.up) == MapElementType.Ladder;
if (_isOnLadder)
@@ -119,7 +119,7 @@ public class Character : MonoBehaviour
if (_isFalling)
{
_body.velocity = new Vector2(0, _body.velocity.y);
animator.SetBool("Walk", false);
//animator.SetBool("Walk", false);
if (GetMapElement(Vector2.down)==MapElementType.Ladder)
{
+31 -5
View File
@@ -7,7 +7,12 @@ public class Player : Character
[SerializeField]
private GameObject _hammerPrefab;
private int _hammerSpeed = 10;
[SerializeField]
private Sprite _regularSprite;
[SerializeField]
private Sprite _noHammerSprite;
private int _hammerSpeed = 5;
private int _totalCoins = 0;
private bool _hasKey = false;
@@ -15,6 +20,9 @@ public class Player : Character
private GameObject _hammer;
private bool _isHoldingHammer = true;
private SpriteRenderer _spriteRenderer;
private void Awake()
{
@@ -27,6 +35,8 @@ public class Player : Character
PlayerPrefs.SetString("lastExitName", string.Empty);
Instance = this;
DontDestroyOnLoad(gameObject);
_spriteRenderer = GetComponentInChildren<SpriteRenderer>();
}
public void AddCoin()
@@ -53,15 +63,31 @@ public class Player : Character
private void Update()
{
if (_hammer == null && !_isHoldingHammer)
{
_spriteRenderer.sprite = _regularSprite;
_isHoldingHammer = true;
}
if (Input.GetKeyDown(KeyCode.Space) && !_isFalling)
{
if (_hammer == null)
{
_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>().velocity = new Vector2(gameObject.transform.localScale.x * _hammerSpeed, 0);
_animator.SetTrigger("Body_ThrowHammer");
}
}
base.MoveTo(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
if (Input.GetAxisRaw("Horizontal") != 0 || Input.GetAxisRaw("Vertical") != 0)
{
base.MoveTo(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"));
}
}
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>().velocity = new Vector2(gameObject.transform.localScale.x * _hammerSpeed, 0);
}
}