Paste #2815: Untitled Paste

Date: 2014/03/23 15:56:03 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


World Setup:
    type: world

    events:
        on npctrl command:
            - define arg1 <c.args.get[1]>
            - define arg2 <c.args.get[2]>
            - define hasAdminPerm <player.has_permission[kosu.gamemaster]>

            - if <def[arg1].is[==].to[null]> {
                - inject s@FinishCommand
                } else if <def[arg1].is[==].to[clearlist]> {
                - if !<def[hasAdminPerm]> {
                    - narrate targets:p@<player> "You have to be an Admin to do that."
                    - inject s@FinishCommand
                    }
                - if <def[arg1].is[==].to[clearlist]> {
                    - ^narrate "Lists has been cleared."
                    - flag global defaultSleepNpcList:!
                    - flag global CountryWorker:!
                    - inject s@FinishCommand
                    } else if <def[arg1].is[==].to[showList]> {
                    - inject s@NpcCtrlList
                    - inject s@FinishCommand
                    }
                } else {
                - inject s@FinishCommand
                }

"NpcCtrlList":
    type: task
    script:
        - ^narrate ""
        - ^narrate "<&b>========== <&a>Listing NPC's in lists <&b>=========="
        - ^narrate ""
        - ^narrate "<&b>---------- <&a>default Sleepcycle<&b>----------"
        - ^define countera 0
        - foreach <global.flag[defaultSleepNpcList].as_list> {
            - define counter <math:%countera%+1>
            - narrate "<&b><el@value[%countera%].as_int><&co> <&a>%value%"
            }
        - ^narrate ""
        - ^narrate "<&b>---------- <&a>Countryman Workcycle<&b>----------"
        - ^define counterb 0
        - foreach <global.flag[CountryWorker].as_list> {
            - define counter <math:%counterb%+1>
            - narrate "<&b><el@value[%counterb%].as_int><&co> <&a>%value%"
            }
        - ^narrate ""

"FinishCommand":
    type: task
    script:
      - determine fulfilled
      - queue clear