Token Shop

Discussion in 'Plugin Requests' started by GreenTea, Aug 5, 2015.

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

    GreenTea

    Plugin Category: Economy

    Suggested Name: Token Shop

    What I Want: When a player right clicks a villager with the name '&e&lToken Shop' it opens a configurable GUI. In the configuration you can edit the icon of the item you want to buy, along with a customizable lore(s), name, and token price. You can also customize if the item is enchanted (glow) or not.
    When you create a item, you can give them permissions or commands. So if I buy Speed III, the icon will run the command '/effect <player> 1 10000 3' Once you've purchased this, you can toggle it by clicking on the same icon.

    [​IMG]

    Ideas for commands:
    Admin:
    • /TokenShop Give <Player> <Amount> - Gives a player Token(s)
    • /TokenShop Create - Spawns a Token Shop Villager
    • /TokenShop Delete - Deletes a Token Shop Villager
    • /TokenShop Reload - Reload the Config File
    Player:
    • /TokenShop - Opens the TokenShop GUI
    • /Tokens - Shows how many tokens you have
    • /TokensTop - Shows a list of players with the most tokens on the server.
    Ideas for permissions:
    Admin:
    • TokenShop.Give - Has access to /TokenShop Give
    • TokenShop.Create - Has access to /TokenShop Create
    • TokenShop.Delete - Has access to /TokenShop Delete
    • TokenShop.Reload - Has access to /TokenShop Reload
    Player:
    • TokenShop.Use - Has access to /TokenShop
    • TokenShop.Tokens - Has access to /Tokens
    • TokenShop.TokenTop - Has access to /TokensTop

    When I'd like it by: ASAP.
     
    Last edited: Aug 12, 2015
  2. Offline

    mttprvst13

    This sounds like it would use an economy plugin. I could try and give it a go, if you would like. And just to make sure, what economy plugin would you be using?

    And making it use cmdnpc would be good.
     
  3. Offline

    GreenTea

    I'm using Essentials, but I can use Vault too. :)
     
  4. Offline

    au2001

  5. Offline

    GreenTea

    I'll test it out :rolleyes:

    EDIT I'm getting an error when I create a villager.
    Code:
    [12:33:42 INFO]: RiqhtBoo issued server command: /tokenshop create
    [12:33:43 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'tokenshop' in plugin TokenShop v1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:767) ~[craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand(PlayerConnection.java:1043) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:880) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.a(PacketPlayInChat.java:28) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle(PacketPlayInChat.java:65) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NoSuchFieldError: BARRIER
        at me.au2001.TokenShop.Main.onCommand(Main.java:153) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit.jar:git-Spigot-1642]
        ... 13 more
    [12:33:43 ERROR]: Could not pass event EntityDamageEvent to TokenShop v1.0
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.callEvent(CraftEventFactory.java:108) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:554) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:540) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.handleLivingEntityDamageEvent(CraftEventFactory.java:586) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityLiving.d(EntityLiving.java:1040) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityLiving.damageEntity(EntityLiving.java:684) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityLiving.C(EntityLiving.java:168) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityInsentient.C(EntityInsentient.java:115) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.Entity.h(Entity.java:256) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityLiving.h(EntityLiving.java:1370) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntityInsentient.h(EntityInsentient.java:154) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.EntitySlime.h(EntitySlime.java:79) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.World.entityJoinedWorld(World.java:1620) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.World.playerJoinedWorld(World.java:1595) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.World.tickEntities(World.java:1460) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.WorldServer.tickEntities(WorldServer.java:516) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:706) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Entity.getCustomName()Ljava/lang/String;
        at me.au2001.TokenShop.Main.onEntityDamage(Main.java:249) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_20]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_20]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_20]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_20]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[craftbukkit.jar:git-Spigot-1642]
        ... 24 more
    [12:33:47 ERROR]: Could not pass event PlayerInteractEntityEvent to TokenShop v1.0
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:1170) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.a(PacketPlayInUseEntity.java:37) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.handle(PacketPlayInUseEntity.java:49) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Entity.getCustomName()Ljava/lang/String;
        at me.au2001.TokenShop.Main.onPlayerInteractEntity(Main.java:235) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_20]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_20]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_20]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_20]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[craftbukkit.jar:git-Spigot-1642]
        ... 13 more
    [12:33:49 ERROR]: Could not pass event PlayerInteractEntityEvent to TokenShop v1.0
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:1170) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.a(PacketPlayInUseEntity.java:37) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.handle(PacketPlayInUseEntity.java:49) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Entity.getCustomName()Ljava/lang/String;
        at me.au2001.TokenShop.Main.onPlayerInteractEntity(Main.java:235) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_20]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_20]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_20]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_20]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[craftbukkit.jar:git-Spigot-1642]
        ... 13 more
    [12:33:54 ERROR]: Could not pass event PlayerInteractEntityEvent to TokenShop v1.0
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:302) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) [craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:1170) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.a(PacketPlayInUseEntity.java:37) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.handle(PacketPlayInUseEntity.java:49) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NoSuchMethodError: org.bukkit.entity.Entity.getCustomName()Ljava/lang/String;
        at me.au2001.TokenShop.Main.onPlayerInteractEntity(Main.java:235) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_20]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_20]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_20]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[?:1.8.0_20]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) ~[craftbukkit.jar:git-Spigot-1642]
        ... 13 more
     
  6. Offline

    au2001

    @GreenTea Woops, I was using barriers to prevent the villager to jump, but I'll have to use glass instead since it's 1.7 :/ And I also forgot to cast certain things :x

    Update the plugin (with the same link) and try again ;)
     
  7. Offline

    GreenTea

    Can I break the glass after the villager has been created? :D

    EDIT: I can't delete a villager :)
    Code:
    [13:09:41 ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'tokenshop' in plugin TokenShop v1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) ~[craftbukkit.jar:git-Spigot-1642]
        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:767) ~[craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand(PlayerConnection.java:1043) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:880) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.a(PacketPlayInChat.java:28) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle(PacketPlayInChat.java:65) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1642]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1642]
    Caused by: java.lang.NullPointerException
        at me.au2001.TokenShop.Main.onCommand(Main.java:169) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[craftbukkit.jar:git-Spigot-1642]
        ... 13 more
    >
    
    /TokenShop Give (Username) (Ammount) doesn't seem to work. When I run the command it says (Username) now has (Amount) - But when they run the command /Tokens it says they have 0.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 11, 2016
  8. Offline

    au2001

    @GreenTea The villager deleting problem might be because you are in peaceful, is that the case?
    If not update your plugin, then try creating a new villager and deleting it again.

    For the give command, I made a mistake, it always gives the tokens to yourself :x
    Fixed it, you can update the plugin (same link as before).
     
  9. Offline

    GreenTea

    Did you add variables? <player> ?

    EDIT: Everything works fine, but can you make the villager stay still? He seems to wonder off and dies. Also could you add 2 commands, /Tokens Remove (Player) (Removes Tokens from a player) & /TopTokens (Sees the person with the highest tokens from least to greatest) tyty
     
    Last edited: Aug 8, 2015
  10. Offline

    au2001

    @GreenTea What do you mean by variable? Where would it be? If there is one, it's called {PLAYER} (I call it like that in all my plugins)

    To remove tokens you can use /tk give <player> -<amount> (with a minus sign before)
    For the top tokens, I will work on that soon.
     
  11. Offline

    GreenTea

    Thank You! I didn't know it was {PLAYER} :D

    EDIT: Are you fixing the villagers too? Could you also make it so that non-enchantable items be enchanted? Like feathers.
     
    Last edited: Aug 8, 2015
  12. Offline

    GreenTea

  13. If you're OK with not having a GUI, look at ServerSigns. Otherwise try searching for a credits plugin if they don't solve the issue
     
  14. Offline

    GreenTea

    Are you still working on this? :)
     
  15. Offline

    au2001

    @GreenTea Oh, yes sorry.

    If you update your plugin you will have the new command /toptokens, showing the top 10 players sorted by tokens.
     
  16. Offline

    GreenTea

    When I run the command, it says "false" and says #1. (Username) (Null Tokens)

    The villagers also keep despawning
     
Thread Status:
Not open for further replies.

Share This Page