summaryrefslogtreecommitdiff
path: root/Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2021-08-31 19:07:21 +0800
committerchai <chaifix@163.com>2021-08-31 19:07:21 +0800
commitffd1d5af496e0a0eff343b27c4f0f965bbbf79eb (patch)
treec5a8ae2116040ce8c483454b2e82093f247db341 /Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs
parent476abf41a7357db0dd870f0d221f1a26481ab2bf (diff)
*projectile
Diffstat (limited to 'Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs')
-rw-r--r--Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs60
1 files changed, 60 insertions, 0 deletions
diff --git a/Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs b/Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs
new file mode 100644
index 00000000..6e53bee0
--- /dev/null
+++ b/Assets/Art/Vfx/StylizedProjectilePack1/scripts/instantiateEffectCaller.cs
@@ -0,0 +1,60 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class instantiateEffectCaller : MonoBehaviour
+{
+ [System.NonSerialized]
+ public bool fired = false;
+ float timer;
+ public float timeLimit;
+ [System.Serializable]
+ public class chainEffect
+ {
+ [System.NonSerialized]
+ public bool isPlayed = false;
+ public float activateTimer;
+ public GameObject Effect;
+ public Transform effectLocator;
+ }
+ public chainEffect[] chainEffectList;
+
+ void Start()
+ {
+ // print(chainEffectList.Length);
+ }
+
+ // Update is called once per frame
+ void Update()
+ {
+ timer += Time.deltaTime;
+ CheckTimer();
+ }
+ void CheckTimer()
+ {
+
+ for (int i = 0; i < chainEffectList.Length; i++)
+ {
+ if (timer >= chainEffectList[i].activateTimer && chainEffectList[i].isPlayed == false)
+ {
+ Instantiate(chainEffectList[i].Effect, chainEffectList[i].effectLocator.transform.position, chainEffectList[i].effectLocator.transform.rotation);
+ chainEffectList[i].isPlayed = true;
+ }
+ }
+ if (timer >= timeLimit)
+ {
+ fired = false;
+ ResetTimers();
+ }
+ }
+
+
+ public void ResetTimers()
+ {
+ for (int i = 0; i < chainEffectList.Length; i++)
+ {
+ chainEffectList[i].isPlayed = false;
+ }
+ timer = 0;
+ }
+}