• SEARCH

    통합검색
  • GAMEZONE
    • 커뮤니티
      • 공지사항
      • 유저게시판
        • 등업게시판
        • 출석체크
        • 정회원 무료자료실
      • 스크린샷
      • 인증자료실
    • 리니지
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 메이플스토리
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 바람의나라
      • 자유게시판
      • 홍보게시판
      • 자료게시판
        • 유틸자료실
        • 소스자료실
        • 클라이언트
        • 팩 자료실
      • 연구게시판
        • 개발내역
        • 질문과답변
        • 기타
      • 강의게시판
        • DR
        • CR
        • 구버전
        • 클라이언트 개조
        • 노하우 게시판
        • 게임공략 & 팁
    • 다크에덴
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 믹스마스터
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 라그나로크
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 기타게임
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 게임강의
    • 비베&포토샵
      • 자유게시판
      • 자료실
        • 일반자료실
        • 포인트 자료실
      • 노하우게시판
      • 포토샵게시판
    • 모바일
      • 게임공략
      • 포인트 자료실
      • 유틸자료실
      • 자유게시판
  • 리니지 소스자료실
    • 리니지 소스자료실 ()
    • 개경소스

      • 연구사원
      • 2016.06.05 - 03:42 2016.06.03 - 10:40 347 1

    러브연구소 쾌남님에게 퍼온 소스 입니다.

    예전 개경이 갑자기 생각나서 올려 봅니다.

    점팩 소스인듯 하네요.

     

    package psjump.server.event;

    import psjump.server.*;
    import psjump.server.model.*;
    import psjump.server.IdFactory;
    import psjump.server.model.ServerPacket.*;
    import psjump.server.templates.L1Npc;
    import psjump.server.model.WorldMapPoint;
    import psjump.server.templates.*;
    import psjump.server.Opcodes;
    import psjump.server.model.L1Object;
    import psjump.server.GameServer;

    import java.awt.TextArea;
    import java.io.PrintStream;
    import java.lang.reflect.Constructor;
    import java.util.*;

    public class DogRace extends Thread{
     private static DogRace _instance;
     public static DogRace getInstance(){
      if (_instance == null)
       _instance = new DogRace();
      return _instance;
     }
     public static void del(){
      _instance = null;
     }
     // 레이스견
     private L1NpcInstance Dog[] ;
     // 문짝
     private L1DoorsInstance Door[] ;
     //-- 레이스견 시작위치
     private int Start_X[] = {33522, 33520, 33518, 33516, 33514};
        private int Start_Y[] = {32861, 32863, 32865, 32867, 32869};
     //-- 레이스견 gfx아이디
     private int GFX[][] =  {{1353, 1461, 1462, 1463, 1464},
                          {1355, 1465, 1466, 1467, 1468},
                          {1357, 1469, 1470, 1471, 1472},
                          {1359, 1473, 1474, 1475, 1476}};
     //-- 레이스견 이름들
     private String[] Name_List = {"럼프스", "카이", "쿠마토", "브카", "두렉", "제프리", "얼루", "그룩", "부카", "퀘니버",
                                "그로돈", "투투", "쿤도라", "아돌프", "두리바", "오버풋", "배크두", "버루얼", "구몰리",
                                "베헤", "핀핀", "나쎄", "토누토", "코피니", "티소", "주코", "페콜라", "시토", "제피",
                                "툴록", "렘바", "쥬코", "미코아",  "베라티", "차셈", "소보", "코붐",
                                      "CORN", "Hwen", "제라티", "나이트", "Novice", "프로즌"};
     private int DoorID;
        public static int TIME[] = new int[5];
     public int 랭킹;
     public static String 일등 = null;
        public String 일등2;
        public HashMap _etc;
     private L1Item _allTemplates[];
        private int highestId;
     private int _npcId;
     public DogRace(){
            super("DogRace");
            Dog = new L1NpcInstance[5];
            Door = new L1DoorsInstance[5];
            DoorID = 5;
            랭킹 = 0;
            일등2 = null;
            highestId = 0;
            start();
        }
    /* 끝나는 좌표
    1. 33526, 32839
    2. 33526, 32841
    3. 33526, 33843
    4. 33526, 33845
    5. 33526, 33847

    x - 33475 ~ 33538
    y - 32833 ~ 32884
    */
      public void run(){
            try{
                랭킹 = 0;
                일등 = null;
                일등2 = null;
                System.out.println("[psjump] EVENT : 개경기 로드...");
               상점초기화();
               SleepTime();
               loadDog();
               상점물품로드();
               del();
               시작알림();
          StartGame();
            }
            catch(Exception e) { }
        }

     private void StartGame(){
      Dog_1 d1 = new Dog_1();
      Dog_2 d2 = new Dog_2();
      Dog_3 d3 = new Dog_3();
      Dog_4 d4 = new Dog_4();
      Dog_5 d5 = new Dog_5();
      d1.start();
      d2.start();
      d3.start();
      d4.start();
      d5.start();
     }

     public void 레이스표(int id, int j){
            L1Item item = ItemTable.getInstance().getTemplate(id, 0);
            int a = Dog[j].getNpcTemplate().getmovespeed();
            switch(j){
            default:
                break;

            case 0: // '\0'
                L1NpcInstance _tmp = Dog[0];
                switch(L1NpcInstance.getRnd().nextInt(10)){
                case 0: // '\0'
                    L1NpcInstance _tmp1 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 0);
                    break;

                case 1: // '\001'
                    L1NpcInstance _tmp2 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 1);
                    break;

                case 2: // '\002'
                    L1NpcInstance _tmp3 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 10);
                    break;

                case 3: // '\003'
                    L1NpcInstance _tmp4 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 10);
                    break;

                case 4: // '\004'
                    L1NpcInstance _tmp5 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(100) + 1);
                    break;

                default:
                    L1NpcInstance _tmp6 = Dog[0];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 0 + Dog[0].getRnd().nextInt(10));
                    break;
                }
                item.set_nameid((new StringBuilder()).append("레이스표 #").append(Dog[0].get_nameid()).append(" #").append(item.get_배율()).append("배").toString());
                item.set_price(500);
                item.set_개이름(Dog[0].get_name());
                break;

            case 1: // '\001'
                L1NpcInstance _tmp7 = Dog[1];
                switch(L1NpcInstance.getRnd().nextInt(10)){
                case 0: // '\0'
                    L1NpcInstance _tmp8 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 0);
                    break;

                case 1: // '\001'
                    L1NpcInstance _tmp9 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 1);
                    break;

                case 2: // '\002'
                    L1NpcInstance _tmp10 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 10);
                    break;

                case 3: // '\003'
                    L1NpcInstance _tmp11 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 10);
                    break;

                case 4: // '\004'
                    L1NpcInstance _tmp12 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(100) + 1);
                    break;

                default:
                    L1NpcInstance _tmp13 = Dog[1];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 0 + Dog[1].getRnd().nextInt(10));
                    break;
                }
                item.set_nameid((new StringBuilder()).append("레이스표 #").append(Dog[1].get_nameid()).append(" #").append(item.get_배율()).append("배").toString());
                item.set_price(500);
                item.set_개이름(Dog[1].get_name());
                break;

            case 2: // '\002'
                L1NpcInstance _tmp14 = Dog[2];
                switch(L1NpcInstance.getRnd().nextInt(10)){
                case 0: // '\0'
                    L1NpcInstance _tmp15 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 0);
                    break;

                case 1: // '\001'
                    L1NpcInstance _tmp16 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 1);
                    break;

                case 2: // '\002'
                    L1NpcInstance _tmp17 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 10);
                    break;

                case 3: // '\003'
                    L1NpcInstance _tmp18 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 10);
                    break;

                case 4: // '\004'
                    L1NpcInstance _tmp19 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(100) + 1);
                    break;

                default:
                    L1NpcInstance _tmp20 = Dog[2];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 0 + Dog[2].getRnd().nextInt(10));
                    break;
                }
                item.set_nameid((new StringBuilder()).append("레이스표 #").append(Dog[2].get_nameid()).append(" #").append(item.get_배율()).append("배").toString());
                item.set_price(500);
                item.set_개이름(Dog[2].get_name());
                break;

            case 3: // '\003'
                L1NpcInstance _tmp21 = Dog[3];
                switch(L1NpcInstance.getRnd().nextInt(10)){
                case 0: // '\0'
                    L1NpcInstance _tmp22 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 0);
                    break;

                case 1: // '\001'
                    L1NpcInstance _tmp23 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 1);
                    break;

                case 2: // '\002'
                    L1NpcInstance _tmp24 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 10);
                    break;

                case 3: // '\003'
                    L1NpcInstance _tmp25 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 10);
                    break;

                case 4: // '\004'
                    L1NpcInstance _tmp26 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(100) + 1);
                    break;

                default:
                    L1NpcInstance _tmp27 = Dog[3];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 0 + Dog[3].getRnd().nextInt(10));
                    break;
                }
                item.set_nameid((new StringBuilder()).append("레이스표 #").append(Dog[3].get_nameid()).append(" #").append(item.get_배율()).append("배").toString());
                item.set_price(500);
                item.set_개이름(Dog[3].get_name());
                break;

            case 4: // '\004'
                L1NpcInstance _tmp28 = Dog[4];
                switch(L1NpcInstance.getRnd().nextInt(10)){
                case 0: // '\0'
                    L1NpcInstance _tmp29 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 0);
                    break;

                case 1: // '\001'
                    L1NpcInstance _tmp30 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 1);
                    break;

                case 2: // '\002'
                    L1NpcInstance _tmp31 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(10) + 10);
                    break;

                case 3: // '\003'
                    L1NpcInstance _tmp32 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 10);
                    break;

                case 4: // '\004'
                    L1NpcInstance _tmp33 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(100) + 1);
                    break;

                default:
                    L1NpcInstance _tmp34 = Dog[4];
                    item.set_배율(L1NpcInstance.getRnd().nextInt(20) + 0 + Dog[4].getRnd().nextInt(10));
                    break;
                }
                item.set_nameid((new StringBuilder()).append("레이스표 #").append(Dog[4].get_nameid()).append(" #").append(item.get_배율()).append("배").toString());
                item.set_price(500);
                item.set_개이름(Dog[4].get_name());
                break;
            }
        }

        public void 레이스표가격변동(int id){
            L1Item item = ItemTable.getInstance().getTemplate(id, 0);
            if(일등 == item.get_개이름())
                item.set_price(500 * item.get_배율());
            else
                item.set_price(0);
        }

        public void 상점물품로드(){
            상점갱신(628, 0);
            상점갱신(629, 1);
            상점갱신(630, 2);
            상점갱신(631, 3);
            상점갱신(632, 4);
        }
    /*
        public void 상점갱신(int a, int b){ // 이부분에서 개경 npc 불러들이는부분 게렝 수정부분
         //추가부분
      //L1NpcInstance = NpcTable.getInstance().getTemplate(id);
      //L1NpcInstance = new L1NpcInstance(L1NpcInstance);
      //여기까지
      L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
      L1NpcInstance npc = (L1NpcInstance)TempObj;
      L1ShopInstance Shopnpc = (L1ShopInstance)npc;
            ShopBuyList shop = new ShopBuyList();
            레이스표(a, b);
      shop.set_npcid(61011);
            shop.set_itemid(a);
            shop.set_itemtype(0);
            Shopnpc.get_sn().addShop(shop);
        }
    */
        public void 상점갱신(int a, int b){ // 이부분에서 개경 npc 불러들이는부분 게렝 수정부분

      L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
      L1NpcInstance npc = (L1NpcInstance)TempObj;
      L1ShopInstance Shopnpc = (L1ShopInstance)npc;
            ShopBuyList shop = new ShopBuyList();
            레이스표(a, b);
      shop.set_npcid(61011);
            shop.set_itemid(a);
            shop.set_itemtype(0);
            Shopnpc.get_sn().addShop(shop);
        }

        public void 상점초기화(){
      L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
            L1NpcInstance npc = (L1NpcInstance)TempObj;
      L1ShopInstance Shopnpc = (L1ShopInstance)npc;
      Shopnpc.get_sn().delShop();
          }

     
        public void 순위매기기(int i){
            L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
         L1NpcInstance npc = (L1NpcInstance)TempObj;
         switch(i){
            default:
                break;

            case 0: // '\0'
                랭킹 = 랭킹 + 1;
                npc.bph().NpcChatPacket(npc, (new StringBuilder()).append(랭킹).append("위 - ").append(Dog[0].get_nameid()).toString(), Opcodes.S_OPCODE_NORMALCHAT, 0x00);
                if(랭킹 == 1){
                    일등 = Dog[0].get_name();
                    일등2 = Dog[0].get_nameid();
                    레이스표가격변동(628);
                    레이스표가격변동(629);
                    레이스표가격변동(630);
                    레이스표가격변동(631);
                    레이스표가격변동(632);
                }
                break;

            case 1: // '\001'
                랭킹 = 랭킹 + 1;
                npc.bph().NpcChatPacket(npc, (new StringBuilder()).append(랭킹).append("위 - ").append(Dog[1].get_nameid()).toString(), Opcodes.S_OPCODE_NORMALCHAT, 0x00);
                if(랭킹 == 1){
                    일등 = Dog[1].get_name();
                    일등2 = Dog[1].get_nameid();
                    레이스표가격변동(628);
                    레이스표가격변동(629);
                    레이스표가격변동(630);
                    레이스표가격변동(631);
                    레이스표가격변동(632);
                }
                break;

            case 2: // '\002'
                랭킹 = 랭킹 + 1;
                npc.bph().NpcChatPacket(npc, (new StringBuilder()).append(랭킹).append("위 - ").append(Dog[2].get_nameid()).toString(), Opcodes.S_OPCODE_NORMALCHAT, 0x00);
                if(랭킹 == 1){
                    일등 = Dog[2].get_name();
                    일등2 = Dog[2].get_nameid();
                    레이스표가격변동(628);
                    레이스표가격변동(629);
                    레이스표가격변동(630);
                    레이스표가격변동(631);
                    레이스표가격변동(632);
                }
                break;

            case 3: // '\003'
                랭킹 = 랭킹 + 1;
                npc.bph().NpcChatPacket(npc, (new StringBuilder()).append(랭킹).append("위 - ").append(Dog[3].get_nameid()).toString(), Opcodes.S_OPCODE_NORMALCHAT, 0x00);
                if(랭킹 == 1){
                    일등 = Dog[3].get_name();
                    일등2 = Dog[3].get_nameid();
                    레이스표가격변동(628);
                    레이스표가격변동(629);
                    레이스표가격변동(630);
                    레이스표가격변동(631);
                    레이스표가격변동(632);
                }
                break;

            case 4: // '\004'
                랭킹 = 랭킹 + 1;
                npc.bph().NpcChatPacket(npc, (new StringBuilder()).append(랭킹).append("위 - ").append(Dog[4].get_nameid()).toString(), Opcodes.S_OPCODE_NORMALCHAT, 0x00);
                if(랭킹 == 1){
                    일등 = Dog[4].get_name();
                    일등2 = Dog[4].get_nameid();
                    레이스표가격변동(628);
                    레이스표가격변동(629);
                    레이스표가격변동(630);
                    레이스표가격변동(631);
                    레이스표가격변동(632);
                }
                break;
            }
        }

         public void 인벤갱신(){
            인벤표삭제("레이스표 1-1");
            인벤표삭제("레이스표 1-2");
            인벤표삭제("레이스표 1-3");
            인벤표삭제("레이스표 1-4");
            인벤표삭제("레이스표 1-5");
        }

        public void 인벤표삭제(String j){
            L1PcInstance players[] = L1World.getInstance().getAllPlayers();
            L1ItemInstance temp = null;
            for(int i = 0; i < players.length; i++){
                temp = players[i].get_cil().아이템찾기(j);
                if(temp != null){
                    players[i].sendPackets(players[i].get_netConnection().bph().get_Item().S_ItemDelete(temp), true);
                    players[i].get_cil().removeItems(temp);
                }
            }

        }
     
     private void 시작알림() throws Exception{
         L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
         L1NpcInstance npc = (L1NpcInstance)TempObj;
         npc.bph().NpcChatPacket(npc, "레이스표 판매를 시작하였습니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("레이스표 판매를 시작하였습니다.");
            sleep(2000L);
            npc.bph().NpcChatPacket(npc, "5분 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("5분 후 개경이 시작됩니다.");
            방송("5분 후 귀여운 강아지들의 질주가 시작됩니다.");
            sleep(60000L);
            npc.bph().NpcChatPacket(npc, "4분 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("4분 후 개경이 시작됩니다.");
            방송("4분 후 귀여운 강아지들의 질주가 시작됩니다.");
            sleep(60000L);
            npc.bph().NpcChatPacket(npc, "3분 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("3분 후 개경이 시작됩니다.");
            방송("3분 후 귀여운 강아지들의 질주가 시작됩니다.");
            sleep(60000L);
            npc.bph().NpcChatPacket(npc, "2분 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("2분 후 개경이 시작됩니다.");
            방송("2분 후 귀여운 강아지들의 질주가 시작됩니다.");
            sleep(60000L);
            npc.bph().NpcChatPacket(npc, "1분 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("1분 후 개경이 시작됩니다.");
            방송("잠시 후 귀여운 강아지들의 질주를 시작합니다v");
            방송("개 경기장으로 구경오세요v");
            sleep(48000L);
       //     상점초기화();
            npc.bph().NpcChatPacket(npc, "레이스표 판매가 마감되었습니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(2000L);
            npc.bph().NpcChatPacket(npc, "10초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(5000L);
            npc.bph().NpcChatPacket(npc, "5초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "4초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "3초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "2초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "1초 후 개경이 시작됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "출발!", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            System.out.println("[psjump] 개경기: 출발!");
            StartGame();

     }
     
        public void 방송 (String text){
            L1PcInstance players[] = L1World.getInstance().getAllPlayers();
            for(int i = 0; i < players.length; i++)
              players[i].sendPackets(players[i].get_netConnection().bph().get_cp().S_ChatPacket(players[i], text, 73, 2), true);
     
        }

        private void 종료알림() throws Exception{
            L1Object TempObj = L1World.getInstance().findObject(WorldMapPoint.getInstance().get_map(33516, 32857, 4));
         L1NpcInstance npc = (L1NpcInstance)TempObj;
            npc.bph().NpcChatPacket(npc, "경기가 종료되었습니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            방송((new StringBuilder()).append("귀여운 강아지들의 질주가 끝났습니다v (1등 - ").append(일등2).append(")").toString());
            System.out.println("경기가 종료되었습니다.");
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "5분 내에 당첨금을 받아가세요..", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "10분 후에 경기를 다시 시작합니다...", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(1000L);
            npc.bph().NpcChatPacket(npc, "레이스 표는 경기 시작 5분전부터 판매합니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(57000L);
            System.out.println("[psjump] 1분 경과 // 개경 다시시작 전까지 2분 남음");
            sleep(0x2bf20L);
            System.out.println("[psjump] 3분 경과 // 개경 다시시작 전까지 1분 남음");
            npc.bph().NpcChatPacket(npc, "당첨금 지급시간이 1분 남았습니다. 1분후 인벤토리에 남아있던 레이스표들이 삭제됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            방송("당첨금 지급시간이 1분 남았습니다.");
            방송("1분후 인벤토리에 남아있던 레이스표들이 삭제됩니다.");
            sleep(45000L);
            npc.bph().NpcChatPacket(npc, "당첨금 지급시간이 10초 남았습니다. 10초후 인벤토리에 남아있던 레이스표들이 삭제됩니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            sleep(12000L);
            npc.bph().NpcChatPacket(npc, "당첨금 지급시간이 끝났습니다.", Opcodes.S_OPCODE_NORMALCHAT, 0x00);
            인벤갱신();
            del();
        }

     class Dog_1 extends Thread{
            public void run(){
                int nx = 0;
                int ny = 0;
                int id = 0;
                try{
                    int count = 46;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[0].get_x() - 1, Dog[0].get_y(), Dog[0].get_map());
                        count--;
                        nx = -1;
                        Dog[0].set_heading(6);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_wmp());
                        Dog[0].set_x(Dog[0].get_x() + nx);
                        Dog[0].set_y(Dog[0].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_objectId());
                        AllUpdata(Dog[0]);
                        sleep(Dog[0].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 3;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[0].get_x() - 1, Dog[0].get_y() - 1, Dog[0].get_map());
                        count--;
                        nx = -1;
                        ny = -1;
                        Dog[0].set_heading(7);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_wmp());
                        Dog[0].set_x(Dog[0].get_x() + nx);
                        Dog[0].set_y(Dog[0].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_objectId());
                        AllUpdata(Dog[0]);
                        sleep(Dog[0].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 5;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[0].get_x(), Dog[0].get_y() - 1, Dog[0].get_map());
                        count--;
                        ny = -1;
                        Dog[0].set_heading(0);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_wmp());
                        Dog[0].set_x(Dog[0].get_x() + nx);
                        Dog[0].set_y(Dog[0].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_objectId());
                        AllUpdata(Dog[0]);
                        sleep(Dog[0].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 6;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[0].get_x() + 1, Dog[0].get_y() - 1, Dog[0].get_map());
                        count--;
                        nx = 1;
                        ny = -1;
                        Dog[0].set_heading(1);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_wmp());
                        Dog[0].set_x(Dog[0].get_x() + nx);
                        Dog[0].set_y(Dog[0].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_objectId());
                        AllUpdata(Dog[0]);
                        sleep(Dog[0].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[0].get_x() + 1, Dog[0].get_y(), Dog[0].get_map());
                        if(Dog[0].get_x() == 33527)
                            break;
                        nx = 1;
                        Dog[0].set_heading(2);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_wmp());
                        Dog[0].set_x(Dog[0].get_x() + nx);
                        Dog[0].set_y(Dog[0].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[0].get_x(), Dog[0].get_y(), Dog[0].get_map(), Dog[0].get_objectId());
                        AllUpdata(Dog[0]);
                        sleep(Dog[0].getNpcTemplate().getmovespeed());
                    } while(true);
                    순위매기기(0);
                    경기끝();
                }
                catch(Exception e) { }
            }

            final DogRace this$0;

            Dog_1()
            {
                this$0 = DogRace.this;
          //      super();
            }
        }

     class Dog_2 extends Thread{

            public void run(){
                int nx = 0;
                int ny = 0;
                int id = 0;
                try{
                    int count = 46;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[1].get_x() - 1, Dog[1].get_y(), Dog[1].get_map());
                        count--;
                        nx = -1;
                        Dog[1].set_heading(6);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_wmp());
                        Dog[1].set_x(Dog[1].get_x() + nx);
                        Dog[1].set_y(Dog[1].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_objectId());
                        AllUpdata(Dog[1]);
                        sleep(Dog[1].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 3;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[1].get_x() - 1, Dog[1].get_y() - 1, Dog[1].get_map());
                        count--;
                        nx = -1;
                        ny = -1;
                        Dog[1].set_heading(7);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_wmp());
                        Dog[1].set_x(Dog[1].get_x() + nx);
                        Dog[1].set_y(Dog[1].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_objectId());
                        AllUpdata(Dog[1]);
                        sleep(Dog[1].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 5;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[1].get_x(), Dog[1].get_y() - 1, Dog[1].get_map());
                        count--;
                        ny = -1;
                        Dog[1].set_heading(0);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_wmp());
                        Dog[1].set_x(Dog[1].get_x() + nx);
                        Dog[1].set_y(Dog[1].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_objectId());
                        AllUpdata(Dog[1]);
                        sleep(Dog[1].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 10;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[1].get_x() + 1, Dog[1].get_y() - 1, Dog[1].get_map());
                        count--;
                        nx = 1;
                        ny = -1;
                        Dog[1].set_heading(1);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_wmp());
                        Dog[1].set_x(Dog[1].get_x() + nx);
                        Dog[1].set_y(Dog[1].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_objectId());
                        AllUpdata(Dog[1]);
                        sleep(Dog[1].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[1].get_x() + 1, Dog[1].get_y(), Dog[1].get_map());
                        if(Dog[1].get_x() == 33527)
                            break;
                        nx = 1;
                        Dog[1].set_heading(2);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_wmp());
                        Dog[1].set_x(Dog[1].get_x() + nx);
                        Dog[1].set_y(Dog[1].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[1].get_x(), Dog[1].get_y(), Dog[1].get_map(), Dog[1].get_objectId());
                        AllUpdata(Dog[1]);
                        sleep(Dog[1].getNpcTemplate().getmovespeed());
                    } while(true);
                    순위매기기(1);
                    경기끝();
                }
                catch(Exception e) { }
            }

            final DogRace this$0;

            Dog_2()
            {
                this$0 = DogRace.this;
           //     super();
            }
        }

     class Dog_3 extends Thread{

            public void run(){
                int nx = 0;
                int ny = 0;
                int id = 0;
                try{
                    int count = 44;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[2].get_x() - 1, Dog[2].get_y(), Dog[2].get_map());
                        count--;
                        nx = -1;
                        Dog[2].set_heading(6);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_wmp());
                        Dog[2].set_x(Dog[2].get_x() + nx);
                        Dog[2].set_y(Dog[2].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_objectId());
                        AllUpdata(Dog[2]);
                        sleep(Dog[2].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 3;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[2].get_x() - 1, Dog[2].get_y() - 1, Dog[2].get_map());
                        count--;
                        nx = -1;
                        ny = -1;
                        Dog[2].set_heading(7);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_wmp());
                        Dog[2].set_x(Dog[2].get_x() + nx);
                        Dog[2].set_y(Dog[2].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_objectId());
                        AllUpdata(Dog[2]);
                        sleep(Dog[2].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 5;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[2].get_x(), Dog[2].get_y() - 1, Dog[2].get_map());
                        count--;
                        ny = -1;
                        Dog[2].set_heading(0);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_wmp());
                        Dog[2].set_x(Dog[2].get_x() + nx);
                        Dog[2].set_y(Dog[2].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_objectId());
                        AllUpdata(Dog[2]);
                        sleep(Dog[2].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 14;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[2].get_x() + 1, Dog[2].get_y() - 1, Dog[2].get_map());
                        count--;
                        nx = 1;
                        ny = -1;
                        Dog[2].set_heading(1);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_wmp());
                        Dog[2].set_x(Dog[2].get_x() + nx);
                        Dog[2].set_y(Dog[2].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_objectId());
                        AllUpdata(Dog[2]);
                        sleep(Dog[2].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[2].get_x() + 1, Dog[2].get_y(), Dog[2].get_map());
                        if(Dog[2].get_x() == 33527)
                            break;
                        nx = 1;
                        Dog[2].set_heading(2);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_wmp());
                        Dog[2].set_x(Dog[2].get_x() + nx);
                        Dog[2].set_y(Dog[2].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[2].get_x(), Dog[2].get_y(), Dog[2].get_map(), Dog[2].get_objectId());
                        AllUpdata(Dog[2]);
                        sleep(Dog[2].getNpcTemplate().getmovespeed());
                    } while(true);
                    순위매기기(2);
                    경기끝();
                }
                catch(Exception e) { }
            }

            final DogRace this$0;

            Dog_3()
            {
                this$0 = DogRace.this;
           //     super();
            }
        }

     class Dog_4 extends Thread{

            public void run(){
                int nx = 0;
                int ny = 0;
                int id = 0;
                try{
                    int count = 46;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[3].get_x() - 1, Dog[3].get_y(), Dog[3].get_map());
                        count--;
                        nx = -1;
                        Dog[3].set_heading(6);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_wmp());
                        Dog[3].set_x(Dog[3].get_x() + nx);
                        Dog[3].set_y(Dog[3].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_objectId());
                        AllUpdata(Dog[3]);
                        sleep(Dog[3].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 3;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[3].get_x() - 1, Dog[3].get_y() - 1, Dog[3].get_map());
                        count--;
                        nx = -1;
                        ny = -1;
                        Dog[3].set_heading(7);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_wmp());
                        Dog[3].set_x(Dog[3].get_x() + nx);
                        Dog[3].set_y(Dog[3].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_objectId());
                        AllUpdata(Dog[3]);
                        sleep(Dog[3].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 5;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[3].get_x(), Dog[3].get_y() - 1, Dog[3].get_map());
                        count--;
                        ny = -1;
                        Dog[3].set_heading(0);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_wmp());
                        Dog[3].set_x(Dog[3].get_x() + nx);
                        Dog[3].set_y(Dog[3].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_objectId());
                        AllUpdata(Dog[3]);
                        sleep(Dog[3].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 18;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[3].get_x() + 1, Dog[3].get_y() - 1, Dog[3].get_map());
                        count--;
                        nx = 1;
                        ny = -1;
                        Dog[3].set_heading(1);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_wmp());
                        Dog[3].set_x(Dog[3].get_x() + nx);
                        Dog[3].set_y(Dog[3].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_objectId());
                        AllUpdata(Dog[3]);
                        sleep(Dog[3].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[3].get_x() + 1, Dog[3].get_y(), Dog[3].get_map());
                        if(Dog[3].get_x() == 33527)
                            break;
                        nx = 1;
                        Dog[3].set_heading(2);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_wmp());
                        Dog[3].set_x(Dog[3].get_x() + nx);
                        Dog[3].set_y(Dog[3].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[3].get_x(), Dog[3].get_y(), Dog[3].get_map(), Dog[3].get_objectId());
                        AllUpdata(Dog[3]);
                        sleep(Dog[3].getNpcTemplate().getmovespeed());
                    } while(true);
                    순위매기기(3);
                    경기끝();
                }
                catch(Exception e) { }
            }

            final DogRace this$0;

            Dog_4()
            {
                this$0 = DogRace.this;
           //     super();
            }
        }

     class Dog_5 extends Thread{

            public void run(){
                int nx = 0;
                int ny = 0;
                int id = 0;
                try{
                    int count = 46;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[4].get_x() - 1, Dog[4].get_y(), Dog[4].get_map());
                        count--;
                        nx = -1;
                        Dog[4].set_heading(6);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_wmp());
                        Dog[4].set_x(Dog[4].get_x() + nx);
                        Dog[4].set_y(Dog[4].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_objectId());
                        AllUpdata(Dog[4]);
                        sleep(Dog[4].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 3;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[4].get_x() - 1, Dog[4].get_y() - 1, Dog[4].get_map());
                        count--;
                        nx = -1;
                        ny = -1;
                        Dog[4].set_heading(7);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_wmp());
                        Dog[4].set_x(Dog[4].get_x() + nx);
                        Dog[4].set_y(Dog[4].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_objectId());
                        AllUpdata(Dog[4]);
                        sleep(Dog[4].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 5;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[4].get_x(), Dog[4].get_y() - 1, Dog[4].get_map());
                        count--;
                        ny = -1;
                        Dog[4].set_heading(0);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_wmp());
                        Dog[4].set_x(Dog[4].get_x() + nx);
                        Dog[4].set_y(Dog[4].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_objectId());
                        AllUpdata(Dog[4]);
                        sleep(Dog[4].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    count = 22;
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[4].get_x() + 1, Dog[4].get_y() - 1, Dog[4].get_map());
                        count--;
                        nx = 1;
                        ny = -1;
                        Dog[4].set_heading(1);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_wmp());
                        Dog[4].set_x(Dog[4].get_x() + nx);
                        Dog[4].set_y(Dog[4].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_objectId());
                        AllUpdata(Dog[4]);
                        sleep(Dog[4].getNpcTemplate().getmovespeed());
                    } while(count != 0);
                    do{
                        nx = 0;
                        ny = 0;
                        id = WorldMapPoint.getInstance().get_map(Dog[4].get_x() + 1, Dog[4].get_y(), Dog[4].get_map());
                        if(Dog[4].get_x() == 33527)
                            break;
                        nx = 1;
                        Dog[4].set_heading(2);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_wmp());
                        Dog[4].set_x(Dog[4].get_x() + nx);
                        Dog[4].set_y(Dog[4].get_y() + ny);
                        WorldMapPoint.getInstance().set_map(Dog[4].get_x(), Dog[4].get_y(), Dog[4].get_map(), Dog[4].get_objectId());
                        AllUpdata(Dog[4]);
                        sleep(Dog[4].getNpcTemplate().getmovespeed());
                    } while(true);
                   순위매기기(4);
                    경기끝();
                }
                catch(Exception e) { }
            }

            final DogRace this$0;

            Dog_5()
            {
                this$0 = DogRace.this;
           //     super();
            }
        }


     public void 경기끝()
            throws Exception{
            if(Dog[0].get_x() == 33527 && Dog[1].get_x() == 33527 && Dog[2].get_x() == 33527 && Dog[3].get_x() == 33527 && Dog[4].get_x() == 33527)
            {
                종료알림();
                 del();
                sleep(2000L);
                L1PcInstance player[] = L1World.getInstance().getAllPlayers();
                for(int i = 0; i < player.length; i++){
                    player[i].removeKnownObject(Dog[0]);
                    player[i].removeKnownObject(Dog[1]);
                    player[i].removeKnownObject(Dog[2]);
                    player[i].removeKnownObject(Dog[3]);
                    player[i].removeKnownObject(Dog[4]);
                    player[i].sendPackets(player[i].get_netConnection().bph().get_DeleteObject().S_DeleteNewObject(Dog[0]), true);
                    player[i].sendPackets(player[i].get_netConnection().bph().get_DeleteObject().S_DeleteNewObject(Dog[1]), true);
                    player[i].sendPackets(player[i].get_netConnection().bph().get_DeleteObject().S_DeleteNewObject(Dog[2]), true);
                    player[i].sendPackets(player[i].get_netConnection().bph().get_DeleteObject().S_DeleteNewObject(Dog[3]), true);
                    player[i].sendPackets(player[i].get_netConnection().bph().get_DeleteObject().S_DeleteNewObject(Dog[4]), true);
                    L1World.getInstance().removeVisibleObject(Dog[0]);
                    L1World.getInstance().removeVisibleObject(Dog[1]);
                    L1World.getInstance().removeVisibleObject(Dog[2]);
                    L1World.getInstance().removeVisibleObject(Dog[3]);
                    L1World.getInstance().removeVisibleObject(Dog[4]);
                }

                System.out.println("[psjump] 개 오브젝트 삭제");
                if(_instance == null)
                    _instance = new DogRace();
            }
        }

     private boolean distance(L1Object a, L1Object b){
            int radius = 10;
            int x = a.get_x();
            int y = a.get_y();
            int map = a.get_map();
            int MobX = b.get_x();
            int MobY = b.get_y();
            int MobMap = b.get_map();
            int xmax = x + radius;
            int xmin = x - radius;
            int ymax = y + radius;
            int ymin = y - radius;
            if(MobY > ymax)
                return true;
            if(MobY < ymin)
                return true;
            if(MobX > xmax)
                return true;
            if(MobX < xmin)
                return true;
            return MobMap != map;
        }

     private void AllUpdata(L1NpcInstance Dog){
      //-- 오브젝트 리스트에서 갱신하기
      for(int i = 0; i < Dog.getKnownPlayers().size(); i++){
       L1PcInstance user = (L1PcInstance) Dog.getKnownPlayers().get(i);
       if(user != null){
        if (distance(Dog, user)){ // 10범위 밖에 있다면
         Dog.removeKnownObject(user);
         user.sendPackets(Dog.bph().get_DeleteObject().S_DeleteNewObject(Dog), true);

    //     user.sendPackets(S_DeleteNewObject(Dog), true);
         user.removeKnownObject(Dog);
        }
       }else{
        Dog.removeKnownObject(user);
       }
      }
      //-- 월드맵포인트에서 몬스터의 10범위를 검색, 오브젝트찾기
      int gab = 0;
      for(int i=0 ; i<20 ; i++){
       for(int j=0 ; j<20 ; j++){
        int[] id = WorldMapPoint.getInstance().object((Dog.get_x()-10)+j,(Dog.get_y()-10)+i,Dog.get_map());
        for(int k=1 ; k<4 ; ++k){
         if((id[k] != Dog.get_objectId())&&(id[k] > 0)){
          L1Object temp = L1World.getInstance().findObject(id[k]);
          if(Dog.knownsObject(temp)){ // 찾은 오브젝트가 나의 리스트안에 있다면..
           if(temp instanceof L1PcInstance){
            L1PcInstance player = (L1PcInstance) temp;
            if(!player.knownsObject(Dog)){ // 찾은녀석안에 내가 없다면
             player.addKnownObject(Dog);
             player.sendPackets(Dog.bph().get_NewObjectPack().S_OwnCharPack(player, Dog), true);

            }
            player.sendPackets(Dog.bph().get_MoveCharPacket().S_MoveCharPacket(Dog), true);
           }
          }else{ // 없다면..
           if(temp instanceof L1PcInstance){ // 찾은게 플레이어라면
            L1PcInstance player = (L1PcInstance) temp;
            player.sendPackets(Dog.bph().get_NewObjectPack().S_OwnCharPack(player, Dog), true);
            if(!player.knownsObject(Dog)){
             player.addKnownObject(Dog);
            }
            if(!Dog.knownsObject(player)){
             Dog.addKnownObject(player);
            }
           }
          }
         }
        }
       }
      }
     }


     private void SleepTime(){
            for(int i = 0; i < 5; i++){
                L1NpcInstance _tmp = Dog[i];
                TIME[i] = L1NpcInstance.getRnd().nextInt(260) + 140;
            }

        }

     private void DoorStatus(boolean ck){
            for(int m = 0; m < 5; m++){
                if(ck)
                    Door[m].set_heading(28);
                else
                    Door[m].set_heading(29);
                for(int i = 0; i < 20; i++){
                    for(int j = 0; j < 20; j++){
                        int id = WorldMapPoint.getInstance().get_map((Door[m].get_x() - 10) + j, (Door[m].get_y() - 10) + i, Door[m].get_map());
                        for(int k = 1; k < 4; k++){
                            if(id == Door[m].get_objectId() || id <= 0)
                                continue;
                            L1Object temp = L1World.getInstance().findObject(id);
                            if(temp != null && (temp instanceof L1PcInstance)){
                                L1PcInstance cha = (L1PcInstance)temp;
                                cha.sendPackets(cha.get_netConnection().bph().get_CharAction().S_DoAction(Door[m].get_objectId(), Door[m].get_heading()), true);
                            }
                        }

                    }

                }

            }

        }

     
     private void loadDog(){
      L1Npc npc;
      for(int m=0 ; m<5 ; ++m){
       try{
        npc = new L1Npc();
        npc.setmovespeed(TIME[m]);
        Object[] parameters = {npc};
        Dog[m] = (L1NpcInstance) Class.forName("psjump.server.model.L1NpcInstance").getConstructors()[0].newInstance(parameters);
        Dog[m].set_gfxid(GFX[ Dog[m].getRnd().nextInt(4) ][ Dog[m].getRnd().nextInt(5) ]);
        Dog[m].set_nameid(Name_List[ Dog[m].getRnd().nextInt(Name_List.length) ]);
        Dog[m].set_x(Start_X[m]);
        Dog[m].set_y(Start_Y[m]);
        Dog[m].set_map(4);
        Dog[m].set_heading(5);
        while(true){
         Dog[m].set_objectId(IdFactory.getInstance().getNextId());
         if(L1World.getInstance().storeObject(Dog[m])){
          try{
           WorldMapPoint.getInstance().AddObject(Start_X[m],Start_Y[m],4,Dog[m].get_objectId());
          }catch (Exception e1){}
          break;
         }
        }
        for(int i=0 ; i<20 ; i++){
         for(int j=0 ; j<20 ; j++){
          int[] id = WorldMapPoint.getInstance().object((Dog[m].get_x()-10)+j,(Dog[m].get_y()-10)+i,Dog[m].get_map());
          for(int k=1 ; k<4 ; ++k){
           if((id[k] != Dog[m].get_objectId())&&(id[k] > 0)){
            L1Object temp = L1World.getInstance().findObject(id[k]);
            if(temp != null){
             if(!Dog[m].knownsObject(temp)){
              if(temp instanceof L1PcInstance){
               L1PcInstance player = (L1PcInstance) temp;
               Dog[m].addKnownObject(player);
               player.sendPackets(Dog[m].bph().get_NewObjectPack().S_OwnCharPack(player, Dog[m]), true);

               if(!player.knownsObject(Dog[m])){
                player.addKnownObject(Dog[m]);
               }
              }
             }
            }
           }
          }
         }
        }
       }catch (Exception e){}
      }
     }
    }

    출처=커뮤니티

    [출처] 개경소스.java (비공개 카페)

    이 게시물을..
    N
    0
    0
    • 리마스터팩 요정 소울 엠피 수정jstory
    • 0
      연구사원

    연구사원 님의 최근 글

    신규보호 외부화 104 2016 06.07 특정무기 인첸 제한 걸기 170 2016 06.07 특정레벨 도달시 자동혈탈퇴 소스(중립 혈 / 신규혈) 등등 62 2016 06.07 스턴이걸리는무기,아이스가날라가는활을 만들자!!!ㅋ 316 2016 06.07 [요정]속성 마법에 의한 추가 데미지 97 2016 06.07

    연구사원 님의 최근 댓글

    감사합니다 2017 11.29 9999 가 본 영자모드이고 7777이 부영자 모드 같더군요. 2016 06.13 좋은 자료 감사합니다. 2016 06.09 감사합니다. 2016 06.08 감사합니다. 2016 06.08
    글쓴이의 서명작성글 감추기 

    댓글1

    • 0
      로스트사가
      2016.06.05 - 03:42 #203660

      좋은 자료 감사합니다.

      혹시 죄송하지만 예전 자료들 자주 올려주시는데

      엔피시호칭 개목걸이 없애는 소스두 있으시면 부탁드려도 될까여.

    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • 리마스터팩 요정 소울 엠피 수정
    • 목록
      view_headline
    1
    × CLOSE
    기본 (1,058) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    • 소스자료는 직접 올려주세요
      2017.06.06 - 16:14 591
    1058
    아머브레이크 데스티니 시전시 성공 확률 조정하는 소스가 있나요?
    안정환 2024.04.23 - 10:01 102
    1057
    List.spr(변신,몬스터 수정소스)개조방법
    유튜브고도리 2024.04.19 - 05:02 243
    1056
    NPC 외침 멘트 깔끔정리(by.유튜브고도리)
    유튜브고도리 2024.04.11 - 05:57 125
    1055
    디아블로 참 만들기
    유튜브고도리 2024.04.09 - 05:55 114
    1054
    리니지m 처럼 피통 늘리기,오류가 날때
    유튜브고도리 2024.04.09 - 05:18 91
    1053
    욕하면 채금 먹게 하기
    유튜브고도리 2024.04.09 - 04:59 71
    1052
    레벨에 따른 호칭 부여..?
    밤톨이11 2024.04.08 - 04:24 72
    1051
    초보자 보호 시스템
    밤톨이11 2024.04.08 - 04:21 57
    1050
    마법무기 데미지 증가
    밤톨이11 2024.04.08 - 04:19 70
    1049
    레벨 제한 맵
    밤톨이11 2024.04.08 - 04:14 65
    1048
    마법스크롤
    밤톨이11 2024.04.08 - 04:06 32
    1047
    리니지m 아지트 소유중에도 공성선포하기
    유튜브고도리 2024.04.07 - 21:37 41
    1046
    리니지m 마법인형이 마법을 쓰네?
    유튜브고도리 2024.04.07 - 21:36 61
    1045
    드래곤 슬레이어 각반(장비추가소스)
    유튜브고도리 2024.04.07 - 19:08 51
    1044
    린엠 게렝 변신 카드 만들기
    유튜브고도리 2024.04.06 - 06:06 100
    1043
    버프 물약 개별 소스 오래전 소스
    밤톨이11 2024.04.05 - 18:43 57
    1042
    일시 스텟 상승 물약
    밤톨이11 2024.04.05 - 18:42 26
    1041
    성 전환 물약
    밤톨이11 2024.04.05 - 18:37 31
    1040
    MP 물약 소스
    밤톨이11 2024.04.05 - 18:35 41
    1039
    리니지 옛날버젼..이라는데...구동가능여부 확인 부탁드립니다.
    도난차량 2024.03.24 - 04:56 354
    1038
    랭커
    foqwer 2024.03.14 - 10:43 141
    1037
    인첸별
    foqwer 2024.03.14 - 10:42 106
    1036
    몬스터 앞에 레벨 넣기
    프렌치좋아 2024.03.04 - 01:40 370
    1035
    3.63 글루딘 Single 용
    블루블랙3 2024.02.28 - 23:08 411
    1034
    Sprite file doesn`t exist 오류
    하앙비 2023.12.23 - 02:19 229
    1033
    전쟁세율 고정값 15%
    하남궁 2023.11.29 - 17:02 198
    1032
    인형합성사
    Rebecca 2023.10.09 - 22:54 337
    1031
    2.0 레벨업시 HP량 올리기
    Rebecca 2023.10.09 - 22:49 434
    1030
    전사버전 펫 만렙 변경
    Rebecca 2023.10.09 - 22:44 162
    1029
    맵 순간이동 가능 불가능지역 설정하기
    Rebecca 2023.10.09 - 22:39 237
    1028
    트레져박스 업로드입니다.
    린컴충성 2023.10.07 - 04:46 182
    1027
    리마스터 접속기 소스자료
    홍자놀기 2023.09.08 - 05:41 2284
    1026
    대미지 발동시 범위 질문드립니다
    나잇따나읻따 2023.05.21 - 22:26 292
    1025
    리니지 리마스터 몹 스폰수 어디서 줄일 수 있나요?
    001001 2023.04.25 - 16:06 727
    1024
    전사팩 로봇가능
    노력하자 2023.03.16 - 19:14 1113
    1023
    2.7 자동 물약 소스
    퍽퍽띠 2022.11.18 - 00:40 1215
    1022
    2.0 자동칼질소스 (클래스 파일에서 빼왔습니다)
    drumlinek 2022.11.06 - 05:20 930
    1021
    npc가 인겜에서 채팅으로 말하기
    하늘마음 2022.10.06 - 10:04 320
    1020
    유저 아이피보는 소스
    캐빈N.01 2020.12.15 - 21:34 639
    1019
    인공지능
    캐빈N.01 2020.12.15 - 21:27 1125
    1018
    아데나가 19억이 되면 자동으로 1억으로 금괴로 바꾸기
    강우리 2020.12.12 - 01:48 995
    1017
    린올기반 휘장 각반 견갑 장비인식 안되는거 수정함
    신화서버 2020.11.17 - 01:48 295
    1016
    방어구 인챈트별 피 증가 소스
    LGTwins 2020.09.12 - 05:52 688
    1015
    장신구 옵션 변경
    LGTwins 2020.08.31 - 07:00 751
    1014
    자동물약
    legena 2020.07.05 - 02:30 2089
    1013
    리마스터팩 스냅퍼 개방 레벨설정 본섭화 수정(몽양님 요청)
    jstory 2020.06.13 - 07:22 764
    1012
    리마스터팩 룬마력제거 검사 적용안대는 부분 수정
    jstory 2020.06.10 - 04:05 287
    1011
    리마스터팩 쓸모없는 아이템 활용
    jstory 2020.06.10 - 04:01 731
    1010
    리마스터팩 요정 소울 엠피 수정
    jstory 2020.06.10 - 03:54 459
    1009
    리마스터팩 자동공지시간에 버프주기
    jstory 2020.06.10 - 03:15 404
    • 1 2 3 4 5 6 7 8 9 10 .. 22
    • / 22 GO
  • GAMEZONE
 GAMEZONE all rights reserved.
by OrangeDay