Inactive [MECH] CommandSigns v0.9 - Issue commands using signs [953]

Discussion in 'Inactive/Unsupported Plugins' started by Fluff, May 5, 2011.

  1. Offline

    Fluff

    CommandSigns v0.9

    Tired of having to type out the same commands again and again? Want to allow your players to use commands only at certain places? Help is at hand!

    Feature Summary
    • Allows chat commands and chat messages to be send on right-clicking a sign.
    • Allows commands to be run on signs that players wouldn't be able to use through chat.
    • Sign usage can be limited to specific players or groups.
    • Supports 'variables' for player name and x,y,z position.
    • Won't allow users to gain access to forbidden commands without permission (secure).
    • Add a cost to use a sign, or a reward for clicking the sign!
    • Limit the number of times a sign can be used.
    • Enable and disable signs without destroying them.
    • Permissions-friendly
    • Developer API available
    User's Guide

    About The Developers

    Want to ensure your bug or suggestion isn't lost in the thread? Post it on our issue tracker.

    Command Summary (open)

    • /commandsign enable - Enables the next command sign you right-click on.
    • /commandsign enable <x> <y> <z> - Enables the command sign at x,y,z in the current world.
    • /commandsign enable <x> <y> <z> [w:]<world> - Enables the command sign in world <world> at x,y,z.
    • /commandsign enable [a:]<alias> - Enables the command sign at the alias.
    • /commandsign enable <uses> - Enables the next command sign you right-click on with a number of uses.
    • /commandsign enable <uses> <x> <y> <z> - Enables the command sign at x,y,z in the current world with a number of uses.
    • /commandsign enable <uses> <x> <y> <z> [w:]<world> - Enables the command sign in world <world> at x,y,z with a number of uses.
    • /commandsign enable <uses> [a:]<alias> - Enables the command sign at the alias with a number of uses.
    • /commandsign disable - Disables the next command sign you right-click on.
    • /commandsign disable <x> <y> <z> - Disables the command sign at x,y,z in the current world.
    • /commandsign disable <x> <y> <z> [w:]<world> - Disables the command sign at x,y,z in world <world>.
    • /commandsign disable [a:]<alias> - Disables the command sign at the alias.
    • /commandsign alias - Right-click on a block to get the alias of its location.
    • /commandsign alias <x> <y> <z> - Get the alias of the location x,y,z in the current world.
    • /commandsign alias <x> <y> <z> w:<world> - Get the alias of the location x,y,z in world <world>.
    • /commandsign alias [a:]<name> - Right-click on a block to set the alias of its location.
    • /commandsign alias <x> <y> <z> [a:]<name> - Set the alias of the location x,y,z in the current world.
    • /commandsign alias <x> <y> <z> w:<world> [a:]<name> - Set the alias of the location x,y,z in world <world>.
    • /commandsign alias remove - Right-click on a block to remove the alias of its location.
    • /commandsign alias remove [a:]<name> - Removes the alias.
    • /commandsign alias remove <x> <y> <z> - Remove the alias at location x,y,z in the current world.
    • /commandsign alias remove <x> <y> <z> w:<world> - Remove the alias at location x,y,z in world <world>.
    • /commandsign alias [a:]<name> [a:]<newname> - Set the alias of the location at <name> to <newname>.
    • /commandsign config - Lists all the configuration nodes.
    • /commandsign config <node> - Lists the configuration node.
    • /commandsign config <node> <value> - Sets the configuration node to the value.
    • /commandsign exec [a:]<alias> - Executes the command sign at the location pointed to by the alias.
    • /commandsign exec <x> <y> <z> - Executes the command sign at location x,y,z in the current world.
    • /commandsign exec <x> <y> <z> [w:]<world> - Executes the command sign at location x,y,z in world <world>.
    Syntax Summary (open)

    • [command] - use on the first line of a sign to define a command sign.
    • **[title] - use on the first line in place of [command] to customise the title of the sign
    • /command - runs a command as the player using the sign
    • /*command - runs a command as the fictional user &CommandSigns
    • /@command - elevates the player's permissions (using the permissions assigned to &CommandSigns) if necessary to run the command
    • @player/group - commands following (up to the next @) are limited to that player/group.
    • \message - prints the message to chat
    • \\message - prints the message to the player
    • <NAME> / <X> / <Y> / <Z> / <I> - replaced with the using players name/x/y/z-coord/current held item id on running.
    • $;<cost1>[;<costN>] where cost is <item id>,<item number> or <item id>:<item data>,<item number> - adds a cost to the sign
    • $$ - break evaluation of a command sign
    Permission Nodes (open)

    • commandSigns.use - Use a command sign.
    • commandSigns.create - Create, enable, or disable a command sign.
    • commandSigns.super - Create, enable, or disable a command sign using /*command, /@command, @player/group, or $.
    • commandSigns.super.cost - Create, enable, or disable a command sign using $.
    • commandSigns.super.elevated - Create, enable, or disable a command sign using /@command.
    • commandSigns.super.fakeuser - Create, enable, or disable a command sign using /*command.
    • commandSigns.super.restricted - Create, enable, or disable a command sign using @player/group.
    • commandSigns.default.<default group name> - A flag stating that the group is the default group.
    • commandSigns.config - Allows a user to manage the configuration.
    • commandSigns.alias - Allows a user to manage aliases.
    • commandSigns.exec - Allows a user to remotely trigger command signs.
    Reporting a Problem (open)
    The following bits of information are helpful to include when reporting a problem:
    1. Bukkit and plugin version.
    2. Excerpt from server log of the failed command usage, preferably with the debug configuration option set to true.
    3. Complete command sign text.
    4. Command sign configuration file.
    5. Name of plugin that the failed command comes from, preferably with a link to the plugin's forum thread.

    Recommended Plugins
    • With Annotate, you can have CommandSigns on practically any block with an almost unlimited amount of room for commands! They can even activate when pressing a button or a pressure plate!
    • With ScrollingMenuSign, your signs can look even nicer while allowing your users to scroll through a menu of commands!

    Download Latest Version
    MD5: 7f4076eea7198f2c0f17cde3f62f7c1f
    Download 0.8.1i - RB 803 and previous
    MD5: 72a60e16bfd775b3d15a03aca70e86e0

    Source

    To Everyone Asking For Redstone Support (open)

    Yes, I also think redstone support would be very cool. Unfortunately, there are some major limitations on what you can do with a redstone-controlled sign. You can read about those limitations in this post, and you can read a rationale about why those limitations exist in this post. Given those two limitations, I don't think redstone support is currently a useful feature to add, especially given what Annotate can do for you. (If you disagree, please post on the issue tracker on how you would use redstone support.) In the (not too distant) future, redstone support may will be added in a separate plugin due to the different nature of redstone command signs.

    Change Log
    version 0.9 - See Post
    • If PEX permissions work, this plugin supports it.
    • Economy redone; added Essentials Economy.
    • Localization support added.
    • Added new command: /commandsign exec
    • Events properly unregistered when plugin is disabled.
    version 0.8.13
    • Default groups should work for real.
    Older Entries (open)

    version 0.8.12
    • Added handling for default groups.
    • Added support for command aliases.
    • Added /commandsign config.
    version 0.8.11
    • Fixed @ directive.
    • Fixed '/commandsign disable' bug.
    • Added aliases.
    version 0.8.10
    • Fixed /@ permissions error.
    • Added exception handling for removing permissions from users.
    version 0.8.9
    • Added PEX and Permissions 3.0 support.
    • Added new placeholders: <N> and <I>
    • Fixed bug with regular / commands.
    • Added new directives: $$ and \\
    • Added additional debug messages.
    version 0.8.8
    • Fixed /* and /@ working without permissions support.
    • Fixed Permissions creating new users with the wrong casing.
    version 0.8.7
    • Fixed command sign creation permissions.
    • Added debug configuration option.
    version 0.8.6
    • Added Permissions checks to developer API.
    • Fixed enabling bug with /* and /@.
    • Updated to work with GroupManager and fake Permission plugins.
    version 0.8.5 - See Post
    • Fixed multi-world Permissions bug.
    • Changed @ group directive
    version 0.8.4
    • Removed support for Permissions 3.x
    • Updated to 818
    version 0.8.3
    • Fixed API bug
    version 0.8.2
    • Updated for Permissions 3.x
    version 0.8.1
    • Fixed GroupManager integration
    version 0.8
    • Added /@ to temporarily elevate a user's permissions.
    • Added developer API.
    version 0.7.1
    • Fixed item data bug - for real, this time.
    version 0.7 - See Post
    • Removed SignReadMore support.
    • Added Annotate support.
    • Added more granular permissions for advanced sign creation.
    • Removed a debug message that looked like an error.
    version 0.6.2
    • Fixed enable bug on sign creation.
    • Fixed item data bug.
    version 0.6.1
    • Fixed berating of users who can't create command signs but were just innocently putting up a sign.
    version 0.6
    • Added SignReadMore support.
    version 0.5.1
    • Can no longer place blocks directly on enabled command signs.
    • Fixed @ directive.
    • Changed fake user network code.
    version 0.5 - See Post
    • Added /commandsign commands.
    • Added finite-use signs.
    version 0.4.10
    • Fixed BOSEconomy support
    version 0.4.9
    • Supports BOSEconomy
    version 0.4.8
    • Trimming commands in hopes it fixes some problems.
    version 0.4.7 - See Post
    • Added cost signs.
    version 0.4.6
    • Hackish solution to 'items not showing up in inventory' bug.
    version 0.4.5 - See Post
    • Updated support for GroupManager.
    • Added configuration option to change the display name of the fake user.
    • Added configuration option to allow command parser to understand // commands.
    version 0.4.4
    • Fixed numerous bugs when not using Permissions.
    • Beginnings of an API for other plugin devs.
    version 0.4.3
    • Added configuration file.
    • Fixed chat command bugs.
    • Rearranged code for simpler maintenance.
    version 0.4.2 - See Post
    • BREAKING CHANGE - The fake user is now named &CommandSigns.
    version 0.4.1
    • Fixed for 740
    version 0.4
    • Bukkit team trying to break everything again
    version 0.35
    • Fixed conflict when using <NAME> in commands overriding permissions.
    version 0.3
    • Added NAME, X, Y and Z variables
    • Added permission filter
    • Allowed creation of signs that call commands user would not usually have access to
    • Allowed customisation of [command] to other text.
    version 0.15
    • Bugfix ("Insufficient Permissions" annoyance bug)
    version 0.1
    • Plugin Released
     
    Dimochka, c_dric, Flipp and 5 others like this.
  2. Offline

    davejavu

    @Fluff Sorry for my utter stupidity. On the first line, I put [command] On the second, I put /me says Hi!
    I then clicked done and typed /commandsign enable, then right clicked on the sign. It said the sign had been enabled, so I right clicked it again and nothing happened. What am I doing wrong?
     
  3. Offline

    Clem

    @davejavu What bukkit build, permissions, and Command sign versions are you using?
     
  4. Offline

    davejavu

    @Clem I've tested CommandSign v0.8.3 on CB803 and CB816, I'm using GroupManager, but I have - '*' (every permission) so that shouldn't be a problem.
     
  5. Offline

    Clem

    @davejavu I believe 0.8.3 requires Permissions 3, which Groupmanager and fake permissions cannot emulate, try 0.81
     
  6. Offline

    davejavu

    @Clem where is the download?
     
  7. Offline

    badbh222

  8. Offline

    desht

    Hi, having some difficulty in getting "/@" commands to work, probably missing something basic, but anyway. Testing right now with CommandSigns-0.8.1b & Permissions-2.7.4 (Permissions-3 testing to follow later...)

    Here's my stripped-down Permissions world.yml:

    Code:
    groups:
        CS:
            default: false
            inheritance:
            permissions:
            - general.time.set
        Default:
            default: true
            info:
                prefix: '&d'
                suffix: ''
                build: false
            inheritance:
            permissions:
        Moderator:
            default: false
            info:
                prefix: ''
                suffix: ''
                build: true
            inheritance:
            - Default
            permissions:
            - commandSigns.*
    
    users:
        desht:
            group: Moderator
            permissions:
        '&CommandSigns':
            group: CS
            permissions:
    
    So any commands to be run from a CommandSign are given permissions in the CS group.

    I create a command sign:
    Code:
    [command]
    /@time day
    
    But right-clicking it gives me "You don't have permission to set the time.". If I add "general.time.set" to Moderator's permissions, it works OK.

    "/*time day" works fine on the sign, and for this particular command it's no big deal. But as we all know, some commands don't work so well with the /* notation...
     
  9. Offline

    Fluff

    0.8.1c released. Code branches make versioning interesting.

    The above problem is fixed. In fact, a whole host of problems with /@ that people may or may not have experienced are fixed. There were significant case issues with the previous code. The above example would have worked if 'cs' has been lowercase in both places. Now it's fixed so that it doesn't matter.

    As far as I can tell, this isn't an issue with the 3.x Permissions version, since the API for getting the necessary information is directly available rather than having to load config files from the Permissions directory.
     
  10. Offline

    desht

    Working nicely now, thank you :)
     
  11. Offline

    Clem

    @Fluff RB for 1.6.6 :p Time to update your bad-ass plugin =D
     
  12. Offline

    Fluff

    0.8.4 released.

    Good news: it works with 818. Bad news: I dropped Permissions 3.x support. Seriously, if I can't create a test environment that uses Permissions 3.x, even having help from the Permissions thread and access to the source code, then there's no way I can support it. I got the test environment to work once; now it acts as if everyone has no permissions, despite nothing changing in the Permissions configuration. The 2.x builds of CommandSigns will not work with 3.x; the configuration files are in different places and have a slightly different format. If you're on Permissions 3.x, sorry but I can't go there until I've got a test environment.
    Just so you're aware, plugin devs get an announcement when there's a new RB, and I also subscribe to the RB RSS feed (which I get basically everywhere, including my phone when I'm away from the computer). While I'm sure your comment wasn't meant to provoke anything, it is slightly annoying when I'm doing everything I can to know when an RB comes out so I can update as quickly as possible. The assy, uncensored side of me wants to say "Don't tell me when to update the plugin". The civilized, polite side of me apologizes for the over-reaction. :)
     
  13. Offline

    Clem

    @Fluff thanks! Sorry, I didn't know you had their RSS feed :/. I didn't mean to be mean, but you seem to be quite the funny person :D
    Thanks for 0.8.4 I was working with Permissions 3.0 for about 5-7 hours, and gave up on it... Super frustrating, GM is better for now.
     
  14. Offline

    Fluff

    This describes my entire mindset currently, which is probably why I'm a bit grouchier than normal. Between Permissions and banging my head against other plugins, it's been a pretty bleh time. :/

    EDIT: Bah, two and a half hours after a RB comes out, all the plugins are updated, and I spent a majority of my time cursing at Permissions.
     
  15. Offline

    desht

    Your experiences with Permission 3.0 match mine, I have to say. And I'm glad you're not supporting P3 for now, since it means the next ScrollingMenuSign release doesn't need to. And CommandSigns API integration/testing is proceeding very nicely :)

    Now for the bad news... a bug report (CommandSign 0.84, CB818, Permissions 2.7.4). Seems like creating any CommandSign on a non-default world triggers a NPE, apparently related to permissions checking. This simple sign:

    Code:
    [command]
    /time day
    
    triggered this:

    Code:
    13:13:48 [SEVERE] Could not pass event PLAYER_INTERACT to CommandSigns
    java.lang.NullPointerException
            at com.edwardhand.commandsigns.CommandSigns.getPermissionNodes(CommandSigns.java:179)
            at com.edwardhand.commandsigns.CommandSigns.runCommandString(CommandSigns.java:1188)
            at com.edwardhand.commandsigns.CommandSignPlayerListener.runCommand(CommandSignPlayerListener.java:174)
            at com.edwardhand.commandsigns.CommandSignPlayerListener.onPlayerInteract(CommandSignPlayerListener.java:114)
            at org.bukkit.plugin.java.JavaPluginLoader$9.execute(JavaPluginLoader.java:299)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:162)
            at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:209)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:556)
            at net.minecraft.server.Packet15Place.a(SourceFile:57)
            at net.minecraft.server.NetworkManager.b(NetworkManager.java:217)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
            at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
            at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:401)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    
    It works fine on my main world "world", but on another world "des-world", I get the above NPE. "des-world" just inherits identical permissions from "world":

    Code:
    plugin:
        permissions:
            system: default
            copies: world
    
     
  16. Offline

    Fluff

    I keep forgetting about multiple worlds; we're just now starting to add a second world on our main server. Since all the Permissions 2.x documentation has apparently been purged, I need to know how this works:
    Code:
    plugin:
        permissions:
            system: default
            copies: world
    
    In terms of Permissions, what happens if this Permissions file copies a world and also defines Permissions users and groups? I know CommandSigns doesn't handle it, but what does Permissions do? Do the users and groups in this Permissions file get ignored? Do the new Permissions get added to the Permissions in the other world file? From the source, it appears everything else in the Permissions file gets ignored if it copies from another world. I just want to make sure that's the case since I've never used these options before.
     
  17. Offline

    KillingSpree

    hey i love this plugin and i got bukkit build 818 and got this today and i did the use old commandsigns user option and i opped /commandsigns so he is allowed to do this so that isnt a problem but whenever i use a commandsign wether i just do /command or /*command it comes up saying ! commandsigns error: couldn't find permissions plugin ! and fyi i have essentials but it has the fakepermissions thing which links it to permission. do u think the problem is that fake permissions hasnt been updated yet and therefore links to old,nonsupported permissions? or wut else could be causing it because i used the old version with th essentials stuff
     
  18. Offline

    desht

    Good question! My understanding was that this just makes "des-world" a direct copy of "world", and then the des-world.yml file is free to augment the configuration it just copied (either by adding new permissions, or revoking existing permissions). But I just tested, trying to put myself in a different group on "des-world" without build permissions, and that didn't work. Guess I don't understand it as well as I thought.

    What I have noticed though, is that if there are any users/groups defined in des-world.yml (even a dummy user/group like &CommandSigns), it works, and I don't get the NPE. But if either the "groups:" or "users:" section is empty, the NPE occurs.
     
  19. Offline

    KillingSpree

    @desht well i kinda got confused but its ok i tried a lot and i think i am just gonna w8 until essentiaals gets updated to 818 and see if the updated fakepermissions in it will do the trick thx tho
     
  20. Offline

    desht

    Little announcment: I've just released v0.3 of my ScrollingMenuSign plugin, which can make use of the CommandSigns API. Feel free to check it out :)
     
  21. Offline

    Fluff

    Yup, after looking at the code it was real obvious what would happen. It'll be fixed in the next release.
    I've been looking forward to this. Being able to put multiple commands on a single sign instead of using multiple signs is sweet.
    Out of curiosity, do /@ commands work with PEX? CommandSigns does some "outside of the API" stuff to get /@ to work with Permissions.

    0.8.5 released.

    That should fix those pesky multi-world bugs (along with a whole host of previously unreported, yet glaringly obvious little time bombs waiting to go off).

    A slight change here to the @ directive: when specifying a group, you must put "g:" in front of it. For example, if I wanted to specify that the following commands can only be run by the Admin group, I'd use "@g:Admin". This will prevent accidental collisions with usernames. If you liked how it worked before, there's a new option under legacy: useOldGroupDirective. Setting this to true will restore functionality to how it used to be.

    We're rapidly approaching a 1.0 release. User poll: what features do you think are missing from the current release?

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 15, 2016
  22. Offline

    desht

    I can confirm 0.8.5 fixes the NPE I was getting, thanks!
     
  23. Offline

    Maddin

    I tried:
    _____________
    [command]
    /warp XY

    _____________

    and...
    _____________
    [command]
    /command
    /warp XY
    _____________

    and finally...
    _____________
    /command
    /warp XY

    _____________


    and i always get this message here:

    Code:
    2011-06-02 08:36:04 [SEVERE] Could not pass event PLAYER_INTERACT to CommandSigns
    java.lang.NullPointerException
        at com.nijiko.permissions.Control.getGroups(Control.java:609)
        at com.edwardhand.commandsigns.CommandSigns.getPermissionNodes(CommandSigns.java:204)
        at com.edwardhand.commandsigns.CommandSigns.runCommandString(CommandSigns.java:1188)
        at com.edwardhand.commandsigns.CommandSignPlayerListener.runCommand(CommandSignPlayerListener.java:174)
        at com.edwardhand.commandsigns.CommandSignPlayerListener.onPlayerInteract(CommandSignPlayerListener.java:114)
        at org.bukkit.plugin.java.JavaPluginLoader$9.execute(JavaPluginLoader.java:299)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:162)
        at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:209)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:556)
        at net.minecraft.server.Packet15Place.a(SourceFile:57)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:217)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:401)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-06-02 08:36:06 [SEVERE] Could not pass event PLAYER_INTERACT to CommandSigns
    java.lang.NullPointerException
        at com.nijiko.permissions.Control.getGroups(Control.java:609)
        at com.edwardhand.commandsigns.CommandSigns.getPermissionNodes(CommandSigns.java:204)
        at com.edwardhand.commandsigns.CommandSigns.runCommandString(CommandSigns.java:1188)
        at com.edwardhand.commandsigns.CommandSignPlayerListener.runCommand(CommandSignPlayerListener.java:174)
        at com.edwardhand.commandsigns.CommandSignPlayerListener.onPlayerInteract(CommandSignPlayerListener.java:114)
        at org.bukkit.plugin.java.JavaPluginLoader$9.execute(JavaPluginLoader.java:299)
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:310)
        at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:162)
        at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:209)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:556)
        at net.minecraft.server.Packet15Place.a(SourceFile:57)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:217)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:75)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:401)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:311)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    
    I use CB b818 and the old permissions (2.7.4) (i dont think the other plugins are important)

    Pls help!
     
  24. Offline

    desht

    More a developer request than a user request, but it would be nice if you added an API call to allow other plugins to verify that the player has permission to create certain kinds of sign (elevated, fakeuser, cost, restricted). I've done a copy/paste of those checks for ScrollingMenuSign but code re-use is always a good thing :) An official API call also means you're free to add new kinds of special commands (if the need ever arises) without worrying about what other plugins are checking for.

    Basically a call like Boolean hasRequiredPermissionsToEnable(Player player, String command), exposing the existing code around line 378 of CommandSigns.java.
     
  25. Offline

    Fluff

    Oddly enough, that's coming from Permissions. What's your Permissions file look like?
    Yeah, I wasn't sure how to handle the Permissions side of the API. I could see developers wanting to use their own permissions for that sort of thing. I think I'm going to add the following:
    Code:
    Boolean hasEnablingPermissions(Player player, String command)
    Boolean hasEnablingPermissions(Player player, ArrayList<String> commandSign)
    Boolean hasEnablingPermissions(Player player, String command, String permissionRoot)
    Boolean hasEnablingPermissions(Player player, ArrayList<String> commandSign, String permissionRoot)
    The permissionRoot overloads will allow developers to use their own permission nodes instead of CommandSigns permissons. For example, a dev could use "myplugin.canMakeAwesomeSigns" as the permission root, and I'd check for "myplugin.canMakeAwesomeSigns", "myplugin.canMakeAwesomeSigns.*", "myplugin.canMakeAwesomeSigns.elevated", etc.

    Speaking of which, there's currently a little bug which can allow unauthorized users to create /* and /@ signs without permission if ignoreSpacesAtEndOfLine is set to true in the configuration. I'll fix all these up for the next release.
     
    desht likes this.
  26. Offline

    Clem

    @Fluff you have to be one of the coolest bukkit plugin devs xD!
     
  27. Offline

    charlie k-j

    What is the format for x,y,z values? as in using a space, comma, colon?
     
  28. Offline

    Fluff

    I'm guessing you're asking about the commands. Use spaces. For example, if I wanted to disable the sign at x=34, y=65, z=48, I'd use '/commandsign disable 34 65 48'.
     
  29. Offline

    charlie k-j

    Thankyou for the reply and great plugin :)
     
  30. Offline

    Fluff

    I've been doing a lot of thinking about RedstoneCommandSigns. What would you add to this feature list?
     

Share This Page