public void SetDestination(Vector3 start, Transform end,
                               float damage, SquadUnit.DamageType damageType)
    {
        transform.position = start;
        opponentLayer      = end.gameObject.layer;
        this.damage        = damage;
        this.damageType    = damageType;

        float distance = Vector3.Distance(start, end.position);
        float time     = distance / 15f;

        StartCoroutine(Parabola(start, end.position, distance, time));
    }
Ejemplo n.º 2
0
    public void ReceiveDamage(float damage, SquadUnit.DamageType damageType)
    {
        switch (damageType)
        {
        case SquadUnit.DamageType.Rock:
            health -= damage * (1f - rockDefense);
            break;

        case SquadUnit.DamageType.Paper:
            health -= damage * (1f - paperDefense);
            break;

        case SquadUnit.DamageType.Scissors:
            health -= damage * (1f - scissorDefense);
            break;
        }

        if (health <= 0)
        {
            TownCenterDestroyed();
        }
    }