Project now on BukkitDevhttp://dev.bukkit.org/server-mods/coordinatesignwarp/ Description / BackgroundThis plugin was built to solve a simple problem on my server: To stop cluttering up the warp list. Some of the projects we build require a lot of warps in a very small area. I came up with the idea that instead of making more warps, I could put coordinates on a sign instead. This plugin is very simple. No flatfiles or databases since everything you need is simply stored on the sign. Permissions CoordinateSignWarp.Create CoordinateSignWarp.Use CoordinateSign.*: Both of the above Usage:First line: Any name so long as the name is between [ ] Second line: X Third line: Y Fourth line: Z Coordinates are minecraft style, meaning Z is not height. Once you have one created, you just right click it to warp. Download: http://dev.bukkit.org/server-mods/coordinatesignwarp/
Upon placing any non-warp sign (even a blank sign) in 1.3.1... Code: 2012-08-10 10:15:12 [SEVERE] Could not pass event SignChangeEvent to CoordinateSignWarp org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:332) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:1300) at net.minecraft.server.Packet130UpdateSign.handle(SourceFile:46) at net.minecraft.server.NetworkManager.b(NetworkManager.java:281) at net.minecraft.server.NetServerHandler.d(NetServerHandler.java:109) at net.minecraft.server.ServerConnection.b(SourceFile:35) at net.minecraft.server.DedicatedServerConnection.b(SourceFile:30) at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:579) at net.minecraft.server.DedicatedServer.q(DedicatedServer.java:212) at net.minecraft.server.MinecraftServer.p(MinecraftServer.java:472) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:404) at net.minecraft.server.ThreadServerApplication.run(SourceFile:539) Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.rangeCheck(ArrayList.java:604) at java.util.ArrayList.get(ArrayList.java:382) at com.smulk.CoordinateSignWarp.CoordinateSign.isSignWarp(CoordinateSign.java:60) at com.smulk.CoordinateSignWarp.Listeners.BlockListener.onSignChange(BlockListener.java:19) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:330) ... 14 more Placing a properly-formatted warp sign doesn't spit out these errors, though.
Fixed. It only happened when the sign was blank, not with any non-warp sign. Reason was because the way I setup my if statement in the code. If the sign was blank, the array size was zero, and it was trying to look at array index 0, which didn't exist, therefore it threw an out of bounds exception. I can look into this.