当前位置: 首页>>代码示例>>C#>>正文


C# State.Send方法代码示例

本文整理汇总了C#中State.Send方法的典型用法代码示例。如果您正苦于以下问题:C# State.Send方法的具体用法?C# State.Send怎么用?C# State.Send使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在State的用法示例。


在下文中一共展示了State.Send方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: OnPlay

 public override void OnPlay(State state, Player player)
 {
     Random r = new Random();
     int skips = r.Next(1, state.Players.Count - 1);
     if (skips == 1) state.Send(String.Format(Messages.PlayS, state.Players.Next));
     else state.Send(String.Format(Messages.PlaySX, skips));
     state.NextTurnPush = skips + 1;
 }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:8,代码来源:SkipXCard.cs

示例2: OnPlay

        public override void OnPlay(State state, Player player)
        {
            state.Send(this + "\u000f | " + String.Format(Messages.DrawsFour, state.Players.Next));
            state.DealCards(state.Players.Next, 4);

            state.Send("Also, " + String.Format(Messages.ExplWild, player));
            state.NextInState = InputState.Wild;
            state.NextTurnPush = 0;
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:9,代码来源:WildDrawFourCard.cs

示例3: OnPlay

        public override void OnPlay(State state, Player player)
        {
            state.Send(this + "\u000f | " + Messages.ExplWmd3);
            foreach (Player p in state.Players) {
                if (p == state.Players.Current) continue;
                state.DealCards(p, 3);
            }

            state.Send("Also, " + String.Format(Messages.ExplWild, player));
            state.NextInState = InputState.Wild;
            state.NextTurnPush = 0;
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:12,代码来源:WildMassDrawThreeCard.cs

示例4: OnDraw

        public override void OnDraw(State state, Player player)
        {
            player.Hand.Remove(this);
            state.Send(String.Format(Messages.DrawEffect, player) + " "
                + this + "\u000f | " + String.Format(Messages.Expl_Q, player));

            state.NextTopCard = this;
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:8,代码来源:QuestionCard.cs

示例5: OnDraw

        public override void OnDraw(State state, Player player)
        {
            player.Hand.Remove(this);
            state.Send(String.Format(Messages.DrawEffect, player) + " "
                + this + "\u000f | " + String.Format(Messages.ExplSid3, player));

            state.DealCards(player, 3);
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:8,代码来源:SelfInflictedDrawThreeCard.cs

示例6: OnDraw

        public override void OnDraw(State state, Player player)
        {
            player.Hand.Remove(this);

            Random r = new Random();
            state.Send(String.Format(Messages.DrawEffect, player) + " "
                + this + "\u000f | " + String.Format(Messages.Expl_RWD, player));
            if (r.Next(1) == 0) {
                // Good outcome
                state.Send(Messages.Draw_RWD_Good);
                state.Send(this + "\u000f | " + String.Format(Messages.ExplWild, player));
                state.NextInState = InputState.Wild;
            } else {
                // Bad outcome
                state.Send(Messages.Draw_RWD_Bad);
                state.DealCards(player, 5);
            }
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:18,代码来源:RandomWildDrawCard.cs

示例7: OnPlay

        public override void OnPlay(State state, Player player)
        {
            state.Send(this + "\u000f | " + Messages.ExplDH);
            List<Tuple<Player, int>> amounts = new List<Tuple<Player, int>>();
            // Get hand counts and remove contents
            foreach (Player p in state.Players) {
                amounts.Add(new Tuple<Player, int>(p, p.Hand.Count));
                state.DiscardPile.Add(p.Hand);
                p.Hand.Clear();
            }

            // Deal new cards
            foreach (var value in amounts) {
                state.DealCards(value.Item1, value.Item2);
            }
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:16,代码来源:DrawHandCard.cs

示例8: OnDraw

        public override void OnDraw(State state, Player player)
        {
            player.Hand.Remove(this);
            state.Send(String.Format(Messages.DrawEffect, player) + " "
                + this + "\u000f | " +
                String.Format(Messages.Expl_3Dis, DispCard.Get(CardColor.Wild, CardFace.SID3), player));

            int max = 3;
            if (player.Hand.Count < max) max = player.Hand.Count;
            Card[] withdraw = player.Hand.Draw(max);
            state.DiscardPile.Add(withdraw);
            string list = "";
            foreach (Card c in withdraw) list += " " + c.ToString();
            if (list.Length > 0) list = list.Substring(1);
            state.SendPriv(player.Nick, String.Format(Messages.Play_3Dis_Lose, list));

            state.NextTurnPush = 1;
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:18,代码来源:SelfInflictedLoseThreeCard.cs

示例9: OnPlay

        public override void OnPlay(State state, Player player)
        {
            Random r = new Random();
            Player[] pool = state.Players.ToArray();
            Player victim;
            do {
                victim = pool[r.Next(pool.Length)];
            } while (victim == player);

            state.Send(String.Format(Messages.Play_EResultPub, player, victim));
            Card pc = player.Hand.Draw();
            Card vc = victim.Hand.Draw();
            player.Hand.Add(vc);
            victim.Hand.Add(pc);
            state.SendPriv(player.Nick, String.Format(Messages.Play_EResultPriv, pc, victim, vc));
            state.SendPriv(victim.Nick, String.Format(Messages.Play_EResultPriv, vc, player, pc));

            state.NextTopCard = null;
        }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:19,代码来源:DollarCard.cs

示例10: OnPlay

 public override void OnPlay(State state, Player player)
 {
     state.Send(this + "\u000f | " + String.Format(Messages.Expl_E, player));
     state.NextTurnPush = 0;
 }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:5,代码来源:ExclamationCard.cs

示例11: OnPlay

 public override void OnPlay(State state, Player player)
 {
     state.Send(String.Format(Messages.DrawsFour, state.Players.Next));
     state.DealCards(state.Players.Next, 4);
 }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:5,代码来源:DrawFourCard.cs

示例12: OnPlay

 public override void OnPlay(State state, Player player)
 {
     state.NextTurnPush = 2;
     state.Send(String.Format(Messages.PlayS, state.Players.Next));
 }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:5,代码来源:SkipCard.cs

示例13: OnPlay

 public override void OnPlay(State state, Player player)
 {
     state.Send(Messages.PlayR);
     state.Players.Reverse();
 }
开发者ID:Rafa652,项目名称:GameChannel,代码行数:5,代码来源:ReverseCard.cs


注:本文中的State.Send方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。