the scarlet police have me at gun point

This commit is contained in:
Sylvia 2026-03-06 02:22:51 -08:00
parent b964c9b617
commit d6da52fd69
54 changed files with 674 additions and 55 deletions

View file

@ -0,0 +1,26 @@
using UnityEngine;
public class Effect : ScriptableObject
{
[SerializeField] private EffectInstance effectInstanceObject;
[Header("Stats")]
public float duration;
public bool isConstant; //that means if it uses the tick function or not
public virtual void ApplyEffect(Entity affectedEntity)
{
EffectInstance newEffectInstance = Instantiate(effectInstanceObject, affectedEntity.transform);
newEffectInstance.affectedEntity = affectedEntity;
}
public virtual void EffectTick(Entity affectedEntity)
{
}
public virtual void RemoveEffect(Entity affectedEntity)
{
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: c83f7c791d22a8317bdf4351fbcd97a0

View file

@ -0,0 +1,22 @@
using System;
using UnityEngine;
public class EffectInstance : MonoBehaviour
{
public Effect thisEffect;
public Entity affectedEntity;
public float timeElapsed;
private void Update()
{
timeElapsed += Time.deltaTime;
if (timeElapsed > thisEffect.duration)
{
thisEffect.RemoveEffect(affectedEntity);
return;
}
if (thisEffect.isConstant)
{
thisEffect.EffectTick(affectedEntity);
}
}
}

View file

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d9461c5d5a30726ac8395e724c006d73