public void OnDeathTrigger(DeathEventData eventData)
 {
     if (eventData.TargetData == "Player")
     {
     }
     else if (eventData.TargetData == "Enemy")
     {
         //clean up
     }
 }
Ejemplo n.º 2
0
    public void TriggerDeath()
    {
        DeathEventData deathEventData = new DeathEventData(this);

        OnBeforeDeath?.Invoke(deathEventData);
        if (!deathEventData.IsValid)
        {
            return;
        }
        OnDeath?.Invoke(deathEventData);
        foreach (KeyValuePair <Type, IEntityCallbackUser> entry in _controllers)
        {
            entry.Value.UnlinkCallbacksFromEntity(this);
            // _controllers.Remove(entry.Key);
        }
        IsDead = true;
        MainManager.GameManager.Events.TriggerEntityDied(deathEventData);
        UnityEngine.Object.Destroy(GameObject);
    }
Ejemplo n.º 3
0
 private void RemoveOnDeath(DeathEventData data)
 {
     Object.Destroy(_outerCircleObject);
     Object.Destroy(_innerCircleObject);
 }
Ejemplo n.º 4
0
 private void UntrackDeadEntities(DeathEventData eventData)
 {
     _entities.Remove(eventData.DeadEntity);
 }
Ejemplo n.º 5
0
 public void TriggerEntityDied(DeathEventData data)
 {
     EntityDied?.Invoke(data);
 }