Inactive [MECH] Tables v0.6 - Build prettier tables easy [1.2.5-R1]

Discussion in 'Inactive/Unsupported Plugins' started by DemmyDemon, Jun 11, 2011.

  1. Offline

    DemmyDemon

    Tables - Build prettier tables easy.
    Version: v0.6

    For some odd reason, you can't place pressure plates wherever you want.
    That means you have to use halfblocks/steps to create tables, and they're simply too thick to look very good.
    In Beta 1.8 this plugin became irrelevant because jeb_ let us place pressure plates on fence posts without it, but there are still plenty of things you still can't place them on.


    Here's my solution to that problem.

    [​IMG]
    Nice Cafè-like setting. Note the wall-grabbing tables with plenty of leg room.

    Features:
    • Allows placement of pressure plates on both types of glass and on iron bars.
    • Makes the pressure plates not plop out simply because there is a block update.
    • No configuration, no permissions, no commands, just simple usage.
    • Just add it to your plugins directory and reload, don't worry about it.
    Download Tables
    Source Code

    Thanks to EvilSeph for some events assistance!
    Thanks to @Sneaky420 for the post-1.8-usefulness idea (glass planes and iron bars)

    Changelog:
    Version 0.6
    • Finally updated for the new event system and cleared 1.2.5-RB1 use.
    • Massive code cleanup making it ready for eventual configuration.
      Next version will probably let you define "X on top of Y is OK" for yourself.
    Version 0.5
    • Support for putting pressure plates (and cake...) on Iron Bars and Glass Planes.
    Version 0.4.1
    • Cake on fence posts! This was talked about a while back, and forgotten, but today I was reminded!
    Version 0.4
    • Removed fence stacking support etc, as it's now supported by Minecraft itself.
    • Some internal cleanup, nothing major.
    Version 0.3
    • Partial (flaky) support for torches-on-fences
    • Removed pressure-pad-on-air support due to it's very strange nature.
    Version 0.2
    • Included functionality for stacking fences on fences for those Extra Fancy High Tables.
    • Pressure plates will now not plop out when the block below it disappears.
    Version 0.1
    • Initial release
     
    Undrtakr, bart07a, omnija and 5 others like this.
  2. Offline

    omnija

    sounds good, but yea i can imagine how awful looking that must of been lol
     
  3. Offline

    matze134

    i dont know if you can or want to do that, but do you can do , that you can build rails on glass? that is a strange question, but i dont know anybody i can ask^^
    I want to build a special railway and for that it would be nice if i could place rails on glass
    Thanks for the nice plugin
    ;)
     
  4. Offline

    DemmyDemon

    Rails on glass could be quite simple, actually, but it's outside the scope of this plugin.
    I suggest you post a request about it in the plugin requests section.
     
  5. Offline

    jfmherokiller

    Thanks for providing this base i am currently using it to add the ability to place ladders on piston bases
     
  6. Offline

    DemmyDemon

    Ah, happy the source is useful!
    Feel free to send me PMs if you're having trouble with my Java. Being a Perl developer by trade does NOT make for a tidy Java developer :)
     
  7. Offline

    jfmherokiller

    I just learned that ladders on pistons are invisible + using my edited version of your plugin causes the plugin Clocksign to spit out errors due to the event CHUNK_UNLOAD not being sent it said null pointer.The reason this occurs is basicly is because i put the ladder on the piston. while the piston was being powered by the clocksign plugin. which makes it look like your doing maintenance work :cool:
    Show Spoiler

    Code:
    Block affected = event.getBlock();
            if (plugin.place.contains(affected.getType())) {
                Material down = affected.getFace(BlockFace.DOWN).getType();
                Material up = affected.getFace(BlockFace.UP).getType();
                Material north = affected.getFace(BlockFace.NORTH).getType();
                Material south = affected.getFace(BlockFace.SOUTH).getType();
                Material west = affected.getFace(BlockFace.WEST).getType();
                Material east = affected.getFace(BlockFace.EAST).getType();
                if (plugin.onTopOf.contains(down)) {
                    event.setCancelled(true);
                if (plugin.onTopOf.contains(up)) {
                    event.setCancelled(true);
                }
                if (plugin.onTopOf.contains(north)) {
                    event.setCancelled(true);
                }
                if (plugin.onTopOf.contains(south)) {
                    event.setCancelled(true);
                }
                if (plugin.onTopOf.contains(west)) {
                    event.setCancelled(true);
                }
                if (plugin.onTopOf.contains(east)) {
                    event.setCancelled(true);
                }
    

    i also would like to know what operator can change these ifs (in above SPOILER) into one something like this
    Code:
    if (plugin.onTopOf.contains(up || down)) {
                    event.setCancelled(true);
    
    because doing that gives me this error
    Code:
    The operator || is undefined for the argument type(s) org.bukkit.Material, org.bukkit.Material
    
    :mad:

    btw i am a vb.net developer so i am worse off then you are
     
  8. Offline

    DemmyDemon

    I'm sorry, I don't have time to teach you Java :(
     
  9. Offline

    StormKitten_1

    hey is it possible to update it so that you can place objects ON the tables? not sure yet what I could put onto it, but most likely torches etc for 'table lights' .... unless it was just a glitch on mine then it didnt work for putting things on the table :(
     
  10. Offline

    DemmyDemon

    That won't work, because the pressure plate takes up the entire block of the tabletop.
    A torch simply won't fit.
     
  11. Offline

    StormKitten_1

    fair enough.... my ex who i play on the server with told me that it would be impossible to put anything on them anyway due to objects immediately floating (ok i forget what he said, but yeah I see its impossible anyway sadly)

    ah well, they still look ok =) thanks
     
  12. Offline

    DemmyDemon

    I've been thinking about implementing something like Showcase by @narrowtux , but I'm not sure if I want it included in Tables, or if I want it in a separate plugin to keep Tables simple. I even have a prototype on it, but it's ... not behaving as I want it to.
     
  13. Offline

    narrowtux

    You could just spawn a ShowcaseItem on that block. I don't know if they fall through pressure plates but that's very likely :(
     
  14. Offline

    DemmyDemon

    They might pass through the pressure plate, but not the block below. Does Showcase have an API I can hook into?
     
  15. Offline

    narrowtux

    You can create a new showcase by creating a new object of type ShowcaseItem.
    You have to add that object to the list of showcases in ShowcaseMain.showcasedItems.
    If you want custom click handling, you have to setup a ShowcaseProvider and a ShowcaseExtra. They are both interfaces. He provider has to construct a new ShowcaseExtra on creation and when showcase loads. Also, it has to return a distinct type name.
    If you have further questions, don't hesitate to ask.
     
  16. Offline

    DemmyDemon

    Hmm, so no real API, just public methods/members?
    Oh well, worth taking a poke at ... ... if I ever get the time.
     
  17. Offline

    Trenix

    I used this plugin for quite some time until I found out about pistons and started using them as tables. They look nicer, have no gaps, and you're able to actually place blocks on them, including cakes.
     
  18. Offline

    DemmyDemon

    Yeah, using extended pistons is awesome for tables. The only problem is that you need a power source to extend them, but being a little creative never hurt anyone!
     
  19. Offline

    Trenix

    All you need is a redstone torch under it.
     
  20. Offline

    DemmyDemon

    Yeah, but sometimes "under it" is the roof of the floor below :)

    BTW, confirmed and working perfectly with build 1060
     
  21. Offline

    Trenix

    So here's a neat idea. Why not have a plugin that converts a piston into a table without the use of a redstone torch? It could be something like requiring a piston to be facing upward and then having to attack it with a certain item. You add that and I'd most definitely use your plugin once more.

    Make it a separate plugin.
     
  22. Offline

    Scandragon

    I was about to suggest making it possible to place pressureplates on air, as long as they touched 2 other pressureplates on opposite sides..
    But then I noticed this
    Does that mean it was possible to do it untill recently?
     
  23. Offline

    DemmyDemon

    Yes, it was possible, but it was horribly stupid. Due to the non-solid nature of pressure plates, you can walk straight through them, just causing them to be pressed. That means you could phase through the table between the table legs. It looked and felt really silly, and there's nothing I can do about their solidness.
     
  24. Offline

    Undrtakr

    Thanks for the plugin. Makes my house feel more like a home!!!
     
  25. Offline

    DemmyDemon

    Aaaaw, that's nice, thanks!
     
    Undrtakr likes this.
  26. Offline

    Undrtakr

    You're welcome! Keep up the great work!
     
  27. Offline

    Skirmisher

    Nifty little plugin! I'll definitely be using this once I get around to updating all my plugins. :D

    I have sort of the same idea as Trenix regarding "piston tables". I just saw someone use a piston as a table today (they just had a lever next to it). Then I thought, "Who needs the piston base? Just stick an upward-facing piston head on the ground and you've got a table that you can actually put stuff on! It looks nicer without the piston depressed into the ground too!" Hopefully this is possible, and would be pretty epic! :D
    But then there's the problem of making it accessible by the players. Even if you got piston heads to be placeable and automatically face upward, how would normal players get it in the first place? Well, you could include a crafting recipe that makes the piston head block, maybe like this:
    Code:
    W=wood planks
    S=stick
    [W][W][W]
    [ ][S][ ]
    [ ][S][ ]
    But then people would want it toggleable, and that would, y'know, require a config :p. So some other way of making piston heads accessible would probably be good.

    Anyway, those are my ideas. Hopefully they're not insane/impossible/etc., and adding them would be sweet! :D
     
  28. Offline

    DemmyDemon

    I was thinking of this the other day, and possible crafting recipes etc. What I came up with was this:
    - Place a fence on the ground
    - Place a wooden pressure plate on top of it
    - Plugin removes both and places a piston head

    Removing it would drop one fence post and one pressure plate unless there is a piston base below it.
    Now I just have to figure out a good way of doing this in code, and keeping the piston head there even when you place stuff on it or otherwise trigger a physics event.
     
  29. Offline

    Skirmisher

    Pretty neat idea! Yeah, I figured keeping the piston head there would be the hard part. Good luck with it :)
     
  30. Offline

    Skirmisher

    No luck? Or is RL getting in the way? :(
     
  31. Offline

    DemmyDemon

    Yeah, I quite unexpectedly got a life. I have a prototype that ... well, it somehow corrupts maps :confused:
    I'm going to wait and see what notch/jeb_ did, since this plugin's functionality is now in vanilla.

    BTW, just to make this clear: I did not invent this kind of table at all. It has been around WAY longer than this plugin. I just made it practical/easy to build, so it's not like I deserve any credit for it being in vanilla now.
     

Share This Page