Paste #22966: Untitled Paste

Date: 2015/11/23 18:12:35 UTC-08:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


BottleScript:
  type: command
  name: xpstore
  description: "Stores your collected experience in emeralds!"
  usage: "/xpstore <&lt>amount of bottles to fill<&gt>"
  aliases:
  - storexp
  - xps
  permission: "store.xp"
  permission message: "You don't have permission to run this command."
  allowed help:
  - determine <player.is_op||<context.server>>
  script:
  - choose <context.args.size>:
    - case 1:
      - define Exp 60
      - define Amount <context.args.get[1].as_int||null>
      - if <def[Amount]> == null {
        - narrate "<&c>Amount must be an integer (e.g. 2)"
        - queue clear
      }
      - define Needed <def[Exp].mul[<def[Amount]>].as_int>
      - if <def[Needed]> > <player.xp.total> {
          - narrate "You don't have enough experience to store! You need <def[Needed].sub[<player.xp.total>]> more xp to use this command."
        } else {
          - give <player.name> emerald qty:<def[Amount]>
          - experience set <player.xp.total.sub[<def[Needed]>]>
          - narrate "You received <def[Amounted]> emeralds for <def[Needed]> xp!"
        }
    - default:
      - narrate "<&c>Usage: <parse:<script.yaml_key[usage]>>"