Rewrote handle method to use new totem item class.
This commit is contained in:
@ -1,6 +1,6 @@
|
|||||||
package dev.micle.totemofreviving.network;
|
package dev.micle.totemofreviving.network;
|
||||||
|
|
||||||
import dev.micle.totemofreviving.item.StrawTotemItem;
|
import dev.micle.totemofreviving.item.TotemItem;
|
||||||
import net.minecraft.entity.player.ServerPlayerEntity;
|
import net.minecraft.entity.player.ServerPlayerEntity;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.network.PacketBuffer;
|
import net.minecraft.network.PacketBuffer;
|
||||||
@ -9,8 +9,6 @@ import net.minecraftforge.fml.network.NetworkEvent;
|
|||||||
|
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
import static dev.micle.totemofreviving.item.StrawTotemItem.TAG_CHARGE;
|
|
||||||
|
|
||||||
public class ChargeTotemPacket {
|
public class ChargeTotemPacket {
|
||||||
private final Hand hand;
|
private final Hand hand;
|
||||||
|
|
||||||
@ -33,21 +31,17 @@ public class ChargeTotemPacket {
|
|||||||
context.enqueueWork(() -> {
|
context.enqueueWork(() -> {
|
||||||
ServerPlayerEntity sender = context.getSender();
|
ServerPlayerEntity sender = context.getSender();
|
||||||
if (sender == null) { return; }
|
if (sender == null) { return; }
|
||||||
ItemStack totem = sender.getMainHandItem();
|
|
||||||
ItemStack charge = sender.getOffhandItem();
|
ItemStack totemStack = (packet.hand.equals(Hand.MAIN_HAND)) ? sender.getMainHandItem() : sender.getOffhandItem();
|
||||||
if (!packet.hand.equals(Hand.MAIN_HAND)) {
|
ItemStack chargeStack = (packet.hand.equals(Hand.MAIN_HAND)) ? sender.getOffhandItem() : sender.getMainHandItem();
|
||||||
totem = sender.getOffhandItem();
|
int charge = TotemItem.getCharge(totemStack);
|
||||||
charge = sender.getMainHandItem();
|
|
||||||
|
if (charge >= TotemItem.getMaxCharge(totemStack)) {
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (totem.getItem() instanceof StrawTotemItem) {
|
TotemItem.setCharge(totemStack, charge + 1);
|
||||||
if (totem.getOrCreateTag().getInt(TAG_CHARGE) >= StrawTotemItem.getMaxCharge()) {
|
chargeStack.setCount(chargeStack.getCount() - 1);
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
totem.getOrCreateTag().putInt(TAG_CHARGE, totem.getOrCreateTag().getInt(TAG_CHARGE) + 1);
|
|
||||||
charge.setCount(charge.getCount() - 1);
|
|
||||||
});
|
});
|
||||||
context.setPacketHandled(true);
|
context.setPacketHandled(true);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user