[INDEV] [LIB & Plugin Combo] minePad

Discussion in 'WIP and Development Status' started by mattrick, Nov 11, 2013.

?

Would you be interested in developing for/ using this plugin?

  1. Yes

    66.7%
  2. No

    33.3%
Thread Status:
Not open for further replies.
  1. Offline

    mattrick

    Basically what this plugin will do is open an inventory allowing people to run "apps" so to say. Each player gets a new "minePad" the first time they run the command /minepad (or it will open it if you already have one). Basically a minePad is a inventory that will store apps. Apps are Materials that run code or commands when clicked. Some apps could actually be quite advanced as well. Basically what this LIB/ Plugin will do is provide a gui for executing code or commands.

    Some ideas for apps already included in minePad (you know, those useless apps that you can delete) are:
    GUIMail (Provides a pretty GUI for a mail system)
    HealMe (Heals player)
    Vote (Links player to vote address)
    SpawnMob (Provides a pretty GUI using spawn eggs to spawn a mob)
    KillGUI (Provides a pretty GUI that can kill online players)
    Settings (Allows user to add, delete, and rearrange apps)
    Clock (Provides a pretty GUI that can display time)

    Here is what I was thinking to add apps to the minePad:

    To Create A New App:
    Code:
    MinePad.addApp(new AppClass(), "KillMe");
    
    or
    Code:
    MinePad.addApp("/kill " + player, "KillMe");
    
    This will add the app to minePad's list of apps.


    AppClass (Which is just an event listener):
    Code:
    public void onAppOpen(AppOpenEvent event){
       if (event.getApp().getName() == "KillMe"){
       Player player = event.getPlayer();
       player.sendMessage("KillMe has killed you.")
       player.setHealth(0.0);
    }
    }
    
    This will execute the minePad's app (not needed if you used the last method).

    In order to get non-standard apps, Players must use /minepad get KillMe or can list all available apps using /minepad list. Also, apps will be run off of permissions, so minePad will check if player has permission before staring apps (or possibly have permissions implemented with the app plugin, and not with minePad). I am also thinking of adding the ability to rearrange apps also. I think this would be especially useful for certain plugins. Users won't even need to have minePad to use your plugin either, every thing would still work, just without minePad.

    So what do you think? Would you be interested to add app support for your plugin? Do you think I should add/ change/ remove default apps? Fell free to give constructive criticism and ask concerns.
     
  2. Offline

    TheUpdater

    cool =)
     
  3. Offline

    mattrick

    Thanks :D
    EDIT:
    Just an update on the progress.

    I have an App object and the basic plugin almost ready. Hopefully this will be useful. (I am also looking for some people to help out with making apps. I you would like to, PM me :D)
     
  4. Offline

    mattrick

    Just a quick little info bump:
    I am about ready to implement the API. If anyone is interested please contact me :). (Also really! Only 1 reply???)
     
  5. Offline

    Squawkers13

    Looks like a cool API. I'll test it if you like.
     
  6. Offline

    mattrick

    That was a rather large bump, but thanks :p Anyway, some of the code got deleted to an old save, so now I have to recode some of it, so it may take a while. :(
     
  7. Offline

    Squawkers13

    Okay.
     
  8. Offline

    Developing

    Great idea.
     
  9. mattrick
    Cool idea, though there is a mod out there that does this already, so it's not very original. Also, don't compare strings with ==.
     
  10. Offline

    mattrick

    Thanks! Yeah I just wrote up some quick code without Eclipse.
     
  11. Offline

    Garris0n

    If you put it on GitHub I may contribute when bored :p You need to find something that makes this advantageous over simply creating a plugin and registering a command listener, though.
     
  12. Offline

    mattrick

    Garris0n
    Yeah. I may put this on GitHub once I get a stable version out.
     
Thread Status:
Not open for further replies.

Share This Page