Updated packet handle methods for new totem item methods.
This commit is contained in:
@ -6,7 +6,6 @@ import net.minecraft.entity.player.ServerPlayerEntity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.network.PacketBuffer;
|
||||
import net.minecraft.server.management.PlayerList;
|
||||
import net.minecraft.stats.Stats;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.text.StringTextComponent;
|
||||
import net.minecraft.util.text.TextFormatting;
|
||||
@ -46,12 +45,8 @@ public class ChangeTargetPacket {
|
||||
|
||||
TotemItem.setTargetIndex(totemStack, targetIndex);
|
||||
TotemItem.setTargetUUID(totemStack, target.getUUID());
|
||||
TotemItem.setTagTargetName(totemStack, target.getDisplayName().getString());
|
||||
if (TotemItem.isCostDynamic(totemStack)) {
|
||||
TotemItem.setTargetCost(totemStack, target.getStats().getValue(Stats.CUSTOM.get(Stats.DEATHS)));
|
||||
} else {
|
||||
TotemItem.setTargetCost(totemStack, TotemItem.getMaxCharge(totemStack));
|
||||
}
|
||||
TotemItem.setTargetName(totemStack, target.getDisplayName().getString());
|
||||
TotemItem.setTargetDeaths(totemStack, target);
|
||||
|
||||
sender.sendMessage(new StringTextComponent(TextFormatting.WHITE + "Now targetting " + TextFormatting.GRAY + target.getDisplayName().getString()), sender.getUUID());
|
||||
});
|
||||
|
@ -34,13 +34,10 @@ public class ChargeTotemPacket {
|
||||
|
||||
ItemStack totemStack = (packet.hand.equals(Hand.MAIN_HAND)) ? sender.getMainHandItem() : sender.getOffhandItem();
|
||||
ItemStack chargeStack = (packet.hand.equals(Hand.MAIN_HAND)) ? sender.getOffhandItem() : sender.getMainHandItem();
|
||||
int charge = TotemItem.getCharge(totemStack);
|
||||
|
||||
if (charge >= TotemItem.getMaxCharge(totemStack)) {
|
||||
return;
|
||||
}
|
||||
if (TotemItem.isTotemFull(totemStack)) { return; }
|
||||
|
||||
TotemItem.setCharge(totemStack, charge + 1);
|
||||
TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) + 1);
|
||||
chargeStack.setCount(chargeStack.getCount() - 1);
|
||||
});
|
||||
context.setPacketHandled(true);
|
||||
|
@ -47,10 +47,6 @@ public class ReviveTargetPacket {
|
||||
return;
|
||||
}
|
||||
|
||||
int charge = TotemItem.getCharge(totemStack);
|
||||
int targetCost = TotemItem.getTargetCost(totemStack);
|
||||
TotemItem.validateTargetCost(totemStack, target.getStats().getValue(Stats.CUSTOM.get(Stats.DEATHS)));
|
||||
|
||||
if (!target.isSpectator()) {
|
||||
sender.sendMessage(new StringTextComponent(TextFormatting.GRAY + target.getDisplayName().getString() + TextFormatting.WHITE + " is not dead!"), sender.getUUID());
|
||||
return;
|
||||
@ -61,14 +57,15 @@ public class ReviveTargetPacket {
|
||||
return;
|
||||
}
|
||||
|
||||
if (charge < targetCost && !TotemItem.canReviveMoreExpensiveTargets(totemStack)) {
|
||||
TotemItem.setTargetDeaths(totemStack, target);
|
||||
if (TotemItem.canTotemAffordTarget(totemStack)) {
|
||||
sender.sendMessage(new StringTextComponent(TextFormatting.WHITE + "Not enough charge!"), sender.getUUID());
|
||||
return;
|
||||
}
|
||||
|
||||
target.teleportTo(sender.getLevel(), sender.position().x, sender.position().y, sender.position().z, sender.yRot, sender.xRot);
|
||||
target.setGameMode(sender.getLevel().getServer().getDefaultGameType());
|
||||
TotemItem.setCharge(totemStack, charge - targetCost);
|
||||
TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) - TotemItem.getTargetCost(totemStack));
|
||||
totemStack.hurtAndBreak(1, sender, e -> e.broadcastBreakEvent(packet.hand));
|
||||
sender.sendMessage(new StringTextComponent(TextFormatting.WHITE + "Successfully revived " + TextFormatting.GRAY + target.getDisplayName().getString()), sender.getUUID());
|
||||
});
|
||||
|
Reference in New Issue
Block a user