public void Die()
    {
        aliveStatus = false;
        EventInfo ei = new EventInfo(gameObject, "Die");

        AnimationEventController.SetAnimTrigger(ei);
    }
Пример #2
0
 public override void ExecuteCommand()
 {
     animationTimer -= Time.deltaTime;
     if (!animationstarted)
     {
         EventInfo ei = new EventInfo(performer, trigger);
         AnimationEventController.SetAnimTrigger(ei);
         animationstarted = true;
     }
     else if (animationTimer < 0)
     {
         IDamageable dmgTarget = target.GetComponent <IDamageable>();
         if (dmgTarget != null)
         {
             dmgTarget.TakeDamage(damage);
         }
         CommandCompleted();
     }
 }
 public override void ExecuteCommand()
 {
     if (!active)
     {
         active       = true;
         myProjectile = ProjectileObjectPool.GetProjectile(projectile);
         EventInfo ei = new EventInfo(Origin.gameObject, Trigger);
         AnimationEventController.SetAnimTrigger(ei);
         myProjectile.SetActive(true);
         myProjectile.transform.position = Origin.position;
         myProjectile.transform.rotation = Origin.rotation;
         startPos = myProjectile.transform.position;
     }
     else
     {
         travelTime += Time.deltaTime * SpeedModifier;
         myProjectile.transform.position = Vector3.Lerp(startPos + heighReglation, Target.position + heighReglation, travelTime);
         if (travelTime > 1)
         {
             CommandCompleted();
         }
     }
 }