Skip to content

Commit 5891e02

Browse files
committed
Add ability for quantum ring to act as a quasi-lappack.
1 parent a90fa2c commit 5891e02

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

makmods/levelstorage/item/ItemQuantumRing.java

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -128,23 +128,35 @@ public EnumRarity getRarity(ItemStack stack) {
128128
return EnumRarity.epic;
129129
}
130130

131-
public void chargeItem(ItemStack stack, ItemStack ring) {
131+
public boolean chargeItem(ItemStack stack, ItemStack ring) {
132132
if (stack == null)
133-
return;
133+
return false;
134134
if (!(stack.getItem() instanceof IElectricItem))
135-
return;
135+
return false;
136136
IElectricItem item = (IElectricItem) stack.getItem();
137137
if (!ElectricItem.manager.canUse(ring, item.getTransferLimit(stack)))
138-
return;
139-
ElectricItem.manager.discharge(ring, ElectricItem.manager.charge(stack,
140-
item.getTransferLimit(stack), 4, false, false), 4, true, false);
138+
return false;
139+
int chargeSt = ElectricItem.manager.charge(stack,
140+
item.getTransferLimit(stack), 4, false, false);
141+
int dischSt = ElectricItem.manager.discharge(ring, chargeSt, 4, true, false);
142+
return chargeSt > 0 && dischSt > 0;
141143
}
142144

143145
public void onUpdate(ItemStack itemStack, World world, Entity par3Entity,
144146
int par4, boolean par5) {
145147
if (!(par3Entity instanceof EntityPlayer))
146148
return;
147149
EntityPlayer player = (EntityPlayer) par3Entity;
150+
InventoryPlayer inv = player.inventory;
151+
boolean didSomething = false;
152+
for (ItemStack device : inv.armorInventory)
153+
if (chargeItem(device, itemStack))
154+
didSomething = true;
155+
if (!didSomething) {
156+
for (ItemStack device : inv.mainInventory)
157+
if (chargeItem(device, itemStack))
158+
didSomething = true;
159+
}
148160
ArmorFunctions.extinguish(player, world);
149161
ArmorFunctions.fly(ItemArmorLevitationBoots.FLYING_ENERGY_PER_TICK,
150162
player, itemStack, world);

0 commit comments

Comments
 (0)