Example #1
0
    public override void ExecuteEffect(Battlefield obf, Battlefield abf, ref int targetIndex, GameObject specialVFX)
    {
        int toBeFreezedIndex;

        if (BlockEffect.IsThereABlockerInTheFrontOfTarget(obf, targetIndex))
        {
            toBeFreezedIndex = obf.GetIndexInFrontOf(targetIndex);
        }
        else
        {
            toBeFreezedIndex = targetIndex;
        }

        obf.GetReferenceToCardAt(toBeFreezedIndex).ApplyFreezing(Instantiate(specialVFX));
    }
Example #2
0
    public override void ExecuteEffect(Battlefield obf, Battlefield abf, ref int targetIndex, GameObject specialVFX)
    {
        Card attacker = abf.GetSelectedCard();
        Card target;

        if (BlockEffect.IsThereABlockerInTheFrontOfTarget(obf, targetIndex))
        {
            target = obf.GetCardInFrontOf(targetIndex);
        }
        else
        {
            target = obf.GetReferenceToCardAt(targetIndex);
        }
        attacker.Skill = target.Skill;
        target.Skill   = skillsMediator.GetBasicAttackSkill();

        if (skillsMediator.IsTheSkillNamedStrong(attacker.Skill))
        {
            attacker.ModifyAttackPowerForThisMatch(valueToSum: +4 + target.GetLevel() * 4);
            target.ModifyAttackPowerForThisMatch(valueToSum: -4 - target.GetLevel() * 4);
        }
    }