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


C# Board.getTile方法代码示例

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


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

示例1: getPossibleMoves

        ////////////// Get Possible Moves//////////////////
        public static List<Move> getPossibleMoves(Player player, Board b)
        {
            List<Move> Moves = new List<Move>(); //initialize empty moves.

            for(int i = 0; i < b.startTiles.Length + b.gameTiles.Length - 1; i++) //for/while #of start tiles and # of game tiles
            {
                List<Player> tile = b.getTile(i);       //gets tiles of current player's peices are currently lading on
                if(tile.Count > 0 && tile[tile.Count-1] == player)
                {
                    int dist = tile.Count;
                    if (i < b.startTiles.Length)
                    {
                        if(dist < 4)
                            Moves.Add(new Move(i, dist - 1 + b.startTiles.Length));
                        Moves.Add(new Move(i, dist + 2 + b.startTiles.Length));
                    }
                    else
                    {
                        if (i < 3 + b.startTiles.Length && i + dist > 2 + b.startTiles.Length)
                            dist += 3;
                        Moves.Add(new Move(i, Math.Min(i + dist, b.startTiles.Length + b.gameTiles.Length - 1)));
                    }
                }
            }

            return Moves;
        }
开发者ID:ds0nt,项目名称:group-15-3,代码行数:28,代码来源:AICalc.cs

示例2: Random

        public static Random rand = new Random(); //please don't define extra but just use this !!

        #endregion Fields

        #region Methods

        //simpler version of Distance. doesn't handle invalied moves.
        ///////////////////////////Calculate the distance.//////////////////////////////
        ///you can use this ONLY AFTER you'd got the possible moves. this won't work for any random moves.
        ///this will only work for the moves that had start and end points.
        public static int distance(Move m, Board b)
        {
            int dist=0;
            //let's get the starting points height
            dist = b.getTile(m.start).Count;

            return dist;
        }
开发者ID:ds0nt,项目名称:group-15-3,代码行数:18,代码来源:AICalc.cs

示例3: numberFinished

 //////////////count how many finished
 public static int numberFinished(Player p, Board b)
 {
     int countFinished = 0;
     List<Player> tile = b.getTile(29);
     for (int i = 0; i < tile.Count; i++)
     {
         if (tile[i] == LotusGame.get().players[LotusGame.get().currentPlayer])
         {
             countFinished++;
         }
     }
     return countFinished;
 }
开发者ID:ds0nt,项目名称:group-15-3,代码行数:14,代码来源:AICalc.cs

示例4: coverOpponent

 public void coverOpponent(Player p, Board b)
 {
     List<Move> moves = AICalc.getPossibleMoves(p, b); // using AI calc to get the possible moves.
     bool covered = false;
     for (int i = 0; i < moves.Count; i++)
     {
         List<Player> tileStack= b.getTile(moves[i].end);
         if (tileStack.Count != 0 && tileStack[tileStack.Count - 1] != LotusGame.get().players[LotusGame.get().currentPlayer])
         {
             LotusGame.get().ScheduleEvent(new GameEvent.RegionClick(moves[i].start), 0.1f);
             LotusGame.get().ScheduleEvent(new GameEvent.RegionClick(moves[i].end), 0.2f);
             covered = true;
             break;
         }
     }
     if (covered == false)
         moveRandom(p, b);
     //dist = b.getTile(m.start).Count;
 }
开发者ID:ds0nt,项目名称:group-15-3,代码行数:19,代码来源:AIMoves.cs


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