자유게시판

제작 영상
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 41174
제작 영상 [나는 용사다~ 이말이야VIII] 프롤로그 + 타이틀 공개 2 레기우스州 2020.10.07 80
제작 영상 [RPGVX] 어스토니시아스토리 (홍보영상) 5 마리오류 2013.12.24 773
제작 영상 [RMMV] SF 미스테리, 이상 세계 (理想 : 異常) 트레일러 및 스크린샷 file 케이디 2018.04.06 121
제작 영상 [OpenBoR] 킹 오브 레이지 테스트 [181202] DD-Tokki 2018.12.04 111
제작 영상 [ACE] 무협 액션알피지 제작중입니다! 시작 4일차 15 칸타모 2012.07.19 956
제작 영상 [7번째의 스탠드사] 한글화 진행상황 (14.05.05) 2 file 책벌레공상가 2014.05.05 1466
제작 영상 [2k3액알 던파] 머크우드 거의 다만들어 갑니다. (전체개발 8%) MakerAki 2019.08.14 96
제작 영상 [2K3]펌프 구현 마무리 노가다 미루다 미루다 오늘 마무리했어요 조삼 2020.04.11 103
제작 영상 [2k3 이벤트 액션알피지] DNF 스킬 시스템 MakerAki 2019.08.24 74
제작 영상 [2k3 액알던파] 제작빈도 (시스템:70%) (스토리,던전: 14 or 17 %) 1 MakerAki 2019.10.15 115
제작 영상 XAS로 구현한 소환수 스킬 (라이트 서번트) 2 강현문 2010.02.10 702
제작 영상 XAS 프로스트 노바 스킬 구현 3 강현문 2010.02.09 694
제작 영상 XAS 메테오 스킬 구현 4 강현문 2010.02.15 742
제작 영상 Wicce 티져영상 입니당:) 4 알페* 2015.10.09 124
제작 영상 VX 스크립트 VX ACE로 바꿔보기... 4 77이알 2012.12.07 846
제작 영상 VX 맵칩변경 + 통행설정 1 허걱 2009.08.19 1365
제작 영상 VX ACE로 전투 테스팅 HexTech 2018.05.24 74
제작 영상 VX ACE로 XP스타일 전투시스템을 구축해보았습니다. 2 서리빛계절 2015.07.24 333
제작 영상 VX ACE 완전 국내산 사이드뷰 전투 완성 3 77이알 2012.09.08 1443
제작 영상 VOICE 3부 중간 영상 및 기타 4 wtfman 2015.05.05 86
목록
Board Pagination Prev 1 ... 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19