From 0a8f3662ba62fab7f13e512a3806476b9463a666 Mon Sep 17 00:00:00 2001 From: 17146 <1714673995@qq.com> Date: Tue, 18 Jun 2024 00:59:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=86=97=E4=BD=99menu?= =?UTF-8?q?=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mcreator/target/entity/MortarEntity.java | 9 -- .../mcreator/target/init/TargetModMenus.java | 2 - .../target/world/inventory/MortarGUIMenu.java | 88 ------------------- 3 files changed, 99 deletions(-) delete mode 100644 src/main/java/net/mcreator/target/world/inventory/MortarGUIMenu.java diff --git a/src/main/java/net/mcreator/target/entity/MortarEntity.java b/src/main/java/net/mcreator/target/entity/MortarEntity.java index 81da7a8d4..57319d17a 100644 --- a/src/main/java/net/mcreator/target/entity/MortarEntity.java +++ b/src/main/java/net/mcreator/target/entity/MortarEntity.java @@ -1,17 +1,12 @@ package net.mcreator.target.entity; -import io.netty.buffer.Unpooled; import net.mcreator.target.TargetMod; import net.mcreator.target.init.TargetModAttributes; import net.mcreator.target.init.TargetModEntities; import net.mcreator.target.init.TargetModItems; import net.mcreator.target.init.TargetModSounds; -import net.mcreator.target.world.inventory.MortarGUIMenu; -import net.minecraft.core.BlockPos; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.nbt.CompoundTag; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.network.chat.Component; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientGamePacketListener; import net.minecraft.network.syncher.EntityDataAccessor; @@ -19,23 +14,19 @@ import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; -import net.minecraft.server.level.ServerPlayer; import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.world.DifficultyInstance; import net.minecraft.world.InteractionHand; import net.minecraft.world.InteractionResult; -import net.minecraft.world.MenuProvider; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.damagesource.DamageTypes; import net.minecraft.world.entity.*; import net.minecraft.world.entity.ai.attributes.AttributeSupplier; import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.entity.item.ItemEntity; -import net.minecraft.world.entity.player.Inventory; import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.projectile.ThrownPotion; -import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; import net.minecraft.world.level.ServerLevelAccessor; diff --git a/src/main/java/net/mcreator/target/init/TargetModMenus.java b/src/main/java/net/mcreator/target/init/TargetModMenus.java index 7bb48436b..f6bda313d 100644 --- a/src/main/java/net/mcreator/target/init/TargetModMenus.java +++ b/src/main/java/net/mcreator/target/init/TargetModMenus.java @@ -2,7 +2,6 @@ package net.mcreator.target.init; import net.mcreator.target.TargetMod; import net.mcreator.target.world.inventory.GunRecycleGuiMenu; -import net.mcreator.target.world.inventory.MortarGUIMenu; import net.minecraft.world.inventory.MenuType; import net.minecraftforge.common.extensions.IForgeMenuType; import net.minecraftforge.registries.DeferredRegister; @@ -12,6 +11,5 @@ import net.minecraftforge.registries.RegistryObject; public class TargetModMenus { public static final DeferredRegister> REGISTRY = DeferredRegister.create(ForgeRegistries.MENU_TYPES, TargetMod.MODID); - public static final RegistryObject> MORTAR_GUI = REGISTRY.register("mortar_gui", () -> IForgeMenuType.create(MortarGUIMenu::new)); public static final RegistryObject> GUN_RECYCLE_GUI = REGISTRY.register("gun_recycle_gui", () -> IForgeMenuType.create(GunRecycleGuiMenu::new)); } diff --git a/src/main/java/net/mcreator/target/world/inventory/MortarGUIMenu.java b/src/main/java/net/mcreator/target/world/inventory/MortarGUIMenu.java deleted file mode 100644 index ece528fb9..000000000 --- a/src/main/java/net/mcreator/target/world/inventory/MortarGUIMenu.java +++ /dev/null @@ -1,88 +0,0 @@ -package net.mcreator.target.world.inventory; - -import net.mcreator.target.init.TargetModAttributes; -import net.mcreator.target.init.TargetModMenus; -import net.mcreator.target.tools.TraceTool; -import net.minecraft.client.gui.components.EditBox; -import net.minecraft.core.BlockPos; -import net.minecraft.network.FriendlyByteBuf; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.entity.LivingEntity; -import net.minecraft.world.entity.player.Inventory; -import net.minecraft.world.entity.player.Player; -import net.minecraft.world.inventory.AbstractContainerMenu; -import net.minecraft.world.inventory.ContainerLevelAccess; -import net.minecraft.world.inventory.Slot; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; -import net.minecraftforge.event.TickEvent; -import net.minecraftforge.eventbus.api.SubscribeEvent; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -import java.util.HashMap; -import java.util.Map; -import java.util.function.Supplier; - -@Mod.EventBusSubscriber -public class MortarGUIMenu extends AbstractContainerMenu implements Supplier> { - public final static HashMap GUI_STATE = new HashMap<>(); - public final Level world; - public final Player entity; - public int x, y, z; - private final Map customSlots = new HashMap<>(); - - public MortarGUIMenu(int id, Inventory inv, FriendlyByteBuf extraData) { - super(TargetModMenus.MORTAR_GUI.get(), id); - this.entity = inv.player; - this.world = inv.player.level(); - IItemHandler internal = new ItemStackHandler(0); - if (extraData != null) { - BlockPos pos = extraData.readBlockPos(); - this.x = pos.getX(); - this.y = pos.getY(); - this.z = pos.getZ(); - ContainerLevelAccess access = ContainerLevelAccess.create(world, pos); - } - Entity looking = TraceTool.findLookingEntity(entity, 6); - if (looking == null) return; - - if (GUI_STATE.get("text:pitch") instanceof EditBox box) - box.setValue((new java.text.DecimalFormat("##").format(-looking.getXRot()))); - } - - @Override - public boolean stillValid(Player player) { - return true; - } - - @Override - public ItemStack quickMoveStack(Player playerIn, int index) { - return ItemStack.EMPTY; - } - - public Map get() { - return customSlots; - } - - @SubscribeEvent - public static void onPlayerTick(TickEvent.PlayerTickEvent event) { - Player entity = event.player; - if (event.phase == TickEvent.Phase.END && entity.containerMenu instanceof MortarGUIMenu) { - Entity looking = TraceTool.findLookingEntity(entity, 6); - if (looking == null) return; - - String s = GUI_STATE.containsKey("text:pitch") ? ((EditBox) GUI_STATE.get("text:pitch")).getValue() : "0"; - double converted = 0; - try { - converted = Double.parseDouble(s); - } catch (Exception ignored) { - } - - if (20 <= converted && converted <= 90) { - ((LivingEntity) looking).getAttribute(TargetModAttributes.MORTAR_PITCH.get()).setBaseValue(converted); - } - } - } -}