Ejemplo n.º 1
0
        public void Test()
        {
            Int2D start = new Int2D();
            bool  stop  = false;

            for (int i = 0; i < mapSize; ++i)
            {
                for (int j = 0; j < mapSize; ++j)
                {
                    if (dungeonMaster.GetMapInfo()[i, j].objectType == MapObjectType.TILE)
                    {
                        start.x = j;
                        start.y = i;
                        Teleport(start);
                        Console.WriteLine("start : " + position.x + "," + position.y);
                        stop = true;
                        break;
                    }
                }

                if (stop)
                {
                    break;
                }
            }

            stop = false;
            Int2D end = new Int2D();

            for (int i = mapSize - 1; i >= 0; --i)
            {
                for (int j = mapSize - 1; j >= 0; --j)
                {
                    if (dungeonMaster.GetMapInfo()[i, j].objectType == MapObjectType.TILE)
                    {
                        end.x = j;
                        end.y = i;
                        Console.WriteLine("dest : " + end.x + "," + end.y);

                        var runningTime = Stopwatch.StartNew();
                        MakePath(end);

                        Console.WriteLine("[Simulation : " + runningTime.ElapsedMilliseconds + " ms]");
                        stop = true;
                        break;
                    }
                }

                if (stop)
                {
                    break;
                }
            }
        }
Ejemplo n.º 2
0
        static void TestSimulation(int seed)
        {
            // 던전 테스트--------
            Player[] player = { new Player(), new Player(), new Player(), new Player() };

            PlayerData data = new PlayerData();

            if (TestData.playerList.TryGetValue(102, out data))
            {
                player[0].LoadPlayer(data);
            }

            if (TestData.playerList.TryGetValue(103, out data))
            {
                player[1].LoadPlayer(data);
            }

            if (TestData.playerList.TryGetValue(104, out data))
            {
                player[2].LoadPlayer(data);
            }

            if (TestData.playerList.TryGetValue(101, out data))
            {
                player[3].LoadPlayer(data);
            }

            Party users = new Party(PartyType.PLAYER, 1);

            foreach (Player p in player)
            {
                users.AddCharacter(p);
            }

            DungeonMaster newMaster = new DungeonMaster();

            newMaster.Init(60, seed, users);

            // 초기 정보 확인
            var mapInfo  = newMaster.GetMapInfo();
            var itemList = newMaster.items;
            var mobList  = newMaster.mobs;

            Debug.WriteLine("turn : " + newMaster.Start());

            // 시뮬레이션 결과 확인
            //             foreach( var each in newMaster.record.pathfinding )
            //             {
            //                 Debug.WriteLine( "x : " + each.x + " / y : " + each.y );
            //             }
            //
            // ------------------
        }