/// <summary>
        /// 对随从动作
        /// </summary>
        /// <param name="game"></param>
        /// <param name="Minion"></param>
        /// <returns></returns>
        string IAtomicEffect.DealMinion(ActionStatus game, MinionCard Minion)
        {
            int HealthPoint = ExpressHandler.GetEffectPoint(game, 生命值回复表达式);

            if (Minion.设置被治疗后状态(HealthPoint))
            {
                game.battleEvenetHandler.事件池.Add(new EventCard.全局事件()
                {
                    触发事件类型 = EventCard.事件类型枚举.治疗,
                    触发位置   = Minion.战场位置
                });
            }
            return(Server.ActionCode.strHealth + CardUtility.strSplitMark + Minion.战场位置.ToString() +
                   CardUtility.strSplitMark + HealthPoint.ToString());
        }
        /// <summary>
        /// 对英雄动作
        /// </summary>
        /// <param name="game"></param>
        /// <param name="PlayInfo"></param>
        /// <returns></returns>
        string IAtomicEffect.DealHero(ActionStatus game, Client.PublicInfo PlayInfo)
        {
            int ShieldPoint = ExpressHandler.GetEffectPoint(game, 护甲回复表达式);
            int HealthPoint = ExpressHandler.GetEffectPoint(game, 生命值回复表达式);

            PlayInfo.Hero.AfterBeShield(ShieldPoint);
            if (PlayInfo.Hero.AfterBeHealth(HealthPoint))
            {
                game.battleEvenetHandler.事件池.Add(new EventCard.全局事件()
                {
                    触发事件类型 = EventCard.事件类型枚举.治疗,
                    触发位置   = PlayInfo.Hero.战场位置
                });
            }
            return(Server.ActionCode.strHealth + CardUtility.strSplitMark + PlayInfo.Hero.战场位置.ToString() + CardUtility.strSplitMark +
                   HealthPoint.ToString() + CardUtility.strSplitMark + ShieldPoint.ToString());
        }
Example #3
0
        /// <summary>
        /// 对随从动作
        /// </summary>
        /// <param name="game"></param>
        /// <param name="Minion"></param>
        /// <returns></returns>
        String IAtomicEffect.DealMinion(ActionStatus game, Card.MinionCard Minion)
        {
            int AttackPoint = ExpressHandler.GetEffectPoint(game, 伤害效果表达式);

            //调整伤害值
            if (伤害加成)
            {
                AttackPoint += game.AllRole.MyPublicInfo.BattleField.AbilityDamagePlus;
            }
            if (Minion.设置被攻击后状态(AttackPoint))
            {
                game.battleEvenetHandler.事件池.Add(new Engine.Card.EventCard.全局事件()
                {
                    触发事件类型 = EventCard.事件类型枚举.受伤,
                    触发位置   = Minion.战场位置
                });
            }
            return(Server.ActionCode.strAttack + CardUtility.strSplitMark + Minion.战场位置.ToString() + CardUtility.strSplitMark + AttackPoint.ToString());
        }
Example #4
0
        /// <summary>
        /// 对英雄动作
        /// </summary>
        /// <param name="game"></param>
        /// <param name="PlayInfo"></param>
        /// <returns></returns>
        String IAtomicEffect.DealHero(ActionStatus game, Client.PublicInfo PlayInfo)
        {
            int AttackPoint = ExpressHandler.GetEffectPoint(game, 伤害效果表达式);

            //调整伤害值
            if (伤害加成)
            {
                AttackPoint += game.AllRole.MyPublicInfo.BattleField.AbilityDamagePlus;
            }
            if (PlayInfo.Hero.AfterBeAttack(AttackPoint))
            {
                game.battleEvenetHandler.事件池.Add(new EventCard.全局事件()
                {
                    触发事件类型 = EventCard.事件类型枚举.受伤,
                    触发位置   = PlayInfo.Hero.战场位置
                });
            }
            return(Server.ActionCode.strAttack + CardUtility.strSplitMark + PlayInfo.Hero.战场位置.ToString() + CardUtility.strSplitMark + AttackPoint.ToString());
        }