Пример #1
0
        /// <summary>
        /// Toggle taunt mode on/off.
        /// </summary>
        private void ToggleTauntMode()
        {
            TauntEffect tauntEffect = EffectList.GetOfType <TauntEffect>();
            GamePlayer  owner       = (Brain as IControlledBrain).Owner as GamePlayer;

            if (tauntEffect != null)
            {
                // It's on, so let's switch it off.

                tauntEffect.Stop();
                if (owner != null)
                {
                    owner.Out.SendMessage(String.Format("{0} seems to be less aggressive than before.",
                                                        GetName(0, true)), eChatType.CT_System, eChatLoc.CL_SystemWindow);
                }
            }
            else
            {
                // It's off, so let's turn it on.

                if (owner != null)
                {
                    owner.Out.SendMessage(String.Format("{0} enters an aggressive stance.",
                                                        GetName(0, true)), eChatType.CT_System, eChatLoc.CL_SystemWindow);
                }

                new TauntEffect().Start(this);
            }
        }
    public bool IsTaunted(out TauntEffect tauntEffect)
    {
        tauntEffect = null;

        foreach (var effect in ActiveActionEffects)
        {
            if (effect is TauntEffect)
            {
                tauntEffect = effect as TauntEffect;
                return(true);
            }
        }
        return(false);
    }
Пример #3
0
        public void MessageViewModelShouldExposeProperties()
        {
            // Arrange
            var text    = "Bit the big one";
            var source  = GameObjectFactory.CreatePlayer(new Pos2D(0, 0), PlayerType.Game);
            var message = new TauntEffect(source, text);

            // Act
            var vm = new MessageViewModel(message);

            // Assert
            vm.Message.ShouldBe(message);
            vm.Text.ShouldBe($"Taunt: {text}");
        }
Пример #4
0
    //Change card.effectType and this
    public Effect[] GetEffects(Card.EffectType[] effectNames)
    {
        Effect[] effects = new Effect[effectNames.Length];
        for (int i = 0; i < effectNames.Length; i++)
        {
            switch (effectNames[i])
            {
            case Card.EffectType.Attack:
                effects[i] = new AttackEffect();
                break;

            case Card.EffectType.VitDamage:
                effects[i] = new VitDamageEffect();
                break;

            case Card.EffectType.ShieldDamage:
                effects[i] = new ShieldDamageEffect();
                break;

            case Card.EffectType.VitDamageAll:
                effects[i] = new VitDamageAll();
                break;

            case Card.EffectType.ShieldDamageAll:
                effects[i] = new ShieldDamageAll();
                break;

            case Card.EffectType.PiercingDamage:
                effects[i] = new PiercingDamageEffect();
                break;

            case Card.EffectType.PiercingDamageAll:
                effects[i] = new PiercingDamageAll();
                break;

            case Card.EffectType.SetKnockBackDamage:
                effects[i] = new SetKnockBackDamage();
                break;

            case Card.EffectType.ForcedMovement:
                effects[i] = new ForcedMovementEffect();
                break;

            case Card.EffectType.TauntEffect:
                effects[i] = new TauntEffect();
                break;

            case Card.EffectType.GetMissingHealth:
                effects[i] = new GetMissingHealth();
                break;

            case Card.EffectType.ChangeAttack:
                effects[i] = new ChangeAttackEffect();
                break;

            case Card.EffectType.Buff:
                effects[i] = new ApplyBuffEffect();
                break;

            case Card.EffectType.Cleanse:
                effects[i] = new CleanseEffect();
                break;

            case Card.EffectType.CreateObject:
                effects[i] = new CreateObjectEffect();
                break;

            default:
                effects[i] = null;
                break;
            }
        }
        return(effects);
    }
Пример #5
0
    //Change card.effectType and this
    public Effect[] GetEffects(Card.EffectType[] effectNames)
    {
        Effect[] effects = new Effect[effectNames.Length];
        for (int i = 0; i < effectNames.Length; i++)
        {
            switch (effectNames[i])
            {
            case Card.EffectType.VitDamage:
                effects[i] = new VitDamageEffect();
                break;

            case Card.EffectType.ShieldDamage:
                effects[i] = new ShieldDamageEffect();
                break;

            case Card.EffectType.VitDamageAll:
                effects[i] = new VitDamageAll();
                break;

            case Card.EffectType.ShieldDamageAll:
                effects[i] = new ShieldDamageAll();
                break;

            case Card.EffectType.PiercingDamage:
                effects[i] = new PiercingDamageEffect();
                break;

            case Card.EffectType.PiercingDamageAll:
                effects[i] = new PiercingDamageAll();
                break;

            case Card.EffectType.SetKnockBackDamage:
                effects[i] = new SetKnockBackDamage();
                break;

            case Card.EffectType.ForcedMovement:
                effects[i] = new ForcedMovementEffect();
                break;

            case Card.EffectType.TauntEffect:
                effects[i] = new TauntEffect();
                break;

            case Card.EffectType.GetMissingHealth:
                effects[i] = new GetMissingHealth();
                break;

            case Card.EffectType.Buff:
                effects[i] = new ApplyBuffEffect();
                break;

            case Card.EffectType.Cleanse:
                effects[i] = new CleanseEffect();
                break;

            case Card.EffectType.CreateObject:
                effects[i] = new CreateObjectEffect();
                break;

            case Card.EffectType.GetCurrentAttack:
                effects[i] = new GetCurrentAttackEffect();
                break;

            case Card.EffectType.DrawCards:
                effects[i] = new DrawCardEffect();
                break;

            case Card.EffectType.GetCurrentShield:
                effects[i] = new GetCurrentShield();
                break;

            case Card.EffectType.GetBonusShield:
                effects[i] = new GetBonusArmorEffect();
                break;

            case Card.EffectType.GetNumberOfTargetsInRangeEffect:
                effects[i] = new GetNumberOfTargetsInRangeEffect();
                break;

            case Card.EffectType.GetDamageDoneEffect:
                effects[i] = new GetDamageDoneEffect();
                break;

            case Card.EffectType.GetNumberOfCardsPlayedInTurn:
                effects[i] = new GetNumberOfCardsPlayedEffect();
                break;

            case Card.EffectType.Swap:
                effects[i] = new SwapEffect();
                break;

            case Card.EffectType.Teleport:
                effects[i] = new TeleportEffect();
                break;

            case Card.EffectType.ManaGain:
                effects[i] = new ManaGainEffect();
                break;

            case Card.EffectType.EnergyGain:
                effects[i] = new EnergyGainEffect();
                break;

            case Card.EffectType.SetDuration:
                effects[i] = new SetDurationEffect();
                break;

            case Card.EffectType.GetNumberInStack:
                effects[i] = new GetNumberInStackEffect();
                break;

            case Card.EffectType.GravityEffect:
                effects[i] = new GravityEffect();
                break;

            case Card.EffectType.CardCostReductionDrawn:
                effects[i] = new CardCostReductionDrawn();
                break;

            case Card.EffectType.DrawManaCards:
                effects[i] = new DrawManaCardEffect();
                break;

            case Card.EffectType.Sacrifice:
                effects[i] = new SacrificeEffect();
                break;

            case Card.EffectType.GetNumberOfAttackers:
                effects[i] = new GetNumberOfAttackersEffect();
                break;

            case Card.EffectType.ModifyTempValue:
                effects[i] = new ModifyTempValueEffect();
                break;

            default:
                effects[i] = null;
                break;
            }
        }
        return(effects);
    }