EnderHoppers For GriefPrevention
Version 1.3
Updated for Spigot 1.8.1 API and GriefPrevention 10.7.1. I'm as surprised as anybody, given my long hiatus.
This Plugin works with GriefPrevention and allows Hopper functionality to work with EnderChests by dealing with the EnderChest inventory of the claim owner.
Configuration can be done by editing the file /EnderHoppers/config.yml in your plugin directory, and currently allows for the adjustment of how often items are taken from or given to appropriate EnderChest Inventories. The default is currently once every three seconds (60, as the configuration is in game ticks) which makes them slower than when Hoppers are used with a chest as well as reducing performance implications. Configuration also presents the ability to define a whitelist through an EnderHoppers.WhiteList configuration option within the aforementioned configuration. If this whitelist has entries, this Plugin will only transfer items to and from EnderChests for Players who's name are in the whitelist.
Better Ender Chest
Version 1.2 has added support for the Inventories managed by Better Ender Chest. Since I don't know a lot about Better Ender Chest's various expanded capabilities, I may have missed some functional requirements. It has however worked in my testing. This should not affect the functionality of GP Ender Hoppers without Better Ender Chest installed, in which case it will of course default to the standard Player Ender Chest.
Usage
When installed, this will allow Hoppers to Work With EnderChests within a Claim. That is:
- When a Hopper is underneath an Ender Chest, it will extract contents from the EnderChest Inventory of the Claim owner, as long as they are Online.
- When a Hopper is attached to an Ender Chest, it will pipe it's contents into the EnderChest Inventory of the Claim owner, as long as they are Online.
Items are removed and added at the Interval specified in the configuration file, which defaults to 60 (or three seconds). Each time One item is taken from the Hopper and placed into the Ender Chest or vice versa. Nothing happens if the Destination is already full, the source is empty, or if the Player that owns the Claim is not online. thus making this function almost identically to the Vanilla Hoppers and Chests, aside from the Online requirement for the Claim owner.
Another side effect is that if you create very complex structures, sometimes items can end up in unexpected locations. This is particularly the case if you have more than one Ender Chest Inventory being "sucked" from. In this case the actual order is more or less undefined. However, what this will usually mean is that the first Hopper that was loaded will take precedence. Since you cannot predict the order they will be loaded, however, it is best not to try to rely on this behaviour.
Another caveat to consider is that this means that anybody with build permissions in a claim can essentially take or put items into the claim owners EnderChest Inventory. There isn't much of a way around this, since the functionality is essentially just added to Hoppers themselves and associates with the EnderChest inventory of whoever owns the Claim.
Does this works with unclaimed Ender Chests?
I've updated the plugin to Spigot 1.8.1 and tested it with GriefPrevention 10.7.1, pending approval.
I apologize for the long delay.
a plugin i so wish wold be updated
So sad still no update...
please update to 1.7.2
Attention!
GP EnderHoppers 1.3 for GP 7.7/7.8 and Bukkit 1.6.2 file is named as GriefPrevention.jar.
+ error log http://pastebin.com/yiMhGpQ6
can u add a way to allow use of this outside of a claim?
@BC_Programming
Nice work! I have added a notice on the BetterEnderChest page that your plugin is compatible.
@BC_Programming
You da man! Nice work. I'm excited to download the update :)
Version 1.2 adds support for Better Ender Chest inventories, and should be approved shortly. :)
@slimedog007
Oh there is a way, I'm sure. I guess your question is would I add it. I admit I've been focussing a lot of my efforts at the moment on Grief Prevention itself. Thank you for the link, however, it looks like supporting BEC if it is installed would be quite simple (And would have the additional ability to access the Ender chest contents of players that are not online). I'll almost certainly add that.
@JustinFatalx
Thanks. Seems my build script was broken. I've hopefully fixed that and uploaded the fixed version, which should be uploaded shortly.
This fix can be applied with existing versions by opening the .jar with a Zip program and renaming the incorrectly named plugin.yml (Which was called GPEnderHoppers.yml for some reason) to plugin.yml, if necessary.
Would there be any way to get compatibility with BetterEnderChest? This would be great for my server, as I love BEC and I love this plugin.
I commented the author on BEC, and he pointed me to these instructions.
I am getting this error.
http://pastebin.com/uFCunE5S
It could be used for numerous purposes. Two allied players could place claims next to each others bases, giving each other container trust. Player A can place stuff in a chest or hopper above a Ender chest in that claim and transport goods and materials instantly to player B and vice versa.
It can also be used as you mention, for the purpose of taking stuff out of an enderchest with a hopper and putting it into another chest, hoppers,etc. The chunk would need to be loaded, though.
I like this plugin's idea, but I can't think of practical uses for it... :(
Does anyone know a practical use for it?
EDIT: Ooh how about you set up one at your house, and when you put something in your EC, it sticks it in a large chest in your house? Is this possible with this plugin?
@Ethrock
Yes.
Is this dependent on GP?
I hope other people discover this plugin. If you're into redstone and automation like me, there is nothing more awesome than this plugin!
@ConnerEnders
It is now. The delay was in the file getting approved, Apologies for that.