Inactive [MECH/ECON] Showcase v0.8.1 - Create visual shops by spawning drops on slabs [1.1-R5]

Discussion in 'Inactive/Unsupported Plugins' started by narrowtux, May 17, 2011.

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

    narrowtux

    [​IMG]
    Version 0.8.1​
    As supposed in this thread, I created a plugin that lets you put items into glass blocks (now steps, it's notchs fault) to showcase them. This is useable for shops, to show what's for sale there, or to make clear what type of farm you built.
    Features
    • Showcase all items in a half-step Block
    • Block protection (you can't break the step block and the block below it to prevent that the item falls down)
    • Multiworld
    • Items in a showcase can't be picked up
    • Only the player who created a showcase can remove it
    • Prevents despawning of items (Normally, drops disappear after 5 minutes)
    • You can setup finite and infinite shops
    • DropChest support (disables DropChest for absorbing the showcased items)
    • WorldGuard support (works out of the box)
    • Localisation
    • Can show custom item names through BukkitContrib
    • Economy support:
      • iConomy 4 & 5
      • BOSEconomy
      • Essentials Economy
    Download & Source-Code
    Download Showcase.jar
    Browse Source-Code on Github
    You will need an economy system if you want shops.
    This will install NarrowtuxLib automatically!
    Please donate, if you really like this ;)
    Videos
    Show Videos (open)





    When you have got issues, please read this:
    Issue Report (open)

    1. Please, first check if you have got the most recent version of Showcase and the most recent recommended build of Bukkit.
    2. Then, check if the bug is already listed in the "Known Bugs" section.
    3. After doing step 1+2, report the bug with at least this information:
      • Version of Showcase
      • Version of Bukkit
      • If possible, a step-by-step explanation of the bug
      • If possible, console errors
      • When you think that this has got to do with another plugin, please list all your plugins like this:
        • PluginA, PluginB, PluginC ...
    This will be incredible helpful for me to fix it faster.


    You don't actually have to retype everything I typed here, but if you'd take it as a guideline which content you should include in your issue report, it's more helpful ;)

    Please, don't come here just to say "This doesn't work.". This says nothing.


    Usage
    Adding a showcase
    1. Start sneaking!
    2. Right-click a half-step block with the item in your hand you want to showcase
    3. An assistant will ask you which type of Showcase you want to add. Type the text before the colon :))
    4. Depending on the type you chose, the assistant will ask some extra questions, follow the assistant to finish showcase creation.
    Removing a showcase

    1. Sneak
    2. Right-click on a showcase. If this was a finite showcase or an exchange showcase, you will get your items back.
    Permissions


    ActionPermission-NodeWithout Permissions
    Create a basic Showcase.showcase.basicPlayer
    Create a infinite shop Showcase.showcase.infiniteOperator
    Create a finite shop Showcase.showcase.finitePlayer
    Create an exchange Showcase.showcase.exchangePlayer
    Buy from a finite shop showcase.showcase.buy.finitePlayer
    Buy from an infinite shop showcase.showcase.buy.infinitePlayer
    Removing a showcase of other players.showcase.adminOperator

    The column "Without Permissions" explains which user-type can use this permission when no Permissions system is installed.
    What are shop showcases?
    A shop showcase can be used to sell items to your players. There are 2 types of shops now:
    1. Infinite shop. This one has an infinite amount of items. The money that the players give to buy an item will go to nirvana
    2. Finite shop. This one has that number of items which the owner has set up. The owner will get the money from which the items were bought.
    How can a Player buy items from a shop showcase?

    1. Click on the Showcase. The price per item and the available amount will be displayed.
    2. Type in the number of items you want and hit enter. A message will show you the success of the checkout.
      • Type 0 to abort checkout
    How can you refill a finite shop showcase?

    1. Click on it
    2. Type in the amount of items to refill. Negative values will remove that amount from the showcase.
    3. Walk away or type 0.
    Commands

    The showcase command handles manual saving and loading
    /showcase save
    Saves the items to showcases.csv
    /showcase load
    Loads the configuration, translation and items without saving (Use with caution)
    /showcase reload
    Saves and loads everything after that. Useful when some items aren't in place and you want to quick-fix that.

    Configuration
    The configuration file is auto-generated and is called showcase.cfg
    Here are the configuration possibilities:
    • basicmode : this decides if the plugin should operate like in version 0.2 or before (Just the basics)
    • priceforbasic : this adds a price to the basic showcases
    • priceforfinite : this adds a price to the finite showcases
    • priceforexchange: this adds a price to the exchange showcases
    • removewhenempty: when set to true, a finite showcase will be removed when it's amount hits 0
    • showcaseprotection : turn this to false to be able to remove showcases from other players (griefers) (you should now use WorldGuard instead of this one ;) )
    • locale: standard is en-US. The german translation which is included in the jar-file is de-DE. If you type that in, it will copy the german file from the jar to your plugins folder
      • You can change the translation very easily by editing the existing locale.
      • Colors are supported, just add something like [GREEN] or [DARK_RED] to the text.
      • You can add newlines with \n
    • autosaveinterval: the time between two auto-saves in seconds. Standard is 60 secs. Use -1 to disable autosave.
    Translations

    Currently available translations:
    Changelog

    Version 0.8.1
    See the whole changelog

    Todo
    • Spawn multiple items in the same glass block (up to 4, would be aligned nicely)
    • Verify that there is no free space below the glass block before adding a showcase
    • Maybe let the showcase glow when you placed torches, glowstone or lava in it
    • Custom messages (aka localisation)
    • Sell-Showcases
    • DropChest support (so the items inside the glass won't be absorbed by a Dropchest)
    • Limit the amount of Showcases per player
    • Add a price that the creator of a showcase has to pay (there would be an independent price for each basic, infinite and finite showcases)
    • Linking infinite shops to banks (money spent for items goes there)
    • Rent a showcase for money/day
    • Autosave with configureable interval
    • Commands for save, load and reload
    Crossed items are already done!

    Known bugs
    • This plugin conflicts with some chat-altering plugins (i.e. bColoredChat) this is because the authors don't know how to correctly set up the priority of events.
    • Normal players (the ones that aren't operators) can't use showcases that are in the spawn-protection area. Either disable the spawn protection or place the showcases to an other location (Disable spawnprotection by setting "spawn-protection-size=0" in the server.properties file)
    • With the latest dev preview (not the recommended build), you're able to make slabs to double steps. I've got to investigate until they propose it as RB.
    • ATM, Showcases won't save enchantments. So please just don't try to sell yours because that wouldn't work either.
     
  2. Offline

    narrowtux

    Currently not, but I'm coding a sell-showcase atm.
     
  3. Offline

    Jeffmcgee

    okay, will that be separate plugin because by the sounds of it, it will. until that feature is added, i'll have to say sorry, there are similar plugins, that although don't have the showcase aspect, have a sell feature, which is a must have IMO. thanks anyway for fast responses.
     
  4. Offline

    narrowtux

    No, it'll be included in showcase itself.
    Showcase first wasn't meant to be a shop plugin, there was only the basic type.
    Quickly, users suggested that I add a shop were players can buy items. Because I don't use shop plugins, I didn't come to the idea of adding a sell showcase until it was suggested.
     
  5. Offline

    Jeffmcgee

    okay, sounds good. i might find myself switching from another plugin to this one once that feature is added.

    great plugin, made greater is sell feature is added. thanks again for responding
     
  6. Offline

    MuisYa

    One word: Wouw.
    Awesome idea!
     
  7. Offline

    Operon

    After installing this plugin on our server, it does not want to sell anything. However, you can add things. We are running on Bukkit #1000 and are using Showcase 0.7.2. When users hit the slab, it does nothing. In the logs, theres an error:

    2011-07-24 13:58:28 [SEVERE] Could not pass event PLAYER_INTERACT to Showcase
    java.lang.NullPointerException
    at de.moritzschmale.Showcase.Types.BuyAssistant.<init>(BuyAssistant.java:56)
    at de.moritzschmale.Showcase.Types.InfiniteShowcaseExtra.onClick(InfiniteShowcaseExtra.java:23)
    at de.moritzschmale.Showcase.ShowcasePlayerListener.onPlayerInteract(ShowcasePlayerListener.java:78)
    at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.java:307)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:63)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:458)
    at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)

    We have essentials installed, and we use its economy. We have the latest permissions installed too. Please reply ASAP.
     
  8. Offline

    narrowtux

    Is essentials the latest version? I heared that essentialseco doesn't work so well with this.
     
  9. Offline

    WiLDiSH

    Everything is working fine... except for 1 simple error...

    I'm getting "null" for every item name.
    Any way to fix that?
     
  10. Offline

    Peter Hsieh

    I think this issue has been mentioned a few times, but doesn't seem to get answered XD.
    Is there a way from disabling Showcase: Autosaved messages being sent to the console? If not, can that be a future feature.

    thanks.
     
  11. Offline

    MojoManagement

    What is the status about sell shops?
     
  12. Offline

    Ratchet

    could you add some option to have basic showcases expire after X amount of time of the user having not logged in? will save having tons of showcases leftover that people who no longer play have left lying around.
     
  13. Offline

    Septium

    @Ratchet then why not get the admins to destroy it?

    Also, great plugin, cool to use as a display case by setting the price up REALLY high ^^
     
  14. Offline

    narrowtux

    Or just use basic :D
     
  15. Offline

    Killubear

    would it be possible to take the necessary parts from the two included auto downloading plugins and put them all together into the single jar file because it is a tad obnoxious having one plugin self download 2 other supporting plugins...
     
  16. Offline

    narrowtux

    No I use some functionality of BukkitContrib, which I can't just put into Showcase.
    The other plugin is a conjunction of some classes used in all of my plugins. This keeps it easier for me to maintain them.
    Also, the NarrowtuxLib contains the Assistant, which is important, because when 2 plugins want to use this, they'd have to register the playerchat-event twice and therefore, 2 inputs go into the assistant. Be sure that this'd break all assistants.
     
  17. Offline

    Killubear

    ok i was just checking on that
    A+ for the speedy response time btw :)
     
  18. Offline

    narrowtux

    I should somehow copy that to re-use it :D

    A little status message for you all!
    I'm currently on coding some nice additions into Showcase.
    • First, I made the Autosave-message in serverlog optional (defaults to not show it)
    • Also, I added the possibility to add showcases with no item in your hand. This is especially needed for Sell-Showcases because some users might want to setup something like that while not having the items.
    • And, ofc I'm on coding a finite sell-showcase to start. When that's done, I'll release v0.8
    I can't give you an exact ETA of the release yet. It may be today, but I think it should be done within this week.
    Also, the next release depends on OddItem too. OddItem makes it easy for users to type in item-types with data. It's completely configureable, so you can setup own names for each item/data combination, as well as multiple aliases for each item.
    When an item wasn't found, OddItem provides a "Did you mean x?"-Result, which is handled by Showcase in that way that the suggestion is shown to the player and he can retry his input.
    OddItem will be automatically downloaded as well, for convenience.

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

    TheDeejay

    Nice work, narrowtux, can't wait to see the new features :)
     
  20. Offline

    Clucky

    I think one of your depencies, BukkitContrib, is crashing my server, it didn't have this problem until I noticed it was installing itself. Has this been reported before, or should I continue to search for another buggy plugin.
     
  21. Offline

    narrowtux

    Some issues are known with BukkitContrib, although works flawlessly on Bukkit 1000 here.
     
  22. Offline

    gmore70

    Great Plugin Thanks. Sorry if this have been posted already, the only one I could find similar was back in May.

    When I restart the server, some of my items become invisible.
    Im running MC 1.7.3, RB 1000 and your latest.
    My store is in a Factions Safe Zone, WorldGuard is active on server, but not around the store.
    I have no errors in my console.

    If you need any more details, I will be glad to help.
     
  23. Offline

    narrowtux

    Do they re-appear when you type /rl?
     
  24. Offline

    Pole04


    Very exciting, my players are loving your mod. We have shops poping up everywhere. I cannot wait until they are able to sell items to the server using showcase.
     
  25. Offline

    narrowtux

    At the moment, I only implement that players can setup showcases where they can setup how many items they want to buy, and if players come by, they can put some items in there to get some money. The owner of the showcase can then take those items.
    I'll also implement an infinite sell showcase, which would then sell to the server.
     
  26. Offline

    Nitnelave

    How about an infinite private sell showcase? meaning that it's a sell showcase belonging to someone, but with no limit on the amount you can sell. Some people might want to get as many block of sand (for example) as they can buy. I'd put the "amount you want to buy" optional.
     
  27. Offline

    gmore70

    yes, that worked.
     
  28. Offline

    narrowtux

    Good, because that happens often when the server restarts.
    /rl or /reload disables and enables every plugin. If you just want to do that with showcase, use /showcase reload
     
    gmore70 likes this.
  29. Offline

    Mozartripper

    Amazing plugin dude :)
    I have a little problem too I recently updated to 1000 and downloaded the lastest version of showcase but now all my previous showcases have been changed from infinite and finite to basic is there any way i can fix without creating all of them again ty.
     
  30. Offline

    gmore70

    Thank you for the awesome support!
     
  31. Offline

    MojoManagement

    stacktrace (open)

    2011-07-27 22:06:27 [SEVERE] Could not pass event PLAYER_INTERACT to Showcase
    java.lang.NullPointerException
    at de.moritzschmale.Showcase.ShowcasePlayerListener.onPlayerInteract(ShowcasePlayerListener.java:27)
    at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.java:307)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:210)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:553)
    at net.minecraft.server.Packet15Place.a(SourceFile:57)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-07-27 22:06:27 [SEVERE] Could not pass event PLAYER_INTERACT to Showcase
    java.lang.NullPointerException
    at de.moritzschmale.Showcase.ShowcasePlayerListener.onPlayerInteract(ShowcasePlayerListener.java:27)
    at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.java:307)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:332)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.java:210)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:553)
    at net.minecraft.server.Packet15Place.a(SourceFile:57)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)

    using: iConomy, Essentials, Permissions 3, BukkitContrib, Heroes, some other.
     
Thread Status:
Not open for further replies.

Share This Page