Example #1
0
    public override void CriticalEffect()
    {
        if (AttackManager.wounds < 1)
        {
            return;
        }

        Unit attacker = AttackManager.attacker;
        Unit defender = AttackManager.defender;

        //DamagePopUp.Create(defender.transform.position + new Vector3(0, (defender.gameObject.GetComponent<TacticsMovement>().halfHeight) + 0.5f), "Crippled", false);
        defender.gameObject.GetComponent <UnitPopUpManager>().AddPopUpInfo("crippled", true);

        if (defender.GetComponent <Crippled>() == null)
        {
            Crippled crippled = defender.gameObject.AddComponent <Crippled>();
            crippled.AddEffect(attacker.gameObject);
        }
        else if (!defender.GetComponent <Crippled>().enabled)
        {
            defender.GetComponent <Crippled>().enabled = true;
            defender.GetComponent <Crippled>().AddEffect(defender.gameObject);
        }
    }
Example #2
0
    /*
     * Updates the counters for the effects currently on the player.
     * Called in Character.cs's NewEffect(), an override of a method in Unit.cs.
     */
    public void updateEffectTimers(Effect effect)
    {
        Debug.Log("Called updateEffectTimers. effect name is " + effect.effectName);
        switch (effect.effectName)
        {
        case "Empowered":
        {
            if (effect.isLongest)
            {
                longestEmp = (Empowered)effect;
            }
            Debug.Log("Setting longestEmp.");
            break;
        }

        case "Regeneration":
        {
            if (effect.isLongest)
            {
                longestReg = (Regeneration)effect;
            }
            Debug.Log("Setting longestReg.");
            break;
        }

        case "Degeneration":
        {
            if (effect.isLongest)
            {
                longestDegen = (Degeneration)effect;
            }
            Debug.Log("Setting longestDegen.");
            break;
        }

        case "Burning":
        {
            if (effect.isLongest)
            {
                longestBurn = (Burning)effect;
            }
            Debug.Log("Setting longestBurn.");
            break;
        }

        case "Armored":
        {
            if (effect.isLongest)
            {
                longestArmor = (Armored)effect;
            }
            Debug.Log("Setting longestArmor.");
            break;
        }

        case "Focused":
        {
            if (effect.isLongest)
            {
                longestFocus = (Focused)effect;
            }
            Debug.Log("Setting longestFocus.");
            break;
        }

        case "Hasted":
        {
            if (effect.isLongest)
            {
                longestHaste = (Hasted)effect;
            }
            Debug.Log("Setting longestHaste.");
            break;
        }

        case "Swiftness":
        {
            if (effect.isLongest)
            {
                longestSwift = (Swiftness)effect;
            }
            Debug.Log("Setting longestSwift.");
            break;
        }

        case "Crippled":
        {
            if (effect.isLongest)
            {
                longestCrip = (Crippled)effect;
            }
            Debug.Log("Setting longestCrip.");
            break;
        }

        default:
        {
            Debug.Log("Invalid effect.");
            break;
        }
        }
    }