자유게시판

제작 영상
2012.07.13 00:07

뭐가 문제지?

조회 수 1056 추천 수 0 댓글 7

        public class MAP : Database
        {
            public List<NPC> Npcs = new List<NPC>();

            static int MapID;

            static int Width;
            static int Height;

            static int[] Data = null;

            int XY;
           
            public int OnlineUsers = 0;

            public MAP(int map)
            {
                MySqlDataReader mdr = MySqlHelper.ExecuteReader(Connection, "SELECT * FROM npc WHERE map = '" + map + "';");

                int r = 0;

                while (true)
                {
                    if (!mdr.Read()) break;

                    NPC i = new NPC();

                    i.No = mdr.GetInt32("no");
                    i.Type = mdr.GetInt16("type");

                    i.Move = mdr.GetInt16("move") == 1 ? true : false;

                    i.Id = mdr.GetString("name");

                    i.Hp = mdr.GetInt32("hp");

                    i.Regen = mdr.GetInt32("rebirth");
                    i.Pure_Regen = i.Regen;

                    i.Handling = mdr.GetInt16("handling");
                    i.Time = i.Handling;

                    i.Damage = mdr.GetInt32("power");
                    i.Defense = mdr.GetInt32("defensive");

                    i.Map = mdr.GetInt16("map");
                    i.X = mdr.GetInt16("x");
                    i.Y = mdr.GetInt16("y");
                    i.D = mdr.GetInt16("d");

                    i.Image = mdr.GetString("image");

                    //i.Function = mdr.GetString("function");

                    i.rand = new Random(r);

                    Npcs.Add(i);
                    r++;
                }
                mdr.Close();

                string Name;

                if (map < 10) Name = "BMap00" + map;
                else if (map >= 10 && map < 100) Name = "BMap0" + map;
                else Name = "BMap" + map;

                if (File.Exists("./BMap/" + Name + ".map"))
                {
                    using (StreamReader outfile = File.OpenText("./BMap/" + Name + ".map"))
                    {
                        string read = outfile.ReadToEnd();
                        string[] result = Regex.Split(read, "\001");

                        MapID = int.Parse(result[3]);

                        Width = int.Parse(result[5]);
                        Height = int.Parse(result[6]);

                        while (0 <= Height - 1)
                        {
                            while (0 <= Width - 1)
                            {
                                Data[XY] = Data[7 + XY];
                                ++XY;
                            }
                        }

                        outfile.Close();
                    }
                }
            }

            static bool Valid(int x, int y)
            {
                return (x >= 0 && x < Width && y >= 0 && y < Height);
            }

            public static bool Passable(int x, int y)
            {
                if (!Valid(x, y)) return false;

                foreach (USER user in Handler.User.Values)
                    if (MapID == user.map && x == user.x && y == user.y) return false;

                foreach (MAP i in Handler.Map.Values)
                {
                    foreach (NPC npc in i.Npcs)
                        if (!npc.Die && MapID == npc.Map && x == npc.X && y == npc.Y) return false;
                }

                if (Data[x + (y * Width)] == 0) return false;

                return true;
            }

 

 

 

 

 

 

 

 

왜 오류가 뜨는 것이야

Who's Mania

?

2001년부터 쯔꾸르 RPG를 만진 사람.

게임 공작소, 창조도시 그 마니아. 맞습니다.

Comment '7'
  • ?
    Mania 2012.07.13 00:08
    정규식이면 \001 이 맞을텐디 ㅡㅡ
  • profile
    JACKY 2012.07.13 00:11
    저도 잘 모르겠습니다 고갱님
  • ?
    Mania 2012.07.13 01:09
    string[] result = Regex.Split(read, Convert.ToChar(1).ToString());

    저렇게 고쳐주어서 끝났고.

    Data = new int[Width * Height + 1];

    for (int i = 0; i<Height; i++)
    {
    for (int j = 0; j < Width; j++)
    {
    Data[XY] = int.Parse(result[6 + XY]);
    ++XY;
    }
    }
  • ?
    Mania 2012.07.13 01:10
    ㅇㅇ 잘된다 야호 하하하하ㅏ하하하

    게임 로직 ㅡㅡ 개나쁜것
  • profile
    JACKY 2012.07.13 10:39
    그나저나 이건 XNA 임요?
  • ?
    Mania 2012.07.13 18:49
    닷넷이라우. ㅇㅇ
  • profile
    하늘바라KSND 2012.07.14 07:08
    외계어!

List of Articles
분류 제목 글쓴이 날짜 조회 수
공지 아방스 게시물 · 댓글 작성 규칙 (최근 수정일 2015.11.25) 17 file 완폐남™ 2012.07.17 41184
잡담 여캐에 중갑을 싸서 드셔보세요 2 file JACKY 2014.12.16 363
막장 여태까지 아무도 알지 못했던 오타... 5 file 미루 2013.07.16 547
잡담 여튼 말입니다. 9 과거로의고리 2011.02.01 305
잡담 여행 5 잉여VICTIM 2011.02.19 451
잡담 역ㅋ시ㅋ 내가 관리자 레알 해야할듯ㅋ 6 JEWAPPI 2010.07.29 387
잡담 역검타이틀완성 5 file 빠삐코선장 2011.05.21 1058
잡담 역대급 게임서비스종료 4 file 파치리스 2015.08.30 312
잡담 역사는돌고돈다..고? 4 §포뇨§ 2010.02.21 1024
잡담 역시 7-zip의 압축률은 대단하군요... 6 file 나방's 2011.03.10 783
잡담 역시 rpg mv쓰는게 가장 낫나요... 2 비둘기팀장 2015.11.22 214
설문 역시 게임에서 과정을 만들기가 어렵네요.. 4 수프림 2014.01.05 760
잡담 역시 게임은... fgdr147 2009.05.17 559
잡담 역시 그림판은 한계가.. 9 bluesu1004 2014.02.24 763
잡담 역시 다른 사람 제작물 들여다보는건 공부가 좀 되네요 2 잠행인 2016.07.20 89
잡담 역시 드퀘식 인벤토리 관리는 저한테는 불편하군요. Alkaid 2012.04.26 1097
잡담 역시 로그라이트는 힘드네요. 4 RPG란무엇인가? 2017.07.24 120
역시 마리아가 굿 2 질풍처럼 2010.10.17 416
잡담 역시 머릿속으로 생각해 그리는것보단 따라그리는게 쉽네요. 5 인생의먹구름 2010.10.06 332
막장 역시 모드 제작자들이란......... Alkaid 2011.11.04 1191
잡담 역시 무턱대고 만들면 감당이 안되네요... 3 zero? 2017.07.21 122
목록
Board Pagination Prev 1 ... 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 ... 755 Next
/ 755