Exemplo n.º 1
0
    public void OnMMEvent(EnemyReachedEndPositon eventType)
    {
        var damage = eventType.Enemy.Damage;

        PlayerHp -= (int)damage;
        if (PlayerHp <= 0)
        {
            PlayerHp = 0;
            GameOver();
        }
        PlayerHpChanged.Trigger((int)damage);
    }
Exemplo n.º 2
0
    private IEnumerator MoveByWayPoints(Queue <Vector3> waypoints)
    {
        var count = waypoints.Count;

        for (var i = 0; i < count; i++)
        {
            var   lastPosition  = transform.position;
            var   currentTarget = waypoints.Dequeue();
            float t             = 0;
            while (transform.position != currentTarget)
            {
                t += (Time.deltaTime * currentSpeed) / (lastPosition - currentTarget).magnitude;
                transform.position = Vector3.Lerp(lastPosition, currentTarget, t);
                yield return(null);
            }
        }

        EnemyReachedEndPositon.Trigger(this);
    }
Exemplo n.º 3
0
 public void OnMMEvent(EnemyReachedEndPositon reachedEnemy)
 {
     ReturnEnemyToPool(reachedEnemy.Enemy);
 }