當前位置: 首頁>>代碼示例>>C#>>正文


C# GameState.Height方法代碼示例

本文整理匯總了C#中GameState.Height方法的典型用法代碼示例。如果您正苦於以下問題:C# GameState.Height方法的具體用法?C# GameState.Height怎麽用?C# GameState.Height使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在GameState的用法示例。


在下文中一共展示了GameState.Height方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: GameState

 public GameState(GameState gs)
     : this(gs.map, gs.Width(), gs.Height(), new Point(gs.MyX(), gs.MyY()), new Point(gs.OpponentX(), gs.OpponentY()))
 {
     this.map = (bool[,])gs.map.Clone();
 }
開發者ID:nloko,項目名稱:tron,代碼行數:5,代碼來源:GameState.cs

示例2: FloodFill

    private static int FloodFill(GameState gs, int x, int y)
    {
        Queue<Point> q = new Queue<Point>();

        int total = 0;

        // shallow copy array
        bool[,] map = (bool[,])gs.map.Clone();

        q.Enqueue(new Point(x,y));
        map[x,y] = false;
        //Console.Error.WriteLine(x + " " + y);

        while(q.Count > 0) {
        Point n = q.Dequeue();
        if (n.X < 0 || n.Y < 0 || n.X >= gs.Width() || n.Y >= gs.Height())
            continue;

        // process neighbours, mark as visited and increment count
        if (!map[n.X, n.Y]) {
            q.Enqueue(new Point(n.X+1, n.Y));
            q.Enqueue(new Point(n.X-1, n.Y));
            q.Enqueue(new Point(n.X, n.Y-1));
            q.Enqueue(new Point(n.X, n.Y+1));
            map[n.X,n.Y] = true;
            total++;
        }

        }

        return total;
    }
開發者ID:nloko,項目名稱:tron,代碼行數:32,代碼來源:MyTronBot.cs


注:本文中的GameState.Height方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。