public override void OnTick(Health toAffect, WorldEffectInWorld inWorld)
 {
     for (int i = 0; i < effects.Length; i++)
     {
         toAffect.StatusEffectList.Add(Instantiate(effects[i]), inWorld.Inflicter);
     }
 }
Example #2
0
    public static WorldEffectInWorld Place(WorldEffectInWorld prefab, WorldEffect[] effects, Health inflicter, Vector3 position, Quaternion quaternion)
    {
        WorldEffectInWorld toSpawn = Instantiate(prefab, position, quaternion);

        toSpawn.Init(inflicter, effects);
        NetworkServer.Spawn(toSpawn.gameObject);
        return(toSpawn);
    }
Example #3
0
    public override void OnBulletImpacted(Vector3 position, Health inflicter, bool hitHealth)
    {
        if (NetworkServer.active == false)
        {
            return;
        }

        WorldEffectInWorld.Place(prefab, effects, inflicter, position, Quaternion.identity);
    }
Example #4
0
 public override void OnTick(Health toAffect, WorldEffectInWorld inWorld)
 {
     toAffect.Damage(damage, inWorld.Inflicter);
 }
Example #5
0
 /// <summary>
 /// Called when a health has exited the effect.
 /// </summary>
 /// <param name="toAffect">The health to be affected.</param>
 /// <param name="inWorld">The WorldEffectInWorld which holds additional data.</param>
 public virtual void OnExit(Health toAffect, WorldEffectInWorld inWorld)
 {
 }
Example #6
0
    private IEnumerator SpawnWorldEffect()
    {
        yield return(new WaitForSeconds(spawnAfterSeconds));

        WorldEffectInWorld.Place(prefab, effects, spawnedPlayer.Health, transform.position, Quaternion.identity);
    }