ClickEdit
The simplest sign editing plugin around!
Compatible with all region/protection plugins!
Features
- Shift+Right click a sign to edit it. Its that simple!
- Color code support! Put '&', followed by a number from 0-9, or a letter from a-o. http://ess.khhq.net/mc/
- Compatible with region protection plugins. Players can only edit signs where they are allowed to!
- Permissions support
Permissions
- clickedit.edit - Permission to use the editor
- clickedit.color - Permission to add color to signs
Commands
- /clickedit edit - Brings up the sign editor for the sign you are looking at
- /clickedit edit [line #] [text] - Edit a line on a sign directly (supports region protection & chat colors)
Installation
- Requires ProtocolLib
- Drag and drop the plugin into your plugins folder! Thats it!
Additional Information
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
- A unique identifier
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
- The number of players online
- The Metrics version
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
This plugin also utilizes Gravity's Auto-updater. This allows the plugin to automatically download new versions that are approved by the bukkit staff.
If you would like to disable this, you may edit plugins/ClickEdit/config.yml and change enable-updater to false.
Seems like an excellent plugin. Maybe you'll allow me to add it to this list? :)
My only concern is that you're accesing Bukkit API (and normal HashMaps) in SignGUI.PacketListener.onPacketReceiving(), which is executed asynchronously in each player's "read packets" thread. This may case the server to occationally throw ConcurrentModificationExceptions, though it could be worse.
The simplest solution is probably to synchronize the packet listener with ProtocolLib and execute everything on the main thread. Alternatively, you could convert everything to thread-safe code (use ConcurrentHashMap or
synchronize onPacketReceiving) and execute onSignDone() in a scheduled sync task.Of course, this issue is very unlikely to present itself during normal usage. But it's probably good practive to fix it nevertheless.
EDIT: Sorry, of course you can't synchronize on onPacketReceiving. Instead, you should use a common lock in both the packet listener and in open().
Really really useful! Thank you
This is a extremely(!) usefull plugin - I will add it later :]
Been waiting for something like this after SimpleSignEdit died.
Hope you have the time and intrest to keep it alive for a years to come - or release the code if abandoning it.