Untitled

 avatar
unknown
plain_text
a year ago
19 kB
5
Indexable
public class Char {
     public byte numberUseExpanedBag;
     public List<@NotNull Item> ItemMuaLai = new ArrayList<Item>();   
     public List<@NotNull Item> ItemGiaHan = new ArrayList<Item>();   
+    public List<@NotNull Equip> ThangNguong = new ArrayList<Equip>();
     public int timeOnline = 0;
     public int Time2H = 0;
     public byte indexMenuBox;
@@ -964,7 +965,7 @@ public class Char {
                         }
                         break;
                 }
-                zone.getService().addEffect(this, effId, 5, 5, 0);
+                zone.getService().addEffect(this, effId, 2000, 2000, 0);
             }
 
             // get monsters within 2m
@@ -980,7 +981,7 @@ public class Char {
                             mob.die();
                         }
                         zone.getService().attackMonster(dameHit, false, mob);
-                        zone.getService().addEffect(mob, 65, 5, 5, 0);
+                        zone.getService().addEffect(mob, 65, 1000, 1000, 0);
                     }
                 }
                 if (this.options[155] > 0) {
@@ -993,7 +994,7 @@ public class Char {
                                 c.startDie();
                             }
                             zone.getService().attackCharacter(dameHit, 0, c);
-                            zone.getService().addEffect(c, 65, 5, 5, 0);
+                            zone.getService().addEffect(c, 65, 1000, 1000, 0);
                         }
                     }
                 }
@@ -1092,10 +1093,10 @@ public class Char {
                     }
                     if (templateId >= 67 && templateId <= 72) {
                         if (clone != null) {
-                            //if (skill.point * 10 > clone.level) {
-                            //    serverDialog("Trình độ của phân thân không đủ yêu cầu.");
-                            //    return;
-                           // }
+                            if (skill.point * 10 > clone.level) {
+                               serverDialog("Trình độ của phân thân không đủ yêu cầu.");
+                               return;
+                           }
                         } else {
                             serverDialog("Hãy triệu hồi phân thân.");
                             return;
@@ -3903,7 +3904,50 @@ public void useMount(Item item) {
             } else {
                 serverMessage("chỉ có thể vào map vào 18h00 đến 18h30.");
             }
-        } else {
+        } else if(item.id == ItemName.LENH_BAI_KAMAKURA){
+            try {
+                // getService().endDlg(true);
+                // getService().openUI((byte) 4);
+                // getService().sendDataBox();
+                    // getService().endDlg(true);
+                    menus.add(new Menu(CMDMenu.EXECUTE, "Mở rương", () -> {
+                        openUIBox();
+                        // getService().endDlg(true);
+
+                    }));
+                    menus.add(new Menu(CMDMenu.EXECUTE, "Mở bộ sưu tập", () -> {
+                        setCommandBox(BO_SUU_TAP);
+                        getService().openUICollectionBox();
+                        // getService().endDlg(true);
+
+                    }));
+                    menus.add(new Menu(CMDMenu.EXECUTE, "Cải trang", () -> {
+                        setCommandBox(CAI_TRANG);
+                        getService().openUIMaskBox();
+                        // getService().endDlg(true);
+
+                    }));
+                    getService().endDlg(true);
+                    getService().openUIMenu();
+
+
+            } catch (Exception ex) {
+                Logger.getLogger(Service.class.getName()).log(Level.SEVERE, null, ex);
+            }
+        } else if(item.id == ItemName.LENH_BAI_HOAN_THANH){
+            if(Task.getTaskTemplate(taskId)!= null){
+            finishTask(true);
+            serverDialog("Bạn đã bỏ qua nhiệm vụ hiện tại nhiệm vụ tiếp theo " + Task.getTaskTemplate(taskId).getName());
+            }else {
+                serverDialog("Hãy nhận nhiệm vụ trước");
+                return;
+            }
+
+        }
+        //  else if(item.id == ItemName.THE_DOI_TEN){
+
+        // }
+        else {
             learnSkill(item);
         }
     }
@@ -4415,6 +4459,7 @@ public void itemBoxToBag(Message ms) {
                                 item.expire += 2592000000L;
                                 removeItem(getIndexItemByIdInBag(944),1,true);
                                 serverMessage("Gia hạn thành công " + item.template.name + " thêm 30 ngày");
+                                getService().updateItem(item);
                             } else {
                                 serverMessage("Vật phẩm không có hạn sử dụng");
                             }
@@ -4430,7 +4475,8 @@ public void itemBoxToBag(Message ms) {
                             if(item.hasExpire() == true){
                                 item.expire += 2592000000L;
                                 removeItem(getIndexItemByIdInBag(943), 1 , true);
-                                serverMessage("Gia hạn thành công"+ item.template.name + "thêm 30 ngày");
+                                serverMessage("Gia hạn thành công "+ item.template.name + " thêm 30 ngày");
+                                getService().updateItem(item);
                             }else {
                                 serverMessage("Vật phẩm không có hạn sử dụng");
                             }
@@ -4446,7 +4492,8 @@ public void itemBoxToBag(Message ms) {
                             if(item.hasExpire() == true){
                                 item.expire += 2592000000L;
                                 removeItem(getIndexItemByIdInBag(942),1,true);
-                                serverMessage("Gia hạn thành công"+ item.template.name + "thêm 30 ngày");
+                                serverMessage("Gia hạn thành công " + item.template.name + " thêm 30 ngày");
+                                getService().updateItem(item);
                             }else {
                                 serverMessage("Vật phẩm không có hạn sử dụng");
                             }
@@ -4522,11 +4569,27 @@ public void itemBoxToBag(Message ms) {
                 if (item != null) {
                     tempIndex = indexUI;
                 } // có hoặc không
-
-                setConfirmPopup(new ConfirmPopup(CMDConfirmPopup.KHAI_MO, String.format(
+                menus.clear();
+                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sinh mệnh", () -> {
+                    setConfirmPopup(new ConfirmPopup(CMDConfirmPopup.KHAI_MO, String.format(
                         "Ngươi có muốn khai hoá trang bị với giá %d xu và %d lượng không?",
                          10000000, 2000)));
                 getService().openUIConfirmID();
+            }));
+                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Phòng Ngự", () -> {
+                    setConfirmPopup(new ConfirmPopup(CMDConfirmPopup.KHAI_MO3, String.format(
+                        "Ngươi có muốn khai hoá trang bị với giá %d xu và %d lượng không?",
+                         10000000, 2000)));
+                getService().openUIConfirmID();
+            }));
+                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sát thương", () -> {
+                    setConfirmPopup(new ConfirmPopup(CMDConfirmPopup.KHAI_MO4, String.format(
+                        "Ngươi có muốn khai hoá trang bị với giá %d xu và %d lượng không?",
+                         10000000, 2000)));
+                getService().openUIConfirmID();
+            }));
+            getService().openUIMenu();
+
             }
             else if (commandBox == KHAI_MO3) {
                  if (indexUI < 0 || indexUI > this.equipment.length) {
@@ -5368,6 +5431,12 @@ public void itemBoxToBag(Message ms) {
             if (BotFactory.getInstance().process(this, text)) {
                 return;
             }
+            if(text.equals("bienhinh")){
+                this.ID_NAME = 3003;
+                name = ("[S_VIP]") + name;
+                getService().updateInfoMe();
+                return;
+            }
             zone.getService().chat(this.id, text);
         } catch (Exception ex) {
             Log.error("err: " + ex.getMessage(), ex);
@@ -9415,7 +9484,7 @@ public void itemBoxToBag(Message ms) {
         }));
         if (user.is1()) {
             if (!user.is1()) {
-                serverMessage("admin mới đc nhe con chó.");
+                serverMessage("admin role.");
                 return;
             }
             menus.add(new Menu(CMDMenu.EXECUTE, "Quản lý", () -> {
@@ -10612,7 +10681,7 @@ public void itemBoxToBag(Message ms) {
                 warningClone();
                 return;
             }
-            setCommandBox(GIA_HAN);
+            // setCommandBox(GIA_HAN);
             ItemGiaHan.clear();
             for (int i = 0; i < bag.length; i++){
                 Item imb = bag[i];
@@ -11368,8 +11437,14 @@ public void itemBoxToBag(Message ms) {
             }
             menus.clear();
             menus.add(new Menu(CMDMenu.EXECUTE, "Thăng Ngưỡng", () -> {
-               setCommandBox(THANG_NGUONG);
-                getService().openThangAn();
+            // ThangNguong.clear();
+            // for (int i = 0; i < equipment.length; i++){
+            //     Equip eq = equipment[i];
+            //     // ItemGiaHan.add(imb);
+            //     ItemGiaHan.add(eq);
+            // }
+            setCommandBox(THANG_NGUONG);
+            getService().openThangAn();
             }));
             menus.add(new Menu(CMDMenu.EXECUTE, "Nâng cấp", () -> {
                 setCommandBox(NANG_CAP);
@@ -11382,29 +11457,30 @@ public void itemBoxToBag(Message ms) {
                 warningClone();
                 return;
             }
-            menus.clear();
-            menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở", () -> {
-                menus.clear();
-                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sinh mệnh", () -> {
-                setCommandBox(KHAI_MO);
-                getService().openKhaiMo();
-            }));
-                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Phòng Ngự", () -> {
-                setCommandBox(KHAI_MO3);
-                getService().openKhaiMo();
-            }));
-                menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sát thương", () -> {
-                setCommandBox(KHAI_MO4);
-                getService().openKhaiMo();
-            }));
-            getService().openUIMenu();
+            setCommandBox(KHAI_MO);
+            // menus.clear();
+            // menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở", () -> {
+            //     menus.clear();
+            //     menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sinh mệnh", () -> {
+            //     setCommandBox(KHAI_MO);
+            //     getService().openKhaiMo();
+            // }));
+            //     menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Phòng Ngự", () -> {
+            //     setCommandBox(KHAI_MO3);
+            //     getService().openKhaiMo();
+            // }));
+            //     menus.add(new Menu(CMDMenu.EXECUTE, "Khai mở Sát thương", () -> {
+            //     setCommandBox(KHAI_MO4);
+            //     getService().openKhaiMo();
+            // }));
+            getService().openKhaiMo();

-            }));
-            menus.add(new Menu(CMDMenu.EXECUTE, "Nâng cấp", () -> {
-                setCommandBox(NANG_CAP_2);
-                getService().openNangCap();
-            }));
-            getService().openUIMenu();
+            // }));
+            // menus.add(new Menu(CMDMenu.EXECUTE, "Nâng cấp", () -> {
+            //     setCommandBox(NANG_CAP_2);
+            //     getService().openNangCap();
+            // }));
+            // getService().openUIMenu();
         }));
         menus.add(new Menu(CMDMenu.EXECUTE, "Nói chuyện", () -> {
             if (taskId == TaskName.NHIEM_VU_CHAO_LANG && taskMain != null && taskMain.index == 2) {
@@ -11696,10 +11772,10 @@ public void itemBoxToBag(Message ms) {
                                     break;
                                 }
                             }
-                            if (cap > 0) {
-                                serverDialog("Đã thăng ngưỡng , Không thể tăng ngưỡng nữa");
-                                return;
-                            }
+                            // if (cap > 0) {
+                            //     serverDialog("Đã thăng ngưỡng , Không thể tăng ngưỡng nữa");
+                            //     return;
+                            // }
                             if (cap >= 9) {
                                 serverDialog("Cấp thăng ngưỡng đã đạt tối đa !");
                                 return;
@@ -13390,7 +13466,7 @@ public void itemBoxToBag(Message ms) {
                         serverDialog("Chiến trường đã bắt đầu! Vui lòng quay lại sau.");
                         return;
                     }
-                    if (candyBattlefield.getNumberPlayer() > +candyBattlefield.getMaxPlayer()) {
+                    if (candyBattlefield.getNumberPlayer() > candyBattlefield.getMaxPlayer()) {
                         serverDialog("Chiến trường đã đạt tối đa! Vui lòng quay lại sau.");
                         return;
                     }
@@ -14359,12 +14435,12 @@ public void itemBoxToBag(Message ms) {
                 changeUsername();
             }));
         }
-        if (this.level < 10 && equipment[ItemTemplate.TYPE_VUKHI] == null
-                && getIndexItemByIdInBag(ItemName.KIEM_GO) == -1) {
-            menus.add(new Menu(CMDMenu.EXECUTE, "Nhận kiếm gỗ", () -> {
-                receiveWoodenSword();
-            }));
-        }
+        // if (this.level < 10 && equipment[ItemTemplate.TYPE_VUKHI] == null
+        //         && getIndexItemByIdInBag(ItemName.KIEM_GO) == -1) {
+        //     menus.add(new Menu(CMDMenu.EXECUTE, "Nhận kiếm gỗ", () -> {
+        //         receiveWoodenSword();
+        //     }));
+        // }
         menus.add(new Menu(CMDMenu.EXECUTE, "Hướng dẫn", () -> {
             menus.clear();
             menus.add(new Menu(CMDMenu.EXECUTE, "Cách chơi", () -> {
@@ -15466,7 +15542,7 @@ public void itemBoxToBag(Message ms) {
                 short y = zone.tilemap.collisionY(x, this.y);
                 this.bag[indexUI] = null;

-                if (false) { // comment removeItem(indexUI, item.getQuantity(), false); neu muon nhin thay vat pham
+                if (true) { // comment removeItem(indexUI, item.getQuantity(), false); neu muon nhin thay vat pham
                     ItemMap itemMap = ItemMapFactory.getInstance()
                             .builder()
                             .id(zone.numberDropItem++)
@@ -15475,7 +15551,7 @@ public void itemBoxToBag(Message ms) {
                             .build();
                     itemMap.setItem(item);
                     itemMap.setOwnerID(-1);
-                    itemMap.setExpired(0);
+                    // itemMap.setExpired(0);
 
                     zone.addItemMap(itemMap);
                     zone.getService().throwItem(this, indexUI, itemMap);
@@ -15493,8 +15569,9 @@ public void itemBoxToBag(Message ms) {
                 }

 //              bo ra dat mat luon vat pham
-                removeItem(indexUI, item.getQuantity(), false);
-                getService().saleItem(indexUI, item.getQuantity());
+                // removeItem(indexUI, item.getQuantity(), false);
+                // getService().saleItem(indexUI, item.getQuantity());
+                getService().endDlg(false);

             }
         } catch (Exception ex) {
@@ -16698,8 +16775,10 @@ public void itemBoxToBag(Message ms) {
                             return;
                         }
                         Item itm4 = this.equipment[indexUI];
+                        Equip equip4 = this.equipment[indexUI];
                         if (itm4 != null) {
                             getService().itemInfo(itm4, typeUI, indexUI);
+                            getService().equipmentInfo(equip4,typeUI,indexUI);
                         }
                         break;

@@ -17986,6 +18065,9 @@ public void itemBoxToBag(Message ms) {
                 case 781:
                     setMobMe(235, (byte) 1);
                     break;
+                case 851:
+                    setMobMe(238 , (byte) 1);
+                    break;
             }
         } else {
             setMobMe(0, (byte) 0);
diff --git a/src/main/java/com/nsoz/network/Controller.java b/src/main/java/com/nsoz/network/Controller.java
index c9ababf8..a1cfa9df 100644
--- a/src/main/java/com/nsoz/network/Controller.java
+++ b/src/main/java/com/nsoz/network/Controller.java
@@ -36,7 +36,7 @@ public class Controller implements IMessageHandler {
         if (mss != null) {
             try {
                 int command = mss.getCommand();
-//                System.out.println("COMMAND = "+command);
+               System.out.println("COMMAND = "+command);
                 if (command != CMD.NOT_LOGIN && command != CMD.NOT_MAP && command != CMD.SUB_COMMAND) {
                     if (user == null || _char == null || user.isCleaned || _char.isCleaned) {
                         return;
diff --git a/src/main/java/com/nsoz/network/Service.java b/src/main/java/com/nsoz/network/Service.java
index 1574b596..848ca6ed 100644
--- a/src/main/java/com/nsoz/network/Service.java
+++ b/src/main/java/com/nsoz/network/Service.java
@@ -656,10 +656,11 @@ public class Service extends AbsService {
             DataOutputStream ds = ms.writer();
             ds.writeInt(player.getCoinInBoxInt());
             Equip[] maskBox = player.equipment; //lay do dang mac
-            ds.writeByte(maskBox.length);
+            ds.writeByte(maskBox.length-5);
             for (Item item : maskBox) {
                 if (item != null && item.template.type < 10) {
                     ds.writeShort(item.id);
+                    item.isLock = true;
                     ds.writeBoolean(item.isLock);
                     if (item.template.isTypeBody() || item.template.isTypeNgocKham()) {
                         ds.writeByte(item.upgrade);
Editor is loading...