[MISC] ScrollingMenuSign - scrollable command menus with many view types [BukkitDev]

Discussion in 'Archived: Plugin Releases' started by desht, May 24, 2011.

  1. Offline

    desht

    ScrollingMenuSign - scrollable command menus
    Note: ScrollingMenuSign is now on dev.bukkit.org:

    All documentation for the plugin can now be found there. General discussion for the plugin is fine here, but please use dev.bukkit.org tickets for problem reports.

    ScrollingMenuSign lets you attach a scrollable command menu to any sign or map and add menu items to it. Right-click the sign to scroll the list of items, left-click it to select an item and execute its associated command. The inspiration for this plugin was the large number of Minecart Mania station names I (and others) have to remember and type in.



    Some possible uses:
    • A menu of station setting commands for Minecart Mania
    • Newbie user guide menus
    • Warp menus for your favourite teleportation plugin
    • A shop menu - buy/sell/swap items & credits
    • Controlled access to commands that users can't normally run
    Links:
    Changelog

    See the Changelog on dev.bukkit.org
     
    HWei, bluehasia, elmoo32 and 6 others like this.
  2. Offline

    Tfs Halo

    Why am i getting this :( i downloaded 0.3.2 and even had it create the file fresh...
    i got 818
    but i am getting this when trying to create a sign. also it's weird how in the .jar in the plugin.yml is even says
    commands:
    sms:
    followed by some other things..

    gives me internal error occurred

    Code:
    16:22:44 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'sms'
     in plugin ScrollingMenuSign v0.3.2
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:12
    8)
            at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:2
    81)
            at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.
    java:718)
            at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:684)
    
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:677)
            at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
            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)
    Caused by: java.lang.NullPointerException
            at me.desht.scrollingmenusign.ScrollingMenuSign.addMenu(ScrollingMenuSig
    n.java:167)
            at me.desht.scrollingmenusign.SMSCommandExecutor.createSMSMenu(SMSComman
    dExecutor.java:123)
            at me.desht.scrollingmenusign.SMSCommandExecutor.onCommand(SMSCommandExe
    cutor.java:48)
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
            ... 12 more
    please help me D: ? i hope you reply fast because i am online atm and i want to make my admin island :)

    i have a issue with 0.3.2. it is listed above i hope you reply

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

    desht

    Hmm, can't seem to reproduce this - what /sms create command did you use, exactly?
     
  4. Offline

    Tfs Halo

    i just simply went up to a sign that i created(empty) and used /sms create admin3(and a lot other names)

    my plugins are
    Code:
    BlueTelepads
    ColoredSigns
    CommandBook
    CraftBook
    CraftBookMechanisms
    CraftBookCircuits
    DelayedStop
    EssentialsGroupBridge
    EssentialsGroupManager
    Help
    HeroicDeath
    iConomy
    iConomyChestShop
    ItemDetector
    Jail
    jobs
    KiwiAdmin
    LWC
    McDocs
    mcMMO
    Minequery
    MyHome
    MyWarp
    NoCheat
    obuJustShutTheHellUp
    OpenInv
    runecraft2.7
    ScheduledAnnouncer
    ScrollingMenuSign
    SpyerAdmin
    VirtualChest
    WorldEdit
    WorldGuard
    xAuth
    i did it on my test server with no plugins and it does the same thing.. :( please help me .

    i am using 818 and no plugins theres nothing more then that

    also it says when stopping server

    Code:
    19:17:56 [SEVERE] Error occurred while disabling ScrollingMenuSign v0.3.2 (Is it
     up to date?): null
    java.lang.NullPointerException
            at me.desht.scrollingmenusign.SMSPersistence.save(SMSPersistence.java:45
    )
            at me.desht.scrollingmenusign.ScrollingMenuSign.save(ScrollingMenuSign.j
    ava:237)
            at me.desht.scrollingmenusign.ScrollingMenuSign.onDisable(ScrollingMenuS
    ign.java:98)
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:127)
            at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoade
    r.java:771)
            at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManag
    er.java:269)
            at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginMana
    ger.java:262)
            at org.bukkit.craftbukkit.CraftServer.disablePlugins(CraftServer.java:12
    3)
            at net.minecraft.server.MinecraftServer.stop(MinecraftServer.java:260)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:341)
            at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 16, 2016
  5. Offline

    Junrall

    Hey there...
    I love this plugin... perfect for an admin control room (The Great Wizard Of Oz!)

    However, I keep getting this error whenever I try to create a sign: An internal error occurred while attempting to perform this command.

    This is the command I'm using: /sms create mymenu

    I'm using build b818 Bukkit

    And here is the error:
    Code:
    org.bukkit.command.CommandException: Unhandled exception executing command 'sms' in plugin ScrollingMenuSign v0.3.2
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:128)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:281)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:718)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:684)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:677)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:32)
        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)
    Caused by: java.lang.NullPointerException
        at me.desht.scrollingmenusign.SMSCommandExecutor.listSMSMenus(SMSCommandExecutor.java:200)
        at me.desht.scrollingmenusign.SMSCommandExecutor.onCommand(SMSCommandExecutor.java:56)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    Thanks!
     
  6. Offline

    Tfs Halo

    omfg that is like mines but a little different! :OOO yay so i am not the only one :(

    join the club :(?
     
  7. Offline

    desht

    Well, I'm baffled. I can't reproduce any of these problems, either on my test server with no other plugins or on our main server. Looking at the source, the NPE's seem to be an impossibility - there's no way the field in question should be null at that point.

    Anyway, I've forced a rebuild and re-uploaded v0.3.2 - could you try downloading again and re-testing?
     
  8. Offline

    Junrall

    Ah... I figured it out:rolleyes:
    So I was using: /sms create mymenu
    I forgot to add what I wanted the first line to say: /sms create mymenu My Menu
    Derka Derka! I'm really sorry about that. :(

    Maybe there should be a check for that in the code?
     
  9. Offline

    desht

    Yep, you're right. I do check for that, but the check is buggy :) Will be fixed in next release, but for now ensure you pass both name and title when creating a menu.

    Version 0.3.3 released:

    v0.3.3 (4/6/2011)
    • Fixed parameter count check when creating signs - forgetting to pass a title caused a NPE. Now gives a sensible error message.

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

    DetCox

    HOT DOG!
    I didn't see it listed in features.
    Thank you so much i love this mod!
     
  11. Offline

    Tfs Halo

    really hope this new version helps me :(

    brb i'm going to check it.

    Yay it works!

    thank you so much and i hope you continue this fantastic plugin!
     
  12. Offline

    wasstraat65

    It seems that i can't set the scrollingmenusign.execute permission.
    I set it for my default group, but nobod exept for admin can use it

    is this a bug in the plugin?
     
  13. Offline

    desht

    Are you using the CommandSigns plugin too? If so, you'll also need to make sure you have the "commandSigns.use" permissions.

    If not, then I'm really not sure - I have no problem executing a SMS sign command as a default user on my server, who only has the "scrollingmenusign.scroll" and "scrollingmenusign.execute" permission nodes. Can you scroll signs OK?
     
  14. Offline

    RustyDagger

    like where you have taken this plugin but sad about having to add another plugin to my server for it to be awesome.

    cant wait for the new permissions 3 to be stable then i can upgrade all at once :D
     
  15. Offline

    halfer

    Made a sign, worked like a charm, but after restarting the server, it's dead. I can still see the writings on the sign, but it's not functional

    Bukkit 818. Minecraft 1.6.6. Just downloaded the plugin from the thread
     
  16. Offline

    desht

    Does "/sms list" still show the menu (including the sign at the location you created it) ?
    Did you restart the server cleanly (i.e. via "stop" or "reload")?

    Yeah CommandSigns is an extra dependency, but it's not heavyweight, and @Fluff has done a lot of clever stuff with the command parsing & processing that it would be just mad for me to try and re-implement.

    Also looking forward to P3 actually being stable, but right now it really doesn't seem to be.

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

    RustyDagger

    Better yet bukkit permissions But that's the new cake (portal 1)
     
    desht likes this.
  18. Offline

    Phantom Index

    This work with stargate menus?
     
  19. Offline

    desht

    Don't know - how do stargate menus work? I'm not familiar with the plugin and the plugin page doesn't mention anything about menus.

    To expand a bit: SMS can complement any plugin where you have a command which takes one of many player-defined arguments. E.g. if you have a teleportation plugin which has a "/tpto <x>" command, where <x> is one of many warp points created by players, you could have a menu like this:

    Code:
    /sms create warp1 &1-Warps-
    /sms add warp1 Place 1|/tpto place1|Off to Place 1 !
    /sms add warp1 Place 2|/tpto place2|Off to Place 2 !
    ...
    
    (where place1, place2 etc. are the warp points you've created in your teleport plugin)
     
  20. Offline

    NEO

    @desht

    Doesn't seem to be compatible with command signs.

    Code:
    2011-06-07 19:06:08 [SEVERE] Error occurred while enabling ScrollingMenuSign v0.3.3 (Is it up to date?): com.edwardhand.commandsigns.CommandSigns.getHandler()Lcom/edwardhand/commandsigns/CommandSignsHandler;
    java.lang.NoSuchMethodError: com.edwardhand.commandsigns.CommandSigns.getHandler()Lcom/edwardhand/commandsigns/CommandSignsHandler;
        at me.desht.scrollingmenusign.ScrollingMenuSign.setupCommandSigns(ScrollingMenuSign.java:129)
        at me.desht.scrollingmenusign.ScrollingMenuSign.onEnable(ScrollingMenuSign.java:68)
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:125)
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:764)
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:253)
        at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:140)
        at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:118)
        at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:232)
        at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:219)
        at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:146)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:283)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    I know there basically the same thing, but your plugin offers scrollable menus. But i do have my reasons for using them both.
     
  21. Offline

    desht

    It's not only compatible with CommandSigns, it has explicit API support for it (see the docs) :) What version of CommandSigns do you have installed? It looks like a version that doesn't support the getHandler() method, i.e. outdated. You'll need at least 0.8.5 (current at time of writing is 0.8.8 which works fine).

    The two plugins offer roughly the same concept (click sign, run command) but they also complement each other very nicely. SMS has scrollable menus, and CommandSigns has a powerful command parser which SMS can use via the API, hence the call to CommandSign's getHandler() method above.
     
  22. Offline

    NEO

    Ah that would be it. @Fluff throws out the updates so quickly and efficiently that its hard to keep up :p And yes i know the difference's, just wanted to be brief :p Thank you for the quick reply.
     
  23. Offline

    Nagato

    Got a Problem with My settings... Everything works smoothly, If your an OP. If not then you can scroll the menu's even though it tells you "You do not have enough permission". but you Can't left click the sign to activate the command you scrolled to. What do you think the cause is? I've tried putting all permission nodes on default int both permissions 3.x and permission 2.7.4

    Nothing seems to fix it other than make the person OP.
     
  24. Offline

    desht

    Yeah, there's something weird going on there. The onPlayerInteract() event doesn't seem to be firing at all for left-clicking a block if you're not an op. Doesn't seem to be permissions-related. Investigating...

    Update: are you close to your spawn point when this happens? Can you try with a sign further away from spawn (say at least 50 blocks) ? If so, check your "spawn-protection" setting in your server.properties file. Seems if you're inside the spawn protection radius, even the left-click player interaction event doesn't get sent (which seems a bit odd to me, but in any case that's a Bukkit thing - I can't do anything about that in my plugin). You can get round the behaviour by reducing the spawn-protection radius.
     
  25. Offline

    Nagato

    @desht

    /facepalm at my self. It was the World Guard / Server / Multiverse Spawn Protection. Put them all to 0 and now it works. thanks ^^
     
  26. Offline

    chisox8

    I installed the plugin, and made 2 signs, and they worked great! Now, after a server restart, you can still scroll thru them, but when you try to click... nothing. What should I do?
     
  27. Offline

    desht

    I can't reproduce this. Got any world protection plugins active, or maybe you're inside the spawn-protect radius?

    One thing to try: do /sms setcfg actions.rightclick.sneak execute and then try holding Shift down while right-clicking the sign. (You can revert to the default behaviour by doing /sms setcfg actions.rightclick.sneak scrollup). If that works, it's a good sign that some other plugin is interfering with the left-click event.
     
  28. Offline

    chisox8

    Yes this is inside the spawn protect radius? Does that change anything (it worked until a server restart...)
     
  29. Offline

    desht

    That I'm not sure about - I just know for a fact that the plugin will not receive any left click events for signs inside the spawn-protect radius if you're not an Op (see also this thread that I started). My opinion is that's a Bukkit bug, but I'm trying to get some more experienced opinions than mine :)

    I don't know why this would have worked for you before a server restart and not after - are you certain that nothing changed? I.e. the spawn-protect radius, or Op status of relevant players?

    Did you try the /sms setcfg test I suggested?
     
  30. Offline

    chisox8

    That may be true, but I was an Op and it still didn't work (the first time it did, but not after server restart)

    Yes and I'm not sure it worked (nothing noticeable happened, but I did get a confirmation message that the config was changed... however i'm not entirely sure what was supposed to happen...)
     
  31. Offline

    desht

    Basically that changes what happens when you sneak (hold shift) and right-click the sign. Instead of scrolling it up, it will execute the current entry. I wanted to see if your problem was related to left-clicking the sign, or some other problem.

    Also, does /sms list still show the menu you created after server restart, and does /sms show menu-name still show all the items you added?

    Something I plan to add to v0.4 is debugging, which should make tracking this sort of problem down easier.
     

Share This Page