From 73fcfce45472e9919a4eee087e6c9980f6a57aa1 Mon Sep 17 00:00:00 2001 From: asdflj <854865755@qq.com> Date: Mon, 21 Nov 2022 14:31:15 +0800 Subject: [PATCH] add level maintainer permission control --- .../github/common/block/BlockLevelMaintainer.java | 12 ++++++++++-- src/main/resources/assets/ae2fc/lang/en_US.lang | 4 ++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/glodblock/github/common/block/BlockLevelMaintainer.java b/src/main/java/com/glodblock/github/common/block/BlockLevelMaintainer.java index 8f726bac..75ba5238 100644 --- a/src/main/java/com/glodblock/github/common/block/BlockLevelMaintainer.java +++ b/src/main/java/com/glodblock/github/common/block/BlockLevelMaintainer.java @@ -1,6 +1,8 @@ package com.glodblock.github.common.block; +import appeng.api.config.SecurityPermissions; import appeng.block.AEBaseItemBlock; +import appeng.util.Platform; import com.glodblock.github.client.render.RenderBlockLevelMaintainer; import com.glodblock.github.common.tabs.FluidCraftingTabs; import com.glodblock.github.common.tile.TileLevelMaintainer; @@ -8,12 +10,14 @@ import com.glodblock.github.inventory.InventoryHandler; import com.glodblock.github.inventory.gui.GuiType; import com.glodblock.github.util.BlockPos; import com.glodblock.github.util.NameConst; +import com.glodblock.github.util.Util; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.util.ChatComponentText; import net.minecraft.util.EnumFacing; import net.minecraft.world.World; @@ -46,8 +50,12 @@ public class BlockLevelMaintainer extends FCBaseBlock { } TileLevelMaintainer tile = getTileEntity(world, x, y, z); if (tile != null) { - if (!world.isRemote) { - InventoryHandler.openGui(player, world, new BlockPos(x, y, z), EnumFacing.getFront(facing), GuiType.LEVEL_MAINTAINER); + if (Platform.isServer()) { + if (Util.hasPermission(player, SecurityPermissions.CRAFT, tile)) { + InventoryHandler.openGui(player, world, new BlockPos(x, y, z), EnumFacing.getFront(facing), GuiType.LEVEL_MAINTAINER); + } else { + player.addChatComponentMessage(new ChatComponentText("You don't have permission to view.")); + } } return true; } diff --git a/src/main/resources/assets/ae2fc/lang/en_US.lang b/src/main/resources/assets/ae2fc/lang/en_US.lang index ab8f2e35..624e54c7 100644 --- a/src/main/resources/assets/ae2fc/lang/en_US.lang +++ b/src/main/resources/assets/ae2fc/lang/en_US.lang @@ -50,8 +50,8 @@ ae2fc.tooltip.not_prio.hint=Enabled ae2fc.tooltip.prio=Allow fluids to be placed first ae2fc.tooltip.prio.hint=Disabled ae2fc.tooltip.submit=Submit -ae2fc.tooltip.enable=enable -ae2fc.tooltip.disable=disable +ae2fc.tooltip.enable=Enabled +ae2fc.tooltip.disable=Disabled ae2fc.gui.part_fluid_pattern_terminal=Fluid Pattern Terminal ae2fc.gui.part_fluid_pattern_terminal_ex=Fluid Processing Pattern Terminal