Пример #1
0
 public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
 {
     this.targets         = targets;
     this.animation       = animation;
     this.finishedAbility = finishedAbility;
     modCount             = 0;
     modifiers.ForEach(m => m.BeforeActivation(targets, CountBefore));
 }
Пример #2
0
    public void PrepareActivation(List <Character> targets, TargetedAnimation animation, Action preparedCallback)
    {
        var bd = new ModifiedBaseDamage();

        bd.minDamage = minDamage;
        bd.maxDamage = maxDamage;
        controller.character.attackModule.OverrideBaseDamage(bd);
        preparedCallback();
    }
Пример #3
0
    public void Activate(List <Character> targets, TargetedAnimation animation, System.Action finishedAbility)
    {
        callback    = finishedAbility;
        numToAttack = targets.Count;

        targets.ForEach((t) =>
        {
            animation.Play(t, Finished, () => Hit(t));
        });
    }
    public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
    {
        targets.ForEach(t =>
        {
            var shieldMod    = ShieldDefenseMod.GetFrom(t);
            shieldMod.Value += shieldAmount;
        });

        finishedAbility();
    }
Пример #5
0
 void HandleMove(Character t, TargetedAnimation animation)
 {
     if (whereToMove == WhereToMove.ToOppositeSpot)
     {
         t.IsInMelee = !t.IsInMelee;
     }
     else
     {
         t.IsInMelee = whereToMove == WhereToMove.ToMelee;
     }
     animation.Play(t, Finished, () => { });
 }
Пример #6
0
    private void ActivateNext(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
    {
        if (activatorIndex >= activators.Count)
        {
            finishedAbility();
            return;
        }

        activators[activatorIndex].Activate(targets, animation, () =>
        {
            activatorIndex++;
            ActivateNext(targets, animation, finishedAbility);
        });
    }
Пример #7
0
    public void Activate(List <Character> targets, TargetedAnimation animation, System.Action finishedAbility)
    {
        hasFinished = false;
        callback    = finishedAbility;

        if (justMoveMe)
        {
            HandleMove(controller.GetCharacter(), animation);
        }
        else
        {
            targets.ForEach(t => HandleMove(t, animation));
        }
    }
    public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
    {
        targets.ForEach(t =>
        {
            var initMod             = new CombatController.InitiativeModifier();
            initMod.amount          = initiativeModifier;
            initMod.description     = initiativeSource;
            initMod.removeAtTurnEnd = turnsAffected == TurnsAffected.ThisTurn;
            t.controller.AddInitiativeModifier(initMod);

            textArea.AddLine(AbilityInitiativeModifier.GetInitiativeModifierString(initiativeModifier, t, initiativeSource));
        });

        finishedAbility();
    }
Пример #9
0
    public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
    {
        actualItem = inventory.GetItemByName(item.itemName);
        actualItem.itemJammedEvent  += RespondToJammed;
        actualItem.jamChecksChanged += RespondToChecksChanged;

        if (!actualItem.IsJammed())
        {
            actualItem.JamCheck();
        }


        actualItem.itemJammedEvent  -= RespondToJammed;
        actualItem.jamChecksChanged -= RespondToChecksChanged;
        finishedAbility();
    }
Пример #10
0
 public void PrepareActivation(List <Character> targets, TargetedAnimation animation, Action preparedCallback)
 {
     preparedCallback();
 }
Пример #11
0
 public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
 {
     activatorIndex = 0;
     ActivateNext(targets, animation, finishedAbility);
 }
Пример #12
0
 public void Activate(List <Character> targets, TargetedAnimation animation, Action finishedAbility)
 {
     finishedAbility();
 }
Пример #13
0
    public void Activate(List <Character> targets, TargetedAnimation animation, System.Action finishedAbility)
    {
        callback = finishedAbility;

        animation.Play(targets[0], FinishedAnim, () => ResolveHits(targets));
    }