summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorilotterytea <iltsu@alright.party>2022-09-28 21:24:21 +0600
committerilotterytea <iltsu@alright.party>2022-09-28 21:24:21 +0600
commit79604a7f359eec931ebe1ff44994aae1134532ce (patch)
treed4a187c9c5f07f46d8b7c2df021414bac694cc05
parentf94063ba8dc3c0bf7e466f01dc2218f07fd90fc2 (diff)
наиболее данковый фикс (#11)
-rw-r--r--core/src/com/ilotterytea/maxoning/screens/GameScreen.java35
1 files changed, 19 insertions, 16 deletions
diff --git a/core/src/com/ilotterytea/maxoning/screens/GameScreen.java b/core/src/com/ilotterytea/maxoning/screens/GameScreen.java
index 6ed9240..e548b20 100644
--- a/core/src/com/ilotterytea/maxoning/screens/GameScreen.java
+++ b/core/src/com/ilotterytea/maxoning/screens/GameScreen.java
@@ -108,14 +108,7 @@ public class GameScreen implements Screen, InputProcessor {
}
// Put the items in the inventory table:
- for (Integer id : invItems.keySet()) {
- MaxonItem item = MaxonItemRegister.get(id);
-
- if (item != null) {
- InventoryAnimatedItem invItem = new InventoryAnimatedItem(item, skin, invItems.get(id));
- inventoryTable.add(invItem).size(64, 64).pad(5f);
- }
- }
+ reorderInvItems();
inventoryTable.align(Align.left|Align.top);
@@ -164,14 +157,7 @@ public class GameScreen implements Screen, InputProcessor {
}
// Put the items in the inventory table:
- for (Integer id : invItems.keySet()) {
- MaxonItem item = MaxonItemRegister.get(id);
-
- if (item != null) {
- InventoryAnimatedItem invItem = new InventoryAnimatedItem(item, skin, invItems.get(id));
- inventoryTable.add(invItem).size(64, 64).pad(5f);
- }
- }
+ reorderInvItems();
}
}
});
@@ -346,6 +332,23 @@ public class GameScreen implements Screen, InputProcessor {
stage.getViewport().update(width, height, true);
}
+ private void reorderInvItems() {
+ inventoryTable.clear();
+
+ for (int i = 0; i < invItems.keySet().size(); i++) {
+ MaxonItem item = MaxonItemRegister.get(i);
+
+ if (item != null) {
+ InventoryAnimatedItem invItem = new InventoryAnimatedItem(item, skin, invItems.get(i));
+ Cell<InventoryAnimatedItem> cell = inventoryTable.add(invItem).size(64, 64).pad(5f);
+
+ if (i != 0 && i % 5 == 0) {
+ cell.row();
+ }
+ }
+ }
+ }
+
private void genNewBgTiles(int width, int height) {
for (int i = 0; i < height / environmentAtlas.findRegion("tile").getRegionHeight() + 1; i++) {
bgTiles.add(i, new ArrayList<Sprite>());