Paste #14718: Edit of P#14711 - dvchest+perkpoint

Date: 2015/03/25 18:34:33 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


dvchest:
  type: world
  events:
    on dvchest command:
    - determine passively fulfilled
    - define arg1 <c.args.get[1]>
    - announce <c.args.get[1]>
    - if <c.server||false> && <def[arg1].is[==].to[addLimit]> {
      - define player <c.args.get[2].as_player||false>
      - if <def[player].is[==].to[false]> {
        - announce "failed"
        - announce 'format:dvchest_format' "<&c>That is not a valid player!" to_console
        - queue clear
        }
      - announce "worked"
      - flag %player% 'dvchestLimit:++:1'
      - narrate 'format:dvchest_format' "<&6>You can now have <&f><def[player].flag[dvchestLimit].as_int> <&6>lines in your dvchest!" 'targets:%player%'
      - announce 'format:dvchest_format' "<&a><def[player].name> line limit set to <def[player].flag[dvchestLimit]>" to_console
      - queue clear
      }
    - if !<player.has_permission[dvchest]> && !<c.server> {
      - narrate 'format:dvchest_format' "<red>you havn't unlocked dvchest!"
      - queue clear
      }
    - inject locally loadYAML
    - define lines <player.flag[dvchestLimit]>
    - define dvchest <player.uuid>dvchest
    - note in@generic[title=<&c>dv<&9>Chest;size=<def[lines].mul_int[9]>;] 'as:%dvchest%'
    - inventory add 'd:in@%dvchest%' 'o:<yaml[dvchestkey].read[<player.uuid>]>'
    - narrate <yaml[dvchestkey].read[<player.uuid>]>
    - inventory open 'd:in@%dvchest%'
    on player clicks in inventory:
    - if <context.inventory.replace[<player.uuid>].is[!=].to[in@dvchest]> queue clear
    - if <context.inventory.replace[dvchest].is[!=].to[in@<player.uuid>]> {
      - inventory close 'd:in@<player.uuid>dvchest'
      }
    on player closes inventory:
    - if <context.inventory.replace[<player.uuid>].is[!=].to[in@dvchest]> queue clear
    - define dvlist <c.inventory.list_contents>
    - narrate %dvlist%
    - yaml set 'id:dvchestkey' <player.uuid>:%dvlist%
    - narrate "set"
    - yaml 'savefile:dvchest/dvchestkey.yml' 'id:dvchestkey'
  loadYAML:
    - if !<yaml.list.contains[dvchestkey]> {
      - if !<server.has_file[dvchest/dvchestkey.yml]> {
        - yaml create 'id:dvchestkey'
        - yaml 'savefile:dvchest/dvchestkey.yml' 'id:dvchestkey'
        }
        else yaml 'load:dvchest/dvchestkey.yml' 'id:dvchestkey'
      }
dvchest_format:
  type: format
  format: <&4><&l>Dv<&8>chest <text>