Paste #44005: Untitled Paste

Date: 2017/09/01 04:56:43 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


#######################################################
##                 Nations Command                   ##
####################################################### 
NATIONS_COMMAND:
    type: command
    name: nation
    aliases:
    - n
    - nations
    script:
    - choose "context.args.get[1]"
        - case "apply":
            - if <li@ek|fn|wt|nat|eat|sat|wat|bht|bhs|sw|fst.contains[<context.args.get[2]>]> {
                - yaml id:<context.args.get[2]> set pending_apps.<player.name>
            }
        - case "apps":
            - if <player.flag[rank]> == leader {
                - if <yaml[<player.flag[nation]>].list_keys[pending_apps]> != null {
                    - if <context.args.get[3]> == null {
                        - if <context.args.get[2]> == null {
                            - narrate "<&5>Pending Apps:"
                            - foreach <yaml[<player.flag[nation]>].list_keys[pending_apps]> {
                                - narrate "<&d><def[value]>"
                            }
                        }
                        else {
                            - if <yaml[<player.flag[nation]>].list_keys[pending_apps].contains[<context.args.get[2]>]>
                            - narrate "<&5>-------------------------"
                            - narrate "<&d>   <context.args.get[2]>'s Application" 
                            - narrate "<&5>-------------------------"
                            - narrate "<&5>Character: <&d><player.flag[charname]>"
                            - narrate "<&5>Gender: <&d><player.flag[gender]||Genderless>"
                            - narrate "<&5>Element: <&d><player.flag[element]>"
                            - narrate "<&5>Joined at: <&d><player.flag[jointime]> on <player.flag[joindate]>"
                            - narrate "<&5>Last Seen at: <&d><player.flag[seentime]> on <player.flag[seendate]>"
                        }
                    }
                    else {
                        - choose <context.args.get[3]>:
                            - case "accept":
                                - yaml id:<player.flag[nation]> set pending_apps.<context.args.get[2]>:!
                                - flag <context.args.get[2]> nation:<player.flag[nation]>
                                - execute as_player "mail send <context.args.get[2]> Your app has been Accepted!"
                            - case "deny":
                                - yaml id:<player.flag[nation]> set pending_apps.<context.args.get[2]>:
                                - execute as_player "mail send <context.args.get[2]> Your app has been Rejected!"
                            - default:
                                - narrate "<&c>That is not a valid dNations apps command!"
                    }
                }
                else {
                    - narrate "<&cYou have no pending applications!>"
                }
            }
            else {
                - narrate "<&c>You do not have permission to check nation apps!"
            }
        - default: 
            - narrate "<&c>That is not a valid dNations command! Do /nation help for more info."

#######################################################
##                  Ledger Inventories               ##
####################################################### 

LEDGER_TRIGGER:
    type: world
    events:
        on player right clicks enchantment_table:
        - determine passively cancelled
        - inventory open d:in@LEDGER

LEDGER:
    type: inventory
    title: Nation Ledger
    size: 27
    slots:
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@CHECKBUDGET_ITEM] [i@VAULT_ITEM] [i@CSALARIES_ITEM] [i@SENDMONEY_ITEM] [i@ICTRADE_ITEM] [i@NOTHING_HERE] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@EXIT]"

LEDGER_HANDLER:
    type: world
    events:
            on player clicks in LEDGER:
            - determine cancelled
            on player drags in LEDGER:
            - determine cancelled
            on player clicks EXIT in LEDGER:
            - inventory close
            on player clicks CHECKBUDGET_ITEM in LEDGER:
            - inventory open d:in@CHECKBUDGET
            on player clicks VAULT_ITEM in LEDGER:
            - inventory open d:in@VAULT
            on player clicks CSALARIES_ITEM in LEDGER:
            - inventory open d:in@CSALARIES
            on player clicks SENDMONEY_ITEM in LEDGER:
            - inventory open d:in@SENDMONEY
            on player clicks ICTRADE_ITEM in LEDGER:
            - inventory open d:in@ICTRADE

CHECKBUDGET:
    type: inventory
    title: Check your nation's budget!
    size: 27
    slots:
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@CHECKBUDGET_ITEM] [i@VAULT_ITEM] [i@CSALARIES_ITEM] [i@SENDMONEY_ITEM] [i@ICTRADE_ITEM] [i@NOTHING_HERE] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@EXIT]"

CHECKBUDGET_HANDLER:
    type: world
    events:
            on player clicks in CHECKBUDGET:
            - determine cancelled
            on player drags in CHECKBUDGET:
            - determine cancelled
            on player clicks EXIT in CHECKBUDGET:
            - inventory close
            on player clicks CHECKBUDGET_ITEM in CHECKBUDGET:
            - inventory open d:in@CHECKBUDGET
            on player clicks VAULT_ITEM in CHECKBUDGET:
            - inventory open d:in@VAULT
            on player clicks CSALARIES_ITEM in CHECKBUDGET:
            - inventory open d:in@CSALARIES
            on player clicks SENDMONEY_ITEM in CHECKBUDGET:
            - inventory open d:in@SENDMONEY
            on player clicks ICTRADE_ITEM in CHECKBUDGET:
            - inventory open d:in@ICTRADE

VAULT:
    type: inventory
    title: Your Nation's Vault!
    size: 27
    slots:
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@WITHDRAW_HUNDRED_WUN] [i@WITHDRAW_TEN_WUN] [i@WITHDRAW_ONE_WUN] [i@BALANCE_ITEM] [i@DEPOSIT_ONE_WUN] [i@DEPOSIT_TEN_WUN] [i@DEPOSIT_HUNDRED_WUN] [i@NOTHING_HERE]"
    - "[i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@NOTHING_HERE] [i@EXIT]"

VAULT_HANDLER:
    type: world
    events:
            on player clicks in VAULT:
            - determine cancelled
            on player drags in VAULT:
            - determine cancelled
            on player clicks EXIT in VAULT:
            - inventory close
            on player clicks WITHDRAW_HUNDRED_WUN in VAULT:
            - flag <player> money:<player.flag[money].sub[100]>
            - give HUNDRED_WUN
            on player clicks WITHDRAW_TEN_WUN in VAULT:
            - flag <player> money:<player.flag[money].sub[10]>
            - give TEN_WUN
            on player clicks WITHDRAW_ONE_WUN in VAULT:
            - flag <player> money:<player.flag[money].sub[1]>
            - give ONE_WUN
            on player clicks DEPOSIT_HUNDRED_WUN in VAULT:
            - take HUNDRED_WUN from:<player.inventory>
            - flag <player> money:<player.flag[money].add[100]>
            on player clicks DEPOSIT_TEN_WUN in VAULT:
            - take TEN_WUN from:<player.inventory>
            - flag <player> money:<player.flag[money].add[10]>
            on player clicks DEPOSIT_ONE_WUN in VAULT:
            - take ONE_WUN from:<player.inventory>
            - flag <player> money:<player.flag[money].add[1]>

#######################################################
##                     dItems                        ##
####################################################### 

CHECKBUDGET_ITEM:
    type: item
    material: i@gold_nugget
    display name: <&6>Check Budget
    lore:
    - <&e><&o>Money comes in, money goes out. See where it all ends up!

VAULT_ITEM:
    type: item
    material: i@dispenser
    display name: <&6>Vault
    lore:
    - <&e><&o>Your Nation's personal savings!

CSALARIES_ITEM:
    type: item
    material: i@book_and_quill
    display name: <&6>Citizen Salaries
    lore:
    - <&e><&o>No slavery here!

SENDMONEY_ITEM:
    type: item
    material: i@gold_ingot
    display name: <&6>Send Money
    lore:
    - <&e><&o>Feeling generous?

ICTRADE_ITEM:
    type: item
    material: i@empty_map
    display name: <&6>International Trade
    lore:
    - <&e><&o>Did you lose a war? Or are you simply feeling benevolent?

NOTHING_HERE:
    type: item
    material: i@gray_stained_glass_pane
    display name:   

BALANCE_ITEM:
    type: item
    material: i@nether_star
    display name: <&6>Balance
    lore:
    - "<&e><player.flag[money] Wun"

WITHDRAW_ONE_WUN:
    type: item
    material: i@gold_nugget
    display name: <&6>-1
    lore:
    - <&e>Withdraw 1 Wun

WITHDRAW_TEN_WUN:
    type: item
    material: i@gold_ingot
    display name: <&6>-10
    lore:
    - <&e>Withdraw 10 Wun

WITHDRAW_HUNDRED_WUN:
    type: item
    material: i@gold_block
    display name: <&6>-100
    lore:
    - <&e>Withdraw 100 Wun

DEPOSIT_ONE_WUN:
    type: item
    material: i@gold_nugget
    display name: <&6>+1
    lore:
    - <&e>Deposit 1 Wun

DEPOSIT_TEN_WUN:
    type: item
    material: i@gold_ingot
    display name: <&6>+10
    lore:
    - <&e>Deposit 10 Wun

DEPOSIT_HUNDRED_WUN:
    type: item
    material: i@gold_block
    display name: <&6>+100
    lore:
    - <&e>Deposit 100 Wun

ONE_WUN:
    type: item
    material: i@gold_nugget
    display name: <&6>One Wun
    lore:
    - <&7>A small coin engraved with
    - <&7>the face of the first avatar.

TEN_WUN:
    type: item
    material: i@gold_ingot
    display name: <&6>Ten Wun
    lore:
    - <&7>A long ingot engraved with
    - <&7>a pattern resembling raava.

HUNDRED_WUN:
    type: item
    material: i@gold_block
    display name: <&6>A Hundred Wun
    lore:
    - <&7>Wow. You could buy a lot
    - <&7>with this!

#######################################################
##                     Ledger Tasks                  ##
#######################################################