In this plugin IronDoors should not explode if they're built on Obsidian. https://pastebin.com/jKKg6U0T Why does the IronDoor still explode?
Code (Text): if (b.getType() == Material.IRON_DOOR) { if(blo.getType() == Material.OBSIDIAN) { it.remove(); } There is no code placing an iron door after it is destoryed. Remember editing the list won't do anything. You must place a new iron door at the location it exploded at.
You do not need to replace the door. Let me tell you a simple way to perform what you are doing. Loop through all the destroyed blocks. Check if it contains a 1 block part of a iron door, if yes, check if there is a obsidian below it. If yes, remove the iron door from both y levels since a iron door has 2 parts from the blocklist not the iterator.
But in this code it works, the IronDoor doesn't explode anymore. https://pastebin.com/tDwBE3nm Edit: Removing the IronDoor from the list doesn't work too: https://pastebin.com/HSRenwxL
As i said, iron doors are in 2 parts. Try after removing the top portion, remove block below the block b from the list too.