Files
vova 7579175d24 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.
2026-06-05 14:33:20 +03:00

41 lines
1010 B
C#

using UnityEngine;
public class Chest : MonoBehaviour
{
[SerializeField]
private Animator animator;
[SerializeField]
private TreasureSO _treasureSO;
private Transform _treasureObject;
private bool _isOpen=false;
private void Awake()
{
_treasureObject=transform.GetChild(1);
var spriteRenderer=_treasureObject.GetComponent<SpriteRenderer>();
spriteRenderer.sprite = _treasureSO.Image;
}
private void OnTriggerEnter2D(Collider2D collider)
{
var playerState=collider.GetComponent<PlayerState>();
if (playerState != null && !_isOpen)
{
_isOpen = true;
animator.SetTrigger("OpenChest");
switch (_treasureSO.Treasure)
{
case TreasureType.Coin:
playerState.AddCoin();
break;
case TreasureType.Key:
playerState.SetKey();
break;
}
}
}
}