name: Slabbo
version: 1.0.37
main: xyz.mackan.Slabbo.Slabbo
description: Slab shops for spigot
author: Mackan
api-version: 1.13
depend: [Vault]
softdepend: [ClearLag, WorldGuard, GriefPrevention, Magic]
permissions:
  # General permissions
  slabbo.use:
    default: op
    description: Lets you use slab shops

  slabbo.create:
    default: op
    description: Lets you create slab shops

  slabbo.limit.*:
    default: op
    description: Gives you unlimited shops

  slabbo.destroy.self:
    default: op
    description: Lets you destroy your shops

  slabbo.destroy.others:
    default: op
    description: Lets you destroy other peoples shops
    children:
      slabbo.destroy.self: true

  slabbo.unlink.self:
    default: op
    description: Lets you unlink chests your shops with a command

  slabbo.unlink.others:
    default: op
    description: Lets you unlink chests from other peoples shops with a command
    children:
      slabbo.unlink.self: true

  slabbo.link:
    default: op
    description: Lets you link a shop to a chest

  slabbo.notifyupdate:
    default: op
    description: Shows you the update notification when you join

  # Commands

  ## Modification

  ### Self
  slabbo.modify.self.buyprice:
    default: op
    description: Lets you modify the buy price of shops with a command
  slabbo.modify.self.sellprice:
    default: op
    description: Lets you modify the sell price of shops with a command
  slabbo.modify.self.quantity:
    default: op
    description: Lets you modify the quantity of shops with a command
  slabbo.modify.self.note:
    default: op
    description: Lets you modify the sellers note of shops with a command

  slabbo.modify.self.*:
    default: op
    description: Gives you access to all the modification commands
    children:
      slabbo.modify.self.buyprice: true
      slabbo.modify.self.sellprice: true
      slabbo.modify.self.quantity: true
      slabbo.modify.self.note: true

  # ============================================================================== #

  ### Others

  slabbo.modify.others.buyprice:
    default: op
    description: Lets you modify the buy price of other peoples shops
    children:
      slabbo.modify.self.buyprice: true

  slabbo.modify.others.sellprice:
    default: op
    description: Lets you modify the sell price of other peoples shops
    slabbo.modify.self.sellprice: true

  slabbo.modify.others.quantity:
    default: op
    description: Lets you modify the quantity of other peoples shops.
    slabbo.modify.self.quantity: true

  slabbo.modify.others.note:
    default: op
    description: Lets you modify the sellers note of other peoples shops
    slabbo.modify.self.note: true

  slabbo.modify.others.*:
    default: op
    description: Gives you access to use all the modification commands for other peoples shops
    children:
      slabbo.modify.others.buyprice: true
      slabbo.modify.others.sellprice: true
      slabbo.modify.others.quantity: true
      slabbo.modify.others.note: true


  # ============================================================================== #

  ### Admin

  slabbo.modify.admin.owner:
    default: op
    description: Lets you change the owner of a shop

  slabbo.modify.admin.stock:
    default: op
    description: Lets you set the stock of a shop

  slabbo.modify.admin.*:
    default: op
    description: Gives you access to use all the admin modification commands
    children:
      slabbo.modify.admin.owner: true
      slabbo.modify.admin.stock: true

  # ============================================================================== #

  ## Admin shops

  slabbo.admin.toggle:
    default: op
    description: Lets you toggle shops as being admin shops

  # ============================================================================== #

  ### Limits

  slabbo.admin.limit.toggle:
    default: op
    description: Lets you toggle admin shops to have limited stock


  slabbo.admin.limit.time:
    default: op
    description: Lets you set the time between restocks for limited shops

  slabbo.admin.limit.stock.sell:
    default: op
    description: Lets you set the sell stock of limited shops

  slabbo.admin.limit.stock.buy:
    default: op
    description: Lets you set the buy stock of limited shops

  slabbo.admin.limit.stock.*:
    default: op
    description: Lets you set the stock of limited shops
    children:
      slabbo.admin.limit.stock.sell: true
      slabbo.admin.limit.stock.buy: true

  slabbo.admin.limit.*:
    default: op
    description: Gives you access to all the limiting stock commands
    children:
      slabbo.admin.limit.toggle: true
      slabbo.admin.limit.stock.*: true
      slabbo.admin.limit.time: true

  slabbo.admin.set.owner_name:
    default: op
    description: Lets you set the displayed owner name of an admin shop

  slabbo.admin.set.*:
    default: op
    description: Gives you access to set all properties on an admin shop
    children:
      slabbo.admin.set.owner_name: true

  slabbo.admin.*:
    default: op
    description: Gives you access to all admin commands
    children:
      slabbo.admin.toggle: true
      slabbo.admin.limit.*: true
      slabbo.admin.set.*: true

  # ============================================================================== #

  ## ShopCommands

  ### Self

  slabbo.shopcommands.edit.self.buy:
    default: op
    description: Lets you edit the buy commands of your own shops


  slabbo.shopcommands.edit.self.sell:
    default: op
    description: Lets you edit the sell commands of your own shops


  slabbo.shopcommands.list.self.buy:
    default: op
    description: Lets you list the buy commands of your own shops


  slabbo.shopcommands.list.self.sell:
    default: op
    description: Lets you list the sell commands of your own shops

  ### Others

  slabbo.shopcommands.edit.others.buy:
    default: op
    description: Lets you edit the buy commands of other peoples shops
    children:
      slabbo.shopcommands.edit.self.buy: true

  slabbo.shopcommands.edit.others.sell:
    default: op
    description: Lets you edit the sell commands of other peoples shops
    children:
      slabbo.shopcommands.edit.self.sell: true

  slabbo.shopcommands.list.others.buy:
    default: op
    description: Lets you list the buy commands of other peoples shops
    children:
      slabbo.shopcommands.list.self.buy: true

  slabbo.shopcommands.list.others.sell:
    default: op
    description: Lets you list the sell commands of other peoples shops
    children:
      slabbo.shopcommands.list.self.sell: true



  # ============================================================================== #

  ## Misc commands

  slabbo.save:
    default: op
    description: Saves the slabbo shops to disk

  slabbo.list.all:
    default: op
    description: Lets a user list all shops on the server

  slabbo.list.self:
    default: op
    description: Lets a user list all their shops