Skip to content

Commit 834935e

Browse files
committed
Fix #35
1 parent 340c8ca commit 834935e

File tree

5 files changed

+45
-4
lines changed

5 files changed

+45
-4
lines changed

dependency-reduced-pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<groupId>net.seanomik</groupId>
55
<artifactId>energeticstorage</artifactId>
66
<name>EnergeticStorage</name>
7-
<version>0.7.4-SNAPSHOT</version>
7+
<version>0.7.5-SNAPSHOT</version>
88
<build>
99
<defaultGoal>clean package</defaultGoal>
1010
<resources>

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>net.seanomik</groupId>
88
<artifactId>energeticstorage</artifactId>
9-
<version>0.7.4-SNAPSHOT</version>
9+
<version>0.7.5-SNAPSHOT</version>
1010
<packaging>jar</packaging>
1111

1212
<name>EnergeticStorage</name>

src/main/java/net/seanomik/energeticstorage/gui/ESTerminalGUI.java

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -452,15 +452,40 @@ public void onInventoryClick(InventoryClickEvent event) {
452452
}
453453

454454
break;
455-
case OUT_HALF:
456455
case SHIFT_OUT:
456+
if (Utils.isItemValid(clickedItem)) {
457+
ItemStack toRemoveStack = clickedItem.clone();
458+
459+
ItemStack addingItem = clickedItem.clone();
460+
addingItem = Utils.removeAmountFromLore(addingItem);
461+
462+
HashMap<Integer, ItemStack> leftOverItems = player.getInventory().addItem(addingItem);
463+
ItemStack leftOver = leftOverItems.get(0);
464+
465+
if (leftOver != null) {
466+
toRemoveStack.setAmount(toRemoveStack.getAmount() - leftOver.getAmount());
467+
}
468+
469+
openSystem.removeItem(toRemoveStack);
470+
471+
Bukkit.getScheduler().runTaskLater(EnergeticStorage.getPlugin(), () -> {
472+
initializeItems(player, openSystem);
473+
}, (long) 0.1);
474+
475+
476+
/*for (Map.Entry<Integer, ItemStack> item : leftOverItems.entrySet()) {
477+
System.out.println(item.getKey() + ", " + item.getValue());
478+
}*/
479+
}
480+
break;
481+
case OUT_HALF:
457482
case OUT:
458483
if (Utils.isItemValid(clickedItem)) {
459484
ItemStack takingItem = clickedItem.clone();
460485
takingItem.setAmount((clickType == ClickType.OUT_HALF && clickedItem.getAmount() / 2 > 0) ? clickedItem.getAmount() / 2 : clickedItem.getMaxStackSize());
461486

462487
takingItem = openSystem.removeItem(takingItem);
463-
// Remove the item from the search map if its in there
488+
// Remove the item from the search map if it's in there
464489
if (openSearches.containsKey(player.getUniqueId())) {
465490
for (ItemStack item : openSearches.get(player.getUniqueId()).keySet()) {
466491
ItemStack clone = item.clone();

src/main/java/net/seanomik/energeticstorage/objects/ESDrive.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,10 @@ public ItemStack removeItem(ItemStack item) {
191191
return item;
192192
}
193193

194+
public int getItemAmount(ItemStack item) {
195+
return (int) items.values().toArray()[Utils.indexOfSimilarItem(new ArrayList<>(items.keySet()), item)];
196+
}
197+
194198
private String exceptionMessage(Exception e) {
195199
return "An exception occurred in ESDrive (UUID:" + uuid + ", Exception: " + e.getMessage() + ")";
196200
}

src/main/java/net/seanomik/energeticstorage/objects/ESSystem.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,18 @@ public ItemStack removeItem(ItemStack item) {
219219
return drive.removeItem(item);
220220
}
221221

222+
public int getItemAmount(ItemStack item) {
223+
ESDrive drive = null;
224+
for (ESDrive esDrive : esDrives) {
225+
for (Map.Entry<ItemStack, Integer> entry : esDrive.getItems().entrySet()) {
226+
if (Utils.removeAmountFromLore(entry.getKey()).isSimilar(Utils.removeAmountFromLore(item))) {
227+
return entry.getValue();
228+
}
229+
}
230+
}
231+
232+
return 0;
233+
}
222234

223235
// @TODO: Implement (has not been tested)
224236
@NotNull

0 commit comments

Comments
 (0)