46 lines
766 B
C#
46 lines
766 B
C#
using System;
|
|
using UnityEngine;
|
|
|
|
namespace Kryz.CharacterStats.Examples
|
|
{
|
|
public class Platform : MonoBehaviour
|
|
{
|
|
[SerializeField] Powerup[] powerups;
|
|
public bool IsCompleted;
|
|
public GameObject Player;
|
|
|
|
public event Action<Platform> PlatformCompleted;
|
|
|
|
void Start()
|
|
{
|
|
Reset();
|
|
}
|
|
|
|
void OnValidate()
|
|
{
|
|
powerups = GetComponentsInChildren<Powerup>();
|
|
}
|
|
|
|
void OnCollisionEnter(Collision collision)
|
|
{
|
|
if (!IsCompleted && collision.collider.gameObject == Player)
|
|
{
|
|
IsCompleted = true;
|
|
|
|
if (PlatformCompleted != null)
|
|
PlatformCompleted.Invoke(this);
|
|
}
|
|
}
|
|
|
|
public void Reset()
|
|
{
|
|
IsCompleted = false;
|
|
|
|
for (int i = 0; i < powerups.Length; i++)
|
|
{
|
|
powerups[i].gameObject.SetActive(true);
|
|
}
|
|
}
|
|
}
|
|
}
|