PC-PAUL\paulf 5a58064e4d Fixed a lot of errors:
Obosolet methods, null references
Removed dead code
Clean Code
2025-01-16 11:07:26 +01:00

37 lines
1.1 KiB
C#

using Pools;
using UnityEngine;
namespace Obstacles
{
[RequireComponent(typeof(BoxCollider))]
public class Obstacle : PoolingObject<Obstacle>, IObstacle,IDamageDealer,IResettable
{
[field: SerializeField] public bool IsOnAllLanes { get; private set; }
[field: SerializeField] public bool IsInevitable { get; private set; }
public BoxCollider Collider { get; private set; }
private void Awake()
{
Collider = GetComponent<BoxCollider>();
OwningPool = FindFirstObjectByType<ObstaclePool>();
}
public void ResetToDefault()
{
transform.localPosition = Vector3.zero;
transform.position = Vector3.zero;
transform.rotation = Quaternion.identity;
gameObject.transform.SetParent(OwningPool.transform);
ReturnToPool();
}
public void Impact()
{
ResetToDefault();
}
public void DealDamage(IDamageable target, int amount)
{
target.TakeDamage(amount);
}
}
}