コード例 #1
0
        private static void Move(BattleNetClient gcb)
        {
            var r    = new Random();
            var done = false;

            switch (r.Next(5))
            {
            case 0:
                if (!gcb.IsBarrierAt(gcb.PlayerX, gcb.PlayerY - 1))
                {
                    gcb.SendActions(gcb.Up());
                    Console.WriteLine($"Move up");
                    done = true;
                }
                break;

            case 1:
                if (!gcb.IsBarrierAt(gcb.PlayerX + 1, gcb.PlayerY))
                {
                    gcb.SendActions(gcb.Right());
                    Console.WriteLine($"Move right");
                    done = true;
                }
                break;

            case 2:
                if (!gcb.IsBarrierAt(gcb.PlayerX, gcb.PlayerY + 1))
                {
                    gcb.SendActions(gcb.Down());
                    Console.WriteLine($"Move down");
                    done = true;
                }
                break;

            case 3:
                if (!gcb.IsBarrierAt(gcb.PlayerX - 1, gcb.PlayerY))
                {
                    gcb.SendActions(gcb.Left());
                    Console.WriteLine($"Move left");
                    done = true;
                }
                break;

            case 4:
                gcb.SendActions(gcb.Act());
                Console.WriteLine($"act");
                done = true;
                break;
            }
            if (done == false)
            {
                gcb.SendActions(gcb.Blank());
            }
        }