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

    dak393

    It could be bukkitcontrib (seeing as this downloads bukkitcontrib) complaining did you uninstall that and replace it with spout? The problem only occurs with this plugin?
     
  3. Offline

    Kiborgik

    why i need unistall bukkitcontrib? i need it, i delete spout and all ok, i can login, whith spout i cannot login
     
  4. Offline

    alfskan

    narrowtuxlib needed?
     
  5. Offline

    Phant0mX

    I love this plugin. It's the best shop plugin out there. I do have one request though. Is there any way the "finite" option could be replaced with just "shop" during the setup menu process? On my server, as I assume most, players can only see "basic" and "finite" as options since "infinite" is reserved for admins, and the naming is confusing some of them when learning how to set them up since they have no idea that infinite shops are even an option. (Your menu system is wonderful btw, all plugins should have such clean menus)
    Thanks!
     
  6. Offline

    Kiborgik

    pls return support to bukkitcontrib or give me a link to old narrowtuxlib where showcase 0.7.2 is worked
    Code:
    03.08 11:14:07 [Server] SEVERE Could not pass event PLAYER_INTERACT to Showcase
    03.08 11:14:00 [Server] INFO     ... 15 more
    03.08 11:14:00 [Server] INFO     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    03.08 11:14:00 [Server] INFO     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    03.08 11:14:00 [Server] INFO     at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    03.08 11:14:00 [Server] INFO     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
    03.08 11:14:00 [Server] INFO     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
    03.08 11:14:00 [Server] INFO     at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    03.08 11:14:00 [Server] INFO     at java.security.AccessController.doPrivileged(Native Method)
    03.08 11:14:00 [Server] INFO     at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    03.08 11:14:00 [Server] INFO Caused by: java.lang.ClassNotFoundException: org.getspout.spoutapi.gui.PopupScreen
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:458)
    03.08 11:14:00 [Server] INFO     at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:63)
    03.08 11:14:00 [Server] INFO     at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    03.08 11:14:00 [Server] INFO     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    03.08 11:14:00 [Server] INFO     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    03.08 11:14:00 [Server] INFO     at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.java:307)
    03.08 11:14:00 [Server] INFO     at de.moritzschmale.Showcase.ShowcasePlayerListener.onPlayerInteract(ShowcasePlayerListener.java:78)
    03.08 11:14:00 [Server] INFO     at de.moritzschmale.Showcase.Types.InfiniteShowcaseExtra.onClick(InfiniteShowcaseExtra.java:23)
    03.08 11:14:00 [Server] INFO java.lang.NoClassDefFoundError: org/getspout/spoutapi/gui/PopupScreen
    03.08 11:14:00 [Server] SEVERE Could not pass event PLAYER_INTERACT to Showcase
    03.08 11:13:54 [Server] INFO     ... 15 more
    03.08 11:13:54 [Server] INFO     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
    03.08 11:13:54 [Server] INFO     at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
    03.08 11:13:54 [Server] INFO     at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    03.08 11:13:54 [Server] INFO     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:24)
    03.08 11:13:54 [Server] INFO     at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:36)
    03.08 11:13:54 [Server] INFO     at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    03.08 11:13:54 [Server] INFO     at java.security.AccessController.doPrivileged(Native Method)
    03.08 11:13:54 [Server] INFO     at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    03.08 11:13:54 [Server] INFO Caused by: java.lang.ClassNotFoundException: org.getspout.spoutapi.gui.PopupScreen
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.Packet14BlockDig.a(SourceFile:42)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:458)
    03.08 11:13:54 [Server] INFO     at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:63)
    03.08 11:13:54 [Server] INFO     at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:168)
    03.08 11:13:54 [Server] INFO     at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:338)
    03.08 11:13:54 [Server] INFO     at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    03.08 11:13:54 [Server] INFO     at org.bukkit.plugin.java.JavaPluginLoader$10.execute(JavaPluginLoader.java:307)
    03.08 11:13:54 [Server] INFO     at de.moritzschmale.Showcase.ShowcasePlayerListener.onPlayerInteract(ShowcasePlayerListener.java:78)
    03.08 11:13:54 [Server] INFO     at de.moritzschmale.Showcase.Types.InfiniteShowcaseExtra.onClick(InfiniteShowcaseExtra.java:23)
    03.08 11:13:54 [Server] INFO java.lang.NoClassDefFoundError: org/getspout/spoutapi/gui/PopupScreen
    03.08 11:13:54 [Server] SEVERE Could not pass event PLAYER_INTERACT to Showcase
    03.08 11:13:41 [Multicraft] Roe ran command Message of the Day
    03.08 11:13:41 [Connect] User Roe, IP 193.34.172.18
    03.08 11:13:33 [Multicraft] Kiborgik ran command Message of the Day
    03.08 11:13:33 [Connect] User Kiborgik, IP 91.222.17.47
    03.08 11:13:22 [Server] INFO [FalseBook IC] Loaded selftriggered ICs: 0 failed
    03.08 11:13:22 [Server] INFO [FalseBook IC] Loaded selftriggered ICs: 0 done
    03.08 11:13:20 [Multicraft] taras ran command Message of the Day
    03.08 11:13:20 [Connect] User taras, IP 193.34.172.18
    03.08 11:13:19 [Server] INFO [FalseBook Block] 271 protected gateblocks successfully loaded.
    03.08 11:13:19 [Server] INFO [FalseBook Block] 0 Doors successfully loaded.
    03.08 11:13:19 [Server] INFO [FalseBook Block] 3 Bridges successfully loaded.
    03.08 11:13:19 [Server] INFO [Showcase] Autosaved
    03.08 11:13:18 [Server] Startup Done (1.133s)! For help, type "help" or "?"
    03.08 11:13:18 [Server] INFO Server permissions file permissions.yml is empty, ignoring it
    03.08 11:13:18 [Server] INFO [NoCheat] version [1.11b] is enabled with the following checks: moving speedhack airbuild bogusitems nuke flying fastswim
    03.08 11:13:18 [Server] INFO [NoCheat] version [1.11b] couldn't find CrafTIRC plugin. Disabling logging to IRC.
    03.08 11:13:18 [Server] INFO (NoCheat) Did you know? You can deactivate these Messages in the config file, if they annoy you.
    03.08 11:13:18 [Server] INFO (NoCheat) Did you know? You can find detailed information about all configuration options of NoCheat in the file "descriptions.txt" in your "plugins/NoCheat" folder
    03.08 11:13:18 [Server] INFO (NoCheat) Did you know? This version of NoCheat was written for CraftBukkit RB 1000, but may still work for some older or newer versions.
    03.08 11:13:18 [Server] INFO (NoCheat) Did you know? There will be a change in the near future to how movement in CraftBukkit works, which will break NoCheats moving-check(s) completely, causing tons of false positives. Be careful if you tend to run bleeding edge builds of CraftBukkit.
    03.08 11:13:18 [Server] INFO (NoCheat) Did you know? NoCheat now supports the new Bukkit-Permission system. You can activate it in the config file.
    03.08 11:13:18 [Server] INFO [MonsterHunt] MonsterHunt Loaded!
    03.08 11:13:16 [Server] INFO FalseBookIC v0.87alpha DEV#3 by GeMo enabled
    
     
  7. Offline

    ledhead900

    Well if you want an opinion that sounds professional but is not as I'm fortune-teller I wild simply remove sprout by all means keep what you have around but offer a fallback using bukkitcontrib again and we can just wait a little bit longer for the fix that really only effects one thing and that is the remove on out of items.

    I stated that bukkitcontrib is widely used now compared to its bigbrother spout so imo alone it if left up to me id remove spout and the fix it brings for a bit longer and hold out until a lot of other plugins are on-board. basically do a a Dinnerbone as I put it and keep working on what you have for the future but maintain the old hooks until its redundant then remove them once everyone has had enough time to move on.

    Quite frankly I never noticed the issue as I never used the removal feature in the config but though I would today and to do that I need sprout but lets not start up on a loop of what we already said.

    No you see I tried that and I think I explained why it did not work already in case, I have not since I have been busy, His narrowtuxlib now points to download sprout instead of bukkitcontrib so it won't matter what version you are using as long it rely's on that plugin and the good versions need it as narrowtuxlib is what I imagine what it says on the box a custom lib for this plugin.
     
  8. Offline

    Kiborgik

    and i cant using a Spout - becouse it broking my Auth plugin
     
  9. Offline

    narrowtux

    For all of you not understanding what spout is: it's the successor of BukkitContrib! BC was just the name for the alpha, now that it is released, Afforess chose a different name and refactored the code. The updating for spout is mandatory and I'd suggest to nag all the authors of plugins that use BukkitContrib to update their plugins to spout. This is not very difficult for them, they just got to change some names and theyre finished.
    I will not provide a BukkitContrib compatible version, sorry.
    Just be patient for one or two days until all plugins switched to spout.
     
  10. Offline

    ledhead900

    Yeaa sorry I was in a real rush when I wrote that, it makes not sense to me now I read it back, What I ment to say was Narrowtux libary points to download Spout not instead of bukkitcontrib and so using Narrowtux/Showcase is going to download Spout and if does not showcase does not work well. I also ment to say that Narrowtux does what I believe it sounds like it is and that would be a library of custom code used by narrowtux in his plugin and that is why you it requires both.

    My suggestion was to toss out what ever you think is not worth keeping so take look at what needs bukkitcontrib and what requires Sprout and for now at least until sprout gets settled in use what ever one provides u the most benefit.

    I understand and for now this is why I just removed this until the other's catch up.
     
  11. Offline

    IncendiaDrakon

  12. Offline

    Ratchet

    it seems to work fine so far without it? I haven't updated showcase - why does it suddenly "need" spout? my server was screwed for hours with 30~ odd people trying to play because of this.
     
  13. Offline

    narrowtux

    When you have a version before 0.7 - yes. The newer versions use spout for item names.
     
  14. Offline

    Cenarius

    ok so what's new in 0.7.3 ? (Updated for Spout, Autosave notifications disabled by default.).
    also, i've a future request !
    either the ability to tell how much the item is damaged in percent or something
    or the option to prevent selling damaged items :/
     
  15. Offline

    sharkale

    mmmm bukkitcontrib autoupdate to spout or narrowtuxlib download them, when i show my server there a lot a million of line of error because spout broke all...
    deleted plugin. i only need a plugin to sell things not a plugin to install 983498234 plugins/libs and other shits -.-
    now i need to restore from backup because spout broke all the inventorys. good job.
     
  16. Offline

    umarth

    Delete the NarrowtuxLib.jar, bukkitcontrib,jar and showcase.jar; then redownload showcasejar 0.7.3 and run the server. This working for me.
     
  17. Offline

    transient

    @umarth Tried that and doesn't seem to work for me.

    Getting tons of errors from Spout.
     
  18. Offline

    Ratchet

    when using basicmode is narrowtuxlib / spout required? will it still auto-download them?
     
  19. Offline

    umarth

    Idon't know. I made this and no errors for me. I check the diferent players with spout and the default client of minecraft and work fine. Keep care of delet the bukkitcontrib.jar that the narrowtuxlib old autodownload in the starting server.

    If don't want install the spout, go to narrowtuxlib.cfg and installspout set false
     
  20. Offline

    transient

    @umarth Ahh, I see another plugin keeps re-downloading bukkitcontrib and showcase is downloading sprout.

    Thanks for your help!
     
  21. Offline

    CortelleJr

    I don't use permissions on my server. When I right click the assistant comes up, but it says "You cannot place showcases" and I am the admin/owner?
     
  22. Offline

    City Builder

    Getting a while lot of this in our server logL

    Code:
    2011-08-03 09:41:53 [SEVERE] Could not pass event PLAYER_INTERACT to BukkitContrib
    java.lang.ClassCastException: org.getspout.spout.SpoutNetServerHandler cannot be cast to org.bukkitcontrib.ContribNetServerHandler
        at org.bukkitcontrib.player.ContribCraftPlayer.getNetServerHandler(ContribCraftPlayer.java:494)
        at org.bukkitcontrib.ContribPlayerListener.onPlayerInteract(ContribPlayerListener.java:69)
        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)
    
    And I believe it's only your showcase plugin that is using the bukkitcontrib plugin,and or spout, I'm not even sure. Our server just crashed with a ton of errors about spout, enough to fill a 23GB server log file. A whole lot of the above error message.
    We are running 1000 of bukkit and your plugin.
     
  23. Offline

    dak393

    Remove bukkitcontrib update your plugins to coincide with the swap over to spout.
     
  24. Offline

    City Builder

    Thanks, I'll remove bukkitcontrib, all my plugins are updated since we just started a new server.
     
  25. Offline

    IncendiaDrakon

    Your refill assistant dialogue needs to be fixed, it looks crazy.
    http://i.imgur.com/gMMtB.png
    When buying from a showcase I'm unable to see the price. The only way I find out is after I type how many I want, BUY THE ITEM, then I get a dialogue saying I bought X for Ymoney. For users using Spout on my server, this plugin is currently unusable.
     
  26. Offline

    eagle198

    I wish I could use this without an economy and use it purely for show.
     
  27. Offline

    an0x

    basic?
     
  28. Offline

    eagle198

    ???????
     
  29. Offline

    narrowtux

    This is a showcase type, it just displays the item.
     
  30. Offline

    Syntaxlb

    My request :

    Make a permission node that can make usable/unusable their shops.
    Make a permission node for exclude (or accept) some items in shop. (example: showcase.exclude.<id>)

    My question :

    It's normal, other people can break the step under the showcase, and the showcase is unusable ?

    But showcase is already a great and awesome plugin, good job ;) !
     
  31. Offline

    Asphodan

    @narrowtux
    Spout / BukkitContrib is a pain in the butt now. Any way to not use it?
     
Thread Status:
Not open for further replies.

Share This Page