name: BooksWithoutBorders
version: '1.3.4'
main: net.knarcraft.bookswithoutborders.BooksWithoutBorders
api-version: '1.20'
prefix: 'Books Without Borders'
authors: [ EpicKnarvik97, AkiraAkiba ]
description: 'A continuation of the original Books Without Borders'
softdepend: [ Vault ]
website: https://www.spigotmc.org/resources/books-without-borders-updated.96069/
dev-url: https://git.knarcraft.net/EpicKnarvik97/Books-Without-Borders
commands:
  bookswithoutborders:
    description: Lists Books Without Borders's commands and uses.
    aliases: [ bwb ]
    usage: /<command>
  decryptbook:
    description: Decrypts the book the player is holding. "key" is required and MUST be IDENTICAL to the key used to encrypt held book
    usage: /<command> <key>
    permission: bookswithoutborders.decrypt
  formatbook:
    description: Replaces color/formatting codes in a written book with formatted text
    usage: /<command>
    permission: bookswithoutborders.format
  givebook:
    description: Gives the selected player a book from your personal directory
    usage: /<command> <file name or number> <playername> [# of copies (num)] [signed (true/false)]
    permission: bookswithoutborders.give
  givepublicbook:
    description: Same as givebook, but uses books from the public directory
    usage: /<command>  <file name or number> <playername> [# of copies (num)] [signed (true/false)]
    permission: bookswithoutborders.givepublic
  groupencryptbook:
    description: Encrypts book so that only players with the bookswithoutborders.decrypt.<group name> permission may decrypt the book by holding and left clicking the book
    usage: /<command> <group name> <key> [encryption style]
    permission: bookswithoutborders.groupencrypt
  deletebook:
    description: Deletes the specified file in the player's directory
    usage: /<command> <file name or number>
    permission: bookswithoutborders.delete
  deletepublicbook:
    description: Same as deletebook, but deletes files in the public directory
    usage: /<command> <file name of number>
    permission: bookswithoutborders.admin
  copybook:
    description: Copies the book the player is holding
    usage: /<command> <# of copies>
    permission: bookswithoutborders.copy
  clearbook:
    description: Removes all text from the book the player is holding
    usage: /<command>
    permission: bookswithoutborders.clear
  unsignbook:
    description: Un-signs the book the player is holding
    usage: /<command>
    permission: bookswithoutborders.unsign
  encryptbook:
    description: Encrypts the book the player is holding. "key" is required and can be any phrase or number excluding spaces. "style" is not required. Possible values are "DNA" or ""
    usage: /<command> <key> [encryption style]
    permission: bookswithoutborders.encrypt
  setbookgeneration:
    description: Sets the generation of the held book
    usage: /<command> <generation>
    permission: bookswithoutborders.setgeneration
  setbookprice:
    description: Sets the per-book-price to create a book via commands. If "Item", the item in the player's hand in the amount of [quantity] will be the price. If "Eco", a Vault based economy will be used for price. If neither <Item/Eco> or <quantity> are specified, the current price to create books will be removed.
    usage: /<command> <item/eco> <quantity>
    permission: bookswithoutborders.setbookprice
  setlore:
    description: Sets the lore of the item the player is holding. Insert the lore_line_separator character to force a new line ("~" by default)
    usage: /<command> <new lore>
    permission: bookswithoutborders.setlore
  savepublicbook:
    description: Same as savebook, but saves files in the public directory
    usage: /<command> [overwrite (true/false)]
    permission: bookswithoutborders.savepublic
  savebook:
    description: Saves the book the player is holding to a text file in a private directory. If true is specified, a book of the same name by the same author will be overwritten by the new book
    usage: /<command> [overwrite (true/false)]
    permission: bookswithoutborders.save
  setbookauthor:
    description: Sets the author of the book the player is holding
    usage: /<command> <author>
    permission: bookswithoutborders.setauthor
  settitle:
    description: Sets the title of the book/item the player is holding
    usage: /<command> <title>
    permission: bookswithoutborders.settitle
  loadbook:
    description: Creates a book from the specified file and gives it to the player. If no file is specified, a list of available files is returned. If true is specified, the book will be signed, if false it will be unsigned
    usage: /<command> <file name or number> [# of copies] [signed (true/false)]
    permission: bookswithoutborders.load
  loadpublicbook:
    description: Same as loadbook, but views files in the public directory
    usage: /<command> <file name or number> [# of copies] [signed (true/false)]
    permission: bookswithoutborders.loadpublic
  reload:
    description: Reloads BwB's configuration file
    usage: /<command>
    permission: bookswithoutborders.reload
permissions:
  bookswithoutborders.*:
    description: Grants all permissions
    default: op
    children:
      bookswithoutborders.admin: true
  bookswithoutborders.admin:
    description: Grants all permissions
    default: op
    children:
      bookswithoutborders.use: true
      bookswithoutborders.alterbooks: true
      bookswithoutborders.copy: true
      bookswithoutborders.loadpublic: true
      bookswithoutborders.savepublic: true
      bookswithoutborders.encrypt: true
      bookswithoutborders.decrypt: true
      bookswithoutborders.groupencrypt: true
      bookswithoutborders.signs: true
      bookswithoutborders.give: true
      bookswithoutborders.givepublic: true
      bookswithoutborders.bypassauthoronlycopy: true
      bookswithoutborders.bypassauthoronlyunsign: true
      bookswithoutborders.bypassauthoronlysave: true
      bookswithoutborders.bypassbookprice: true
      bookswithoutborders.setbookprice: true
      bookswithoutborders.reload: true
      bookswithoutborders.setgeneration: true
  bookswithoutborders.use:
    description: Allows player to use commands to save/load/delete in their personal directory
    children:
      bookswithoutborders.save: true
      bookswithoutborders.load: true
      bookswithoutborders.delete: true
      bookswithoutborders.peekbookshelf: true
  bookswithoutborders.alterbooks:
    description: Allows player to change books' data such as lore/title/author/generation/formatting and unsigning books
    children:
      bookswithoutborders.clear: true
      bookswithoutborders.unsign: true
      bookswithoutborders.settitle: true
      bookswithoutborders.setauthor: true
      bookswithoutborders.setlore: true
      bookswithoutborders.format: true
      bookswithoutborders.setgeneration: true
  bookswithoutborders.format:
    description: Allows a player to format a book
  bookswithoutborders.save:
    description: Allows player to save books to their personal directory
  bookswithoutborders.load:
    description: Allows player to load books from their personal directory
  bookswithoutborders.delete:
    description: Allows player to delete books from their personal directory
  bookswithoutborders.unsign:
    description: Allows player to use the unsign command
  bookswithoutborders.copy:
    description: Allows player to use the copy command
  bookswithoutborders.clear:
    description: Allows player to use the clear command
  bookswithoutborders.loadpublic:
    description: Allows player to load from the public directory
  bookswithoutborders.savepublic:
    description: Allows player to save to the public directory
  bookswithoutborders.encrypt:
    description: Allows player to encrypt books
  bookswithoutborders.groupencrypt:
    description: Allows player to use group-based encryption
  bookswithoutborders.decrypt:
    description: Allows player to decrypt books
  bookswithoutborders.signs:
    description: Allows player to create signs that give/encrypt/decrypt books
  bookswithoutborders.give:
    description: Allows player to give another player one of their privately saved books
  bookswithoutborders.givepublic:
    description: Allows player to give another player a book from the public directory
  bookswithoutborders.settitle:
    description: Allows player to set the title of the currenlty held book
  bookswithoutborders.setauthor:
    description: Allows player to set the author of the currently held book
  bookswithoutborders.setlore:
    description: Allows player to set the lore of the currently held item
  bookswithoutborders.bypassauthoronlycopy:
    description: Allows player to ignore Author_Only_Copy config setting
  bookswithoutborders.bypassauthoronlyunsign:
    description: Allows player to ignore Author_Only_Unsign config setting
  bookswithoutborders.bypassauthoronlysave:
    description: Allows player to ignore Author_Only_Save config setting
  bookswithoutborders.bypassbookprice:
    description: Allows player to ignore Price_to_create_book config setting
  bookswithoutborders.setbookprice:
    description: Allows player to set the cost of creating a book
  bookswithoutborders.reload:
    description: Allows player to reload this plugin
  bookswithoutborders.setgeneration:
    description: Allows player to change the generation of a book (Original, Copy, Copy of Copy)
  bookswithoutborders.peekbookshelf:
    description: Allows player to left-click a bookshelf to see the contents of the shelf