It sounds silly, but I cannot find a plugin that does this. If the player doesn't have a permission node, they cannot interact with trapdoors; no opening, no closing. I really need this, thanks.
@Kassetral Thanks! What is the permission node I should use? EDIT: I went ahead and took the liberty of decompiling your code. The permission node seems to be trapdoor.use. Thank you very much again! BTW, you should post this plugin on BukkitDev. EDIT 2: Alright so I just tested the plugin and it works great. There is one minor problem though, if the player does have the permission to interact with a trapdoor, then this error pops up in console when they do. Code: [13:34:36 ERROR]: Could not pass event PlayerInteractEvent to TRAPDOOR v0.1 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:320) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav a:62) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j ava:486) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j ava:471) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInte ractEvent(CraftEventFactory.java:195) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b30 20jnks] at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInte ractEvent(CraftEventFactory.java:165) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b30 20jnks] at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java :988) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.PacketPlayInArmAnimation.a(SourceFile:43 ) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.PacketPlayInArmAnimation.handle(SourceFi le:9) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146 ) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [craf tbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:6 55) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:2 50) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:5 45) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java :457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6 17) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] Caused by: java.lang.NullPointerException at com.kassestral.plugins.trapdoor.Plugin.checkUsage(Plugin.java:27) ~[? :?] at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1 .8.0] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:318) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] ... 15 more
Kassestral There's still that issue. It doesn't happen as often though. Code: [19:51:58 ERROR]: Could not pass event PlayerInteractEvent to TRAPDOOR v0.1 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:320) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav a:62) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.j ava:486) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j ava:471) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInte ractEvent(CraftEventFactory.java:195) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b30 20jnks] at org.bukkit.craftbukkit.v1_7_R1.event.CraftEventFactory.callPlayerInte ractEvent(CraftEventFactory.java:165) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b30 20jnks] at net.minecraft.server.v1_7_R1.PlayerConnection.a(PlayerConnection.java :988) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.PacketPlayInArmAnimation.a(SourceFile:43 ) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.PacketPlayInArmAnimation.handle(SourceFi le:9) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.NetworkManager.a(NetworkManager.java:146 ) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.ServerConnection.c(SourceFile:134) [craf tbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.u(MinecraftServer.java:6 55) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:2 50) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:5 45) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java :457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6 17) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] Caused by: java.lang.NullPointerException at com.kassestral.plugins.trapdoor.Plugin.checkUsage(Plugin.java:27) ~[? :?] at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1 .8.0] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja va:318) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks] ... 15 more EDIT: So I just did some more testing, and that error seems to pop up every time someone left clicks.