diff --git a/src/main/java/net/splatcraft/forge/blocks/CrateBlock.java b/src/main/java/net/splatcraft/forge/blocks/CrateBlock.java index d3287b020..973cb51dd 100644 --- a/src/main/java/net/splatcraft/forge/blocks/CrateBlock.java +++ b/src/main/java/net/splatcraft/forge/blocks/CrateBlock.java @@ -65,7 +65,7 @@ public CrateBlock(boolean isSunken) public static List generateLoot(Level level, CrateTileEntity crate, BlockState state, float luckValue) { - if (level == null || level.isClientSide) + if (level == null || level.isClientSide()) return Collections.emptyList(); BlockPos pos = crate.getBlockPos(); diff --git a/src/main/java/net/splatcraft/forge/blocks/InkVatBlock.java b/src/main/java/net/splatcraft/forge/blocks/InkVatBlock.java index ded2f5619..1bca63fdc 100644 --- a/src/main/java/net/splatcraft/forge/blocks/InkVatBlock.java +++ b/src/main/java/net/splatcraft/forge/blocks/InkVatBlock.java @@ -12,7 +12,12 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.context.BlockPlaceContext; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.*; +import net.minecraft.world.level.block.BaseEntityBlock; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.HorizontalDirectionalBlock; +import net.minecraft.world.level.block.Mirror; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.Rotation; import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.entity.BlockEntityTicker; import net.minecraft.world.level.block.entity.BlockEntityType; @@ -61,7 +66,7 @@ public BlockState getStateForPlacement(BlockPlaceContext context) @Override public @NotNull InteractionResult use(@NotNull BlockState state, Level levelIn, @NotNull BlockPos pos, @NotNull Player player, @NotNull InteractionHand handIn, @NotNull BlockHitResult hit) { - if (levelIn.isClientSide) + if (levelIn.isClientSide()) { return InteractionResult.SUCCESS; } diff --git a/src/main/java/net/splatcraft/forge/blocks/RemotePedestalBlock.java b/src/main/java/net/splatcraft/forge/blocks/RemotePedestalBlock.java index 5819dfe67..492722a15 100644 --- a/src/main/java/net/splatcraft/forge/blocks/RemotePedestalBlock.java +++ b/src/main/java/net/splatcraft/forge/blocks/RemotePedestalBlock.java @@ -80,14 +80,14 @@ protected void createBlockStateDefinition(StateDefinition.Builder getRespawnPosition(BlockState state, EntityType type, L } @Override - public ItemStack getCloneItemStack(BlockGetter level, BlockPos pos, BlockState state) + public @NotNull ItemStack getCloneItemStack(@NotNull BlockGetter level, @NotNull BlockPos pos, @NotNull BlockState state) { BlockPos parentPos = getParentPos(state, pos); return parent.getCloneItemStack(level, parentPos, level.getBlockState(parentPos)); } @Override - public RenderShape getRenderShape(BlockState state) { + public @NotNull RenderShape getRenderShape(@NotNull BlockState state) { return RenderShape.INVISIBLE; } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/blocks/SplatSwitchBlock.java b/src/main/java/net/splatcraft/forge/blocks/SplatSwitchBlock.java index d607fc926..845c6291e 100644 --- a/src/main/java/net/splatcraft/forge/blocks/SplatSwitchBlock.java +++ b/src/main/java/net/splatcraft/forge/blocks/SplatSwitchBlock.java @@ -19,7 +19,7 @@ import net.minecraft.world.level.block.state.properties.DirectionProperty; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; -import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.material.MapColor; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.VoxelShape; import net.splatcraft.forge.registries.SplatcraftBlocks; @@ -28,8 +28,10 @@ import net.splatcraft.forge.tileentities.InkColorTileEntity; import net.splatcraft.forge.util.BlockInkedResult; import net.splatcraft.forge.util.InkBlockUtils; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +@SuppressWarnings("deprecation") public class SplatSwitchBlock extends Block implements IColoredBlock, SimpleWaterloggedBlock, EntityBlock { private static final VoxelShape[] SHAPES = new VoxelShape[] @@ -48,7 +50,7 @@ public class SplatSwitchBlock extends Block implements IColoredBlock, SimpleWate public SplatSwitchBlock() { - super((Properties.of(Material.METAL).requiresCorrectToolForDrops().strength(5.0F).sound(SoundType.METAL).noOcclusion())); + super((Properties.of().mapColor(MapColor.METAL).requiresCorrectToolForDrops().strength(5.0F).sound(SoundType.METAL).noOcclusion())); registerDefaultState(defaultBlockState().setValue(FACING, Direction.UP).setValue(POWERED, false)); SplatcraftBlocks.inkColoredBlocks.add(this); @@ -60,7 +62,7 @@ protected void createBlockStateDefinition(StateDefinition.Builder false).noOcclusion()); } - public VoxelShape getVisualShape(BlockState p_48735_, BlockGetter p_48736_, BlockPos p_48737_, CollisionContext p_48738_) { + public @NotNull VoxelShape getVisualShape(@NotNull BlockState p_48735_, @NotNull BlockGetter p_48736_, @NotNull BlockPos p_48737_, @NotNull CollisionContext p_48738_) { return Shapes.empty(); } - public float getShadeBrightness(BlockState p_48731_, BlockGetter p_48732_, BlockPos p_48733_) { + public float getShadeBrightness(@NotNull BlockState p_48731_, @NotNull BlockGetter p_48732_, @NotNull BlockPos p_48733_) { return 1.0F; } - public boolean propagatesSkylightDown(BlockState p_48740_, BlockGetter p_48741_, BlockPos p_48742_) { + public boolean propagatesSkylightDown(@NotNull BlockState p_48740_, @NotNull BlockGetter p_48741_, @NotNull BlockPos p_48742_) { return true; } @Override - public boolean useShapeForLightOcclusion(BlockState p_60576_) { + public boolean useShapeForLightOcclusion(@NotNull BlockState p_60576_) { return true; } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/blocks/WeaponWorkbenchBlock.java b/src/main/java/net/splatcraft/forge/blocks/WeaponWorkbenchBlock.java index cae09a5ad..9be9b780a 100644 --- a/src/main/java/net/splatcraft/forge/blocks/WeaponWorkbenchBlock.java +++ b/src/main/java/net/splatcraft/forge/blocks/WeaponWorkbenchBlock.java @@ -2,8 +2,8 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; +import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; import net.minecraft.world.MenuProvider; @@ -21,17 +21,20 @@ import net.minecraft.world.level.block.state.properties.BlockStateProperties; import net.minecraft.world.level.block.state.properties.BooleanProperty; import net.minecraft.world.level.block.state.properties.EnumProperty; +import net.minecraft.world.level.block.state.properties.NoteBlockInstrument; import net.minecraft.world.level.material.FluidState; import net.minecraft.world.level.material.Fluids; -import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.material.MapColor; import net.minecraft.world.phys.AABB; import net.minecraft.world.phys.BlockHitResult; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.VoxelShape; import net.splatcraft.forge.tileentities.container.WeaponWorkbenchContainer; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +@SuppressWarnings("deprecation") public class WeaponWorkbenchBlock extends HorizontalDirectionalBlock implements SimpleWaterloggedBlock { @@ -45,9 +48,9 @@ public class WeaponWorkbenchBlock extends HorizontalDirectionalBlock implements public static final VoxelShape[] SHAPES = createVoxelShapes(BOTTOM_LEFT, BOTTOM_RIGHT, BASE, DETAIL, HANDLE); private static final MutableComponent CONTAINER_NAME = Component.translatable("container.ammo_knights_workbench"); - public WeaponWorkbenchBlock(String name) + public WeaponWorkbenchBlock() { - super(Properties.of(Material.STONE).strength(2.0f).requiresCorrectToolForDrops()); + super(Properties.of().mapColor(MapColor.STONE).instrument(NoteBlockInstrument.BASEDRUM).strength(2.0f).requiresCorrectToolForDrops()); registerDefaultState(defaultBlockState().setValue(FACING, Direction.NORTH).setValue(WATERLOGGED, false)); } @@ -55,16 +58,12 @@ protected static VoxelShape modifyShapeForDirection(Direction facing, VoxelShape { AABB bb = shape.bounds(); - switch (facing) - { - case EAST: - return Shapes.create(new AABB(1 - bb.minZ, bb.minY, 1 - bb.minX, 1 - bb.maxZ, bb.maxY, 1 - bb.maxX)); - case SOUTH: - return Shapes.create(new AABB(1 - bb.maxX, bb.minY, 1 - bb.maxZ, 1 - bb.minX, bb.maxY, 1 - bb.minZ)); - case WEST: - return Shapes.create(new AABB(bb.minZ, bb.minY, bb.minX, bb.maxZ, bb.maxY, bb.maxX)); - } - return shape; + return switch (facing) { + case EAST -> Shapes.create(new AABB(1 - bb.minZ, bb.minY, 1 - bb.minX, 1 - bb.maxZ, bb.maxY, 1 - bb.maxX)); + case SOUTH -> Shapes.create(new AABB(1 - bb.maxX, bb.minY, 1 - bb.maxZ, 1 - bb.minX, bb.maxY, 1 - bb.minZ)); + case WEST -> Shapes.create(new AABB(bb.minZ, bb.minY, bb.minX, bb.maxZ, bb.maxY, bb.maxX)); + default -> shape; + }; } public static VoxelShape[] createVoxelShapes(VoxelShape... shapes) @@ -85,9 +84,9 @@ public static VoxelShape[] createVoxelShapes(VoxelShape... shapes) } @Override - public InteractionResult use(BlockState state, Level levelIn, BlockPos pos, Player player, InteractionHand handIn, BlockHitResult hit) + public @NotNull InteractionResult use(@NotNull BlockState state, Level levelIn, @NotNull BlockPos pos, @NotNull Player player, @NotNull InteractionHand handIn, @NotNull BlockHitResult hit) { - if (levelIn.isClientSide) + if (levelIn.isClientSide()) { return InteractionResult.SUCCESS; } @@ -97,7 +96,7 @@ public InteractionResult use(BlockState state, Level levelIn, BlockPos pos, Play } @Override - public MenuProvider getMenuProvider(BlockState state, Level levelIn, BlockPos pos) + public MenuProvider getMenuProvider(@NotNull BlockState state, @NotNull Level levelIn, @NotNull BlockPos pos) { return new SimpleMenuProvider((id, inventory, player) -> new WeaponWorkbenchContainer(inventory, ContainerLevelAccess.create(levelIn, pos), id), CONTAINER_NAME); } @@ -118,13 +117,13 @@ public BlockState getStateForPlacement(BlockPlaceContext context) } @Override - public FluidState getFluidState(BlockState state) + public @NotNull FluidState getFluidState(BlockState state) { return state.getValue(WATERLOGGED) ? Fluids.WATER.getSource(false) : super.getFluidState(state); } @Override - public VoxelShape getShape(BlockState state, BlockGetter levelIn, BlockPos pos, CollisionContext context) + public @NotNull VoxelShape getShape(BlockState state, @NotNull BlockGetter levelIn, @NotNull BlockPos pos, @NotNull CollisionContext context) { return SHAPES[state.getValue(FACING).get2DDataValue()]; } diff --git a/src/main/java/net/splatcraft/forge/client/SplatcraftItemRenderer.java b/src/main/java/net/splatcraft/forge/client/SplatcraftItemRenderer.java index aec91208c..114eac8b7 100644 --- a/src/main/java/net/splatcraft/forge/client/SplatcraftItemRenderer.java +++ b/src/main/java/net/splatcraft/forge/client/SplatcraftItemRenderer.java @@ -7,6 +7,7 @@ import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.splatcraft.forge.client.handlers.RendererHandler; import net.splatcraft.forge.items.weapons.SubWeaponItem; @@ -20,10 +21,10 @@ public SplatcraftItemRenderer() super(Minecraft.getInstance().getBlockEntityRenderDispatcher(), Minecraft.getInstance().getEntityModels()); } - @Override - public void renderByItem(ItemStack stack, ItemTransforms.TransformType transformType, PoseStack poseStack, MultiBufferSource bufferSource, int packedLight, int packedOverlay) - { - if(!RendererHandler.renderSubWeapon(stack, transformType, poseStack, bufferSource, packedLight, Minecraft.getInstance().getDeltaFrameTime())) - super.renderByItem(stack, transformType, poseStack, bufferSource, packedLight, packedOverlay); - } -} + @Override + public void renderByItem(ItemStack pStack, ItemDisplayContext pDisplayContext, PoseStack pPoseStack, MultiBufferSource pBuffer, int pPackedLight, int pPackedOverlay) { + if (!RendererHandler.renderSubWeapon(pStack, pDisplayContext, pPoseStack, pBuffer, pPackedLight, pPackedOverlay)) { + super.renderByItem(pStack, pDisplayContext, pPoseStack, pBuffer, pPackedLight, pPackedOverlay); + } + } +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/client/gui/WeaponWorkbenchScreen.java b/src/main/java/net/splatcraft/forge/client/gui/WeaponWorkbenchScreen.java index aeee965af..a3bd76712 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/WeaponWorkbenchScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/WeaponWorkbenchScreen.java @@ -4,12 +4,12 @@ import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.Tesselator; -import com.mojang.math.Quaternion; +import java.awt.TextComponent; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen; import net.minecraft.client.renderer.MultiBufferSource; -import net.minecraft.client.renderer.block.model.ItemTransforms; import net.minecraft.client.renderer.entity.ItemRenderer; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.client.renderer.texture.TextureManager; @@ -23,6 +23,7 @@ import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.item.crafting.Ingredient; @@ -40,6 +41,7 @@ import java.util.ArrayList; import java.util.List; +import org.joml.Quaternionf; public class WeaponWorkbenchScreen extends AbstractContainerScreen { @@ -68,18 +70,16 @@ public WeaponWorkbenchScreen(WeaponWorkbenchContainer screenContainer, Inventory } @Override - public void render(PoseStack matrixStack, int mouseX, int mouseY, float partialTicks) - { - renderBackground(matrixStack); - super.render(matrixStack, mouseX, mouseY, partialTicks); - renderTooltip(matrixStack, mouseX, mouseY); + public void render(GuiGraphics pGuiGraphics, int pMouseX, int pMouseY, float pPartialTick) { + renderBackground(pGuiGraphics); + super.render(pGuiGraphics, pMouseX, pMouseY, pPartialTick); + renderTooltip(pGuiGraphics, pMouseX, pMouseY); tickTime++; } @Override - protected void renderBg(PoseStack matrixStack, float partialTicks, int mouseX, int mouseY) - { + protected void renderBg(GuiGraphics guiGraphics, float v, int i, int i1) { RenderSystem.setShaderColor(1, 1, 1, 1); RenderSystem.setShaderTexture(0, TEXTURES); if (minecraft != null) @@ -89,7 +89,7 @@ protected void renderBg(PoseStack matrixStack, float partialTicks, int mouseX, i blit(matrixStack, x, y, 0, 0, imageWidth, imageHeight); - Level level = player.level; + Level level = player.level(); List tabList = level.getRecipeManager().getRecipesFor(SplatcraftRecipeTypes.WEAPON_STATION_TAB_TYPE, inventory, level); tabList.removeIf(tab -> tab.hidden && tab.getTabRecipes(level, player).isEmpty()); tabList.sort(WeaponWorkbenchTab::compareTo); @@ -126,9 +126,7 @@ private void drawRecipeStack(Level level, PoseStack matrixStack, List tabList = level.getRecipeManager().getRecipesFor(SplatcraftRecipeTypes.WEAPON_STATION_TAB_TYPE, inventory, level); tabList.sort(WeaponWorkbenchTab::compareTo); tabList.removeIf(tab -> tab.hidden && tab.getTabRecipes(level, player).isEmpty()); @@ -461,7 +459,7 @@ public boolean mouseReleased(double mouseX, double mouseY, int button) @Override public boolean mouseClicked(double mouseX, double mouseY, int button) { - Level level = player.level; + Level level = player.level(); List tabList = level.getRecipeManager().getRecipesFor(SplatcraftRecipeTypes.WEAPON_STATION_TAB_TYPE, inventory, level); tabList.sort(WeaponWorkbenchTab::compareTo); tabList.removeIf(tab -> tab.hidden && tab.getTabRecipes(level, player).isEmpty()); diff --git a/src/main/java/net/splatcraft/forge/client/gui/stagepad/AbstractStagePadScreen.java b/src/main/java/net/splatcraft/forge/client/gui/stagepad/AbstractStagePadScreen.java index 96a85634a..ce1e3d7b6 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/stagepad/AbstractStagePadScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/stagepad/AbstractStagePadScreen.java @@ -2,6 +2,9 @@ import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.vertex.PoseStack; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Optional; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.Button; @@ -9,7 +12,6 @@ import net.minecraft.client.gui.screens.Screen; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; @@ -19,10 +21,6 @@ import net.splatcraft.forge.util.ColorUtils; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Optional; - public abstract class AbstractStagePadScreen extends Screen { protected int imageWidth = 210; diff --git a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageActionsScreen.java b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageActionsScreen.java index a337b6981..4f1f0cdfc 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageActionsScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageActionsScreen.java @@ -7,7 +7,7 @@ import net.minecraft.client.gui.screens.Screen; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.splatcraft.forge.Splatcraft; import net.splatcraft.forge.data.Stage; diff --git a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageCreationScreen.java b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageCreationScreen.java index 3cb4b04cb..43feb59ad 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageCreationScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageCreationScreen.java @@ -9,7 +9,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.splatcraft.forge.Splatcraft; import net.splatcraft.forge.data.Stage; diff --git a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSelectionScreen.java b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSelectionScreen.java index 1b3892606..9ae60e58c 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSelectionScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSelectionScreen.java @@ -8,7 +8,7 @@ import net.minecraft.client.gui.components.Button; import net.minecraft.client.renderer.GameRenderer; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.splatcraft.forge.Splatcraft; diff --git a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSettingsScreen.java b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSettingsScreen.java index 60f6b1bf6..2f39ec19d 100644 --- a/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSettingsScreen.java +++ b/src/main/java/net/splatcraft/forge/client/gui/stagepad/StageSettingsScreen.java @@ -9,7 +9,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.splatcraft.forge.Splatcraft; import net.splatcraft.forge.data.Stage; diff --git a/src/main/java/net/splatcraft/forge/client/handlers/RendererHandler.java b/src/main/java/net/splatcraft/forge/client/handlers/RendererHandler.java index 137a8523b..d15500ad7 100644 --- a/src/main/java/net/splatcraft/forge/client/handlers/RendererHandler.java +++ b/src/main/java/net/splatcraft/forge/client/handlers/RendererHandler.java @@ -4,6 +4,9 @@ import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.math.Vector3f; +import java.awt.TextComponent; +import java.util.HashMap; +import java.util.UUID; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.model.PlayerModel; @@ -20,7 +23,11 @@ import net.minecraft.client.renderer.entity.player.PlayerRenderer; import net.minecraft.client.resources.model.BakedModel; import net.minecraft.client.resources.model.ModelResourceLocation; -import net.minecraft.network.chat.*; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.MutableComponent; +import net.minecraft.network.chat.Style; +import net.minecraft.network.chat.TextColor; +import net.minecraft.network.chat.contents.TranslatableContents; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; @@ -29,6 +36,7 @@ import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Block; @@ -38,7 +46,10 @@ import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.client.RenderProperties; -import net.minecraftforge.client.event.*; +import net.minecraftforge.client.event.ClientChatReceivedEvent; +import net.minecraftforge.client.event.RenderArmEvent; +import net.minecraftforge.client.event.RenderHandEvent; +import net.minecraftforge.client.event.RenderPlayerEvent; import net.minecraftforge.event.TickEvent; import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.SubscribeEvent; @@ -54,13 +65,11 @@ import net.splatcraft.forge.items.weapons.IChargeableWeapon; import net.splatcraft.forge.items.weapons.SubWeaponItem; import net.splatcraft.forge.items.weapons.WeaponBaseItem; -import net.splatcraft.forge.registries.SplatcraftGameRules; -import net.splatcraft.forge.util.*; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; +import net.splatcraft.forge.util.ClientUtils; +import net.splatcraft.forge.util.ColorUtils; +import net.splatcraft.forge.util.InkBlockUtils; +import net.splatcraft.forge.util.PlayerCharge; +import net.splatcraft.forge.util.PlayerCooldown; import static net.splatcraft.forge.items.weapons.WeaponBaseItem.enoughInk; @@ -178,11 +187,11 @@ public static void renderHand(RenderHandEvent event) } } - public static boolean renderSubWeapon(ItemStack stack, ItemTransforms.TransformType transformType, PoseStack poseStack, MultiBufferSource source, int light, float partialTicks) + public static boolean renderSubWeapon(ItemStack stack, ItemDisplayContext context, PoseStack poseStack, MultiBufferSource source, int light, float partialTicks) { if(stack.getItem() instanceof SubWeaponItem) { - AbstractSubWeaponEntity sub = ((SubWeaponItem)stack.getItem()).entityType.get().create(Minecraft.getInstance().player.level); + AbstractSubWeaponEntity sub = ((SubWeaponItem) stack.getItem()).entityType.get().create(Minecraft.getInstance().player.level()); sub.setColor(ColorUtils.getInkColor(stack)); sub.setItem(stack); sub.readItemData(stack.getOrCreateTag().getCompound("EntityData")); @@ -215,7 +224,7 @@ private static void applyItemArmAttackTransform(PoseStack p_228399_1_, HumanoidA p_228399_1_.mulPose(Vector3f.YP.rotationDegrees((float)i * -45.0F)); } - public static void renderItem(ItemStack itemStackIn, ItemTransforms.TransformType transformTypeIn, boolean leftHand, PoseStack matrixStackIn, MultiBufferSource bufferIn, int combinedLightIn, int combinedOverlayIn, BakedModel modelIn) + public static void renderItem(ItemStack itemStackIn, ItemDisplayContext context, boolean leftHand, PoseStack matrixStackIn, MultiBufferSource bufferIn, int combinedLightIn, int combinedOverlayIn, BakedModel modelIn) { if (!itemStackIn.isEmpty()) { @@ -304,26 +313,30 @@ protected static RenderType getItemEntityTranslucent(ResourceLocation locationIn public static void onChatMessage(ClientChatReceivedEvent event) { ClientLevel level = Minecraft.getInstance().level; - if (level != null && SplatcraftConfig.Client.coloredPlayerNames.get() && event.getMessage() instanceof TranslatableComponent component) + if (level != null && SplatcraftConfig.Client.coloredPlayerNames.get()) { - //TreeMap players = Maps.newTreeMap(); - //Minecraft.getInstance().level.getPlayers().forEach(player -> players.put(player.getDisplayName().getString(), player)); - - HashMap players = new HashMap<>(); ClientPacketListener connection = Minecraft.getInstance().getConnection(); - if (connection != null) - connection.getOnlinePlayers().forEach(info -> players.put(getDisplayName(info).getString(), info.getProfile().getId())); + if (connection != null) { + for (PlayerInfo info : connection.getOnlinePlayers()) { + players.put(getDisplayName(info).getString(), info.getProfile().getId()); + } + } - for (Object obj : component.getArgs()) - { - if (!(obj instanceof MutableComponent msgChildren)) + if (!(event.getMessage().getContents() instanceof TranslatableContents translatableContents)) { + return; + } + + for (Object obj : translatableContents.getArgs()) { + if (!(obj instanceof MutableComponent msgChildren)) { continue; + } String key = msgChildren.getString(); - if (!msgChildren.getSiblings().isEmpty() && players.containsKey(key)) + if (!msgChildren.getSiblings().isEmpty() && players.containsKey(key)) { msgChildren.setStyle(msgChildren.getStyle().withColor(TextColor.fromRgb(ClientUtils.getClientPlayerColor(players.get(key))))); + } } } } @@ -503,4 +516,4 @@ private static float lerp(float a, float b, float f) { return a + f * (b - a); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/client/handlers/SplatcraftKeyHandler.java b/src/main/java/net/splatcraft/forge/client/handlers/SplatcraftKeyHandler.java index a8e6fa80f..4e4b00ca0 100644 --- a/src/main/java/net/splatcraft/forge/client/handlers/SplatcraftKeyHandler.java +++ b/src/main/java/net/splatcraft/forge/client/handlers/SplatcraftKeyHandler.java @@ -5,7 +5,7 @@ import java.util.List; import net.minecraft.client.KeyMapping; import net.minecraft.client.Minecraft; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; @@ -123,7 +123,8 @@ public static void onClientTick(TickEvent.ClientTickEvent event) { ItemStack sub = CommonUtils.getItemInInventory(player, itemStack -> itemStack.getItem() instanceof SubWeaponItem); - if (sub.isEmpty() || (info.isSquid() && player.level.getBlockCollisions(player, + if (sub.isEmpty() || (info.isSquid() && player.level().getBlockCollisions( + player, new AABB(-0.3 + player.getX(), player.getY(), -0.3 + player.getZ(), 0.3 + player.getX(), 0.6 + player.getY(), 0.3 + player.getZ())).iterator().hasNext())) { player.displayClientMessage(Component.translatable("status.cant_use"), true); } else { @@ -163,7 +164,8 @@ public static void onClientTick(TickEvent.ClientTickEvent event) if (player.getVehicle() == null && - !player.level.getBlockCollisions(player, + !player.level().getBlockCollisions( + player, new AABB(-0.3 + player.getX(), player.getY(), -0.3 + player.getZ(), 0.3 + player.getX(), 0.6 + player.getY(), 0.3 + player.getZ())).iterator().hasNext()) { if (squidKey.equals(last) || !squidKey.active) { ClientUtils.setSquid(info, squidKey.active); diff --git a/src/main/java/net/splatcraft/forge/commands/ColorScoresCommand.java b/src/main/java/net/splatcraft/forge/commands/ColorScoresCommand.java index ae95804b7..e70d88be3 100644 --- a/src/main/java/net/splatcraft/forge/commands/ColorScoresCommand.java +++ b/src/main/java/net/splatcraft/forge/commands/ColorScoresCommand.java @@ -4,9 +4,10 @@ import com.mojang.brigadier.context.CommandContext; import com.mojang.brigadier.exceptions.CommandSyntaxException; import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import java.util.Collection; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.Commands; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.splatcraft.forge.commands.arguments.ColorCriterionArgument; import net.splatcraft.forge.commands.arguments.InkColorArgument; import net.splatcraft.forge.data.capabilities.saveinfo.SaveInfoCapability; @@ -14,8 +15,6 @@ import net.splatcraft.forge.network.SplatcraftPacketHandler; import net.splatcraft.forge.network.s2c.UpdateColorScoresPacket; -import java.util.Collection; - public class ColorScoresCommand { private static final SimpleCommandExceptionType CRITERION_ALREADY_EXISTS_EXCEPTION = new SimpleCommandExceptionType(Component.translatable("commands.colorscores.add.duplicate")); diff --git a/src/main/java/net/splatcraft/forge/commands/StageCommand.java b/src/main/java/net/splatcraft/forge/commands/StageCommand.java index a2b5a1674..870a430b6 100644 --- a/src/main/java/net/splatcraft/forge/commands/StageCommand.java +++ b/src/main/java/net/splatcraft/forge/commands/StageCommand.java @@ -20,7 +20,7 @@ import net.minecraft.network.chat.Style; import net.minecraft.network.chat.TextColor; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -392,13 +392,14 @@ private static int warpPlayers(CommandSourceStack source, String stageId, Collec float pitch = te.getLevel().getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(); - if (stageLevel == player.level) + if (stageLevel == player.level()) player.connection.teleport(te.getBlockPos().getX() + .5, te.getBlockPos().getY() + .5, te.getBlockPos().getZ() + .5, pitch, 0); else player.teleportTo((ServerLevel) stageLevel, te.getBlockPos().getX() + .5, te.getBlockPos().getY() + .5, te.getBlockPos().getZ(), pitch, 0); - if(setSpawn) - player.setRespawnPosition(player.level.dimension(), te.getBlockPos(), player.level.getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + if (setSpawn) { + player.setRespawnPosition(player.level().dimension(), te.getBlockPos(), player.level().getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + } playersTeleported.put(playerColor, playersTeleported.get(playerColor) + 1); } @@ -436,13 +437,14 @@ private static int warpPlayersToAny(CommandSourceStack source, String stageId, C float pitch = te.getLevel().getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(); - if (stageLevel == player.level) + if (stageLevel == player.level()) player.connection.teleport(te.getBlockPos().getX() + .5, te.getBlockPos().getY() + .5, te.getBlockPos().getZ() + .5, pitch, 0); else player.teleportTo((ServerLevel) stageLevel, te.getBlockPos().getX() + .5, te.getBlockPos().getY() + .5, te.getBlockPos().getZ(), pitch, 0); - if(setSpawn) - player.setRespawnPosition(player.level.dimension(), te.getBlockPos(), player.level.getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + if (setSpawn) { + player.setRespawnPosition(player.level().dimension(), te.getBlockPos(), player.level().getBlockState(te.getBlockPos()).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + } playersTeleported++; diff --git a/src/main/java/net/splatcraft/forge/commands/SuperJumpCommand.java b/src/main/java/net/splatcraft/forge/commands/SuperJumpCommand.java index a31a3241f..75e9412bf 100644 --- a/src/main/java/net/splatcraft/forge/commands/SuperJumpCommand.java +++ b/src/main/java/net/splatcraft/forge/commands/SuperJumpCommand.java @@ -78,13 +78,14 @@ private static int executeSpawn(CommandContext context) thro public static boolean superJumpToSpawn(ServerPlayer player, boolean global) { - if(player.getRespawnDimension().equals(player.level.dimension())) + if (player.getRespawnDimension().equals(player.level().dimension())) { BlockPos targetPos = getSpawnPadPos(player); - if(targetPos == null) - targetPos = new BlockPos(player.level.getLevelData().getXSpawn(), player.level.getLevelData().getYSpawn(), player.level.getLevelData().getZSpawn()); + if (targetPos == null) { + targetPos = new BlockPos(player.level().getLevelData().getXSpawn(), player.level().getLevelData().getYSpawn(), player.level().getLevelData().getZSpawn()); + } - superJump(player, new Vec3(targetPos.getX(), targetPos.getY() + blockHeight(targetPos, player.level), targetPos.getZ()), global); + superJump(player, new Vec3(targetPos.getX(), targetPos.getY() + blockHeight(targetPos, player.level()), targetPos.getZ()), global); return true; } @@ -95,14 +96,14 @@ public static boolean superJumpToSpawn(ServerPlayer player, boolean global) public static BlockPos getSpawnPadPos(ServerPlayer player) { BlockPos targetPos = player.getRespawnPosition(); - if(targetPos == null || player.level.getBlockEntity(targetPos) instanceof SpawnPadTileEntity spawnpad && !ColorUtils.colorEquals(player, spawnpad)) + if (targetPos == null || player.level().getBlockEntity(targetPos) instanceof SpawnPadTileEntity spawnpad && !ColorUtils.colorEquals(player, spawnpad)) return null; return targetPos; } public static boolean superJump(ServerPlayer player, Vec3 target) { - return superJump(player, target, SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING)); + return superJump(player, target, SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING)); } public static boolean superJump(ServerPlayer player, Vec3 target, boolean global) { @@ -133,8 +134,8 @@ public static boolean superJump(ServerPlayer player, Vec3 target, int windupTime public static boolean canSuperJumpTo(Player player, Vec3 target) { - int jumpLimit = SplatcraftGameRules.getIntRuleValue(player.level, SplatcraftGameRules.SUPERJUMP_DISTANCE_LIMIT); - return Stage.targetsOnSameStage(player.level, player.position(), target) || jumpLimit < 0 || player.position().distanceTo(target) <= jumpLimit; + int jumpLimit = SplatcraftGameRules.getIntRuleValue(player.level(), SplatcraftGameRules.SUPERJUMP_DISTANCE_LIMIT); + return Stage.targetsOnSameStage(player.level(), player.position(), target) || jumpLimit < 0 || player.position().distanceTo(target) <= jumpLimit; } public static double blockHeight(BlockPos block, Level level){ @@ -165,7 +166,7 @@ public static void playerTick(LivingEvent.LivingUpdateEvent event) if(!PlayerCooldown.hasPlayerCooldown(event.getEntityLiving())) return; - if(event.getEntityLiving().level.isClientSide && event.getEntityLiving() instanceof Player player) + if (event.getEntityLiving().level.isClientSide() && event.getEntityLiving() instanceof Player player) handleClient(player); } @@ -177,7 +178,7 @@ private static void handleClient(Player commonPlayer) PlayerInfo info = PlayerInfoCapability.get(player); - if(info.getPlayerCooldown() instanceof SuperJump cooldown && player.level.isClientSide) + if (info.getPlayerCooldown() instanceof SuperJump cooldown && player.level().isClientSide()) { player.setDeltaMovement(0,0,0); @@ -186,9 +187,10 @@ private static void handleClient(Player commonPlayer) if(!cooldown.isSquid() && info.isSquid()) ClientUtils.setSquid(info, false); - if(cooldown.source.distanceTo(cooldown.target) > MAX_DISTANCE_BEFORE_WARP) - player.setPos(progress < 0.5f ? cooldown.source.x : cooldown.target.x, getSuperJumpYPos(progress, cooldown.source.y, cooldown.target.y, player.level.getMaxBuildHeight() + 100), progress < 0.5f ? cooldown.source.z : cooldown.target.z); - else player.setPos(Mth.lerp(progress, cooldown.source.x, cooldown.target.x), getSuperJumpYPos(progress, cooldown.source.y, cooldown.target.y, cooldown.getHeight()), Mth.lerp(progress, cooldown.source.z, cooldown.target.z)); + if (cooldown.source.distanceTo(cooldown.target) > MAX_DISTANCE_BEFORE_WARP) { + player.setPos(progress < 0.5f ? cooldown.source.x : cooldown.target.x, getSuperJumpYPos(progress, cooldown.source.y, cooldown.target.y, player.level().getMaxBuildHeight() + 100), progress < 0.5f ? cooldown.source.z : cooldown.target.z); + } else + player.setPos(Mth.lerp(progress, cooldown.source.x, cooldown.target.x), getSuperJumpYPos(progress, cooldown.source.y, cooldown.target.y, cooldown.getHeight()), Mth.lerp(progress, cooldown.source.z, cooldown.target.z)); } } } @@ -280,4 +282,4 @@ public double getHeight() { return height; } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/commands/arguments/ColorCriterionArgument.java b/src/main/java/net/splatcraft/forge/commands/arguments/ColorCriterionArgument.java index ce3f33f87..a9b0a3107 100644 --- a/src/main/java/net/splatcraft/forge/commands/arguments/ColorCriterionArgument.java +++ b/src/main/java/net/splatcraft/forge/commands/arguments/ColorCriterionArgument.java @@ -6,13 +6,12 @@ import com.mojang.brigadier.exceptions.DynamicCommandExceptionType; import com.mojang.brigadier.suggestion.Suggestions; import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import java.util.concurrent.CompletableFuture; import net.minecraft.commands.SharedSuggestionProvider; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.splatcraft.forge.commands.InkColorCommand; import net.splatcraft.forge.handlers.ScoreboardHandler; -import java.util.concurrent.CompletableFuture; - public class ColorCriterionArgument extends InkColorArgument { diff --git a/src/main/java/net/splatcraft/forge/commands/arguments/InkColorArgument.java b/src/main/java/net/splatcraft/forge/commands/arguments/InkColorArgument.java index dd624c0f4..0f32fe3eb 100644 --- a/src/main/java/net/splatcraft/forge/commands/arguments/InkColorArgument.java +++ b/src/main/java/net/splatcraft/forge/commands/arguments/InkColorArgument.java @@ -8,23 +8,22 @@ import com.mojang.brigadier.exceptions.DynamicCommandExceptionType; import com.mojang.brigadier.suggestion.Suggestions; import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import java.util.Arrays; +import java.util.Collection; +import java.util.Locale; +import java.util.concurrent.CompletableFuture; +import java.util.function.Consumer; +import java.util.function.Function; import net.minecraft.commands.CommandSourceStack; import net.minecraft.commands.SharedSuggestionProvider; import net.minecraft.commands.synchronization.ArgumentSerializer; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.splatcraft.forge.Splatcraft; import net.splatcraft.forge.registries.SplatcraftInkColors; import net.splatcraft.forge.util.InkColor; -import java.util.Arrays; -import java.util.Collection; -import java.util.Locale; -import java.util.concurrent.CompletableFuture; -import java.util.function.Consumer; -import java.util.function.Function; - public class InkColorArgument implements ArgumentType { diff --git a/src/main/java/net/splatcraft/forge/crafting/AbstractWeaponWorkbenchRecipe.java b/src/main/java/net/splatcraft/forge/crafting/AbstractWeaponWorkbenchRecipe.java index 0968c5b18..3d513acd0 100644 --- a/src/main/java/net/splatcraft/forge/crafting/AbstractWeaponWorkbenchRecipe.java +++ b/src/main/java/net/splatcraft/forge/crafting/AbstractWeaponWorkbenchRecipe.java @@ -1,9 +1,9 @@ package net.splatcraft.forge.crafting; import com.google.gson.JsonArray; +import java.util.List; import net.minecraft.core.NonNullList; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.Container; import net.minecraft.world.item.ItemStack; @@ -13,8 +13,6 @@ import net.minecraft.world.level.Level; import org.jetbrains.annotations.NotNull; -import java.util.List; - public abstract class AbstractWeaponWorkbenchRecipe implements Recipe { @@ -118,4 +116,4 @@ protected static NonNullList readIngredients(JsonArray p_1995 return nonnulllist; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchSubtypeRecipe.java b/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchSubtypeRecipe.java index 8238c37d9..98a76cff5 100644 --- a/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchSubtypeRecipe.java +++ b/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchSubtypeRecipe.java @@ -8,7 +8,7 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.minecraft.server.commands.AdvancementCommands; import net.minecraft.server.level.ServerPlayer; @@ -48,7 +48,7 @@ public boolean isAvailable(Player player) if(advancement == null) return true; - if(player.level.isClientSide()) + if (player.level().isClientSide()) return isAvailableOnClient(player); if(player instanceof ServerPlayer serverPlayer && serverPlayer.getServer().getAdvancements().getAdvancement(advancement) != null) return serverPlayer.getAdvancements().getOrStartProgress(serverPlayer.getServer().getAdvancements().getAdvancement(advancement)).isDone(); diff --git a/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchTab.java b/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchTab.java index 3d55e3de8..24ca4b61e 100644 --- a/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchTab.java +++ b/src/main/java/net/splatcraft/forge/crafting/WeaponWorkbenchTab.java @@ -5,7 +5,7 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.minecraft.util.GsonHelper; import net.minecraft.world.Container; diff --git a/src/main/java/net/splatcraft/forge/data/Stage.java b/src/main/java/net/splatcraft/forge/data/Stage.java index 8192c5009..8fc27f193 100644 --- a/src/main/java/net/splatcraft/forge/data/Stage.java +++ b/src/main/java/net/splatcraft/forge/data/Stage.java @@ -234,11 +234,11 @@ public static boolean targetsOnSameStage(Level level, Vec3 targetA, Vec3 targetB public static ArrayList getAllStages(Level level) { - return new ArrayList<>(level.isClientSide ? ClientUtils.clientStages.values() : SaveInfoCapability.get(level.getServer()).getStages().values()); + return new ArrayList<>(level.isClientSide() ? ClientUtils.clientStages.values() : SaveInfoCapability.get(level.getServer()).getStages().values()); } public static Stage getStage(Level level, String id) { - return (level.isClientSide ? ClientUtils.clientStages : SaveInfoCapability.get(level.getServer()).getStages()).get(id); + return (level.isClientSide() ? ClientUtils.clientStages : SaveInfoCapability.get(level.getServer()).getStages()).get(id); } public static ArrayList getStagesForPosition(Level level, Vec3 pos) @@ -313,11 +313,11 @@ public List getAllSpawnPads(Level level) public boolean superJumpToStage(ServerPlayer player) { - if(!player.level.dimension().location().equals(dimID) || getSpawnPadPositions().isEmpty()) + if (!player.level().dimension().location().equals(dimID) || getSpawnPadPositions().isEmpty()) return false; int playerColor = ColorUtils.getPlayerColor(player); - HashMap> spawnPads = getSpawnPads(player.level); + HashMap> spawnPads = getSpawnPads(player.level()); if(!spawnPads.containsKey(playerColor)) { @@ -328,7 +328,7 @@ public boolean superJumpToStage(ServerPlayer player) BlockPos targetPos = spawnPads.get(playerColor).get(player.getRandom().nextInt(spawnPads.get(playerColor).size())).getBlockPos(); - return SuperJumpCommand.superJump(player, new Vec3(targetPos.getX() + 0.5, targetPos.getY() + SuperJumpCommand.blockHeight(targetPos, player.level), targetPos.getZ() + 0.5)); + return SuperJumpCommand.superJump(player, new Vec3(targetPos.getX() + 0.5, targetPos.getY() + SuperJumpCommand.blockHeight(targetPos, player.level()), targetPos.getZ() + 0.5)); } @@ -342,4 +342,4 @@ public boolean equals(Object obj) { return obj instanceof Stage oStage && id.equals(oStage.id); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/data/capabilities/saveinfo/SaveInfo.java b/src/main/java/net/splatcraft/forge/data/capabilities/saveinfo/SaveInfo.java index ef7a42eb0..d7fb129d1 100644 --- a/src/main/java/net/splatcraft/forge/data/capabilities/saveinfo/SaveInfo.java +++ b/src/main/java/net/splatcraft/forge/data/capabilities/saveinfo/SaveInfo.java @@ -1,5 +1,9 @@ package net.splatcraft.forge.data.capabilities.saveinfo; +import java.util.ArrayList; +import java.util.Collection; +import java.util.HashMap; +import java.util.Map; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -10,11 +14,6 @@ import net.splatcraft.forge.network.SplatcraftPacketHandler; import net.splatcraft.forge.network.s2c.UpdateStageListPacket; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - public class SaveInfo { private ArrayList colorScores = new ArrayList<>(); @@ -50,7 +49,7 @@ public HashMap getStages() public boolean createOrEditStage(Level stageLevel, String stageId, BlockPos corner1, BlockPos corner2, Component stageName) { - if(stageLevel.isClientSide) + if (stageLevel.isClientSide()) return false; if(stages.containsKey(stageId)) @@ -67,7 +66,7 @@ public boolean createOrEditStage(Level stageLevel, String stageId, BlockPos corn } public boolean createStage(Level level, String stageId, BlockPos corner1, BlockPos corner2, Component stageName) { - if(level.isClientSide) + if (level.isClientSide()) return false; if(stages.containsKey(stageId)) @@ -119,4 +118,4 @@ public void readNBT(CompoundTag nbt) } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/entities/InkProjectileEntity.java b/src/main/java/net/splatcraft/forge/entities/InkProjectileEntity.java index e0b6ba140..2ac1eab9f 100644 --- a/src/main/java/net/splatcraft/forge/entities/InkProjectileEntity.java +++ b/src/main/java/net/splatcraft/forge/entities/InkProjectileEntity.java @@ -16,7 +16,11 @@ import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; -import net.minecraft.world.entity.*; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityDimensions; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.Pose; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.projectile.ThrowableItemProjectile; import net.minecraft.world.item.Item; @@ -35,7 +39,13 @@ import net.splatcraft.forge.handlers.WeaponHandler; import net.splatcraft.forge.items.weapons.SplatlingItem; import net.splatcraft.forge.items.weapons.WeaponBaseItem; -import net.splatcraft.forge.items.weapons.settings.*; +import net.splatcraft.forge.items.weapons.settings.AbstractWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.BlasterWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.ChargerWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.DualieWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.ShooterWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.SlosherWeaponSettings; +import net.splatcraft.forge.items.weapons.settings.SplatlingWeaponSettings; import net.splatcraft.forge.registries.SplatcraftEntities; import net.splatcraft.forge.registries.SplatcraftItems; import net.splatcraft.forge.registries.SplatcraftSounds; @@ -271,7 +281,7 @@ public void tick() if(isRemoved()) return; - if (!level.isClientSide && !persistent && lifespan-- <= 0) + if (!level.isClientSide() && !persistent && lifespan-- <= 0) { float dmg = damage.calculateDamage(this.tickCount - Math.max(0, straightShotTime), throwerAirborne, charge, isOnRollCooldown); InkExplosion.createInkExplosion(level, getOwner(), blockPosition(), impactCoverage, dmg, explodes ? damage.getMinDamage() : dmg, bypassMobDamageMultiplier, getColor(), inkType, sourceWeapon); @@ -373,7 +383,7 @@ protected void onHitEntity(EntityHitResult result) { } else level.broadcastEntityEvent(this, (byte) 2); - if (!level.isClientSide) + if (!level.isClientSide()) discard(); } } @@ -397,7 +407,7 @@ protected void onHitBlock(BlockHitResult result) { } else if (level.getBlockState(result.getBlockPos()).getBlock() instanceof StageBarrierBlock) level.broadcastEntityEvent(this, (byte) -1); else level.broadcastEntityEvent(this, (byte) 2); - if (!level.isClientSide) + if (!level.isClientSide()) this.discard(); } @@ -637,4 +647,4 @@ public static class Types { public static final String ROLLER = "roller"; public static final String BLASTER = "blaster"; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/entities/SquidBumperEntity.java b/src/main/java/net/splatcraft/forge/entities/SquidBumperEntity.java index 72c0d47da..924dea24c 100644 --- a/src/main/java/net/splatcraft/forge/entities/SquidBumperEntity.java +++ b/src/main/java/net/splatcraft/forge/entities/SquidBumperEntity.java @@ -131,7 +131,7 @@ public boolean onEntityInked(InkDamageUtils.InkDamageSource source, float damage @Override public boolean hurt(DamageSource source, float amount) { - if (!this.level.isClientSide && this.isAlive()) + if (!this.level.isClientSide() && this.isAlive()) { if (DamageSource.OUT_OF_WORLD.equals(source)) { @@ -253,21 +253,21 @@ public void handleEntityEvent(byte id) switch (id) { case 31: - if (this.level.isClientSide) + if (this.level.isClientSide()) { hurtCooldown = level.getGameTime(); this.level.playLocalSound(this.getX(), this.getY(), this.getZ(), SplatcraftSounds.squidBumperInk, this.getSoundSource(), 0.3F, 1.0F, false); } break; case 32: - if (this.level.isClientSide) + if (this.level.isClientSide()) { this.level.playLocalSound(this.getX(), this.getY(), this.getZ(), SplatcraftSounds.squidBumperHit, this.getSoundSource(), 0.3F, 1.0F, false); this.punchCooldown = this.level.getGameTime(); } break; case 34: - if (this.level.isClientSide) + if (this.level.isClientSide()) { this.level.playLocalSound(this.getX(), this.getY(), this.getZ(), SplatcraftSounds.squidBumperPop, this.getSoundSource(), 0.5F, 20.0F, false); InkOverlayCapability.get(this).setAmount(0); @@ -449,7 +449,7 @@ public void ink(float damage, int color) this.level.broadcastEntityEvent(this, (byte) 31); hurtCooldown = invulnerableTime; - if (!level.isClientSide) + if (!level.isClientSide()) if(!isInWater() && InkOverlayCapability.hasCapability(this)) { InkOverlayInfo info = InkOverlayCapability.get(this); @@ -486,4 +486,4 @@ public Packet getAddEntityPacket() { return NetworkHooks.getEntitySpawningPacket(this); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/entities/subs/CurlingBombEntity.java b/src/main/java/net/splatcraft/forge/entities/subs/CurlingBombEntity.java index 048ae9171..a05ffe861 100644 --- a/src/main/java/net/splatcraft/forge/entities/subs/CurlingBombEntity.java +++ b/src/main/java/net/splatcraft/forge/entities/subs/CurlingBombEntity.java @@ -1,5 +1,6 @@ package net.splatcraft.forge.entities.subs; +import java.util.List; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.nbt.CompoundTag; @@ -29,8 +30,6 @@ import net.splatcraft.forge.util.InkDamageUtils; import net.splatcraft.forge.util.InkExplosion; -import java.util.List; - public class CurlingBombEntity extends AbstractSubWeaponEntity { public static final int FLASH_DURATION = 20; @@ -108,7 +107,7 @@ public void tick() playedActivationSound = true; } - if(!level.isClientSide) + if (!level.isClientSide()) for(int i = 0; i <= 2; i++) if(InkBlockUtils.canInkFromFace(level, blockPosition().below(i), Direction.UP)) { @@ -313,4 +312,4 @@ public void onSyncedDataUpdated(EntityDataAccessor dataParameter) } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/handlers/SplatcraftCommonHandler.java b/src/main/java/net/splatcraft/forge/handlers/SplatcraftCommonHandler.java index e0b1e0bda..912a71b6c 100644 --- a/src/main/java/net/splatcraft/forge/handlers/SplatcraftCommonHandler.java +++ b/src/main/java/net/splatcraft/forge/handlers/SplatcraftCommonHandler.java @@ -197,7 +197,7 @@ public static void onPlayerAboutToDie(LivingDamageEvent event) { return; } - if (!player.level.getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.KEEP_MATCH_ITEMS)) { + if (!player.level().getGameRules().getBoolean(GameRules.RULE_KEEPINVENTORY) && SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.KEEP_MATCH_ITEMS)) { PlayerInfo playerCapability; try { playerCapability = PlayerInfoCapability.get(player); @@ -308,7 +308,7 @@ public static void capabilityUpdateEvent(TickEvent.PlayerTickEvent event) { @SubscribeEvent public static void onWorldTick(TickEvent.WorldTickEvent event) { Level level = event.world; - if (level.isClientSide) { + if (level.isClientSide()) { return; } for (Map.Entry rule : SplatcraftGameRules.booleanRules.entrySet()) { @@ -346,4 +346,4 @@ public static void onBlockLeftClick(PlayerInteractEvent.LeftClickBlock event) { } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/handlers/SquidFormHandler.java b/src/main/java/net/splatcraft/forge/handlers/SquidFormHandler.java index 837eced06..29b4df31a 100644 --- a/src/main/java/net/splatcraft/forge/handlers/SquidFormHandler.java +++ b/src/main/java/net/splatcraft/forge/handlers/SquidFormHandler.java @@ -60,13 +60,14 @@ public static void playerTick(TickEvent.PlayerTickEvent event) { Player player = event.player; if (InkBlockUtils.onEnemyInk(player)) { - if (player.tickCount % 20 == 0 && player.getHealth() > 4 && player.level.getDifficulty() != Difficulty.PEACEFUL) + if (player.tickCount % 20 == 0 && player.getHealth() > 4 && player.level().getDifficulty() != Difficulty.PEACEFUL) player.hurt(InkDamageUtils.ENEMY_INK, 2f); - if (player.level.getRandom().nextFloat() < 0.7f) - ColorUtils.addStandingInkSplashParticle(player.level, player, 1); + if (player.level().getRandom().nextFloat() < 0.7f) { + ColorUtils.addStandingInkSplashParticle(player.level(), player, 1); + } } - if (SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.WATER_DAMAGE) && player.isInWater() && player.tickCount % 10 == 0 && !MobEffectUtil.hasWaterBreathing(player)) + if (SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.WATER_DAMAGE) && player.isInWater() && player.tickCount % 10 == 0 && !MobEffectUtil.hasWaterBreathing(player)) player.hurt(InkDamageUtils.WATER, 8f); if(!PlayerInfoCapability.hasCapability(player)) @@ -88,14 +89,16 @@ public static void playerTick(TickEvent.PlayerTickEvent event) { if (squidSubmergeMode.get(player) == 1) { - player.level.playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.inkSubmerge, SoundSource.PLAYERS, 0.5F, ((player.level.getRandom().nextFloat() - player.level.getRandom().nextFloat()) * 0.2F + 1.0F) * 0.95F); + player.level().playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.inkSubmerge, SoundSource.PLAYERS, 0.5F, ((player.level().getRandom().nextFloat() - player.level().getRandom().nextFloat()) * 0.2F + 1.0F) * 0.95F); - if (player.level instanceof ServerLevel) { - for (int i = 0; i < 2; i++) - ColorUtils.addInkSplashParticle((ServerLevel) player.level, player, 1.4f); + if (player.level() instanceof ServerLevel) { + for (int i = 0; i < 2; i++) { + ColorUtils.addInkSplashParticle((ServerLevel) player.level(), player, 1.4f); + } } - } else if (squidSubmergeMode.get(player) == -1) - player.level.playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.inkSurface, SoundSource.PLAYERS, 0.5F, ((player.level.getRandom().nextFloat() - player.level.getRandom().nextFloat()) * 0.2F + 1.0F) * 0.95F); + } else if (squidSubmergeMode.get(player) == -1) { + player.level().playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.inkSurface, SoundSource.PLAYERS, 0.5F, ((player.level().getRandom().nextFloat() - player.level().getRandom().nextFloat()) * 0.2F + 1.0F) * 0.95F); + } } if (PlayerInfoCapability.isSquid(player)) { @@ -110,9 +113,9 @@ public static void playerTick(TickEvent.PlayerTickEvent event) { player.awardStat(SplatcraftStats.SQUID_TIME); if (InkBlockUtils.canSquidHide(player)) { - if (player.getHealth() < player.getMaxHealth() && SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.INK_HEALING) && player.tickCount % 5 == 0 && !player.hasEffect(MobEffects.POISON) && !player.hasEffect(MobEffects.WITHER)) { + if (player.getHealth() < player.getMaxHealth() && SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.INK_HEALING) && player.tickCount % 5 == 0 && !player.hasEffect(MobEffects.POISON) && !player.hasEffect(MobEffects.WITHER)) { player.heal(0.5f); - if (SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.INK_HEALING_CONSUMES_HUNGER)) + if (SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.INK_HEALING_CONSUMES_HUNGER)) player.causeFoodExhaustion(0.25f); if (InkOverlayCapability.hasCapability(player)) { InkOverlayCapability.get(player).addAmount(-0.49f); @@ -120,30 +123,32 @@ public static void playerTick(TickEvent.PlayerTickEvent event) { } boolean crouch = player.isCrouching(); - if (player.level.getRandom().nextFloat() <= (crouch ? 0.3f : 0.6f) && (Math.abs(player.getX() - player.xo) > 0.14 || Math.abs(player.getY() - player.yo) > 0.07 || Math.abs(player.getZ() - player.zo) > 0.14)) { - ColorUtils.addInkSplashParticle(player.level, player, crouch ? 0.8f : 1.1f); + if (player.level().getRandom().nextFloat() <= (crouch ? 0.3f : 0.6f) && (Math.abs(player.getX() - player.xo) > 0.14 || Math.abs(player.getY() - player.yo) > 0.07 || Math.abs(player.getZ() - player.zo) > 0.14)) { + ColorUtils.addInkSplashParticle(player.level(), player, crouch ? 0.8f : 1.1f); } } BlockPos posBelow = InkBlockUtils.getBlockStandingOnPos(player); - Block blockBelow = player.level.getBlockState(posBelow).getBlock(); + Block blockBelow = player.level().getBlockState(posBelow).getBlock(); if (blockBelow instanceof SpawnPadBlock.Aux) { - BlockPos newPos = ((SpawnPadBlock.Aux) blockBelow).getParentPos(player.level.getBlockState(posBelow), posBelow); - if (player.level.getBlockState(newPos).getBlock() instanceof SpawnPadBlock) { + BlockPos newPos = ((SpawnPadBlock.Aux) blockBelow).getParentPos(player.level().getBlockState(posBelow), posBelow); + if (player.level().getBlockState(newPos).getBlock() instanceof SpawnPadBlock) { posBelow = newPos; - blockBelow = player.level.getBlockState(newPos).getBlock(); + blockBelow = player.level().getBlockState(newPos).getBlock(); } } - if (blockBelow instanceof InkwellBlock || (SplatcraftGameRules.getLocalizedRule(player.level, posBelow, SplatcraftGameRules.UNIVERSAL_INK) && blockBelow instanceof SpawnPadBlock)) - ColorUtils.setPlayerColor(player, ColorUtils.getInkColorOrInverted(player.level, posBelow)); + if (blockBelow instanceof InkwellBlock || (SplatcraftGameRules.getLocalizedRule(player.level(), posBelow, SplatcraftGameRules.UNIVERSAL_INK) && blockBelow instanceof SpawnPadBlock)) { + ColorUtils.setPlayerColor(player, ColorUtils.getInkColorOrInverted(player.level(), posBelow)); + } if (blockBelow instanceof SpawnPadBlock) { - InkColorTileEntity spawnPad = (InkColorTileEntity) player.level.getBlockEntity(posBelow); + InkColorTileEntity spawnPad = (InkColorTileEntity) player.level().getBlockEntity(posBelow); - if (player instanceof ServerPlayer && ColorUtils.colorEquals(player, spawnPad)) - ((ServerPlayer) player).setRespawnPosition(player.level.dimension(), posBelow, player.level.getBlockState(posBelow).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + if (player instanceof ServerPlayer && ColorUtils.colorEquals(player, spawnPad)) { + ((ServerPlayer) player).setRespawnPosition(player.level().dimension(), posBelow, player.level().getBlockState(posBelow).getValue(SpawnPadBlock.DIRECTION).toYRot(), false, true); + } } } @@ -222,7 +227,7 @@ public static void onPlayerInteract(PlayerInteractEvent event) { @OnlyIn(Dist.CLIENT) @SubscribeEvent public static void onClientLivingTick(LivingEvent.LivingUpdateEvent event) { - if (!event.getEntity().level.isClientSide) + if (!event.getEntity().level.isClientSide()) return; LivingEntity living = event.getEntityLiving(); if (InkOverlayCapability.hasCapability(living)) { @@ -244,4 +249,4 @@ public static void onPlayerJump(LivingEvent.LivingJumpEvent event) { player.setDeltaMovement(player.getDeltaMovement().x(), player.getDeltaMovement().y() * 1.1, player.getDeltaMovement().z()); } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/handlers/WeaponHandler.java b/src/main/java/net/splatcraft/forge/handlers/WeaponHandler.java index ec393f405..1b73f9f22 100644 --- a/src/main/java/net/splatcraft/forge/handlers/WeaponHandler.java +++ b/src/main/java/net/splatcraft/forge/handlers/WeaponHandler.java @@ -70,8 +70,9 @@ public static void onPlayerTick(TickEvent.PlayerTickEvent event) { PlayerCooldown cooldown = PlayerCooldown.getPlayerCooldown(player); ItemStack stack = cooldown.storedStack; - if (stack.getItem() instanceof WeaponBaseItem weapon) - weapon.onPlayerCooldownEnd(player.level, player, stack, cooldown); + if (stack.getItem() instanceof WeaponBaseItem weapon) { + weapon.onPlayerCooldownEnd(player.level(), player, stack, cooldown); + } PlayerCooldown.setPlayerCooldown(player, null); } else if (PlayerCooldown.shrinkCooldownTime(player, 1) != null) { @@ -83,16 +84,17 @@ else if (PlayerCooldown.shrinkCooldownTime(player, 1) != null) { if (stack.getItem() instanceof WeaponBaseItem weapon) { - if (cooldown.getTime() == 1) - weapon.onPlayerCooldownEnd(player.level, player, stack, cooldown); - else if (cooldown.getTime() > 1) - weapon.onPlayerCooldownTick(player.level, player, stack, cooldown); + if (cooldown.getTime() == 1) { + weapon.onPlayerCooldownEnd(player.level(), player, stack, cooldown); + } else if (cooldown.getTime() > 1) { + weapon.onPlayerCooldownTick(player.level(), player, stack, cooldown); + } } } if (canUseWeapon && player.getUseItemRemainingTicks() > 0 && !CommonUtils.anyWeaponOnCooldown(player)) { ItemStack stack = player.getItemInHand(player.getUsedItemHand()); if (stack.getItem() instanceof WeaponBaseItem weapon) { - weapon.weaponUseTick(player.level, player, stack, player.getUseItemRemainingTicks()); + weapon.weaponUseTick(player.level(), player, stack, player.getUseItemRemainingTicks()); player.setSprinting(false); } } else { @@ -110,4 +112,4 @@ public static boolean playerHasPrevPos(Player player) public static Vec3 getPlayerPrevPos(Player player) { return prevPosMap.get(player); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/handlers/WorldInkHandler.java b/src/main/java/net/splatcraft/forge/handlers/WorldInkHandler.java index 7574b55ad..4476aee3e 100644 --- a/src/main/java/net/splatcraft/forge/handlers/WorldInkHandler.java +++ b/src/main/java/net/splatcraft/forge/handlers/WorldInkHandler.java @@ -181,8 +181,7 @@ public static void onWorldTick(TickEvent.WorldTickEvent event) blockCount++; } } - } - else if(event.world.isClientSide) + } else if (event.world.isClientSide()) { new ArrayList<>(INK_CACHE.keySet()).forEach(chunkPos -> { @@ -364,4 +363,4 @@ public static TextureAtlasSprite getPermanentInkSprite() } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/BlueprintItem.java b/src/main/java/net/splatcraft/forge/items/BlueprintItem.java index bf962bf21..ed51e7dce 100644 --- a/src/main/java/net/splatcraft/forge/items/BlueprintItem.java +++ b/src/main/java/net/splatcraft/forge/items/BlueprintItem.java @@ -1,8 +1,14 @@ package net.splatcraft.forge.items; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Objects; +import java.util.function.Predicate; +import java.util.stream.Stream; import net.minecraft.ChatFormatting; import net.minecraft.advancements.Advancement; -import net.minecraft.client.Minecraft; import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; @@ -10,7 +16,6 @@ import net.minecraft.nbt.Tag; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; @@ -25,15 +30,18 @@ import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.registries.ForgeRegistryEntry; import net.splatcraft.forge.data.SplatcraftTags; -import net.splatcraft.forge.items.weapons.*; +import net.splatcraft.forge.items.weapons.BlasterItem; +import net.splatcraft.forge.items.weapons.ChargerItem; +import net.splatcraft.forge.items.weapons.DualieItem; +import net.splatcraft.forge.items.weapons.RollerItem; +import net.splatcraft.forge.items.weapons.ShooterItem; +import net.splatcraft.forge.items.weapons.SlosherItem; +import net.splatcraft.forge.items.weapons.SplatlingItem; +import net.splatcraft.forge.items.weapons.SubWeaponItem; import net.splatcraft.forge.registries.SplatcraftItemGroups; import net.splatcraft.forge.registries.SplatcraftItems; import org.jetbrains.annotations.Nullable; -import java.util.*; -import java.util.function.Predicate; -import java.util.stream.Stream; - public class BlueprintItem extends Item { public static final HashMap> weaponPools = new HashMap<>() diff --git a/src/main/java/net/splatcraft/forge/items/ColoredArmorItem.java b/src/main/java/net/splatcraft/forge/items/ColoredArmorItem.java index 8133bf3eb..ee5c23f8b 100644 --- a/src/main/java/net/splatcraft/forge/items/ColoredArmorItem.java +++ b/src/main/java/net/splatcraft/forge/items/ColoredArmorItem.java @@ -1,11 +1,11 @@ package net.splatcraft.forge.items; +import java.util.List; import net.minecraft.ChatFormatting; import net.minecraft.client.resources.language.I18n; import net.minecraft.core.BlockPos; import net.minecraft.core.cauldron.CauldronInteraction; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.InteractionResult; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EquipmentSlot; @@ -22,13 +22,10 @@ import net.splatcraft.forge.data.capabilities.playerinfo.PlayerInfoCapability; import net.splatcraft.forge.registries.SplatcraftItemGroups; import net.splatcraft.forge.registries.SplatcraftItems; -import net.splatcraft.forge.tileentities.InkColorTileEntity; import net.splatcraft.forge.util.ColorUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.List; - public class ColoredArmorItem extends DyeableArmorItem implements IColoredItem { public ColoredArmorItem(ArmorMaterial material, EquipmentSlot slot, Properties properties) diff --git a/src/main/java/net/splatcraft/forge/items/FilterItem.java b/src/main/java/net/splatcraft/forge/items/FilterItem.java index f2a27ff32..6778251f6 100644 --- a/src/main/java/net/splatcraft/forge/items/FilterItem.java +++ b/src/main/java/net/splatcraft/forge/items/FilterItem.java @@ -1,9 +1,10 @@ package net.splatcraft.forge.items; import com.google.common.collect.Lists; +import java.util.ArrayList; +import java.util.List; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -13,9 +14,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; -import java.util.List; - public class FilterItem extends Item { public static final ArrayList filters = Lists.newArrayList(); diff --git a/src/main/java/net/splatcraft/forge/items/InkBandItem.java b/src/main/java/net/splatcraft/forge/items/InkBandItem.java index 83839c03a..b7b296550 100644 --- a/src/main/java/net/splatcraft/forge/items/InkBandItem.java +++ b/src/main/java/net/splatcraft/forge/items/InkBandItem.java @@ -1,8 +1,8 @@ package net.splatcraft.forge.items; +import java.util.List; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.TooltipFlag; @@ -10,8 +10,6 @@ import net.splatcraft.forge.registries.SplatcraftItemGroups; import org.jetbrains.annotations.Nullable; -import java.util.List; - public class InkBandItem extends Item { public InkBandItem() diff --git a/src/main/java/net/splatcraft/forge/items/InkTankItem.java b/src/main/java/net/splatcraft/forge/items/InkTankItem.java index a50e9c1dc..b69d3e93d 100644 --- a/src/main/java/net/splatcraft/forge/items/InkTankItem.java +++ b/src/main/java/net/splatcraft/forge/items/InkTankItem.java @@ -6,8 +6,6 @@ import net.minecraft.client.model.HumanoidModel; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EquipmentSlot; @@ -104,7 +102,7 @@ public static void setRecoveryCooldown(ItemStack stack, int recoveryCooldown) { public void inventoryTick(@NotNull ItemStack stack, @NotNull Level level, @NotNull Entity entity, int itemSlot, boolean isSelected) { super.inventoryTick(stack, level, entity, itemSlot, isSelected); - if (entity instanceof Player player && !level.isClientSide && SplatcraftGameRules.getLocalizedRule(level, entity.blockPosition(), SplatcraftGameRules.RECHARGEABLE_INK_TANK)) { + if (entity instanceof Player player && !level.isClientSide() && SplatcraftGameRules.getLocalizedRule(level, entity.blockPosition(), SplatcraftGameRules.RECHARGEABLE_INK_TANK)) { float ink = getInkAmount(stack); Item using = player.getUseItem().getItem(); diff --git a/src/main/java/net/splatcraft/forge/items/JumpLureItem.java b/src/main/java/net/splatcraft/forge/items/JumpLureItem.java index 2a9e65709..3fd17c765 100644 --- a/src/main/java/net/splatcraft/forge/items/JumpLureItem.java +++ b/src/main/java/net/splatcraft/forge/items/JumpLureItem.java @@ -1,5 +1,8 @@ package net.splatcraft.forge.items; +import java.util.ArrayList; +import java.util.List; +import java.util.UUID; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; import net.minecraft.client.resources.language.I18n; @@ -7,7 +10,6 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResultHolder; @@ -40,10 +42,6 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; -import java.util.List; -import java.util.UUID; - public class JumpLureItem extends Item implements IColoredItem { public JumpLureItem() @@ -77,49 +75,6 @@ public int getUseDuration(ItemStack p_41454_) { } - @Override - public @NotNull InteractionResultHolder use(@NotNull Level level, Player player, @NotNull InteractionHand hand) - { - if(level.isClientSide) - return super.use(level, player, hand); - - - int color = ColorUtils.getInkColorOrInverted(player.getItemInHand(hand)); - ArrayList players = new ArrayList<>(getAvailableCandidates(player, color).stream().map(player1 -> player1.getGameProfile().getId()).toList()); - - BlockPos spawnPadPos = SuperJumpCommand.getSpawnPadPos((ServerPlayer) player); - - if(!SplatcraftGameRules.getLocalizedRule(level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) && !SuperJumpCommand.canSuperJumpTo(player, new Vec3(spawnPadPos.getX(), spawnPadPos.getY(), spawnPadPos.getZ()))) - spawnPadPos = null; - - SplatcraftPacketHandler.sendToPlayer(new SendJumpLureDataPacket(color, spawnPadPos != null, - players), (ServerPlayer) player); - - player.startUsingItem(hand); - return super.use(level, player, hand); - } - - @Override - public void releaseUsing(ItemStack stack, Level level, LivingEntity entity, int useTime) - { - super.releaseUsing(stack, level, entity, useTime); - - if(level.isClientSide) - releaseLure(entity); - } - - @OnlyIn(Dist.CLIENT) - private void releaseLure(LivingEntity entity) - { - if(entity.equals(Minecraft.getInstance().player)) - JumpLureHudHandler.releaseLure(); - } - - @Override - public UseAnim getUseAnimation(ItemStack p_41452_) { - return UseAnim.SPEAR; - } - public static void activate(ServerPlayer player, UUID targetUUID, int color) { Vec3 target; @@ -128,8 +83,8 @@ public static void activate(ServerPlayer player, UUID targetUUID, int color) BlockPos spawnPos = SuperJumpCommand.getSpawnPadPos(player); if(spawnPos != null) { - target = new Vec3(spawnPos.getX(), spawnPos.getY() + SuperJumpCommand.blockHeight(spawnPos, player.level), spawnPos.getZ()); - if(!SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) && !SuperJumpCommand.canSuperJumpTo(player, target)) + target = new Vec3(spawnPos.getX(), spawnPos.getY() + SuperJumpCommand.blockHeight(spawnPos, player.level()), spawnPos.getZ()); + if (!SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) && !SuperJumpCommand.canSuperJumpTo(player, target)) { player.sendMessage(new TextComponent("Spawn Pad outside of stage bounds!"), player.getUUID()); //TODO better feedback return; @@ -143,9 +98,9 @@ public static void activate(ServerPlayer player, UUID targetUUID, int color) } else { - Player targetPlayer = player.level.getPlayerByUUID(targetUUID); + Player targetPlayer = player.level().getPlayerByUUID(targetUUID); - if(targetPlayer == null || !hasMatchingLure(targetPlayer, color) || (!SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) + if (targetPlayer == null || !hasMatchingLure(targetPlayer, color) || (!SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) && !SuperJumpCommand.canSuperJumpTo(player, targetPlayer.position()))) { player.sendMessage(new TextComponent("A communication error has occurred."), player.getUUID()); //TODO better feedback @@ -157,29 +112,39 @@ public static void activate(ServerPlayer player, UUID targetUUID, int color) SuperJumpCommand.superJump(player, target); } - - public static boolean hasMatchingLure(Player targetPlayer, int color) { for(int i = 0; i < targetPlayer.getInventory().getContainerSize(); i++) if(targetPlayer.getInventory().getItem(i).getItem() instanceof JumpLureItem && - ColorUtils.colorEquals(targetPlayer.level, targetPlayer.blockPosition(), color, ColorUtils.getInkColorOrInverted(targetPlayer.getInventory().getItem(i)))) + ColorUtils.colorEquals(targetplayer.level(), targetPlayer.blockPosition(), color, ColorUtils.getInkColorOrInverted(targetPlayer.getInventory().getItem(i)))) return true; return false; } + @OnlyIn(Dist.CLIENT) + private void releaseLure(LivingEntity entity) + { + if(entity.equals(Minecraft.getInstance().player)) + JumpLureHudHandler.releaseLure(); + } + + @Override + public UseAnim getUseAnimation(ItemStack p_41452_) { + return UseAnim.SPEAR; + } + public static List getAvailableCandidates(Player player, int color) { ArrayList players = new ArrayList<>(); - if(SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING)) - players.addAll(player.level.players()); - else - { - ArrayList stages = Stage.getStagesForPosition(player.level, player.position()); - for(Stage stage : stages) - players.addAll(player.level.getEntitiesOfClass(Player.class, stage.getBounds())); - } + if (SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING)) { + players.addAll(player.level().players()); + } else { + ArrayList stages = Stage.getStagesForPosition(player.level(), player.position()); + for (Stage stage : stages) { + players.addAll(player.level().getEntitiesOfClass(Player.class, stage.getBounds())); + } + } players.removeIf(target -> @@ -189,6 +154,37 @@ public static List getAvailableCandidates(Player player, int c return players; } + @Override + public @NotNull InteractionResultHolder use(@NotNull Level level, Player player, @NotNull InteractionHand hand) + { + if (level.isClientSide()) + return super.use(level, player, hand); + + + int color = ColorUtils.getInkColorOrInverted(player.getItemInHand(hand)); + ArrayList players = new ArrayList<>(getAvailableCandidates(player, color).stream().map(player1 -> player1.getGameProfile().getId()).toList()); + + BlockPos spawnPadPos = SuperJumpCommand.getSpawnPadPos((ServerPlayer) player); + + if(!SplatcraftGameRules.getLocalizedRule(level, player.blockPosition(), SplatcraftGameRules.GLOBAL_SUPERJUMPING) && !SuperJumpCommand.canSuperJumpTo(player, new Vec3(spawnPadPos.getX(), spawnPadPos.getY(), spawnPadPos.getZ()))) + spawnPadPos = null; + + SplatcraftPacketHandler.sendToPlayer(new SendJumpLureDataPacket(color, spawnPadPos != null, + players), (ServerPlayer) player); + + player.startUsingItem(hand); + return super.use(level, player, hand); + } + + @Override + public void releaseUsing(ItemStack stack, Level level, LivingEntity entity, int useTime) + { + super.releaseUsing(stack, level, entity, useTime); + + if (level.isClientSide()) + releaseLure(entity); + } + @Override public void inventoryTick(@NotNull ItemStack stack, @NotNull Level level, @NotNull Entity entity, int itemSlot, boolean isSelected) { super.inventoryTick(stack, level, entity, itemSlot, isSelected); diff --git a/src/main/java/net/splatcraft/forge/items/PowerEggCanItem.java b/src/main/java/net/splatcraft/forge/items/PowerEggCanItem.java index 91c54ed52..120d82162 100644 --- a/src/main/java/net/splatcraft/forge/items/PowerEggCanItem.java +++ b/src/main/java/net/splatcraft/forge/items/PowerEggCanItem.java @@ -25,7 +25,7 @@ public InteractionResultHolder use(Level levelIn, Player playerIn, In { ItemStack itemstack = playerIn.getItemInHand(handIn); levelIn.playSound(null, playerIn.getX(), playerIn.getY(), playerIn.getZ(), SplatcraftSounds.powerEggCanOpen, SoundSource.PLAYERS, 0.5F, 0.4F / (playerIn.getRandom().nextFloat() * 0.4F + 0.8F)); - if (!levelIn.isClientSide) + if (!levelIn.isClientSide()) { double d0 = playerIn.getEyeY() - (double) 0.3F; ItemEntity itementity = new ItemEntity(levelIn, playerIn.getX(), d0, playerIn.getZ(), new ItemStack(SplatcraftItems.powerEgg.get(), (levelIn.random.nextInt(4) + 1) * 10)); @@ -47,4 +47,4 @@ public InteractionResultHolder use(Level levelIn, Player playerIn, In return InteractionResultHolder.sidedSuccess(itemstack, levelIn.isClientSide()); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/SquidBumperItem.java b/src/main/java/net/splatcraft/forge/items/SquidBumperItem.java index 36d8c292e..be7c73d8f 100644 --- a/src/main/java/net/splatcraft/forge/items/SquidBumperItem.java +++ b/src/main/java/net/splatcraft/forge/items/SquidBumperItem.java @@ -5,7 +5,7 @@ import net.minecraft.core.Direction; import net.minecraft.core.NonNullList; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.server.level.ServerLevel; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; @@ -134,7 +134,7 @@ public InteractionResult useOn(UseOnContext context) } } stack.shrink(1); - return InteractionResult.sidedSuccess(level.isClientSide); + return InteractionResult.sidedSuccess(level.isClientSide()); } diff --git a/src/main/java/net/splatcraft/forge/items/StagePadItem.java b/src/main/java/net/splatcraft/forge/items/StagePadItem.java index 0c1d85eb1..eb5147af2 100644 --- a/src/main/java/net/splatcraft/forge/items/StagePadItem.java +++ b/src/main/java/net/splatcraft/forge/items/StagePadItem.java @@ -54,7 +54,7 @@ public InteractionResultHolder use(Level level, Player player, Intera ItemStack itemstack = player.getItemInHand(hand); player.awardStat(Stats.ITEM_USED.get(this)); - if(level.isClientSide) + if (level.isClientSide()) clientUseAction.apply(level, player, hand, itemstack, null); return InteractionResultHolder.sidedSuccess(itemstack, level.isClientSide()); } @@ -62,7 +62,7 @@ public InteractionResultHolder use(Level level, Player player, Intera @Override public InteractionResult useOn(UseOnContext context) { - if(context.getLevel().isClientSide) + if (context.getLevel().isClientSide()) clientUseAction.apply(context.getLevel(), context.getPlayer(), context.getHand(), context.getItemInHand(), context.getClickedPos()); return InteractionResultHolder.sidedSuccess(context.getItemInHand(), context.getLevel().isClientSide()).getResult(); diff --git a/src/main/java/net/splatcraft/forge/items/remotes/ColorChangerItem.java b/src/main/java/net/splatcraft/forge/items/remotes/ColorChangerItem.java index 8c0f4a6ba..fcddf8357 100644 --- a/src/main/java/net/splatcraft/forge/items/remotes/ColorChangerItem.java +++ b/src/main/java/net/splatcraft/forge/items/remotes/ColorChangerItem.java @@ -10,7 +10,6 @@ import net.minecraft.network.chat.ComponentUtils; import net.minecraft.network.chat.TextColor; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; @@ -75,7 +74,7 @@ public static RemoteResult replaceColor(Level level, BlockPos from, BlockPos to, SplatcraftPacketHandler.sendToAll(new UpdateStageListPacket(stages)); } - return createResult(true, Component.translatable("status.change_color.success", count, level.isClientSide ? ColorUtils.getFormatedColorName(color, false) : InkColorCommand.getColorName(color))).setIntResults(count.get(), blockTotal == 0 ? 0 : count.get() * 15 / blockTotal); + return createResult(true, Component.translatable("status.change_color.success", count, level.isClientSide() ? ColorUtils.getFormatedColorName(color, false) : InkColorCommand.getColorName(color))).setIntResults(count.get(), blockTotal == 0 ? 0 : count.get() * 15 / blockTotal); } @Override diff --git a/src/main/java/net/splatcraft/forge/items/remotes/InkDisruptorItem.java b/src/main/java/net/splatcraft/forge/items/remotes/InkDisruptorItem.java index ce099a1e5..bb473d746 100644 --- a/src/main/java/net/splatcraft/forge/items/remotes/InkDisruptorItem.java +++ b/src/main/java/net/splatcraft/forge/items/remotes/InkDisruptorItem.java @@ -1,23 +1,17 @@ package net.splatcraft.forge.items.remotes; +import java.util.Collection; +import java.util.concurrent.atomic.AtomicInteger; import net.minecraft.core.BlockPos; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; -import net.minecraft.world.level.block.Block; -import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.AABB; -import net.splatcraft.forge.blocks.IColoredBlock; -import net.splatcraft.forge.data.capabilities.worldink.WorldInk; -import net.splatcraft.forge.data.capabilities.worldink.WorldInkCapability; import net.splatcraft.forge.registries.SplatcraftItemGroups; import net.splatcraft.forge.util.ColorUtils; import net.splatcraft.forge.util.InkBlockUtils; -import java.util.Collection; -import java.util.concurrent.atomic.AtomicInteger; - public class InkDisruptorItem extends RemoteItem { public InkDisruptorItem() diff --git a/src/main/java/net/splatcraft/forge/items/remotes/RemoteItem.java b/src/main/java/net/splatcraft/forge/items/remotes/RemoteItem.java index 2436e5d08..650d347c4 100644 --- a/src/main/java/net/splatcraft/forge/items/remotes/RemoteItem.java +++ b/src/main/java/net/splatcraft/forge/items/remotes/RemoteItem.java @@ -2,6 +2,11 @@ import com.mojang.brigadier.StringReader; import com.mojang.brigadier.exceptions.CommandSyntaxException; +import java.awt.TextComponent; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.UUID; import net.minecraft.ChatFormatting; import net.minecraft.client.renderer.item.ClampedItemPropertyFunction; import net.minecraft.client.resources.language.I18n; @@ -12,7 +17,9 @@ import net.minecraft.core.Registry; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.NbtUtils; -import net.minecraft.network.chat.*; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.ComponentUtils; +import net.minecraft.network.chat.Style; import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; @@ -38,11 +45,6 @@ import net.splatcraft.forge.util.ColorUtils; import org.jetbrains.annotations.Nullable; -import java.util.ArrayList; -import java.util.Collection; -import java.util.List; -import java.util.UUID; - public abstract class RemoteItem extends Item implements CommandSource { public static final List remotes = new ArrayList<>(); @@ -180,7 +182,7 @@ public void appendHoverText(ItemStack stack, @Nullable Level levelIn, List use(Level levelIn, Player playerIn, In mode = cycleRemoteMode(stack); String statusMsg = getDescriptionId() + ".mode." + mode; - if (levelIn.isClientSide && I18n.exists(statusMsg)) + if (levelIn.isClientSide() && I18n.exists(statusMsg)) { playerIn.displayClientMessage(Component.translatable("status.remote_mode", Component.translatable(statusMsg)), true); } - } else if (hasCoordSet(stack) && !levelIn.isClientSide) + } else if (hasCoordSet(stack) && !levelIn.isClientSide()) { RemoteResult remoteResult = onRemoteUse(levelIn, stack, ColorUtils.getPlayerColor(playerIn), playerIn.position(), playerIn); diff --git a/src/main/java/net/splatcraft/forge/items/remotes/TurfScannerItem.java b/src/main/java/net/splatcraft/forge/items/remotes/TurfScannerItem.java index 432597af1..ef13db384 100644 --- a/src/main/java/net/splatcraft/forge/items/remotes/TurfScannerItem.java +++ b/src/main/java/net/splatcraft/forge/items/remotes/TurfScannerItem.java @@ -5,7 +5,7 @@ import java.util.TreeMap; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; @@ -40,7 +40,7 @@ public static TurfScanResult scanTurf(Level level, Level outputWorld, BlockPos b if (!level.isInWorldBounds(minPos) || !level.isInWorldBounds(maxPos)) return new TurfScanResult(false, Component.translatable("status.scan_turf.out_of_world")); - if (level.isClientSide) + if (level.isClientSide()) { return new TurfScanResult(true, null); } diff --git a/src/main/java/net/splatcraft/forge/items/weapons/BlasterItem.java b/src/main/java/net/splatcraft/forge/items/weapons/BlasterItem.java index 6885ad493..6e4905c8d 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/BlasterItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/BlasterItem.java @@ -45,7 +45,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int { BlasterWeaponSettings settings = getSettings(stack); PlayerCooldown.setPlayerCooldown((Player) entity, new PlayerCooldown(stack, settings.startupTicks, ((Player) entity).getInventory().selected, entity.getUsedItemHand(), true, false, true, entity.isOnGround())); - if (!level.isClientSide) { + if (!level.isClientSide()) { cooldownTracker.addCooldown(this, settings.endlagTicks); } } @@ -53,7 +53,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int @Override public void onPlayerCooldownEnd(Level level, Player player, ItemStack stack, PlayerCooldown cooldown) { - if (!level.isClientSide) + if (!level.isClientSide()) { BlasterWeaponSettings settings = getSettings(stack); if (reduceInk(player, this, settings.inkConsumption, settings.inkRecoveryCooldown, true)) { @@ -70,4 +70,4 @@ public void onPlayerCooldownEnd(Level level, Player player, ItemStack stack, Pla public PlayerPosingHandler.WeaponPose getPose(ItemStack stack) { return PlayerPosingHandler.WeaponPose.FIRE; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/weapons/ChargerItem.java b/src/main/java/net/splatcraft/forge/items/weapons/ChargerItem.java index 60edf8fe0..f8eb1f801 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/ChargerItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/ChargerItem.java @@ -5,7 +5,6 @@ import net.minecraft.sounds.SoundSource; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; @@ -22,12 +21,10 @@ import net.splatcraft.forge.items.weapons.settings.ChargerWeaponSettings; import net.splatcraft.forge.network.SplatcraftPacketHandler; import net.splatcraft.forge.network.c2s.ReleaseChargePacket; -import net.splatcraft.forge.registries.SplatcraftItems; import net.splatcraft.forge.registries.SplatcraftSounds; import net.splatcraft.forge.util.InkBlockUtils; import net.splatcraft.forge.util.PlayerCharge; import net.splatcraft.forge.util.PlayerCooldown; -import net.splatcraft.forge.util.WeaponTooltip; import org.jetbrains.annotations.NotNull; public class ChargerItem extends WeaponBaseItem implements IChargeableWeapon { @@ -85,7 +82,7 @@ protected void playChargingSound(Player player) { @Override public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int timeLeft) { - if(!level.isClientSide) + if (!level.isClientSide()) { if(timeLeft % 4 == 0 && !enoughInk(entity, this, 0.1f, 0, false)) playNoInkSound(entity, SplatcraftSounds.noInkMain); @@ -116,7 +113,7 @@ else if (entity instanceof Player player && !player.getCooldowns().isOnCooldown( public void releaseUsing(@NotNull ItemStack stack, @NotNull Level level, LivingEntity entity, int timeLeft) { super.releaseUsing(stack, level, entity, timeLeft); - if (level.isClientSide && !PlayerInfoCapability.isSquid(entity) && entity instanceof Player player) { + if (level.isClientSide() && !PlayerInfoCapability.isSquid(entity) && entity instanceof Player player) { PlayerCharge charge = PlayerCharge.getCharge(player); if (charge != null && charge.charge > 0.05f) { diff --git a/src/main/java/net/splatcraft/forge/items/weapons/DualieItem.java b/src/main/java/net/splatcraft/forge/items/weapons/DualieItem.java index d0f5f55fc..1d9e23501 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/DualieItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/DualieItem.java @@ -1,6 +1,8 @@ package net.splatcraft.forge.items.weapons; import com.google.common.collect.Lists; +import java.util.ArrayList; +import java.util.Objects; import net.minecraft.client.renderer.item.ClampedItemPropertyFunction; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.chat.Component; @@ -22,12 +24,13 @@ import net.splatcraft.forge.network.SplatcraftPacketHandler; import net.splatcraft.forge.network.c2s.DodgeRollPacket; import net.splatcraft.forge.registries.SplatcraftSounds; -import net.splatcraft.forge.util.*; +import net.splatcraft.forge.util.ClientUtils; +import net.splatcraft.forge.util.ColorUtils; +import net.splatcraft.forge.util.InkBlockUtils; +import net.splatcraft.forge.util.InkExplosion; +import net.splatcraft.forge.util.PlayerCooldown; import org.jetbrains.annotations.NotNull; -import java.util.ArrayList; -import java.util.Objects; - @SuppressWarnings("UnusedReturnValue") public class DualieItem extends WeaponBaseItem { @@ -104,12 +107,12 @@ public float performRoll(Player player, ItemStack mainDualie, ItemStack offhandD DualieWeaponSettings activeSettings = getSettings(activeDualie); - if (reduceInk(player, this, getInkForRoll(activeDualie), activeSettings.rollInkRecoveryCooldown, !player.level.isClientSide)) + if (reduceInk(player, this, getInkForRoll(activeDualie), activeSettings.rollInkRecoveryCooldown, !player.level().isClientSide())) { PlayerCooldown.setPlayerCooldown(player, new PlayerCooldown(activeDualie, getRollCooldown(activeDualie, (int) maxRolls, rollCount), player.getInventory().selected, player.getUsedItemHand(), activeSettings.canMoveAsTurret, true, false, player.isOnGround())); - if (!player.level.isClientSide) { - player.level.playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.dualieDodge, SoundSource.PLAYERS, 0.7F, ((player.level.random.nextFloat() - player.level.getRandom().nextFloat()) * 0.1F + 1.0F) * 0.95F); - InkExplosion.createInkExplosion(player.level, player, player.blockPosition(), 1.2f, 0, 0, false, ColorUtils.getInkColor(activeDualie), InkBlockUtils.getInkType(player), activeDualie); + if (!player.level().isClientSide()) { + player.level().playSound(null, player.getX(), player.getY(), player.getZ(), SplatcraftSounds.dualieDodge, SoundSource.PLAYERS, 0.7F, ((player.level().random.nextFloat() - player.level().getRandom().nextFloat()) * 0.1F + 1.0F) * 0.95F); + InkExplosion.createInkExplosion(player.level(), player, player.blockPosition(), 1.2f, 0, 0, false, ColorUtils.getInkColor(activeDualie), InkBlockUtils.getInkType(player), activeDualie); } setRollString(mainDualie, rollCount + 1); setRollCooldown(mainDualie, (int) (getRollCooldown(mainDualie, (int) maxRolls, (int) maxRolls) * 0.75f)); @@ -221,7 +224,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int offhandDualie = entity.getOffhandItem(); } - if (level.isClientSide) + if (level.isClientSide()) { if (entity == ClientUtils.getClientPlayer() && ClientUtils.canPerformRoll((Player) entity)) { @@ -287,7 +290,7 @@ protected void fireDualie(Level level, LivingEntity entity, ItemStack stack, int DualieWeaponSettings settings = getSettings(stack); DualieWeaponSettings.FiringData firingData = onRollCooldown ? settings.turretData : settings.standardData; - if (!level.isClientSide && (getUseDuration(stack) - timeLeft - 1) % (firingData.firingSpeed) == 0) + if (!level.isClientSide() && (getUseDuration(stack) - timeLeft - 1) % (firingData.firingSpeed) == 0) { if (reduceInk(entity, this, firingData.inkConsumption, firingData.inkRecoveryCooldown, true)) diff --git a/src/main/java/net/splatcraft/forge/items/weapons/RollerItem.java b/src/main/java/net/splatcraft/forge/items/weapons/RollerItem.java index de72e10ac..68c4579e5 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/RollerItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/RollerItem.java @@ -1,6 +1,7 @@ package net.splatcraft.forge.items.weapons; import com.google.common.collect.Lists; +import java.util.ArrayList; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.item.ClampedItemPropertyFunction; import net.minecraft.core.BlockPos; @@ -30,9 +31,11 @@ import net.splatcraft.forge.items.weapons.settings.RollerWeaponSettings; import net.splatcraft.forge.registries.SplatcraftItems; import net.splatcraft.forge.registries.SplatcraftSounds; -import net.splatcraft.forge.util.*; - -import java.util.ArrayList; +import net.splatcraft.forge.util.BlockInkedResult; +import net.splatcraft.forge.util.ColorUtils; +import net.splatcraft.forge.util.InkBlockUtils; +import net.splatcraft.forge.util.InkDamageUtils; +import net.splatcraft.forge.util.PlayerCooldown; public class RollerItem extends WeaponBaseItem { public static final ArrayList rollers = Lists.newArrayList(); @@ -111,7 +114,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int } float toConsume = Math.min(1, (float) (getUseDuration(stack) - timeLeft) / (float) settings.dashTime) * (settings.dashConsumption - settings.rollConsumption) + settings.rollConsumption; - isMoving = Math.abs(entity.yHeadRotO - entity.yHeadRot) > 0 || (level.isClientSide ? Math.abs(entity.getDeltaMovement().x()) > 0 || Math.abs(entity.getDeltaMovement().z()) > 0 + isMoving = Math.abs(entity.yHeadRotO - entity.yHeadRot) > 0 || (level.isClientSide() ? Math.abs(entity.getDeltaMovement().x()) > 0 || Math.abs(entity.getDeltaMovement().z()) > 0 : entity.position().multiply(1, 0, 1).distanceTo(WeaponHandler.getPlayerPrevPos((Player) entity).multiply(1, 0, 1)) > 0); double dxOff = 0; @@ -173,7 +176,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int } } - if (level.isClientSide) { + if (level.isClientSide()) { // Damage and knockback are dealt server-side continue; } @@ -208,7 +211,7 @@ public void onPlayerCooldownEnd(Level level, Player player, ItemStack stack, Pla boolean airborne = !cooldown.isGrounded(); RollerWeaponSettings settings = getSettings(stack); - if (level.isClientSide) + if (level.isClientSide()) playRollSound(settings.isBrush); if (!settings.isBrush && reduceInk(player, this, airborne ? settings.flingConsumption : settings.swingConsumption, airborne ? settings.flingInkRecoveryCooldown : settings.swingInkRecoveryCooldown, true)) { @@ -267,4 +270,4 @@ public AttributeModifier getSpeedModifier(LivingEntity entity, ItemStack stack) public PlayerPosingHandler.WeaponPose getPose(ItemStack stack) { return getSettings(stack).isBrush ? PlayerPosingHandler.WeaponPose.BRUSH : PlayerPosingHandler.WeaponPose.ROLL; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/weapons/ShooterItem.java b/src/main/java/net/splatcraft/forge/items/weapons/ShooterItem.java index 8d22e4643..8bdf1091d 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/ShooterItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/ShooterItem.java @@ -57,7 +57,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int PlayerCooldown.setPlayerCooldown(player, new PlayerCooldown(stack, settings.startupTicks, player.getInventory().selected, player.getUsedItemHand(), true, false, true, player.isOnGround())); } else time -= settings.startupTicks; - if (!level.isClientSide && settings.firingSpeed > 0 && (time - 1) % settings.firingSpeed == 0) + if (!level.isClientSide() && settings.firingSpeed > 0 && (time - 1) % settings.firingSpeed == 0) { if (reduceInk(entity, this, settings.inkConsumption, settings.inkRecoveryCooldown, true)) { @@ -79,4 +79,4 @@ public PlayerPosingHandler.WeaponPose getPose(ItemStack stack) { return PlayerPosingHandler.WeaponPose.FIRE; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/weapons/SlosherItem.java b/src/main/java/net/splatcraft/forge/items/weapons/SlosherItem.java index 5dbb6bc21..dd660de29 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/SlosherItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/SlosherItem.java @@ -53,7 +53,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int ItemCooldowns cooldownTracker = ((Player) entity).getCooldowns(); if (!cooldownTracker.isOnCooldown(this)) { PlayerCooldown.setPlayerCooldown((Player) entity, new PlayerCooldown(stack, settings.startupTicks, ((Player) entity).getInventory().selected, entity.getUsedItemHand(), true, false, true, entity.isOnGround())); - if (!level.isClientSide && settings.endlagTicks > 0) { + if (!level.isClientSide() && settings.endlagTicks > 0) { cooldownTracker.addCooldown(this, settings.endlagTicks); } } @@ -65,7 +65,7 @@ public void onPlayerCooldownEnd(Level level, Player player, ItemStack stack, Pla { SlosherWeaponSettings settings = getSettings(stack); - if (!level.isClientSide && reduceInk(player, this, settings.inkConsumption, settings.inkRecoveryCooldown, true)) { + if (!level.isClientSide() && reduceInk(player, this, settings.inkConsumption, settings.inkRecoveryCooldown, true)) { for (int i = 0; i < settings.projectileCount; i++) { boolean hasTrail = i == Math.floor((settings.projectileCount - 1) / 2f) || i == Math.ceil((settings.projectileCount - 1) / 2f); float angle = settings.angleOffset * i - settings.angleOffset * (settings.projectileCount - 1) / 2; @@ -100,4 +100,4 @@ public enum Type CYCLONE, BUBBLES } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/items/weapons/SplatlingItem.java b/src/main/java/net/splatcraft/forge/items/weapons/SplatlingItem.java index 48a33883b..262b403e8 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/SplatlingItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/SplatlingItem.java @@ -99,7 +99,7 @@ public void weaponUseTick(Level level, LivingEntity entity, ItemStack stack, int SplatlingWeaponSettings settings = getSettings(stack); - if (level.isClientSide) + if (level.isClientSide()) { float prevCharge = PlayerCharge.getChargeValue(player, stack); @@ -128,7 +128,7 @@ public void onPlayerCooldownEnd(Level level, Player player, ItemStack stack, Pla { if(cooldown.getTime() > 0) { - if(!level.isClientSide) + if (!level.isClientSide()) { SplatlingWeaponSettings settings = getSettings(stack); @@ -151,7 +151,7 @@ else if(PlayerCharge.hasCharge(player) && player.equals(Minecraft.getInstance(). @Override public void onPlayerCooldownTick(Level level, Player player, ItemStack stack, PlayerCooldown cooldown) { - if(level.isClientSide) + if (level.isClientSide()) return; SplatlingWeaponSettings settings = getSettings(stack); @@ -193,7 +193,7 @@ public void releaseUsing(@NotNull ItemStack stack, @NotNull Level level, LivingE { super.releaseUsing(stack, level, entity, timeLeft); - if (level.isClientSide && entity instanceof Player player && player.equals(Minecraft.getInstance().player)) + if (level.isClientSide() && entity instanceof Player player && player.equals(Minecraft.getInstance().player)) { if(PlayerCooldown.hasPlayerCooldown(player) && PlayerCooldown.getPlayerCooldown(player).preventWeaponUse()) return; diff --git a/src/main/java/net/splatcraft/forge/items/weapons/SubWeaponItem.java b/src/main/java/net/splatcraft/forge/items/weapons/SubWeaponItem.java index 7ac9e8198..09b2cc2f4 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/SubWeaponItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/SubWeaponItem.java @@ -7,7 +7,7 @@ import net.minecraft.core.Position; import net.minecraft.core.dispenser.DefaultDispenseItemBehavior; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.sounds.SoundSource; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResultHolder; @@ -232,7 +232,7 @@ public boolean shouldCauseReequipAnimation(ItemStack oldStack, ItemStack newStac oldStack.getTag().remove("EntityData"); newStack.getTag().remove("EntityData"); - return !ItemStack.isSame(oldStack, newStack); + return !ItemStack.isSameItem(oldStack, newStack); } return super.shouldCauseReequipAnimation(oldStack, newStack, slotChanged); diff --git a/src/main/java/net/splatcraft/forge/items/weapons/WeaponBaseItem.java b/src/main/java/net/splatcraft/forge/items/weapons/WeaponBaseItem.java index b2fe48a12..6a77e349b 100644 --- a/src/main/java/net/splatcraft/forge/items/weapons/WeaponBaseItem.java +++ b/src/main/java/net/splatcraft/forge/items/weapons/WeaponBaseItem.java @@ -6,7 +6,7 @@ import net.minecraft.core.cauldron.CauldronInteraction; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; @@ -144,9 +144,9 @@ public static boolean enoughInk(LivingEntity player, Item item, float consumptio public static boolean enoughInk(LivingEntity player, Item item, float consumption, int recoveryCooldown, boolean sendMessage, boolean sub) { ItemStack tank = player.getItemBySlot(EquipmentSlot.CHEST); - if (!SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK) + if (!SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK) || player instanceof Player && ((Player) player).isCreative() - && SplatcraftGameRules.getBooleanRuleValue(player.level, SplatcraftGameRules.INFINITE_INK_IN_CREATIVE)) { + && SplatcraftGameRules.getBooleanRuleValue(player.level(), SplatcraftGameRules.INFINITE_INK_IN_CREATIVE)) { return true; } if (tank.getItem() instanceof InkTankItem) { @@ -166,9 +166,9 @@ public static boolean enoughInk(LivingEntity player, Item item, float consumptio public static boolean hasInkInTank(LivingEntity player, Item item) { ItemStack tank = player.getItemBySlot(EquipmentSlot.CHEST); - if (!SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK) + if (!SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK) || player instanceof Player && ((Player) player).isCreative() - && SplatcraftGameRules.getBooleanRuleValue(player.level, SplatcraftGameRules.INFINITE_INK_IN_CREATIVE)) { + && SplatcraftGameRules.getBooleanRuleValue(player.level(), SplatcraftGameRules.INFINITE_INK_IN_CREATIVE)) { return true; } @@ -229,7 +229,7 @@ public void inventoryTick(@NotNull ItemStack stack, @NotNull Level level, @NotNu if (player.getCooldowns().isOnCooldown(stack.getItem())) { if (PlayerInfoCapability.isSquid(player)) { PlayerInfoCapability.get(player).setIsSquid(false); - if (!level.isClientSide) { + if (!level.isClientSide()) { SplatcraftPacketHandler.sendToTrackers(new PlayerSetSquidS2CPacket(player.getUUID(), false), player); } } diff --git a/src/main/java/net/splatcraft/forge/mixin/CreativeTabMixin.java b/src/main/java/net/splatcraft/forge/mixin/CreativeTabMixin.java index 5d786387e..114faef28 100644 --- a/src/main/java/net/splatcraft/forge/mixin/CreativeTabMixin.java +++ b/src/main/java/net/splatcraft/forge/mixin/CreativeTabMixin.java @@ -7,7 +7,6 @@ import net.minecraft.client.gui.components.EditBox; import net.minecraft.client.gui.screens.inventory.CreativeModeInventoryScreen; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.util.Mth; import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.Item; diff --git a/src/main/java/net/splatcraft/forge/network/c2s/CraftWeaponPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/CraftWeaponPacket.java index 57e61631e..7be991e01 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/CraftWeaponPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/CraftWeaponPacket.java @@ -41,7 +41,7 @@ public void encode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - Optional> recipeOptional = player.level.getRecipeManager().byKey(recipeID); + Optional> recipeOptional = player.level().getRecipeManager().byKey(recipeID); if (recipeOptional.isPresent() && recipeOptional.get() instanceof WeaponWorkbenchRecipe) { @@ -82,4 +82,4 @@ public void execute(Player player) } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/DodgeRollPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/DodgeRollPacket.java index 7f2ff53fb..4f435f7b3 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/DodgeRollPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/DodgeRollPacket.java @@ -32,7 +32,7 @@ public static DodgeRollPacket decode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - Player target = player.level.getPlayerByUUID(this.target); + Player target = player.level().getPlayerByUUID(this.target); ((DualieItem) mainDualie.getItem()).performRoll(target, mainDualie, offhandDualie); } @@ -43,4 +43,4 @@ public void encode(FriendlyByteBuf buffer) buffer.writeItem(mainDualie); buffer.writeItem(offhandDualie); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/PlayerSetSquidC2SPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/PlayerSetSquidC2SPacket.java index 69e966e18..b6e7e33ad 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/PlayerSetSquidC2SPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/PlayerSetSquidC2SPacket.java @@ -35,9 +35,9 @@ public void execute(Player player) { } target.setIsSquid(squid); - player.level.playSound(null, player.getX(), player.getY(), player.getZ(), squid ? SplatcraftSounds.squidTransform : SplatcraftSounds.squidRevert, SoundSource.PLAYERS, 0.75F, ((player.level.getRandom().nextFloat() - player.level.getRandom().nextFloat()) * 0.1F + 1.0F) * 0.95F); + player.level().playSound(null, player.getX(), player.getY(), player.getZ(), squid ? SplatcraftSounds.squidTransform : SplatcraftSounds.squidRevert, SoundSource.PLAYERS, 0.75F, ((player.level().getRandom().nextFloat() - player.level().getRandom().nextFloat()) * 0.1F + 1.0F) * 0.95F); SplatcraftPacketHandler.sendToTrackers(new PlayerSetSquidS2CPacket(player.getUUID(), squid), player); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/ReleaseChargePacket.java b/src/main/java/net/splatcraft/forge/network/c2s/ReleaseChargePacket.java index a8b62b2e8..0ff8148ba 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/ReleaseChargePacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/ReleaseChargePacket.java @@ -38,7 +38,7 @@ public void execute(Player player) } if (stack.getItem() instanceof IChargeableWeapon weapon) { - weapon.onReleaseCharge(player.level, player, stack, charge); + weapon.onReleaseCharge(player.level(), player, stack, charge); } if(resetCharge) @@ -52,4 +52,4 @@ public void encode(FriendlyByteBuf buffer) buffer.writeItem(stack); buffer.writeBoolean(resetCharge); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/RequestClearInkPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/RequestClearInkPacket.java index 2868a772a..7f3a099f8 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/RequestClearInkPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/RequestClearInkPacket.java @@ -4,13 +4,9 @@ import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceKey; import net.minecraft.server.level.ServerLevel; -import net.minecraft.server.level.ServerPlayer; import net.minecraft.world.entity.player.Player; import net.splatcraft.forge.data.Stage; import net.splatcraft.forge.items.remotes.InkDisruptorItem; -import net.splatcraft.forge.items.remotes.TurfScannerItem; - -import java.util.ArrayList; public class RequestClearInkPacket extends PlayC2SPacket { @@ -33,9 +29,9 @@ public static RequestClearInkPacket decode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - Stage stage = Stage.getStage(player.level, stageId); + Stage stage = Stage.getStage(player.level(), stageId); - ServerLevel stageLevel = player.level.getServer().getLevel(ResourceKey.create(Registry.DIMENSION_REGISTRY, stage.dimID)); + ServerLevel stageLevel = player.level().getServer().getLevel(ResourceKey.create(Registry.DIMENSION_REGISTRY, stage.dimID)); player.displayClientMessage(InkDisruptorItem.clearInk(stageLevel, stage.getCornerA(), stage.getCornerB()).getOutput(), true); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/RequestPlayerInfoPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/RequestPlayerInfoPacket.java index 9e65518f5..4f8b65580 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/RequestPlayerInfoPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/RequestPlayerInfoPacket.java @@ -35,11 +35,11 @@ public void encode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - ServerPlayer target = (ServerPlayer) player.level.getPlayerByUUID(this.target); + ServerPlayer target = (ServerPlayer) player.level().getPlayerByUUID(this.target); if (target != null) { SplatcraftPacketHandler.sendToPlayer(new UpdatePlayerInfoPacket(target), (ServerPlayer) player); } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/RequestTurfScanPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/RequestTurfScanPacket.java index bb0ad71f5..3c4804356 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/RequestTurfScanPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/RequestTurfScanPacket.java @@ -1,5 +1,6 @@ package net.splatcraft.forge.network.c2s; +import java.util.ArrayList; import net.minecraft.core.Registry; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceKey; @@ -9,8 +10,6 @@ import net.splatcraft.forge.data.Stage; import net.splatcraft.forge.items.remotes.TurfScannerItem; -import java.util.ArrayList; - public class RequestTurfScanPacket extends PlayC2SPacket { final String stageId; @@ -35,13 +34,13 @@ public static RequestTurfScanPacket decode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - Stage stage = Stage.getStage(player.level, stageId); + Stage stage = Stage.getStage(player.level(), stageId); - ServerLevel stageLevel = player.level.getServer().getLevel(ResourceKey.create(Registry.DIMENSION_REGISTRY, stage.dimID)); + ServerLevel stageLevel = player.level().getServer().getLevel(ResourceKey.create(Registry.DIMENSION_REGISTRY, stage.dimID)); ArrayList playerList = new ArrayList<>(stageLevel.getEntitiesOfClass(ServerPlayer.class, stage.getBounds())); if(!playerList.contains(player)) playerList.add(0, (ServerPlayer) player); player.displayClientMessage(TurfScannerItem.scanTurf(stageLevel, stageLevel, stage.cornerA, stage.cornerB, isTopDown ? 0 : 1, playerList).getOutput(), true); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/RequestUpdateStageSpawnPadsPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/RequestUpdateStageSpawnPadsPacket.java index 48fdf9bd8..38baf8322 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/RequestUpdateStageSpawnPadsPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/RequestUpdateStageSpawnPadsPacket.java @@ -34,7 +34,7 @@ public static RequestUpdateStageSpawnPadsPacket decode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - Stage.getStage(player.level, stageId).updateSpawnPads(player.level); + Stage.getStage(player.level(), stageId).updateSpawnPads(player.level()); SplatcraftPacketHandler.sendToPlayer(SendStageWarpDataToPadPacket.compile(player), (ServerPlayer) player); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/SuperJumpToStagePacket.java b/src/main/java/net/splatcraft/forge/network/c2s/SuperJumpToStagePacket.java index 6610f5c5b..01c5c519c 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/SuperJumpToStagePacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/SuperJumpToStagePacket.java @@ -32,6 +32,6 @@ public static SuperJumpToStagePacket decode(FriendlyByteBuf buf) @Override public void execute(Player player) { - Stage.getStage(player.level, stageId).superJumpToStage((ServerPlayer) player); + Stage.getStage(player.level(), stageId).superJumpToStage((ServerPlayer) player); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/c2s/UpdateBlockColorPacket.java b/src/main/java/net/splatcraft/forge/network/c2s/UpdateBlockColorPacket.java index ae3cdbbbf..f8b7439de 100644 --- a/src/main/java/net/splatcraft/forge/network/c2s/UpdateBlockColorPacket.java +++ b/src/main/java/net/splatcraft/forge/network/c2s/UpdateBlockColorPacket.java @@ -33,7 +33,7 @@ public static UpdateBlockColorPacket decode(FriendlyByteBuf buffer) @Override public void execute(Player player) { - BlockEntity te = player.level.getBlockEntity(pos); + BlockEntity te = player.level().getBlockEntity(pos); if (te instanceof InkVatTileEntity) { @@ -52,4 +52,4 @@ public void encode(FriendlyByteBuf buffer) buffer.writeInt(color); buffer.writeInt(inkVatPointer); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/network/s2c/SendScanTurfResultsPacket.java b/src/main/java/net/splatcraft/forge/network/s2c/SendScanTurfResultsPacket.java index 88012b597..3fef098d6 100644 --- a/src/main/java/net/splatcraft/forge/network/s2c/SendScanTurfResultsPacket.java +++ b/src/main/java/net/splatcraft/forge/network/s2c/SendScanTurfResultsPacket.java @@ -2,7 +2,7 @@ import java.util.ArrayList; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.network.chat.Component; import net.minecraft.world.entity.player.Player; import net.splatcraft.forge.util.ClientUtils; import net.splatcraft.forge.util.ColorUtils; diff --git a/src/main/java/net/splatcraft/forge/network/s2c/SendStageWarpDataToPadPacket.java b/src/main/java/net/splatcraft/forge/network/s2c/SendStageWarpDataToPadPacket.java index e7be30248..92a12fa05 100644 --- a/src/main/java/net/splatcraft/forge/network/s2c/SendStageWarpDataToPadPacket.java +++ b/src/main/java/net/splatcraft/forge/network/s2c/SendStageWarpDataToPadPacket.java @@ -1,17 +1,14 @@ package net.splatcraft.forge.network.s2c; +import java.util.ArrayList; +import java.util.List; import net.minecraft.core.BlockPos; import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.TextComponent; import net.minecraft.world.entity.player.Player; import net.minecraft.world.phys.Vec3; import net.splatcraft.forge.client.gui.stagepad.StageSelectionScreen; import net.splatcraft.forge.commands.SuperJumpCommand; import net.splatcraft.forge.data.Stage; -import net.splatcraft.forge.tileentities.SpawnPadTileEntity; - -import java.util.ArrayList; -import java.util.List; public class SendStageWarpDataToPadPacket extends PlayS2CPacket { @@ -46,7 +43,7 @@ public void encode(FriendlyByteBuf buffer) public static SendStageWarpDataToPadPacket compile(Player player) { - ArrayList stages = Stage.getAllStages(player.level); + ArrayList stages = Stage.getAllStages(player.level()); ArrayList needsUpdate = new ArrayList<>(); for (Stage stage : stages) @@ -101,4 +98,4 @@ public void execute() { StageSelectionScreen.updateValidSuperJumpsList(validStages, outOfReachStages, needsUpdate); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/registries/SplatcraftBlocks.java b/src/main/java/net/splatcraft/forge/registries/SplatcraftBlocks.java index fda12190b..5d2052c31 100644 --- a/src/main/java/net/splatcraft/forge/registries/SplatcraftBlocks.java +++ b/src/main/java/net/splatcraft/forge/registries/SplatcraftBlocks.java @@ -68,7 +68,7 @@ public class SplatcraftBlocks public static final RegistryObject coraliteStairs = REGISTRY.register("coralite_stairs", () -> new InkStainedStairBlock.WithUninkedVariant(() -> coralite.get().defaultBlockState(), BlockBehaviour.Properties.of().instrument(NoteBlockInstrument.BASEDRUM).mapColor(MapColor.CLAY).strength(3, 3).requiresCorrectToolForDrops())); public static final RegistryObject inkVat = REGISTRY.register("ink_vat", InkVatBlock::new); - public static final RegistryObject weaponWorkbench = REGISTRY.register("ammo_knights_workbench", () -> new WeaponWorkbenchBlock("ammo_knights_workbench")); + public static final RegistryObject weaponWorkbench = REGISTRY.register("ammo_knights_workbench", () -> new WeaponWorkbenchBlock()); public static final RegistryObject remotePedestal = REGISTRY.register("remote_pedestal", RemotePedestalBlock::new); public static final RegistryObject emptyInkwell = REGISTRY.register("empty_inkwell", () -> new EmptyInkwellBlock(Block.Properties.of().instrument(NoteBlockInstrument.HAT).isRedstoneConductor((blockState, blockGetter, blockPos) -> false).strength(0.3F).sound(SoundType.GLASS))); diff --git a/src/main/java/net/splatcraft/forge/registries/SplatcraftGameRules.java b/src/main/java/net/splatcraft/forge/registries/SplatcraftGameRules.java index a0277bad1..5f5411ea9 100644 --- a/src/main/java/net/splatcraft/forge/registries/SplatcraftGameRules.java +++ b/src/main/java/net/splatcraft/forge/registries/SplatcraftGameRules.java @@ -108,11 +108,11 @@ public static > GameRules.Key getRuleFromIndex(i } public static boolean getBooleanRuleValue(Level level, GameRules.Key rule) { - return level.isClientSide ? getClientsideBooleanValue(rule) : level.getGameRules().getBoolean(rule); + return level.isClientSide() ? getClientsideBooleanValue(rule) : level.getGameRules().getBoolean(rule); } public static int getIntRuleValue(Level level, GameRules.Key rule) { - return level.isClientSide ? getClientsideIntValue(rule) : level.getGameRules().getInt(rule); + return level.isClientSide() ? getClientsideIntValue(rule) : level.getGameRules().getInt(rule); } public static boolean getClientsideBooleanValue(GameRules.Key rule) { @@ -122,4 +122,4 @@ public static boolean getClientsideBooleanValue(GameRules.Key rule) { return intRules.get(getRuleIndex(rule)); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/ColoredBarrierTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/ColoredBarrierTileEntity.java index c265f32f8..2cb3c0d26 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/ColoredBarrierTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/ColoredBarrierTileEntity.java @@ -43,7 +43,7 @@ public void tick() resetActiveTime(); } - if (level.isClientSide && ClientUtils.getClientPlayer().isCreative()) + if (level.isClientSide() && ClientUtils.getClientPlayer().isCreative()) { boolean canRender = true; Player player = ClientUtils.getClientPlayer(); @@ -106,4 +106,4 @@ public String getTeam() { public void setTeam(String team) { this.team = team; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/CrateTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/CrateTileEntity.java index d191483ee..018e56e1d 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/CrateTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/CrateTileEntity.java @@ -1,5 +1,6 @@ package net.splatcraft.forge.tileentities; +import java.util.List; import net.minecraft.core.BlockPos; import net.minecraft.core.NonNullList; import net.minecraft.nbt.CompoundTag; @@ -15,8 +16,6 @@ import net.splatcraft.forge.util.CommonUtils; import org.jetbrains.annotations.NotNull; -import java.util.List; - public class CrateTileEntity extends InkColorTileEntity implements Container { private final NonNullList inventory = NonNullList.withSize(1, ItemStack.EMPTY); @@ -31,7 +30,7 @@ public CrateTileEntity(BlockPos pos, BlockState state) public void ink(int color, float damage) { - if (level != null && level.isClientSide) + if (level != null && level.isClientSide()) { return; } @@ -214,4 +213,4 @@ public int getState() return 4 - Math.round(health * 4 / maxHealth); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/InkVatTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/InkVatTileEntity.java index be5277f27..6f19d85d0 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/InkVatTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/InkVatTileEntity.java @@ -6,7 +6,6 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.network.Connection; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket; @@ -20,6 +19,7 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BaseContainerBlockEntity; import net.minecraft.world.level.block.state.BlockState; +import net.minecraftforge.common.capabilities.ForgeCapabilities; import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.items.IItemHandler; import net.splatcraft.forge.blocks.InkVatBlock; @@ -29,6 +29,7 @@ import net.splatcraft.forge.registries.SplatcraftTileEntities; import net.splatcraft.forge.tileentities.container.InkVatContainer; import net.splatcraft.forge.util.ColorUtils; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public class InkVatTileEntity extends BaseContainerBlockEntity implements WorldlyContainer @@ -47,22 +48,23 @@ public InkVatTileEntity(BlockPos pos, BlockState state) super(SplatcraftTileEntities.inkVatTileEntity.get(), pos, state); } - @Override - public int[] getSlotsForFace(Direction side) - { - return side == Direction.UP ? INPUT_SLOTS : OUTPUT_SLOTS; + public static void tick(Level level, BlockPos pos, BlockState state, InkVatTileEntity te) { + te.updateRecipeOutput(); + if (!level.isClientSide()) { + level.setBlock(pos, state.setValue(InkVatBlock.ACTIVE, te.hasRecipe()), 3); + } } @Override - public boolean canPlaceItemThroughFace(int index, ItemStack itemStackIn, @Nullable Direction direction) + public int @NotNull [] getSlotsForFace(@NotNull Direction side) { - return canPlaceItem(index, itemStackIn); + return side == Direction.UP ? INPUT_SLOTS : OUTPUT_SLOTS; } @Override - public boolean canTakeItemThroughFace(int index, ItemStack stack, Direction direction) + public boolean canPlaceItemThroughFace(int index, @NotNull ItemStack itemStackIn, @Nullable Direction direction) { - return index == 4; + return canPlaceItem(index, itemStackIn); } @Override @@ -78,26 +80,15 @@ public boolean isEmpty() } @Override - public ItemStack getItem(int index) + public boolean canTakeItemThroughFace(int index, @NotNull ItemStack stack, @NotNull Direction direction) { - return inventory.get(index); + return index == 4; } @Override - public ItemStack removeItem(int index, int count) + public @NotNull ItemStack getItem(int index) { - if (index == 4 && !consumeIngredients(count)) - { - return ItemStack.EMPTY; - } - - ItemStack itemstack = ContainerHelper.removeItem(inventory, index, count); - if (!itemstack.isEmpty()) - { - this.setChanged(); - } - - return itemstack; + return inventory.get(index); } public boolean consumeIngredients(int count) @@ -112,11 +103,21 @@ public boolean consumeIngredients(int count) return false; } - public static void tick(Level level, BlockPos pos, BlockState state, InkVatTileEntity te) { - te.updateRecipeOutput(); - if (!level.isClientSide) { - level.setBlock(pos, state.setValue(InkVatBlock.ACTIVE, te.hasRecipe()), 3); + @Override + public @NotNull ItemStack removeItem(int index, int count) + { + if (index == 4 && !consumeIngredients(count)) + { + return ItemStack.EMPTY; } + + ItemStack itemstack = ContainerHelper.removeItem(inventory, index, count); + if (!itemstack.isEmpty()) + { + this.setChanged(); + } + + return itemstack; } public void updateRecipeOutput() @@ -135,13 +136,13 @@ public boolean hasOmniFilter() } @Override - public ItemStack removeItemNoUpdate(int index) + public @NotNull ItemStack removeItemNoUpdate(int index) { return ContainerHelper.takeItem(inventory, index); } @Override - public void setItem(int index, ItemStack stack) + public void setItem(int index, @NotNull ItemStack stack) { inventory.set(index, stack); if (stack.getCount() > this.getMaxStackSize()) @@ -153,10 +154,9 @@ public void setItem(int index, ItemStack stack) } @Override - public boolean stillValid(Player player) + public boolean stillValid(@NotNull Player player) { - if (this.level.getBlockEntity(this.getBlockPos()) != this) - { + if (this.level != null && this.level.getBlockEntity(this.getBlockPos()) != this) { return false; } return !(player.distanceToSqr((double) this.getBlockPos().getX() + 0.5D, (double) this.getBlockPos().getY() + 0.5D, (double) this.getBlockPos().getZ() + 0.5D) > 64.0D); @@ -188,20 +188,20 @@ public void saveAdditional(CompoundTag nbt) } @Override - protected Component getDefaultName() + protected @NotNull Component getDefaultName() { return Component.translatable("container.ink_vat"); } @Override - protected AbstractContainerMenu createMenu(int id, Inventory player) + protected @NotNull AbstractContainerMenu createMenu(int id, @NotNull Inventory player) { return new InkVatContainer(id, player, this, false); } //Nbt Read @Override - public void load(CompoundTag nbt) + public void load(@NotNull CompoundTag nbt) { super.load(nbt); color = ColorUtils.getColorFromNbt(nbt); @@ -213,7 +213,7 @@ public void load(CompoundTag nbt) } @Override - public CompoundTag getUpdateTag() + public @NotNull CompoundTag getUpdateTag() { return new CompoundTag(){{saveAdditional(this);}}; } @@ -236,11 +236,11 @@ public void onDataPacket(Connection net, ClientboundBlockEntityDataPacket pkt) } @Override - public boolean canPlaceItem(int index, ItemStack stack) { + public boolean canPlaceItem(int index, @NotNull ItemStack stack) { return switch (index) { - case 0 -> ItemStack.isSame(stack, new ItemStack(Items.INK_SAC)); - case 1 -> ItemStack.isSame(stack, new ItemStack(SplatcraftItems.powerEgg.get())); - case 2 -> ItemStack.isSame(stack, new ItemStack(SplatcraftItems.emptyInkwell.get())); + case 0 -> stack.is(Items.INK_SAC); + case 1 -> stack.is(SplatcraftItems.powerEgg.get()); + case 2 -> stack.is(SplatcraftItems.emptyInkwell.get()); case 3 -> stack.is(SplatcraftTags.Items.FILTERS); default -> false; }; @@ -250,7 +250,9 @@ public boolean canPlaceItem(int index, ItemStack stack) { public void onRedstonePulse() { if (hasRecipe()) { - level.sendBlockUpdated(getBlockPos(), getBlockState(), getBlockState(), 2); + if (level != null) { + level.sendBlockUpdated(getBlockPos(), getBlockState(), getBlockState(), 2); + } if (pointer != -1 && recipeEntries > 0) { pointer = (pointer + 1) % recipeEntries; setColor(InkVatContainer.sortRecipeList(InkVatContainer.getAvailableRecipes(this)).get(pointer)); @@ -271,9 +273,9 @@ public void setRecipeEntries(int v) { } @Override - public net.minecraftforge.common.util.LazyOptional getCapability(net.minecraftforge.common.capabilities.Capability capability, @Nullable Direction facing) + public net.minecraftforge.common.util.@NotNull LazyOptional getCapability(net.minecraftforge.common.capabilities.@NotNull Capability capability, @Nullable Direction facing) { - if (!this.isRemoved() && facing != null && capability == net.minecraftforge.items.CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) + if (!this.isRemoved() && facing != null && capability == ForgeCapabilities.ITEM_HANDLER) { if (facing == Direction.UP) { @@ -302,7 +304,7 @@ public void setRemoved() } } - public boolean setColorAndUpdate(int color) + public void setColorAndUpdate(int color) { boolean changeState = Math.min(color, 0) != Math.min(getColor(), 0); setColor(color); @@ -316,6 +318,5 @@ public boolean setColorAndUpdate(int color) level.sendBlockUpdated(getBlockPos(), getBlockState(), getBlockState(), 2); } } - return true; } } \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/InkedBlockTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/InkedBlockTileEntity.java index ec268be90..356599bf7 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/InkedBlockTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/InkedBlockTileEntity.java @@ -38,7 +38,7 @@ public void setLevel(Level level) { //Used to port Inked Blocks to World Ink system public static void tick(Level level, BlockPos pos, BlockState state, T te) { - if (!level.isClientSide && te instanceof InkedBlockTileEntity inkedBlock) + if (!level.isClientSide() && te instanceof InkedBlockTileEntity inkedBlock) { if(inkedBlock.hasSavedState()) { @@ -131,4 +131,4 @@ public boolean hasSavedColor() public InkBlockUtils.InkType getPermanentInkType() { return permanentInkType; } public void setPermanentInkType(InkBlockUtils.InkType permanentInkType) { this.permanentInkType = permanentInkType; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/SpawnPadTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/SpawnPadTileEntity.java index 4da357841..809446ad0 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/SpawnPadTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/SpawnPadTileEntity.java @@ -1,20 +1,18 @@ package net.splatcraft.forge.tileentities; +import java.util.UUID; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.world.entity.Entity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.phys.Vec3; -import net.minecraftforge.event.world.ChunkEvent; import net.splatcraft.forge.commands.SuperJumpCommand; import net.splatcraft.forge.data.Stage; import net.splatcraft.forge.entities.SpawnShieldEntity; import net.splatcraft.forge.registries.SplatcraftTileEntities; import org.jetbrains.annotations.NotNull; -import java.util.UUID; - public class SpawnPadTileEntity extends InkColorTileEntity { private UUID spawnShieldUuid; @@ -48,7 +46,7 @@ public void setSpawnShield(SpawnShieldEntity shield) } public void addToStages() { - if(!level.isClientSide) + if (!level.isClientSide()) for (Stage stage : Stage.getStagesForPosition(level, new Vec3(getBlockPos().getX(), getBlockPos().getY(), getBlockPos().getZ()))) stage.addSpawnPad(this); } @@ -85,4 +83,4 @@ public void onLoad() super.onLoad(); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/StageBarrierTileEntity.java b/src/main/java/net/splatcraft/forge/tileentities/StageBarrierTileEntity.java index 5b96a0983..0baf82664 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/StageBarrierTileEntity.java +++ b/src/main/java/net/splatcraft/forge/tileentities/StageBarrierTileEntity.java @@ -59,7 +59,7 @@ public void tick() } - if (level.isClientSide && ClientUtils.getClientPlayer().isCreative()) + if (level.isClientSide() && ClientUtils.getClientPlayer().isCreative()) { boolean canRender = true; Player player = ClientUtils.getClientPlayer(); @@ -147,4 +147,4 @@ public float getActiveTime() { return activeTime; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/tileentities/container/InkVatContainer.java b/src/main/java/net/splatcraft/forge/tileentities/container/InkVatContainer.java index 503fd34ac..311cf523a 100644 --- a/src/main/java/net/splatcraft/forge/tileentities/container/InkVatContainer.java +++ b/src/main/java/net/splatcraft/forge/tileentities/container/InkVatContainer.java @@ -1,6 +1,9 @@ package net.splatcraft.forge.tileentities.container; import com.google.common.collect.Lists; +import java.util.Collections; +import java.util.List; +import java.util.Objects; import net.minecraft.core.NonNullList; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.world.Container; @@ -18,14 +21,14 @@ import net.splatcraft.forge.data.SplatcraftTags; import net.splatcraft.forge.network.SplatcraftPacketHandler; import net.splatcraft.forge.network.c2s.UpdateBlockColorPacket; -import net.splatcraft.forge.registries.*; +import net.splatcraft.forge.registries.SplatcraftBlocks; +import net.splatcraft.forge.registries.SplatcraftInkColors; +import net.splatcraft.forge.registries.SplatcraftItems; +import net.splatcraft.forge.registries.SplatcraftStats; +import net.splatcraft.forge.registries.SplatcraftTileEntities; import net.splatcraft.forge.tileentities.InkVatTileEntity; import net.splatcraft.forge.util.InkColor; -import java.util.Collections; -import java.util.List; -import java.util.Objects; - public class InkVatContainer extends AbstractContainerMenu { public final InkVatTileEntity te; private final ContainerLevelAccess access; @@ -64,7 +67,7 @@ private static InkVatTileEntity getBlockEntity(Inventory inventory, FriendlyByte Objects.requireNonNull(inventory); Objects.requireNonNull(buffer); - final BlockEntity te = inventory.player.level.getBlockEntity(buffer.readBlockPos()); + final BlockEntity te = inventory.player.level().getBlockEntity(buffer.readBlockPos()); if (te instanceof InkVatTileEntity) { return (InkVatTileEntity) te; @@ -156,7 +159,7 @@ public void updateInkVatColor(int pointer, int color) { te.pointer = pointer; - if (te.getLevel().isClientSide) + if (te.getLevel().isClientSide()) { SplatcraftPacketHandler.sendToServer(new UpdateBlockColorPacket(te.getBlockPos(), color, pointer)); } else if (te.getBlockState().getBlock() instanceof InkVatBlock) @@ -320,4 +323,4 @@ public void setChanged() updateAvailableRecipes(); } } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/util/ClientUtils.java b/src/main/java/net/splatcraft/forge/util/ClientUtils.java index 2ac540104..d1766d399 100644 --- a/src/main/java/net/splatcraft/forge/util/ClientUtils.java +++ b/src/main/java/net/splatcraft/forge/util/ClientUtils.java @@ -4,7 +4,6 @@ import java.util.HashMap; import java.util.TreeMap; import java.util.UUID; - import net.minecraft.client.Minecraft; import net.minecraft.client.player.Input; import net.minecraft.client.player.LocalPlayer; @@ -74,7 +73,7 @@ public static double getDurabilityForDisplay() { Player player = getClientPlayer(); - if (!SplatcraftGameRules.getLocalizedRule(player.level, player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK)) + if (!SplatcraftGameRules.getLocalizedRule(player.level(), player.blockPosition(), SplatcraftGameRules.REQUIRE_INK_TANK)) { return 0; } @@ -126,4 +125,4 @@ public static void setSquid(PlayerInfo cap, boolean newSquid) { cap.setIsSquid(newSquid); SplatcraftPacketHandler.sendToServer(new PlayerSetSquidC2SPacket(newSquid)); } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/util/ColorUtils.java b/src/main/java/net/splatcraft/forge/util/ColorUtils.java index 370a4985e..495b75031 100644 --- a/src/main/java/net/splatcraft/forge/util/ColorUtils.java +++ b/src/main/java/net/splatcraft/forge/util/ColorUtils.java @@ -5,10 +5,10 @@ import net.minecraft.client.Minecraft; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.TextColor; import net.minecraft.network.chat.TextComponent; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; @@ -84,7 +84,7 @@ else if (entity instanceof IColoredEntity) public static int getPlayerColor(LivingEntity player) { - if(player.level.isClientSide && player instanceof Player p) + if (player.level().isClientSide() && player instanceof Player p) return ClientUtils.getClientPlayerColor(p.getGameProfile().getId()); if(PlayerInfoCapability.hasCapability(player)) return PlayerInfoCapability.get(player).getColor(); @@ -103,8 +103,8 @@ public static void setPlayerColor(Player player, int color, boolean updateClient } - Level level = player.level; - if (!level.isClientSide && updateClient) + Level level = player.level(); + if (!level.isClientSide() && updateClient) { SplatcraftPacketHandler.sendToTrackersAndSelf(new PlayerColorPacket(player, color), player); } diff --git a/src/main/java/net/splatcraft/forge/util/CommonUtils.java b/src/main/java/net/splatcraft/forge/util/CommonUtils.java index afa9f83db..733066d01 100644 --- a/src/main/java/net/splatcraft/forge/util/CommonUtils.java +++ b/src/main/java/net/splatcraft/forge/util/CommonUtils.java @@ -74,7 +74,7 @@ public static void blockDrop(Level levelIn, BlockPos pos, ItemStack stack) } public static void spawnItem(Level levelIn, BlockPos pos, ItemStack stack) { - if (!levelIn.isClientSide && !stack.isEmpty()) + if (!levelIn.isClientSide() && !stack.isEmpty()) { double d0 = (double)(levelIn.random.nextFloat() * 0.5F) + 0.25D; double d1 = (double)(levelIn.random.nextFloat() * 0.5F) + 0.25D; @@ -108,4 +108,4 @@ public static boolean anyWeaponOnCooldown(Player player) { boolean isOffOnCooldown = player.getOffhandItem().getItem() instanceof WeaponBaseItem weapon && player.getCooldowns().isOnCooldown(weapon); return isMainOnCooldown || isOffOnCooldown; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/util/InkBlockUtils.java b/src/main/java/net/splatcraft/forge/util/InkBlockUtils.java index 4be1825b7..b5fe042ca 100644 --- a/src/main/java/net/splatcraft/forge/util/InkBlockUtils.java +++ b/src/main/java/net/splatcraft/forge/util/InkBlockUtils.java @@ -15,7 +15,6 @@ import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.RenderShape; -import net.minecraft.world.level.block.entity.BlockEntity; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.chunk.LevelChunk; import net.minecraft.world.phys.AABB; @@ -64,7 +63,7 @@ public static boolean clearInk(Level level, BlockPos pos, boolean removePermanen if (update) { chunk.setUnsaved(true); - if (!level.isClientSide) { + if (!level.isClientSide()) { WorldInk.Entry newInk = worldInk.getInk(relative); if (newInk != null) { SplatcraftPacketHandler.sendToTrackers(new UpdateInkPacket(pos, newInk.color(), newInk.type()), chunk); @@ -115,7 +114,7 @@ public static BlockInkedResult inkBlock(Level level, BlockPos pos, int color, fl isBlockFoliage(level.getBlockState(pos.above()))) level.destroyBlock(pos.above(), true); - if (!level.isClientSide) { + if (!level.isClientSide()) { SplatcraftPacketHandler.sendToTrackers(new UpdateInkPacket(pos, color, inkType), chunk); } @@ -136,7 +135,7 @@ public static BlockInkedResult permanentInk(Level level, BlockPos pos) { return BlockInkedResult.FAIL; } - if (!level.isClientSide) { + if (!level.isClientSide()) { worldInk.setPermanentInk(relative, ink.color(), ink.type()); chunk.setUnsaved(true); SplatcraftPacketHandler.sendToTrackers(new UpdateInkPacket(pos, ink.color(), ink.type()), chunk); diff --git a/src/main/java/net/splatcraft/forge/util/InkColor.java b/src/main/java/net/splatcraft/forge/util/InkColor.java index d2f0c448b..b2779f06c 100644 --- a/src/main/java/net/splatcraft/forge/util/InkColor.java +++ b/src/main/java/net/splatcraft/forge/util/InkColor.java @@ -1,15 +1,13 @@ package net.splatcraft.forge.util; -import net.minecraft.client.resources.language.I18n; -import net.minecraft.network.chat.TranslatableComponent; +import java.util.TreeMap; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.DyeColor; import net.minecraftforge.registries.IForgeRegistryEntry; import net.splatcraft.forge.Splatcraft; import org.jetbrains.annotations.Nullable; -import java.util.TreeMap; - public class InkColor implements Comparable, IForgeRegistryEntry { private static final TreeMap colorMap = new TreeMap<>(); private static int idIndex = 0; diff --git a/src/main/java/net/splatcraft/forge/util/InkDamageUtils.java b/src/main/java/net/splatcraft/forge/util/InkDamageUtils.java index 2a5e0dee1..0bb9e765e 100644 --- a/src/main/java/net/splatcraft/forge/util/InkDamageUtils.java +++ b/src/main/java/net/splatcraft/forge/util/InkDamageUtils.java @@ -3,7 +3,6 @@ import java.util.Objects; import net.minecraft.core.BlockPos; import net.minecraft.network.chat.Component; -import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.damagesource.IndirectEntityDamageSource; import net.minecraft.world.entity.Entity; @@ -107,7 +106,7 @@ public static boolean doDamage(Level level, LivingEntity target, float damage, i InkOverlayInfo info = InkOverlayCapability.get(target); info.setWoolColor(color); - if (!level.isClientSide) { + if (!level.isClientSide()) { SplatcraftPacketHandler.sendToTrackers(new UpdateInkOverlayPacket(target, info), target); } } @@ -127,7 +126,7 @@ public static boolean doDamage(Level level, LivingEntity target, float damage, i if (info.getAmount() < target.getMaxHealth() * 1.5) info.addAmount(damage * (target instanceof IColoredEntity || damageMobs ? 1 : Math.max(0.5f, mobDmgPctg))); info.setColor(color); - if (!level.isClientSide) { + if (!level.isClientSide()) { SplatcraftPacketHandler.sendToTrackersAndSelf(new UpdateInkOverlayPacket(target, info), target); } diff --git a/src/main/java/net/splatcraft/forge/util/InkExplosion.java b/src/main/java/net/splatcraft/forge/util/InkExplosion.java index ef935370d..8cef82508 100644 --- a/src/main/java/net/splatcraft/forge/util/InkExplosion.java +++ b/src/main/java/net/splatcraft/forge/util/InkExplosion.java @@ -2,6 +2,9 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; +import java.util.Collections; +import java.util.List; +import java.util.Set; import net.minecraft.core.BlockPos; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.util.Mth; @@ -20,10 +23,6 @@ import net.minecraft.world.phys.Vec3; import org.jetbrains.annotations.Nullable; -import java.util.Collections; -import java.util.List; -import java.util.Set; - public class InkExplosion { private final Level level; private final double x; @@ -68,7 +67,7 @@ public static void createInkExplosion(Level level, Entity source, BlockPos pos, public static void createInkExplosion(Level level, Entity source, BlockPos pos, float size, float blockDamage, float minDamage, float maxDamage, boolean damageMobs, int color, InkBlockUtils.InkType type, ItemStack weapon) { - if (level.isClientSide) + if (level.isClientSide()) return; InkExplosion inksplosion = new InkExplosion(level, source, pos.getX(), pos.getY(), pos.getZ(), blockDamage, minDamage, maxDamage, damageMobs, size, color, type, weapon); @@ -198,4 +197,4 @@ public Vec3 getPosition() { return this.position; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/util/PlayerCharge.java b/src/main/java/net/splatcraft/forge/util/PlayerCharge.java index df7583dda..f114cb066 100644 --- a/src/main/java/net/splatcraft/forge/util/PlayerCharge.java +++ b/src/main/java/net/splatcraft/forge/util/PlayerCharge.java @@ -3,7 +3,6 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; - import net.minecraft.client.Minecraft; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; @@ -127,7 +126,7 @@ public float getDischargeValue(float partialTicks) public static void dischargeWeapon(Player player) { - if (!player.level.isClientSide || !hasCharge(player)) + if (!player.level().isClientSide() || !hasCharge(player)) return; PlayerCharge charge = getCharge(player); @@ -190,4 +189,4 @@ public void reset() { public String toString() { return "PlayerCharge: [" + chargedWeapon + " x " + charge + "] (" + super.toString() + ")"; } -} +} \ No newline at end of file diff --git a/src/main/java/net/splatcraft/forge/util/WeaponTooltip.java b/src/main/java/net/splatcraft/forge/util/WeaponTooltip.java index 47f1b3583..3b87da733 100644 --- a/src/main/java/net/splatcraft/forge/util/WeaponTooltip.java +++ b/src/main/java/net/splatcraft/forge/util/WeaponTooltip.java @@ -2,7 +2,7 @@ import net.minecraft.ChatFormatting; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.network.chat.TranslatableComponent; + import net.splatcraft.forge.handlers.DataHandler; import net.splatcraft.forge.items.weapons.settings.AbstractWeaponSettings;