Use count for level for equips

This commit is contained in:
memetrollsXD 2022-04-22 23:19:58 +02:00
parent 12c6020b71
commit a52eaf9bbc
2 changed files with 7 additions and 8 deletions

View File

@ -91,17 +91,16 @@ public final class GiveCommand implements CommandHandler {
this.item(targetPlayer, itemData, amount); this.item(targetPlayer, itemData, amount);
CommandHandler.sendMessage(sender, String.format("Given %s of %s to %s.", amount, item, target)); if (!itemData.isEquip()) CommandHandler.sendMessage(sender, String.format("Given %s of %s to %s.", amount, item, target));
else CommandHandler.sendMessage(sender, String.format("Given %s with level %s to %s", item, amount, target));
} }
private void item(GenshinPlayer player, ItemData itemData, int amount) { private void item(GenshinPlayer player, ItemData itemData, int amount) {
if (itemData.isEquip()) { if (itemData.isEquip()) {
List<GenshinItem> items = new LinkedList<>(); GenshinItem item = new GenshinItem(itemData);
for (int i = 0; i < amount; i++) { item.setLevel(amount);
items.add(new GenshinItem(itemData)); player.getInventory().addItem(item);
} player.sendPacket(new PacketItemAddHintNotify(item, ActionReason.SubfieldDrop));
player.getInventory().addItems(items);
player.sendPacket(new PacketItemAddHintNotify(items, ActionReason.SubfieldDrop));
} else { } else {
GenshinItem genshinItem = new GenshinItem(itemData); GenshinItem genshinItem = new GenshinItem(itemData);
genshinItem.setCount(amount); genshinItem.setCount(amount);

View File

@ -90,7 +90,7 @@ public class GenshinItem {
// Equip data // Equip data
if (getItemType() == ItemType.ITEM_WEAPON) { if (getItemType() == ItemType.ITEM_WEAPON) {
this.level = 1; this.level = this.count > 1 ? this.count : 1;
this.affixes = new ArrayList<>(2); this.affixes = new ArrayList<>(2);
if (getItemData().getSkillAffix() != null) { if (getItemData().getSkillAffix() != null) {
for (int skillAffix : getItemData().getSkillAffix()) { for (int skillAffix : getItemData().getSkillAffix()) {