diff --git a/src.zip b/src.zip index 2e3c091..63db5f8 100644 Binary files a/src.zip and b/src.zip differ diff --git a/src/client/MapleCharacter.java b/src/client/MapleCharacter.java index a9bb44c..59855e0 100644 --- a/src/client/MapleCharacter.java +++ b/src/client/MapleCharacter.java @@ -3908,7 +3908,7 @@ public class MapleCharacter extends AbstractAnimatedMapleMapObject implements Se if (integers == null) return; if (this.meso > integers.get(0)) { int i = this.meso / integers.get(0); - this.gainItem(integers.get(1), i); + this.gainItem(integers.get(1), i*integers.get(2)); gainMeso(-integers.get(0) * i, false, true, true); } } diff --git a/src/gui/UI_LenheartUI/ItemRecovery.java b/src/gui/UI_LenheartUI/ItemRecovery.java index afc58d4..6e30e3b 100644 --- a/src/gui/UI_LenheartUI/ItemRecovery.java +++ b/src/gui/UI_LenheartUI/ItemRecovery.java @@ -42,9 +42,9 @@ public class ItemRecovery extends JPanel { Map> ConfigItemJson = new HashMap<>(); for (int i = 0; i < rowCount; i++) { - String Key = tableModel.getValueAt(i, 0).toString(); - Integer A = (int) tableModel.getValueAt(i, 2); - Integer B = (int) tableModel.getValueAt(i, 3); + String Key = tableModel.getValueAt(i, 2).toString(); + Integer A = (int) tableModel.getValueAt(i, 3); + Integer B = (int) tableModel.getValueAt(i, 0); Integer C = (int) tableModel.getValueAt(i, 1); List Data = new ArrayList<>(); @@ -83,7 +83,7 @@ public class ItemRecovery extends JPanel { new Object[][] { }, new String[] { - "\u5151\u6362\u7269\u54c1\u4ee3\u7801", "\u7269\u54c1\u5151\u6362\u6570\u91cf", "\u6240\u9700\u7269\u54c1\u4ee3\u7801", "\u6240\u9700\u7269\u54c1\u6570\u91cf" + "\u7269\u54c1\u5151\u6362\u6570\u91cf", "\u7269\u54c1\u5151\u6362\u4ee3\u7801", "\u6240\u9700\u7269\u54c1\u4ee3\u7801", "\u6240\u9700\u7269\u54c1\u6570\u91cf" } ) { Class[] columnTypes = new Class[] { @@ -126,8 +126,8 @@ public class ItemRecovery extends JPanel { /* ItemTable.addColumn(new TableColumn(0));*/ Start.ConfigItemJson.forEach((k, v) -> { - Integer ItemId = Integer.valueOf(k); - Integer NeedItemId = v.get(1); + Integer NeedItemId = Integer.valueOf(k); + Integer ItemId = v.get(1); Integer NeedCount = v.get(0); Integer GiveCount = v.get(2); diff --git a/src/gui/UI_LenheartUI/ItemRecovery.jfd b/src/gui/UI_LenheartUI/ItemRecovery.jfd index 1b13016..a218305 100644 --- a/src/gui/UI_LenheartUI/ItemRecovery.jfd +++ b/src/gui/UI_LenheartUI/ItemRecovery.jfd @@ -12,8 +12,8 @@ new FormModel { add( new FormComponent( "javax.swing.JTable" ) { name: "ItemTable" "model": new com.jformdesigner.model.SwingTableModel( new java.util.Vector, new java.util.Vector { - add( "兑换物品代码" ) add( "物品兑换数量" ) + add( "物品兑换代码" ) add( "所需物品代码" ) add( "所需物品数量" ) }, new java.util.Vector { diff --git a/src/handling/channel/handler/DamageParse.java b/src/handling/channel/handler/DamageParse.java index 92925f1..d676584 100644 --- a/src/handling/channel/handler/DamageParse.java +++ b/src/handling/channel/handler/DamageParse.java @@ -706,14 +706,14 @@ public class DamageParse { d = String.format("%-" + length + "s", d) ; } - int targetWidth = e.length()+6; // 目标显示宽度(半角字符数) + int targetWidth = e.length()+10; // 目标显示宽度(半角字符数) String f = ""; String[] strs = {a, b, c, d, e}; for (String s : strs) { if (s.isEmpty())continue; int currentWidth = getDisplayWidth(s); - int spacesNeeded = (currentWidth >= targetWidth) ? 0 : (targetWidth - currentWidth); + int spacesNeeded = (currentWidth >= targetWidth) ? 1 : (targetWidth - currentWidth); // 填充空格并截断‌:ml-citation{ref="2,3" data="citationList"} s= String.format("%s%" + spacesNeeded + "s", s, "").substring(0, Math.min(s.length() + spacesNeeded, s.length() + targetWidth)) ;