LoZDungeons is a plugin that was created to fulfil this request. As shown on the thread, LoZDungeons currently only fulfils the first idea, but has plenty of ideas to improve upon in the future!
This plugin allows you to create a dungeon door. This door will be locked for all players, and in order to unlock it, they will need to right click it with a key for the door. There can be more than one key to unlock a door. Once a player unlocks the door, the blocks will disappear for that player only, allowing them to pass through. Doors can automatically lock after a certain amount of time has passed, or remain unlocked forever. This is configurable per door.
Commands
The command has the following aliases: lozdungeons, lozdung, or lozd
- /lozd door delete <id> - Deletes the door with the specific ID
- /lozd door list - List all doors
- /lozd door create <id> - Convert your current WorldEdit selection to a door with the specified id
- /lozd door settimer <id> <timer> - Sets how long the door should remain open for a player once unlocked. -1 for infinite
- /lozd key create <id> - Adds the item you're holding as an approved key.
- /lozd unlock <door> [player] - Unlocks the specified door, either for the player specified, or yourself if none specified
- /lozd lock <door> [player] - Locks the specified door, either for the player specified, or yourself if none specified
Permissions
lozdungeons.*:
description: Gives you all LoZDungeons permissions!
default: op
children:
lozdungeons.door.*: true
lozdungeons.key.*: true
lozdungeons.door.*:
description: Gives you all LoZDungeons door permissions!
default: op
children:
lozdungeons.door.create: true
lozdungeons.door.delete: true
lozdungeons.door.list: true
lozdungeons.door.settimer: true
lozdungeons.key.*:
description: Gives you all LoZDungeons door permissions!
default: op
children:
lozdungeons.key.create: true
lozdungeons.door.create:
description: Allows you to create a LoZDungeon door!
default: op
lozdungeons.door.delete:
description: Allows you to delete a LoZDungeon door!
default: op
lozdungeons.door.list:
description: Allows you to list the LoZDungeon doors!
default: op
lozdungeons.door.settimer:
description: Allows you to change the timer of a LoZDungeon door!
default: op
lozdungeons.key.create:
description: Allows you to create a LoZDungeon key!
default: op
lozdungeons.lock:
description: Allows you to lock a door with a command!
default: op
lozdungeons.unlock:
description: Allows you to unlock a door with a command!
default: op
Configuration
There is no need for any configuration for this plugin, everything is handled through in-game commands. However, a config.yml file will be generated to store the properties for each dungeon door, so be sure not to delete this file!
Source
The source for this plugin can be found on this GitHub page.