From 1504fae066db6658a9191245d6bdf162ad81a667 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=AA=E9=A3=8E?= <1213457484@qq.com> Date: Fri, 4 Apr 2025 17:33:12 +0800 Subject: [PATCH] no message --- src/client/PlayerStats.java | 4 ++-- src/gui/tw/AotuNpc.java | 9 +++++++++ src/gui/tw/diaoyu/DiaoyuConfig.java | 4 ++-- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/client/PlayerStats.java b/src/client/PlayerStats.java index 5f9d136..d8ae396 100644 --- a/src/client/PlayerStats.java +++ b/src/client/PlayerStats.java @@ -639,7 +639,7 @@ public class PlayerStats implements Serializable { dsbbh++; if (!first_login) { for (AotuNpc npc : Start.aotuNpcs) { - if (npc.getMapId() == chra.getMapId() && (npc.getItemId() == 0 || chra.haveItem(npc.getItemId())) && (npc.getEquId() == 0 || chra.hasEquipped(npc.getEquId()))) { + if ((npc.getMapId() == chra.getMapId()||npc.getMapId()==0) && (npc.getItemId() == 0 || chra.getItemNum(npc.getItemId())>=npc.getItemNum()) && (npc.getEquId() == 0 || chra.hasEquipped(npc.getEquId()))) { Start.executor.schedule(() -> dsnpcfw(chra, npc,dsbbh), npc.getTime(), TimeUnit.MILLISECONDS); } } @@ -985,7 +985,7 @@ public class PlayerStats implements Serializable { private void dsnpcfw(MapleCharacter chra, AotuNpc aotuNpc,int dsbbh2) { if (dsbbh2!=this.dsbbh)return; - if (aotuNpc.getMapId() == chra.getMapId() &&( aotuNpc.getItemId()==0 || chra.haveItem(aotuNpc.getItemId())) && (aotuNpc.getEquId()==0|| chra.hasEquipped(aotuNpc.getEquId()))) { + if ((aotuNpc.getMapId() == chra.getMapId()||aotuNpc.getMapId()==0) && (aotuNpc.getItemId() == 0 || chra.getItemNum(aotuNpc.getItemId())>=aotuNpc.getItemNum()) && (aotuNpc.getEquId() == 0 || chra.hasEquipped(aotuNpc.getEquId()))) { final NPCConversationManager cm = NPCScriptManager.getInstance().getCM(chra.getClient()); if (cm == null || chra.getConversation() == 0 || cm.getLastMsg() != 4) { NPCScriptManager.getInstance().startds(chra.getClient(), aotuNpc.getNpcId(),0,aotuNpc.getScriptsName()); diff --git a/src/gui/tw/AotuNpc.java b/src/gui/tw/AotuNpc.java index fb89e93..340ae2d 100644 --- a/src/gui/tw/AotuNpc.java +++ b/src/gui/tw/AotuNpc.java @@ -9,9 +9,18 @@ public class AotuNpc { String scriptsName; int itemId; + int itemNum; int equId; + public int getItemNum() { + return itemNum; + } + + public void setItemNum(int itemNum) { + this.itemNum = itemNum; + } + int time; public int getMapId() { diff --git a/src/gui/tw/diaoyu/DiaoyuConfig.java b/src/gui/tw/diaoyu/DiaoyuConfig.java index e28234c..83ac31e 100644 --- a/src/gui/tw/diaoyu/DiaoyuConfig.java +++ b/src/gui/tw/diaoyu/DiaoyuConfig.java @@ -42,8 +42,8 @@ public class DiaoyuConfig { diaoYuMap.setId(id); diaoYuMap.setMapId(mapId); - diaoYuMap.setName(getMapStringName(mapId)); - MapleDataTool.getString("mapName", MapleMapFactory.nameData.getChildByPath(getMapStringName(910000000)), ""); + diaoYuMap.setName(MapleDataTool.getString("mapName", MapleMapFactory.nameData.getChildByPath(getMapStringName(910000000)), "")); + mapIds.add(diaoYuMap); } public void removemap(int id) {