IntelliDoors - Open and close doors with ease. Current Version: 1.1.11 Make your doors easier to manage! No more complicated redstone systems required to control double doors with redstone. Never close a door you just opened again. Stop doors from slamming on your face when you press a button or step on a pressure plate to open them. Need to keep that door open instead of closed? Power it with redstone! I was originally inspired to write this as a replacement by Yurij's SelfClosingDoors plugin. However, later I found FrozenBrain's replacement for it, Self-Closing Doors, and then added more functionality based on some of the goals of his plugin. This plugin does not contain any original code from either plugin but I will admit to snagging the idea of using bit manipulation from FrozenBrain's source code. Current Features: Inverts the response to redstone on the right door in a double door set. Holds doors open for two seconds after they lose redstone power. Keeps double doors in sync by mimicing your actions on either door to the other door. This includes redstone controlling one door causing the other to respond. Individual reverse iron doors retain old functionality. This means it closes them when powered, and it opens them when not powered. Additionally, instead of delaying their response when losing power: it delays their response when receiving power. Prevents you from accidentally shutting a door after opening it, or opening it after shutting it. Resets all wooden and trap doors to their original power state after five seconds. Download IntelliDoors v1.1.11 at moltendorf.com/download/IntelliDoors.jar Now on BukkitDev at dev.bukkit.org/server-mods/moltendorf-intellidoors Previous Releases: 1.1.x: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11. 1.0.x: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18. Get the source code on GitHub at github.com/moltendorf/IntelliDoors You can also find it in IntelliDoors.jar itself. Just open it as a zip file. Known Issues: Monsters don't seem know how to pass through doors opened with redstone. In another sense, wouldn't this actually be considered a feature? Opening and shutting a door with redstone does not respect protection plugins. It is only possible to break a door by breaking the block under it. Planned Features: Close doors when you walk away from them instead of after a set time (planned for branch 1.2.x). Add configuration file (planned for branch 1.2.x). Add in any additional fixes for security plugins (planned for branch 1.3.x). Changes: Version 1.1.11 Added in support for Fence Gates. Updated ignored blocks in door orientation detection. Version 1.1.10 Fixed powered wooden doors resetting too quickly after being shut by clicking. Version 1.1.9 Fixed cancelling of an event pertaining to a door not being respected. Fixed door sound not being played to other users when interacting with a door. Older Changes (Move your mouse to reveal the content) Older Changes (open) Older Changes (close) Version 1.1.8 Fixed placed doors not responding properly without a server restart. Fixed the ability to dynamically change a doors orientation. Improved synchronized code even more. Version 1.1.7 Improved handling of combinations of manual triggering and redstone triggering of doors. Now prevents you from flipping a door by clicking it shortly after it is opened or shut by redstone. Standard auto-close reduced from 10 seconds to 5 seconds. Redstone hold delay reduced from 2.25 seconds to 2 seconds. Minimum manual flipping delay reduced from 0.5 seconds to 0.25 seconds. Fixed a large number of issues caused by doors being added and removed. Fixed some rare issues with doors being grouped together when they should not be. Moved the sound played to the center of the door set from the left one. Completely reworked the synchronized code, as the amount of synchronization going on was superfluous. Completely rewrote the library. Replaced deprecated code with new code. More garbage collection friendly. More initial memory use. Less memory use per door. Doors are now grouped, improving seek time for active sets. Version 1.1.6 More major reworks of logic. Fixed doors staying locked open when there is redstone power provided. Fixed doors not shutting in a timely manner when open and shut before removing power from them. Fixed some issues with events being cancelled by protection plugins not being respected. Version 1.1.5 Major rework of logic for slight change in how redstone triggers occur. This fixes my plugin for build (approximately) 953 and later. It, however, retains backward compatibility with previous builds. Reverse iron doors that are not in a set now respond opposite to how reverse wooden doors respond to redstone. Doors now orient themselves to their proper power state after being placed. Door sets will no longer form when either door can belong to more than one door set. Bukkit fixed trap doors not staying open after losing redstone power. Version 1.1.4 Wooden and trap doors now restore themselves to their power state rather than closing when clicked. This means you can keep doors open by powering them with redstone power. Fixed reverse door switching with redstone. Version 1.1.3 Doors now take two extra seconds to close after redstone power is shut off. Trap doors do not feature this currently. Fixed an issue with opening or closing doors manually while redstone is powering them. Version 1.1.2 Fixed a very rare server-crashing infinite loop caused by a race condition. Got really mad at race conditions and fixed every feasibly possible one even if CraftBukkit does not have the possibility of triggering them. Now including the current release in the previous releases list to allow people who use plugin updaters to get the latest version and prevent it from auto-updating. Version 1.1.1 Fixed an issue with input being ignored to one door in some cases. Fixed an issue with doors that are open on plugin load not responding to redstone until closed for at least ten seconds. Added lots of comments to the main functions triggered by events. Version 1.1.0 Inverts the redstone power to the second door in a set. Redstone now powers both doors in a set rather than just one door. Version 1.0.18 Now works with trap doors. Does not consider adjacent trap doors as door sets. Version 1.0.17 Sounds now only play once per door set rather than for each door. Version 1.0.16 Added sounds to any automated effects with doors. Thanks to SpaceManiac. Added a period to my topic title. Version 1.0.15 You can build again with this plugin installed. Version 1.0.14 Broke the ability to build. Oops. Another nearly complete rewrite of the code; retains all previous features. Fixed several theoretically possible bugs that should otherwise never occur in a single-thread setup. Version 1.0.13 Fixed a possible race condition. Fixed an issue with doors that are open on plugin load being unable to close unless left closed for at least ten seconds before opening them again. Version 1.0.12 Introduced a race condition. Now prevents you from accidentally opening or shutting a door (set) right after you did the opposite by cancelling any attempts to open or shut a door (set) within half a second of opening or shutting it. Version 1.0.11 Improved handling of sync delayed tasks. Now cancels the previous one and creates a new one rather than just creating a new one but telling the old one to do nothing when it's run. It feels like a much cleaner way to handle things. Version 1.0.10 Checks against more blocks than air to determine the proper closed state. Now only pairs doors together if they are a matching set. Version 1.0.9 Now detects whether or not your doors match the orientation they were originally set to before closing them. Version 1.0.8 Fixed an issue with the surrounding block detection resulting in false positives in very rare block placements. It now follows my rules no matter what. Version 1.0.7 Now detects surrounding blocks to determine the proper closed state of a door. Changed the set detection to ignore doors at different elevations to the door clicked. Cleaned up the constructor of the IntelliDoorsDoor class. Version 1.0.6 Original intended state of the 1.0.4 release. Version 1.0.5 Instead of misplacing the left or only door in three of the four possible facings, I broke it. Double oops. Version 1.0.4 Misplaced the left or only door in three of the four possible facings. Oops. Fixed some minor issues with placing other blocks before the automatic closing occurs. Version 1.0.3 Fixed an issue with the doors always closing ten seconds after every time you clicked. They will now only close ten seconds after you last clicked. Completely rewrote code to contain significantly less duplication. Fixed some theoretically possible bugs (theoretically). Version 1.0.2 Fixed an issue with door protections causing the second door in a set to be opened when the original one was not opened successfully. Thanks to Sleaker, and SpaceManiac. Version 1.0.1 Fixed an uncaught exception that was pointless to fix other than to prevent server log spam and server administrator heart attacks. Version 1.0.0 Initial release.