You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
696 B
36 lines
696 B
using System;
|
|
using UnityEngine;
|
|
|
|
[Serializable]
|
|
public abstract class EffectEventHandler
|
|
{
|
|
public abstract void HandleEvent(Effect effect);
|
|
}
|
|
|
|
[Serializable]
|
|
public abstract class EffectUpdateHandler
|
|
{
|
|
public abstract void OnStart(Effect effect);
|
|
public abstract void OnUpdate();
|
|
public abstract void OnEnd();
|
|
}
|
|
|
|
public abstract class Effect : Entity
|
|
{
|
|
object owner;
|
|
|
|
public void SetOwner(object owner)
|
|
{
|
|
this.owner = owner;
|
|
}
|
|
|
|
public T GetOwner<T>() where T : class
|
|
{
|
|
return owner as T;
|
|
}
|
|
|
|
public abstract bool IsPlaying { get; protected set; }
|
|
public abstract void Play();
|
|
public abstract void Play(Vector2 position);
|
|
}
|
|
|