/// <summary> /// 法术执行 /// </summary> /// <param name="game"></param> /// <returns></returns> public List <string> RunEffect(ActionStatus game, CardUtility.目标选择方向枚举 Direct) { List <string> Result = new List <string>(); switch (Direct) { case CardUtility.目标选择方向枚举.本方: //#CARD#ME#M000001 DrawMyCard(game, Result); break; case CardUtility.目标选择方向枚举.对方: DrawYourCard(game, Result); break; case CardUtility.目标选择方向枚举.双方: DrawMyCard(game, Result); DrawYourCard(game, Result); break; } return(Result); }
/// <summary> /// 运行效果 /// </summary> /// <param name="singleEffect"></param> /// <param name="game"></param> /// <param name="Seed"></param> /// <returns></returns> public List <string> RunEffect(ActionStatus game, CardUtility.目标选择方向枚举 Direct) { List <string> Result = new List <string>(); var MinionLst = 指定卡牌编号数组.Split(CardUtility.strSplitMark.ToCharArray()); Random random = new Random(DateTime.Now.Millisecond); var CardSN = MinionLst[random.Next(0, MinionLst.Length)]; var Minion = (MinionCard)CardUtility.GetCardInfoBySN(CardSN); switch (Direct) { case CardUtility.目标选择方向枚举.本方: if (game.AllRole.MyPublicInfo.BattleField.MinionCount < SystemManager.MaxMinionCount) { game.AllRole.MyPublicInfo.BattleField.AppendToBattle(Minion); //SUMMON#YOU#M000001#POS Result.Add(Server.ActionCode.strSummon + CardUtility.strSplitMark + CardUtility.strMe + CardUtility.strSplitMark + CardSN + CardUtility.strSplitMark + game.AllRole.MyPublicInfo.BattleField.MinionCount); game.battleEvenetHandler.事件池.Add(new EventCard.全局事件() { 触发事件类型 = EventCard.事件类型枚举.召唤, 触发位置 = Minion.战场位置 }); } break; case CardUtility.目标选择方向枚举.对方: if (game.AllRole.YourPublicInfo.BattleField.MinionCount < SystemManager.MaxMinionCount) { game.AllRole.YourPublicInfo.BattleField.AppendToBattle(Minion); Result.Add(Server.ActionCode.strSummon + CardUtility.strSplitMark + CardUtility.strYou + CardUtility.strSplitMark + CardSN + CardUtility.strSplitMark + game.AllRole.YourPublicInfo.BattleField.MinionCount); game.battleEvenetHandler.事件池.Add(new EventCard.全局事件() { 触发事件类型 = EventCard.事件类型枚举.召唤, 触发位置 = Minion.战场位置 }); } break; case CardUtility.目标选择方向枚举.双方: if (game.AllRole.MyPublicInfo.BattleField.MinionCount < SystemManager.MaxMinionCount) { game.AllRole.MyPublicInfo.BattleField.AppendToBattle(Minion); //SUMMON#YOU#M000001#POS Result.Add(Server.ActionCode.strSummon + CardUtility.strSplitMark + CardUtility.strMe + CardUtility.strSplitMark + CardSN + CardUtility.strSplitMark + game.AllRole.MyPublicInfo.BattleField.MinionCount); game.battleEvenetHandler.事件池.Add(new EventCard.全局事件() { 触发事件类型 = EventCard.事件类型枚举.召唤, 触发位置 = Minion.战场位置 }); } if (game.AllRole.MyPublicInfo.BattleField.MinionCount < SystemManager.MaxMinionCount) { game.AllRole.MyPublicInfo.BattleField.AppendToBattle(Minion); Result.Add(Server.ActionCode.strSummon + CardUtility.strSplitMark + CardUtility.strYou + CardUtility.strSplitMark + CardSN + CardUtility.strSplitMark + game.AllRole.MyPublicInfo.BattleField.MinionCount); game.battleEvenetHandler.事件池.Add(new EventCard.全局事件() { 触发事件类型 = EventCard.事件类型枚举.召唤, 触发位置 = Minion.战场位置 }); } break; } return(Result); }