Paste #15188: Untitled Paste

Date: 2015/04/21 16:51:28 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


PerkPointSystem:
  type: world
  speed: 1t
  debug: false

  events:

    on pa command:
    - inject locally adminCommandHandler instantly

  adminCommandHandler:
    - if !<context.server> {
      - if !<player.has_permission[perkpoints.admin]> queue stop
      }
    - determine passively FULFILLED
    - define arg1 '<c.args.get[1].escaped||null>'
    - if <def[arg1].is[==].to[--reload]> {
      - inject locally simpleReloadYaml
      - queue stop
      }
    - if <def[arg1].is[==].to[--restart]> {
      - narrate "<&b>PerkPoints<&co> <&d>Restarting System!"
      - inject locally loadYaml
      - define yamlName 'PerkPoints'
      - define scriptName '<script.name>'
      - define db '<yaml[PerkPoints_config].read[config.MySQL.database]>'
      - run s@SQLManager p:restart def:%yamlName%|%scriptName%|%db%
      - queue stop
      }
    - if <def[arg1].is[==].to[--reset]> {
      - narrate "<&b>PerkPoints<&co> <&c>System Reset feature hasn<&sq>t been impelemented yet!"
      - narrate "<&b>PerkPoints<&co> <&f>Let<&sq>s RESTART the system instead..."
      - inject locally loadYaml
      - define yamlName 'PerkPoints'
      - define scriptName '<script.name>'
      - define db '<yaml[PerkPoints_config].read[config.MySQL.database]>'
      - run s@SQLManager p:restart def:%yamlName%|%scriptName%|%db%
      - queue stop
      }
    - if <def[arg1].is[==].to[service]>
      || <def[arg1].is[==].to[-s]> {
      - define arg2 '<c.args.get[2].escaped||null>'
      - if <def[arg2].is[==].to[register]>
        || <def[arg2].is[==].to[-r]> {
        - inject locally registerService
        }
        else {
        - if <def[arg2].is[==].to[unregister]>
          || <def[arg2].is[==].to[-ur]> {
          - inject locally unRegisterService
          }
        }
        else {
        - narrate format:CmdSynFormat "/perkadmin service <&lt>register/unregister<&gt> <&lt>service<&gt> <&lb>pointValue<&rb> <&lb>url<&rb>"
        }
      - queue stop
      }
    - if <def[arg1].is[==].to[pack]>
      || <def[arg1].is[==].to[-p]> {
      - inject locally packAdminCommandHelper
      - queue stop
      }
    - if <def[arg1].is[==].to[list]>
      || <def[arg1].is[==].to[-l]> {
      - define arg2 '<c.args.get[2].escaped||null>'
      - if <def[arg2].is[==].to[services]>
        || <def[arg2].is[==].to[-s]> {
        - define arg3 '<c.args.get[3].escaped||null>'
        - if <def[arg3].is[==].to[known]>
          || <def[arg3].is[==].to[seen]> {
          - inject locally listServicesSeen
          - queue stop
          }
        - if <def[arg3].is[==].to[registered]>
          || <def[arg3].is[==].to[reg]> {
          - inject locally listServicesRegistered
          - queue stop
          }
        - narrate format:CmdSynFormat "/perkadmin list services <&lt>known/registered<&gt>"
        - queue stop
        }
      - if <def[arg2].is[==].to[packages]>
        || <def[arg2].is[==].to[pack]>
        || <def[arg2].is[==].to[-pk]> {
        - define page '<c.args.get[3].abs.as_int||null>'
        - inject listPackagesPaged locally
        - queue stop
        }
      - narrate format:CmdSynFormat "/perkadmin list <&lt>services/players/packages<&gt>"
      - queue stop
      }
    - if <def[arg1].is[==].to[points]>
      || <def[arg1].is[==].to[-pt]> {
      - inject locally pointsCommandHelper
      - queue stop
      }
    - run locally adminCommandHelp instantly
    - queue stop