Danil Iarosh 5bafc385da feat(audio): increase SFX pool size and preload audio data
- Increased SFX pool size from 8 to 16 in AudioManager
- Enabled preloadAudioData for multiple SFX files
- Removed unused VisualScripting import from Checkpoint script
- Reordered using statements in several scripts for consistency
- Added CoinCollectible component to Coin prefab with pickup effects
- Updated sorting layers and mesh LOD settings in Coin prefabs
- Fixed typo in Interfaces.cs: optionaAttachPoint to optionalAttachPoint
- Modified AddCoin method to accept count parameter and handle coin overflow
- Moved projectile scripts (BasicProjectile, EnemyBasicProjectile, PhysicsProjectile, PickableProjectile)
- Cleaned up unused namespaces and imports across various scripts
2025-10-30 16:39:15 +03:00

49 lines
1.3 KiB
C#

using UnityEngine;
using RR.Game2D.Behaviour;
namespace RR.Game2D.Entities.Hazards
{
[RequireComponent(typeof(Collider2D))]
public class Trap : MonoBehaviour
{
private Collider2D _col;
private void Awake()
{
_col = GetComponent<Collider2D>();
}
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.collider.CompareTag("Player"))
{
if (collision.collider.TryGetComponent<PlayerController>(out var controller))
controller.Die();
}
else if (collision.collider.CompareTag("Enemy"))
{
if (collision.collider.TryGetComponent<EnemyController>(out var controller))
controller.Die();
}
}
private void OnTriggerEnter2D(Collider2D other)
{
if (!_col.isTrigger) return;
if (other.CompareTag("Player"))
{
if (other.TryGetComponent<PlayerController>(out var controller))
controller.Die();
}
else if (other.CompareTag("Enemy"))
{
if (other.TryGetComponent<EnemyController>(out var controller))
controller.Die();
}
}
}
}