diff --git a/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/command/Permission.java b/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/command/Permission.java index e418c46..c487635 100644 --- a/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/command/Permission.java +++ b/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/command/Permission.java @@ -44,6 +44,7 @@ public interface Permission { String wakeup = "fakeplayer.command.wakeup"; String cmd = "fakeplayer.command.cmd"; String stop = "fakeplayer.command.stop"; + String rightClickInvsee = "fakeplayer.interact.right-click-invsee"; String op = "OP"; diff --git a/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/manager/invsee/AbstractInvseeManager.java b/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/manager/invsee/AbstractInvseeManager.java index d9aea2c..76f58a3 100644 --- a/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/manager/invsee/AbstractInvseeManager.java +++ b/fakeplayer-core/src/main/java/io/github/hello09x/fakeplayer/core/manager/invsee/AbstractInvseeManager.java @@ -1,6 +1,7 @@ package io.github.hello09x.fakeplayer.core.manager.invsee; import io.github.hello09x.devtools.core.utils.ComponentUtils; +import io.github.hello09x.fakeplayer.core.command.Permission; import io.github.hello09x.fakeplayer.core.manager.FakeplayerList; import io.github.hello09x.fakeplayer.core.manager.FakeplayerManager; import org.bukkit.Sound; @@ -66,6 +67,10 @@ public abstract class AbstractInvseeManager implements InvseeManager { return; } + if (!event.getPlayer().hasPermission(Permission.rightClickInvsee)) { + return; + } + this.invsee(event.getPlayer(), whom); // fakeplayer check here } diff --git a/fakeplayer-core/src/main/resources/plugin.yml b/fakeplayer-core/src/main/resources/plugin.yml index c1ea77f..cb44aa0 100644 --- a/fakeplayer-core/src/main/resources/plugin.yml +++ b/fakeplayer-core/src/main/resources/plugin.yml @@ -84,13 +84,16 @@ permissions: description: 'Allow player to run /fp hold' fakeplayer.command.cmd: description: 'Allow player to run /fp cmd' + fakeplayer.command.stop: + description: 'Allow player to run /fp stop' fakeplayer.config.replenish: description: 'Allow player to configure fake players can replenish' fakeplayer.config.replenish.chest: description: 'Allow player to configure fake players can replenish from nearby chest' fakeplayer.config.autofish: description: 'Allow player to configure fake players to auto-fishing' - + fakeplayer.interact.right-click-invsee: + description: 'Allow player to open inventory of fake players by right clicking' fakeplayer.spawn: description: 'Includes all basic permissions' children: @@ -105,6 +108,7 @@ permissions: - fakeplayer.command.dropinv - fakeplayer.command.skin - fakeplayer.command.invsee + - fakeplayer.interact.right-click-invsee - fakeplayer.command.status - fakeplayer.command.respawn - fakeplayer.command.config