From 8b590d109cc2a7bee1c65dfd711686cf2972e65a Mon Sep 17 00:00:00 2001 From: Collin Smith Date: Mon, 1 Apr 2019 20:49:48 -0700 Subject: [PATCH] Removed item groups from D2S --- core/src/com/riiablo/codec/D2S.java | 12 ------------ core/src/com/riiablo/panel/HirelingPanel.java | 8 +++++++- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/core/src/com/riiablo/codec/D2S.java b/core/src/com/riiablo/codec/D2S.java index 8c46396d..fb246f38 100644 --- a/core/src/com/riiablo/codec/D2S.java +++ b/core/src/com/riiablo/codec/D2S.java @@ -9,10 +9,8 @@ import com.badlogic.gdx.utils.GdxRuntimeException; import com.riiablo.Riiablo; import com.riiablo.codec.util.BitStream; import com.riiablo.entity.Player; -import com.riiablo.item.BodyLoc; import com.riiablo.item.Item; import com.riiablo.item.Location; -import com.riiablo.item.StoreLoc; import com.riiablo.util.BufferUtils; import com.riiablo.util.DebugUtils; @@ -23,7 +21,6 @@ import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.util.Arrays; import java.util.Date; -import java.util.EnumMap; public class D2S { private static final String TAG = "D2S"; @@ -674,8 +671,6 @@ public class D2S { public byte header[]; public short size; public Array items; - public EnumMap equipped; - public Array inventory; static ItemData obtain(ByteBuffer buffer, byte[] SECTION_FOOTER, boolean consumeFooter) { return new ItemData().read(buffer, SECTION_FOOTER, consumeFooter); @@ -686,8 +681,6 @@ public class D2S { size = buffer.getShort(); items = new Array<>(size); - equipped = new EnumMap<>(BodyLoc.class); - inventory = new Array<>(); for (int i = 0; i < size; i++) { ByteBuffer slice = BufferUtils.slice(buffer, SECTION_HEADER, true, SECTION_FOOTER, false); if (slice.remaining() <= 0) break; @@ -697,11 +690,6 @@ public class D2S { bitStream.skip(SECTION_HEADER.length * Byte.SIZE); Item item = Item.loadFromStream(bitStream); items.add(item); - if (item.location == Location.EQUIPPED && item.bodyLoc != BodyLoc.NONE) { - equipped.put(item.bodyLoc, item); - } else if (item.location == Location.STORED && item.storeLoc == StoreLoc.INVENTORY) { - inventory.add(item); - } for (int j = 0; j < item.socketsFilled; j++) { slice = BufferUtils.slice(buffer, SECTION_HEADER, true, SECTION_FOOTER, false); diff --git a/core/src/com/riiablo/panel/HirelingPanel.java b/core/src/com/riiablo/panel/HirelingPanel.java index dae8d0cd..6a9ddad0 100644 --- a/core/src/com/riiablo/panel/HirelingPanel.java +++ b/core/src/com/riiablo/panel/HirelingPanel.java @@ -31,6 +31,8 @@ import com.riiablo.widget.Label; import org.apache.commons.lang3.ArrayUtils; +import java.util.EnumMap; + public class HirelingPanel extends WidgetGroup implements Disposable { private static final String TAG = "HirelingPanel"; @@ -136,10 +138,14 @@ public class HirelingPanel extends WidgetGroup implements Disposable { head.yOffs = 1; addActor(head); + EnumMap equipped = new EnumMap<>(BodyLoc.class); + for (Item item : gameScreen.player.merc.items.items.items) { + equipped.put(item.bodyLoc, item); + } for (int i = BodyLocs.HEAD; i < BodyLocs.NUM_LOCS; i++) { if (bodyParts[i] == null) continue; bodyParts[i].slot = i; - bodyParts[i].item = gameScreen.player.merc.items.items.equipped.get(BodyLoc.valueOf(i)); + bodyParts[i].item = equipped.get(BodyLoc.valueOf(i)); bodyParts[i].setBodyPart(Riiablo.files.bodylocs.get(i).Code); }