WorldGuardExtender icon indicating copy to clipboard operation
WorldGuardExtender copied to clipboard

AutoFlags не добавляются во время rg claim, если у игрока нет пермов на них.

Open Qveshn opened this issue 3 years ago • 0 comments

Получается, что в конфиге прописано автофлаг при добавлении в рг во время его создания (/rg claim) Но у игрока нет пермов на этот флаг и в консоле идет ексепшн

com.sk89q.minecraft.util.commands.CommandPermissionsException
	at com.sk89q.worldguard.commands.region.RegionCommands.flag(RegionCommands.java:553)
	at wgextender.features.claimcommand.AutoFlags.setFlag(AutoFlags.java:73)
	at wgextender.features.claimcommand.AutoFlags.setFlagsForRegion(AutoFlags.java:61)
	at wgextender.features.claimcommand.WGRegionCommandWrapper.execute(WGRegionCommandWrapper.java:81)
	at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149)
	at org.bukkit.craftbukkit.v1_17_R1.CraftServer.dispatchCommand(CraftServer.java:790)
	at net.minecraft.server.network.PlayerConnection.handleCommand(PlayerConnection.java:1931)
	at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1770)
	at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1751)
	at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46)
	at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:1)
	at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:30)
	at net.minecraft.server.TickTask.run(SourceFile:18)
	at net.minecraft.util.thread.IAsyncTaskHandler.executeTask(SourceFile:151)
	at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23)
	at net.minecraft.util.thread.IAsyncTaskHandler.executeNext(SourceFile:125)
	at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1148)
	at net.minecraft.server.MinecraftServer.executeNext(MinecraftServer.java:1141)
	at net.minecraft.util.thread.IAsyncTaskHandler.executeAll(SourceFile:110)
	at net.minecraft.server.MinecraftServer.sleepForTick(MinecraftServer.java:1124)
	at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1054)
	at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:305)
	at java.base/java.lang.Thread.run(Thread.java:831)

Авто флаги не все доступны игроку, чтобы он не мог их удалить или изменить (например pvp deny) Как временное решение у себя в копии исходников пока попробую вернуть класс FakeActor и через него делать автофлаги.

Также, получается не очень айс, что класс AutoFlags был предназначен для автофлагов, а внутри setFlag используется для команды wgex setflag (где как раз требуются пермы игрока на флаги)

Qveshn avatar Oct 26 '21 22:10 Qveshn