35 lines
963 B
C#
35 lines
963 B
C#
using OctoberStudio.Easing;
|
|
using UnityEngine;
|
|
|
|
namespace OctoberStudio
|
|
{
|
|
public class ShootingStarProjectile : ProjectileBehavior
|
|
{
|
|
IEasingCoroutine scaleEasing;
|
|
|
|
public void Spawn()
|
|
{
|
|
if(scaleEasing.ExistsAndActive()) scaleEasing.Stop();
|
|
|
|
transform.localScale = Vector3.zero;
|
|
scaleEasing = transform.DoLocalScale(Vector3.one * PlayerBehavior.Player.SizeMultiplier, 0.5f).SetEasing(EasingType.SineOut);
|
|
}
|
|
|
|
public void Hide()
|
|
{
|
|
if (scaleEasing.ExistsAndActive()) scaleEasing.Stop();
|
|
|
|
scaleEasing = transform.DoLocalScale(Vector3.zero, 0.5f).SetEasing(EasingType.SineIn).SetOnFinish(() => {
|
|
gameObject.SetActive(false);
|
|
});
|
|
}
|
|
|
|
public void Clear()
|
|
{
|
|
scaleEasing.StopIfExists();
|
|
|
|
transform.localScale = Vector3.one;
|
|
gameObject.SetActive(false);
|
|
}
|
|
}
|
|
} |