Paste #5088: Untitled Paste

Date: 2014/06/04 20:24:06 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


'MobSpawnManagerCommand':
  type: world
  debug: true
  events:

    on mslimit command:
    - if !<player.has_permission[denizen.cmdtest]> queue stop
    - determine passively fulfilled
    - define list '<tern[<context.args.contains[-l]>]:true||<tern[<context.args.contains[--list]>]:true||false>>'
    - define world '<tern[<c.args.find[-w].is[MORE].than[0]>]:<c.args.get[<c.args.find[-w].add[1].as_int>]> || null>'
    - define type '<tern[<c.args.find[-t].is[MORE].than[0]>]:<c.args.get[<c.args.find[-t].add[1].as_int>]> || null>'
    - define limit '<tern[<c.args.find[-l].is[MORE].than[0]>]:<c.args.get[<c.args.find[-l].add[1].as_int>]> || null>'

    - if %list% == true {
      - define worlds <server.list_worlds>
      - if %world% != null {
        - if !<def[worlds].contains[<def[world].as_world>]> {
          - narrate "<def[world]> does not exist"
          - queue stop
          }
        - define worlds <def[world].as_world>
        }
      - define types 'ambient|animal|monster|water_animal'
      - if %type% != null {
        - if !<def[types].as_list.contains[<def[type]>]> {
          - narrate "<def[type]> is not a valid type"
          - queue stop
          }
        - define types <def[type]>
        }
      - foreach <def[worlds].as_list> {
        - define world %value%
        - narrate "<def[world].name> Spawn Limits"
        - foreach <def[types].as_list> {
          - narrate "<&sp><&sp><&sp><def[value]><&co> <def[world].<def[value]>_spawn_limit>"
          }
        - narrate ""
        }
      }