name: BigDoors
main: nl.pim16aap2.bigDoors.BigDoors
version: Alpha 0.1.8.40
author: pim16aap2
api-version: 1.13
loadbefore: [ PlotSquared ]
softdepend: [ WorldGuard, Vault, GriefPrevention, Towny, Lands, RedProtect, Geyser-Spigot, ViaRewind, GriefDefender ]
libraries:
  - net.bytebuddy:byte-buddy:1.12.10
commands:
  bigdoors:
    description: Base command
    usage: /BigDoors
    permission: bigdoors.user.base
  bdm:
    description: Opens the BigDoors GUI.
    usage: /BDM
    permission: bigdoors.user.gui
    aliases: ["doors"]
  namedoor:
    description: Create a new door named "doorName".
    usage: /NameDoor <doorName || doorUID>
    permission: bigdoors.user.base
    permission-message: You do not have the bigdoors.user.base permission node.
  setblockstomove:
    description: Change the number of blocks the door will attempt to move in the provided direction.
    usage: /SetBlocksToMove <doorName || doorUID> <time>
    permission: bigdoors.user.setblockstomove
    permission-message: You do not have the bigdoors.user.setblockstomove permission node.
  setautoclosetime:
    description: Changes/Sets time (in s) for doors to automatically close. -1 to disable.
    usage: /SetAutoCloseTime <doorName || doorUID> <time>
    permission: bigdoors.user.setclosetime
    permission-message: You do not have the bigdoors.user.setclosetime permission node.
  setdoorrotation:
    description: Change door rotation of a given door.
    usage: /SetDoorRotation <doorName || doorUID> <CLOCK || COUNTER || ANY>
    permission: bigdoors.user.base
    permission-message: You do not have the bigdoors.user.base permission node.
  bdcancel:
    description: Cancels the door creation process.
    usage: /bdcancel
    permission: bigdoors.user.base
    permission-message: You do not have the bigdoors.user.base permission node.
  pausedoors:
    description: Pauses all door movement until used again.
    usage: /PauseDoors
    permission: bigdoors.admin.pausedoors
  stopdoors:
    description: Stops all doors.
    usage: /StopDoors
    permission: bigdoors.admin.stopdoors
  newdoor:
    description: Create a new door from selection with name "doorName". Defaults to door. Use flags to make other types.
    usage: /NewDoor [-pc || -db || -bd] <doorName>
    permission: bigdoors.user.base
    permission-message: You do not have the bigdoors.user.base permission node.
  newportcullis:
    description: Create a new portcullis from selection with name "portcullisName".
    usage: /NewPortcullis <portcullisName>
    permission: bigdoors.user.createdoor.portcullis
    permission-message: You do not have the bigdoors.user.createdoor.portcullis permission node.
  newslidingdoor:
    description: Create a new sliding door with the provided name.
    usage: /NewSlidingDoor <slidingDoorName>
    permission: bigdoors.user.createdoor.slidingdoor
    permission-message: You do not have the bigdoors.user.createdoor.slidingdoor permission node.
  newdrawbridge:
    description: Create a new portcullis from selection with name "portcullisName".
    usage: /NewDrawbridge <drawbridgeName>
    permission: bigdoors.user.createdoor.drawbridge
    permission-message: You do not have the bigdoors.user.createdoor.drawbridge permission node.
  deldoor:
    description: Delete door with name "doorName".
    usage: /DelDoor <doorName || doorUID>
    permission: bigdoors.user.deletedoor
    permission-message: You do not have the bigdoors.user.deletedoor permission node.
  toggledoor:
    description: Toggles the door with name "doorName".
    usage: /ToggleDoor <doorName || doorUID> [time to open (decimal!)]
    permission: bigdoors.user.toggledoor
    permission-message: You do not have the bigdoors.user.toggledoor permission node.
  closedoor:
    description: Close the door with name "doorName".
    usage: /CloseDoor <doorName || doorUID> [time to open (decimal!)]
    permission: bigdoors.user.toggledoor
    permission-message: You do not have the bigdoors.user.toggledoor permission node.
  opendoor:
    description: Open the door with name "doorName".
    usage: /OpenDoor <doorName || doorUID> [time to open (decimal!)]
    permission: bigdoors.user.toggledoor
    permission-message: You do not have the bigdoors.user.toggledoor permission node.
  listdoors:
    description: Returns a list of all your doors.
    usage: /ListDoors [name]
    permission: bigdoors.user.listdoors
    permission-message: You do not have the bigdoors.user.listdoors permission node.
  listplayerdoors:
    description: Returns a list of all doors owned by a player.
    usage: /ListPlayerDoors [player]
    permission: bigdoors.admin.listplayerdoors
    permission-message: You do not have the bigdoors.admin.listplayerdoors permission node.
  changepowerblockloc:
    description: Relocate the Power Block for a given door.
    usage: /ChangePowerBlockLoc <doorName || doorUID>
    permission: bigdoors.user.relocatepowerblock
    permission-message: You do not have the bigdoors.user.relocatepowerblock permission node.
  inspectpowerblockloc:
    description: Inspect a powerblockloc.
    usage: /InspectPowerBlockLoc
    permission: bigdoors.user.inspectpowerblock
    permission-message: You do not have the bigdoors.user.inspectpowerblock permission node.
  doorinfo:
    description: Display door info.
    usage: /DoorInfo <doorName || doorUID>
    permission: bigdoors.user.doorinfo
  setnotification:
    description: Toggles notifications for a given door.
    usage: /setnotification <doorName || doorUID> <true || false>
    permission: bigdoors.user.receivenotifications
  doordebug:
    description: Do not use this unless you are me... What?
    usage: This command is not meant for mere mortals.
    permission: bigdoorsdebug.isweariampim16aap2
  filldoor:
    description: Fills a door with stones.
    usage: /filldoor <doorName || doorUID>
    permission: bigdoors.admin.fillDoor
  recalculatepowerblocks:
    description: Regenerate Power Block Hashes.
    usage: /recalculatepowerblocks
    permission: bigdoors.admin.recalculatepowerblocks
  killbigdoorsentities:
    description: Kill all entities generated by this plugin.
    usage: /killbigdoorsentities
    permission: bigdoors.admin.killbigdoorsentities
permissions:
  bigdoors.*:
    description: Gives access to all BigDoors commands.
    children:
      bigdoors.user.*: true
      bigdoors.admin.*: true
  bigdoors.user.*:
    description: Gives the user access to all user-level commands of this plugin.
    children:
      bigdoors.user.base: true
      bigdoors.user.addowner: true
      bigdoors.user.relocatepowerblock: true
      bigdoors.user.delete: true
      bigdoors.user.info: true
      bigdoors.user.inspectpowerblock: true
      bigdoors.user.listdoors: true
      bigdoors.user.removeowner: true
      bigdoors.user.setautoclosetime: true
      bigdoors.user.setblockstomove: true
      bigdoors.user.toggle: true
      bigdoors.user.lock: true
  bigdoors.admin.*:
    description: Gives the user access to all admin-level commands of this plugin.
    children:
      bigdoors.admin.filldoor: true
      bigdoors.admin.listplayerdoors: true
      bigdoors.admin.restart: true
      bigdoors.admin.stopdoors: true
      bigdoors.admin.version: true
      bigdoors.admin.toggledoor: true
      bigdoors.admin.bypass.*: true
      bigdoors.admin.killbigdoorsentities: true

  bigdoors.admin.bypass.*:
    description: Gives the user access to door attributes (toggle, delete, etc) of doors they do not own.
    children:
      bigdoors.admin.bypass.lock: true
      bigdoors.admin.bypass.toggle: true
      bigdoors.admin.bypass.info: true
      bigdoors.admin.bypass.delete: true
      bigdoors.admin.bypass.relocatepowerblock: true
      bigdoors.admin.bypass.changetime: true
      bigdoors.admin.bypass.blockstomove: true
      bigdoors.admin.bypass.direction: true
      bigdoors.admin.bypass.addowner: true
      bigdoors.admin.bypass.removeowner: true

  bigdoors.user.createdoor.*:
    description: Allows a user to create all door types.
    children:
      bigdoors.user.createdoor.bigdoor: true
      bigdoors.user.createdoor.drawbridge: true
      bigdoors.user.createdoor.portcullis: true
      bigdoors.user.createdoor.slidingdoor: true
  bigdoors.user.base:
    description: Gives access to base commands required for basic usage.
    default: op
  bigdoors.user.gui:
    description: Gives access to BigDoor's GUI and other basic commands required for basic usage.
    default: op
  bigdoors.user.addowner:
    description: Allows a player to add additional owners to a door.
    default: op
  bigdoors.user.deletedoor:
    description: Allows a user to delete a door they own.
    default: op
  bigdoors.user.doorinfo:
    description: Allows a user to retrieve the information of a door.
    default: op
  bigdoors.user.receivenotifications:
    description: Allows the original creator of a door to request and receive notifications for all toggles of a given door.
    default: op
  bigdoors.user.inspectpowerblock:
    description: Allows the player to find out which doors are attached to a given power block.
    default: op
  bigdoors.user.relocatepowerblock:
    description: Allows the player to relocate a power block.
    default: op
  bigdoors.user.listdoors:
    description: Allows a player to retrieve a list of all the doors they own.
    default: op
  bigdoors.user.removeowner:
    description: Allows the user to remove another owner from a door if their permission lever is higher than theirs.
    default: op
  bigdoors.user.setautoclosetime:
    description: Allows a user to change the auto close timer of a door.
    default: op
  bigdoors.user.setblockstomove:
    description: Allows a user to specify the number of blocks a door will try to move.
    default: op
  bigdoors.user.toggledoor:
    description: Allows a user to open, close, or toggle a door that they own.
    default: op
  bigdoors.user.lock:
    description: Allows a user to (un)lock a door that they own.
    default: op
  bigdoors.admin.filldoor:
    description: Allows a user to fill in a door with stone blocks, regardless of whether they are allowed to build there or if there is already something there.
    default: op
  bigdoors.admin.listplayerdoors:
    description: Allows a user to list all doors owned by another player.
    default: op
  bigdoors.admin.restart:
    description: Allows a user to restart this plugin.
    default: op
  bigdoors.admin.stopdoors:
    description: Allows a user to abort the animation of all doors that are currently active.
    default: op
  bigdoors.admin.pausedoors:
    description: Allows a user to pause the animation of all doors that are currently active until the command is used again.
    default: op
  bigdoors.admin.version:
    description: Allows a user to retrieve the version of this plugin.
    default: op
  bigdoors.admin.bypasscompat:
    description: Allows doors opened/owner by this player to be owned regardless of whether they are allowed to destroy blocks in the region.
    default: op
  bigdoors.admin.unlockdoor:
    description: Forcefully unlocks a door not owned by you.
    default: op
  bigdoorsdebug.isweariampim16aap2:
    description: Do not use this!
    default: false
  bigdoors.admin.bypass.lock:
    description: Allows a user to (un)lock a door not owned by them.
    default: op
  bigdoors.admin.bypass.toggle:
    description: Allows a user to toggle a door not owned by them.
    default: op
  bigdoors.admin.bypass.info:
    description: Allows a user to retrieve door info of a door not owned by them.
    default: op
  bigdoors.admin.bypass.delete:
    description: Allows a user to (un)lock a door not owned by them.
    default: op
  bigdoors.admin.bypass.relocatepowerblock:
    description: Allows a user to relocate the power block of a door not owned by them.
    default: op
  bigdoors.admin.bypass.changetime:
    description: Allows a user to change the autoclosetimer of a door not owned by them.
    default: op
  bigdoors.admin.bypass.blockstomove:
    description: Allows a user to change the number of blocks a door not owned by them will move.
    default: op
  bigdoors.admin.bypass.direction:
    description: Allows a user to change the open direction of a door not owned by them.
    default: op
  bigdoors.admin.bypass.addowner:
    description: Allows a user to add owners to a door not owned by them.
    default: op
  bigdoors.admin.bypass.removeowner:
    description: Allows a user to remove owners from a door not owned by them.
    default: op
