diff --git a/src/main/java/dev/micle/totemofreviving/network/NetworkManager.java b/src/main/java/dev/micle/totemofreviving/network/NetworkManager.java index c05582a..3bc4fb7 100644 --- a/src/main/java/dev/micle/totemofreviving/network/NetworkManager.java +++ b/src/main/java/dev/micle/totemofreviving/network/NetworkManager.java @@ -4,41 +4,39 @@ import dev.micle.totemofreviving.TotemOfReviving; import dev.micle.totemofreviving.network.client.ChangeTargetPacket; import dev.micle.totemofreviving.network.client.ChargeTotemPacket; import dev.micle.totemofreviving.network.client.ReviveTargetPacket; -import net.minecraftforge.network.NetworkRegistry; -import net.minecraftforge.network.simple.SimpleChannel; public class NetworkManager { - // Initialize variables - private static SimpleChannel channel; - - public static void init() { - // Create channel - channel = NetworkRegistry.ChannelBuilder.named(TotemOfReviving.createResourceLocation("network")) - .clientAcceptedVersions(v -> v.equals(TotemOfReviving.getVersion())) - .serverAcceptedVersions(v -> v.equals(TotemOfReviving.getVersion())) - .networkProtocolVersion(TotemOfReviving::getVersion) - .simpleChannel(); - - // Register packets - int id = 0; - channel.messageBuilder(ChangeTargetPacket.class, id++) - .encoder(ChangeTargetPacket::encode) - .decoder(ChangeTargetPacket::decode) - .consumerNetworkThread(ChangeTargetPacket::handle) - .add(); - channel.messageBuilder(ChargeTotemPacket.class, id++) - .encoder(ChargeTotemPacket::encode) - .decoder(ChargeTotemPacket::decode) - .consumerNetworkThread(ChargeTotemPacket::handle) - .add(); - channel.messageBuilder(ReviveTargetPacket.class, id++) - .encoder(ReviveTargetPacket::encode) - .decoder(ReviveTargetPacket::decode) - .consumerNetworkThread(ReviveTargetPacket::handle) - .add(); - } - - public static SimpleChannel getChannel() { - return channel; - } +// // Initialize variables +// private static SimpleChannel channel; +// +// public static void init() { +// // Create channel +// channel = NetworkRegistry.ChannelBuilder.named(TotemOfReviving.createResourceLocation("network")) +// .clientAcceptedVersions(v -> v.equals(TotemOfReviving.getVersion())) +// .serverAcceptedVersions(v -> v.equals(TotemOfReviving.getVersion())) +// .networkProtocolVersion(TotemOfReviving::getVersion) +// .simpleChannel(); +// +// // Register packets +// int id = 0; +// channel.messageBuilder(ChangeTargetPacket.class, id++) +// .encoder(ChangeTargetPacket::encode) +// .decoder(ChangeTargetPacket::decode) +// .consumerNetworkThread(ChangeTargetPacket::handle) +// .add(); +// channel.messageBuilder(ChargeTotemPacket.class, id++) +// .encoder(ChargeTotemPacket::encode) +// .decoder(ChargeTotemPacket::decode) +// .consumerNetworkThread(ChargeTotemPacket::handle) +// .add(); +// channel.messageBuilder(ReviveTargetPacket.class, id++) +// .encoder(ReviveTargetPacket::encode) +// .decoder(ReviveTargetPacket::decode) +// .consumerNetworkThread(ReviveTargetPacket::handle) +// .add(); +// } +// +// public static SimpleChannel getChannel() { +// return channel; +// } } diff --git a/src/main/java/dev/micle/totemofreviving/network/client/ChangeTargetPacket.java b/src/main/java/dev/micle/totemofreviving/network/client/ChangeTargetPacket.java index 1651d68..06e9be9 100644 --- a/src/main/java/dev/micle/totemofreviving/network/client/ChangeTargetPacket.java +++ b/src/main/java/dev/micle/totemofreviving/network/client/ChangeTargetPacket.java @@ -9,45 +9,44 @@ import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.players.PlayerList; import net.minecraft.world.InteractionHand; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class ChangeTargetPacket { - private final InteractionHand hand; - - public ChangeTargetPacket(final InteractionHand hand) { - this.hand = hand; - } - - public static void encode(final ChangeTargetPacket packet, final FriendlyByteBuf buffer) { - buffer.writeEnum(packet.hand); - } - - public static ChangeTargetPacket decode(final FriendlyByteBuf buffer) { - return new ChangeTargetPacket(buffer.readEnum(InteractionHand.class)); - } - - public static void handle(final ChangeTargetPacket packet, final Supplier contextSupplier) { - final NetworkEvent.Context context = contextSupplier.get(); - context.enqueueWork(() -> { - ServerPlayer sender = context.getSender(); - if (sender == null) { return; } - - ItemStack totemStack = sender.getItemInHand(packet.hand); - PlayerList playerList = TotemOfReviving.getProxy().getServer().getPlayerList(); - int targetIndex = TotemItem.getTargetIndex(totemStack) + 1; - - if (targetIndex > playerList.getPlayerCount()-1) { targetIndex = 0; } - ServerPlayer target = playerList.getPlayers().get(targetIndex); - - TotemItem.setTargetIndex(totemStack, targetIndex); - TotemItem.setTargetUUID(totemStack, target.getUUID()); - TotemItem.setTargetName(totemStack, target.getDisplayName().getString()); - TotemItem.setTargetDeaths(totemStack, target); - - sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Now targetting " + ChatFormatting.GRAY + target.getDisplayName().getString() + ".")); - }); - context.setPacketHandled(true); - } +// private final InteractionHand hand; +// +// public ChangeTargetPacket(final InteractionHand hand) { +// this.hand = hand; +// } +// +// public static void encode(final ChangeTargetPacket packet, final FriendlyByteBuf buffer) { +// buffer.writeEnum(packet.hand); +// } +// +// public static ChangeTargetPacket decode(final FriendlyByteBuf buffer) { +// return new ChangeTargetPacket(buffer.readEnum(InteractionHand.class)); +// } +// +// public static void handle(final ChangeTargetPacket packet, final Supplier contextSupplier) { +// final NetworkEvent.Context context = contextSupplier.get(); +// context.enqueueWork(() -> { +// ServerPlayer sender = context.getSender(); +// if (sender == null) { return; } +// +// ItemStack totemStack = sender.getItemInHand(packet.hand); +// PlayerList playerList = TotemOfReviving.getProxy().getServer().getPlayerList(); +// int targetIndex = TotemItem.getTargetIndex(totemStack) + 1; +// +// if (targetIndex > playerList.getPlayerCount()-1) { targetIndex = 0; } +// ServerPlayer target = playerList.getPlayers().get(targetIndex); +// +// TotemItem.setTargetIndex(totemStack, targetIndex); +// TotemItem.setTargetUUID(totemStack, target.getUUID()); +// TotemItem.setTargetName(totemStack, target.getDisplayName().getString()); +// TotemItem.setTargetDeaths(totemStack, target); +// +// sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Now targetting " + ChatFormatting.GRAY + target.getDisplayName().getString() + ".")); +// }); +// context.setPacketHandled(true); +// } } diff --git a/src/main/java/dev/micle/totemofreviving/network/client/ChargeTotemPacket.java b/src/main/java/dev/micle/totemofreviving/network/client/ChargeTotemPacket.java index 6abb968..6cb6922 100644 --- a/src/main/java/dev/micle/totemofreviving/network/client/ChargeTotemPacket.java +++ b/src/main/java/dev/micle/totemofreviving/network/client/ChargeTotemPacket.java @@ -5,39 +5,38 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class ChargeTotemPacket { - private final InteractionHand hand; - - public ChargeTotemPacket(final InteractionHand hand) { - this.hand = hand; - } - - public static void encode(final ChargeTotemPacket packet, final FriendlyByteBuf buffer) { - buffer.writeEnum(packet.hand); - } - - public static ChargeTotemPacket decode(final FriendlyByteBuf buffer) { - return new ChargeTotemPacket(buffer.readEnum(InteractionHand.class)); - } - - public static void handle(final ChargeTotemPacket packet, final Supplier contextSupplier) { - final NetworkEvent.Context context = contextSupplier.get(); - context.enqueueWork(() -> { - ServerPlayer sender = context.getSender(); - if (sender == null) { return; } - - ItemStack totemStack = (packet.hand.equals(InteractionHand.MAIN_HAND)) ? sender.getMainHandItem() : sender.getOffhandItem(); - ItemStack chargeStack = (packet.hand.equals(InteractionHand.MAIN_HAND)) ? sender.getOffhandItem() : sender.getMainHandItem(); - - if (TotemItem.isTotemFull(totemStack)) { return; } - - TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) + 1); - chargeStack.setCount(chargeStack.getCount() - 1); - }); - context.setPacketHandled(true); - } +// private final InteractionHand hand; +// +// public ChargeTotemPacket(final InteractionHand hand) { +// this.hand = hand; +// } +// +// public static void encode(final ChargeTotemPacket packet, final FriendlyByteBuf buffer) { +// buffer.writeEnum(packet.hand); +// } +// +// public static ChargeTotemPacket decode(final FriendlyByteBuf buffer) { +// return new ChargeTotemPacket(buffer.readEnum(InteractionHand.class)); +// } +// +// public static void handle(final ChargeTotemPacket packet, final Supplier contextSupplier) { +// final NetworkEvent.Context context = contextSupplier.get(); +// context.enqueueWork(() -> { +// ServerPlayer sender = context.getSender(); +// if (sender == null) { return; } +// +// ItemStack totemStack = (packet.hand.equals(InteractionHand.MAIN_HAND)) ? sender.getMainHandItem() : sender.getOffhandItem(); +// ItemStack chargeStack = (packet.hand.equals(InteractionHand.MAIN_HAND)) ? sender.getOffhandItem() : sender.getMainHandItem(); +// +// if (TotemItem.isTotemFull(totemStack)) { return; } +// +// TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) + 1); +// chargeStack.setCount(chargeStack.getCount() - 1); +// }); +// context.setPacketHandled(true); +// } } diff --git a/src/main/java/dev/micle/totemofreviving/network/client/ReviveTargetPacket.java b/src/main/java/dev/micle/totemofreviving/network/client/ReviveTargetPacket.java index 1bb5f5b..3f67f90 100644 --- a/src/main/java/dev/micle/totemofreviving/network/client/ReviveTargetPacket.java +++ b/src/main/java/dev/micle/totemofreviving/network/client/ReviveTargetPacket.java @@ -8,64 +8,63 @@ import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.item.ItemStack; -import net.minecraftforge.network.NetworkEvent; import java.util.function.Supplier; public class ReviveTargetPacket { - private final InteractionHand hand; - - public ReviveTargetPacket(final InteractionHand hand) { - this.hand = hand; - } - - public static void encode(final ReviveTargetPacket packet, final FriendlyByteBuf buffer) { - buffer.writeEnum(packet.hand); - } - - public static ReviveTargetPacket decode(final FriendlyByteBuf buffer) { - return new ReviveTargetPacket(buffer.readEnum(InteractionHand.class)); - } - - public static void handle(final ReviveTargetPacket packet, final Supplier contextSupplier) { - final NetworkEvent.Context context = contextSupplier.get(); - context.enqueueWork(() -> { - ServerPlayer sender = context.getSender(); - if (sender == null) { return; } - - ItemStack totemStack = sender.getItemInHand(packet.hand); - ServerPlayer target; - - try { - target = TotemOfReviving.getProxy().getServer().getPlayerList().getPlayer(TotemItem.getTargetUUID(totemStack)); - if (target == null) { throw new NullPointerException("Target is null!"); } - } catch (NullPointerException exception) { - sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Unable to find player!")); - return; - } - - if (!target.isSpectator()) { - sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is not dead!")); - return; - } - - if (!target.serverLevel().equals(sender.serverLevel()) && !TotemItem.canReviveAcrossDimensions(totemStack)) { - sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is in a different dimension!")); - return; - } - - TotemItem.setTargetDeaths(totemStack, target); - if (!TotemItem.canTotemAffordTarget(totemStack)) { - sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Not enough charge!")); - return; - } - - target.teleportTo(sender.serverLevel(), sender.position().x, sender.position().y, sender.position().z, sender.getYRot(), sender.getXRot()); - target.setGameMode(sender.serverLevel().getServer().getDefaultGameType()); - TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) - TotemItem.getTargetCost(totemStack)); - totemStack.hurtAndBreak(1, sender, e -> e.broadcastBreakEvent(packet.hand)); - sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Successfully revived " + ChatFormatting.GRAY + target.getDisplayName().getString() + "!")); - }); - context.setPacketHandled(true); - } +// private final InteractionHand hand; +// +// public ReviveTargetPacket(final InteractionHand hand) { +// this.hand = hand; +// } +// +// public static void encode(final ReviveTargetPacket packet, final FriendlyByteBuf buffer) { +// buffer.writeEnum(packet.hand); +// } +// +// public static ReviveTargetPacket decode(final FriendlyByteBuf buffer) { +// return new ReviveTargetPacket(buffer.readEnum(InteractionHand.class)); +// } +// +// public static void handle(final ReviveTargetPacket packet, final Supplier contextSupplier) { +// final NetworkEvent.Context context = contextSupplier.get(); +// context.enqueueWork(() -> { +// ServerPlayer sender = context.getSender(); +// if (sender == null) { return; } +// +// ItemStack totemStack = sender.getItemInHand(packet.hand); +// ServerPlayer target; +// +// try { +// target = TotemOfReviving.getProxy().getServer().getPlayerList().getPlayer(TotemItem.getTargetUUID(totemStack)); +// if (target == null) { throw new NullPointerException("Target is null!"); } +// } catch (NullPointerException exception) { +// sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Unable to find player!")); +// return; +// } +// +// if (!target.isSpectator()) { +// sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is not dead!")); +// return; +// } +// +// if (!target.serverLevel().equals(sender.serverLevel()) && !TotemItem.canReviveAcrossDimensions(totemStack)) { +// sender.sendSystemMessage(Component.literal(ChatFormatting.GRAY + target.getDisplayName().getString() + ChatFormatting.WHITE + " is in a different dimension!")); +// return; +// } +// +// TotemItem.setTargetDeaths(totemStack, target); +// if (!TotemItem.canTotemAffordTarget(totemStack)) { +// sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Not enough charge!")); +// return; +// } +// +// target.teleportTo(sender.serverLevel(), sender.position().x, sender.position().y, sender.position().z, sender.getYRot(), sender.getXRot()); +// target.setGameMode(sender.serverLevel().getServer().getDefaultGameType()); +// TotemItem.setCharge(totemStack, TotemItem.getCharge(totemStack) - TotemItem.getTargetCost(totemStack)); +// totemStack.hurtAndBreak(1, sender, e -> e.broadcastBreakEvent(packet.hand)); +// sender.sendSystemMessage(Component.literal(ChatFormatting.WHITE + "Successfully revived " + ChatFormatting.GRAY + target.getDisplayName().getString() + "!")); +// }); +// context.setPacketHandled(true); +// } } diff --git a/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java b/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java index a73b6a5..4fdeb42 100644 --- a/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java +++ b/src/main/java/dev/micle/totemofreviving/proxy/Proxy.java @@ -26,7 +26,7 @@ public class Proxy implements IProxy { // Initialize setup Registration.register(modEventBus); Config.init(modContainer); - NetworkManager.init(); + //NetworkManager.init(); // Register mod event bus listeners modEventBus.addListener(Proxy::setup);