Advanced-Dispensers request

Discussion in 'Archived: Plugin Requests' started by Tal-N, May 23, 2011.

  1. Offline

    Tal-N

    Given that Dispensers are currently limited to 'shooting' snowballs, eggs and arrows or dropping items/blocks on the floor. It is fair to say their usage is very limited.

    It would be nice to see Dispensers given the open to 'PLACE', 'SHOOT' & DISPENSE'as part of their design.

    On top of this functionality would be the open to have the blocks it dispensers ACTIVE or INACTIVE. An active block is placed into the world as if done by a player. For example Sand would be an actual Sand block and not just the pick-up. TNT too would be active when dispensed rather than being a pick-up. The last feature of an advanced dispenser would be the ability to have the items produced on top of or under the dispenser rather than just the sides. This would be useful for if you wanted to hide the dispenser somehow.

    To break things down into easier to understand terms:

    DISPENSE

    The default option already in Minecraft

    PLACE
    The item or block is put directly in front of the dispenser.

    SHOOT
    The item is propelled from the dispenser according to a setting within the dispenser. This would also allow you to throw blocks over further distances.

    ACTIVE ITEMS
    The items are part of the world upon coming out of the dispenser. TNT is live. Blocks are real blocks. Weapons can be used like arrows to be fired from the dispenser and cause damage. Buckets of materials would produce their contents rather than appearing as items. Buckets of Water would create a Water source, Buckets of Lava create a Lava source. Weapons and tools would function as if they are being used when they hit something. If they hit an NPC or player they cause damage, but furthermore you could fire an Axe at a tree-trunk and it would chop out the wooden block it hits. It would then revert to a normal Item pick-up with some durability damage equal to chopping 1 block. If the Axe hits cobblestone however it won't remove the block as it isn't effective against that material. Likewise a fired pickaxe wouldn't work on Wood but would dig away at Cobblestone.

    Additionally, an active block when fired from a dispenser would actually predict the landing spot and generate the block at the place where the block would land. This would let you use active dispensers to fill up an area rather than doing it by hand.

    INACTIVE ITEMS
    Same as how Minecraft currently works.

    ABOVE/BELOW
    The advanced dispenser can produce items above or below it.

    THE POTENTIAL FOR THIS PLUG-IN
    A number of interesting possibilities just by having this exact commands.

    A row of dispensers loaded with TNT, set to PLACE the explosives UNDER them and make them ACTIVE. Would allow someone to blast mine rapidly downwards. Without needing to place the explosives by hand after each row detonates. They could just set up the dispensers and trigger them with redstone once they are loaded with stacks of TNT.

    Automated farms could be created by dispensers being loaded with Buckets of Water, set to PLACE the ACTIVE water in front of them. Another set of dispensers are then arranged 1 block ahead of where the water sources and PLACE an ACTIVE block down when triggered to stop the flow of water.

    Digging machines could be created by loading up a whole bunch of dispensers with Pickaxes and setting the dispenser to SHOOT the Pickaxes at the stone ahead of them. Once the dispensers are empty the player can then collect the pickaxe pick-ups and reload for another volley.

    Thoughts?
     
  2. Offline

    bennyty

    I would love to do this! Except for one thing, I have not found a way to detect where a dropped "mini-block" lands.

    Also how would you configure the dispenser to be active/inactive? I am currently thinking to use the block above/below it.
     
  3. Offline

    blindsarcasm

    Place a block in front of where you want it to land. Its the eisiest method
     
  4. Offline

    Tal-N

    KISS. Use a block that is normally useless, not used in typical construction and unobtainable. Like Sponge. The block would need to be somewhere adjacent since you need to allow for redstone currents and drop positions. If it requires the block above or below then it would prevent the dispensers from dropping/producing items in those directions.

    I figured that the 'throwing' of blocks and generating them where they are landing would be difficult to be honest. Unless you do something like make the Dispenser shoot 'invisible' arrows and then create the blocks where the arrows strike something.

    I really wish I knew java and what prompted this idea was an event we're setting up for our server which mimics space invaders. The plan is to have a moderator placing the TNT along the top of the playgrid and using random pattern redstone to drop the TNT onto the player building the defenses. We wanted it handled randomly so that there is no bias by the moderators supervising the event. But it dawned on me, why couldn't a dispenser simply drop active TNT. It would mean someone just has to start the redstone random circuit.

    Another thing occured to me. It would be easier to set up if the dispencer replaces the block where it is trying to put another block. You could then swap blocks using dispencers which would make it easier to set up things that use water/lava sources.
     
  5. Offline

    Aeodyn

    Much of this is in my BlockDispensers plugin. But, nice ideas of 'using' the tools and firing blocks. Will work on those!
     

Share This Page