Paste #8470: Script re-paste from http://hastebin.com/ehogarewon.xml

Date: 2014/08/16 07:12:57 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


# 
# Token Management Script 
# Written by: Mikayle1 
# 

TokenMgmtWorldScript:
  type: world 
  events: 
    on token command: 
      - determine passively fulfilled 
      - if <context.args.is_empty> && !<context.server> { 
        - if <player.has_flag[token]||null> != null {
          - narrate "<gold>Al momento hai <red><bold><player.flag[token]> <gold>token" targets:<player> 
          } 
          else { 
            - narrate "<gold>Al momento hai <red><bold>0 <reset><gold>token" targets:<player> 
          } 
        - queue clear 
        } 
        else if [ <player.is_op||null> != null  || <context.server> ] && <context.args.size.is[==].to[3]> { 
          - define cmd <context.args.get[1]> 
          - define target <context.args.get[2]> 
          - define ptarget <p@%target%> 
          - define amount <context.args.get[3]> 
          - if !%amount% matches integer { 
            - if <context.server> != null announce to_console "<dark_red>That value doesn't look like a proper number."
              else narrate "<&6>That value doesn't look like a proper number."
            - queue clear 
            } 
          - if <def[cmd].is[==].to[add]> { 
            - if <def[ptarget].has_flag[token]||null> != null { 
              - define newtokens <def[ptarget].flag[token].add[%amount%].as_int> 
              } 
              else { 
                - define newtokens %amount% 
              } 
            - flag <p@%target%> token:%newtokens% 
            - if <context.server> != null announce to_console "Il giocatore %target% ha ora %newtokens% token"
              else narrate "Il giocatore %target% ha ora %newtokens% token"
            - narrate "<gold>Hai ricevuto <red>%newtokens%<gold>. Ora hai <red><bold><player.flag[token]> <gold>token." targets:%target%
            - queue clear 
            } 
            else if <def[cmd].is[==].to[remove]> { 
              - if <def[ptarget].has_flag[token] || null> != null && <def[ptarget].flag[token].as_int> > %amount% { 
                - define newtokens <def[ptarget].flag[token].sub[%amount%].as_int> 
                } 
                else { 
                  - define newtokens '!' 
                } 
              - flag %ptarget% token:%newtokens%
              - if %newtokens == '!' define newtokens 0
              - if <context.server> != null announce to_console "Il giocatore %target% ha ora %newtokens% token."
                else narrate "Il giocatore %target% ha ora %newtokens% token." 
              - queue clear 
            } 
          } 
          else if [ <player.is_op||null> != null  || <context.server> ] && <context.args.size.is[==].to[2]> { 
            - define cmd <context.args.get[1]> 
            - define target <context.args.get[2]> 
            - define ptarget <p@%target%> 
            - define newtokens <def[ptarget].flag[token]||0>
            - if <def[cmd].is[==].to[info]> {
              - if <context.server> != null announce to_console "Il giocatore %target% ha ora %newtokens% token"
                else narrate "Il giocatore %target% ha ora %newtokens% token" 
              - queue clear 
              } 
          }
          else {
            - if <context.server> {
              - announce to_console "<&6>/token" 
              - announce to_console "<&6>/token add <&lt>target<&gt> <&lt>amount<&gt> " 
              - announce to_console "<&6>/token remove <&lt>target<&gt> <&lt>amount<&gt> " 
              - announce to_console "<&6>/dSentry info <&lt>target<&gt>" 
              }
              else {
                - narrate "<&6>/token" 
                - if <player.is_op> { 
                  - narrate "<&6>/token add <&lt>target<&gt> <&lt>amount<&gt> " 
                  - narrate "<&6>/token remove <&lt>target<&gt> <&lt>amount<&gt> " 
                  - narrate "<&6>/dSentry info <&lt>target<&gt>" 
                  } 
              }
          } 

'TokenShop':
    type: assignment

    interact scripts:
    - 0 tokentrade

    actions:
      on assignment:
      - trigger name:chat toggle:true
      - trigger name:click toggle:true
      - trigger name:proximity state:true radius:2

      on enter proximity:
      - chat 'Ciao! Qui potrai scambiare i tuioi token per premi FAVOLOSI! <italic><gray>(clicca con il destro su di me)'
      - zap 'script:tokentrade' 'step:Negozio'


'tokentrade':
    type: interact

    steps:
        'Negozio*':

            click trigger:
                script:
                - chat "Ciao. Al momento hai <player.flag[token]> Token da scambiare."
                - chat "Puoi ottenere più token vincendo i giochi, vincendo gli eventi o uccidendo boss!"
                - chat "Cosa vorresti acquistare?"
                - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                - narrate "<red>1) <gold>Vorrei acquistare un <green>Box Non comune. <italic><gray>(prezzo 10 Token)"
                - narrate "<red>2) <gold>Vorrei acquistare un <blue>Box raro. <italic><gray>(prezzo 100 Token)"
                - narrate "<red>3) <gold>Vorrei acquistare un <light_purple>Box epico. <italic><gray>(prezzo 500 Token)"
                - narrate "<red>4) <gold>Vorrei acquistare un Box Leggendario. <italic><gray>(prezzo 1000 Token)"
                - narrate "<red>5) <gold>Vorrei acquistare un Box SuperPet. <italic><gray>(prezzo 150 Token)"
            chat trigger:
                '1':
                    trigger: '/1/) Vorrei acquistare un Box Non comune.'
                    script:
                    - chat '<green>ti dice :'
                    - chat "Il box contiene un oggetto casuale non comune."
                    - chat "Sicuro di volere procedeer con l'acquisto?."
                    - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                    - narrate "<red>1) <gold>Sì, sono sicuro. (paga 10 token)"
                    - narrate "<red>2) <gold>No, ci ho ripensato"
                    - zap 'step:acquisto1'
                '2':
                    trigger: '/2/) Vorrei acquistare un Box raro.'
                    script:
                    - chat '<green>ti dice :'
                    - chat "Il box contiene un oggetto casuale raro."
                    - chat "Sicuro di volere procedere con l'acquisto?."
                    - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                    - narrate "<red>1) <gold>Sì, sono sicuro. (paga 100 token)"
                    - narrate "<red>2) <gold>No, ci ho ripensato"
                    - zap 'step:acquisto2'
                '3':
                    trigger: '/3/) Vorrei acquistare un Box epico.'
                    script:
                    - chat '<green>ti dice :'
                    - chat "Il box contiene un oggetto casuale epico."
                    - chat "Sicuro di volere procedere con l'acquisto?."
                    - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                    - narrate "<red>1) <gold>Sì, sono sicuro. (paga 500 token)"
                    - narrate "<red>2) <gold>No, ci ho ripensato"
                    - zap 'step:acquisto3'
                '4':
                    trigger: '/4/) Vorrei acquistare un Box leggendario.'
                    script:
                    - chat '<green>ti dice :'
                    - chat "Il box contiene un oggetto casuale leggendario."
                    - chat "Sicuro di volere procedere con l'acquisto?."
                    - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                    - narrate "<red>1) <gold>Sì, sono sicuro. (paga 1000 token)"
                    - narrate "<red>2) <gold>No, ci ho ripensato"
                    - zap 'step:acquisto4'
                '5':
                    trigger: '/5/) Vorrei acquistare un Box Superpet.'
                    script:
                    - chat '<green>ti dice :'
                    - chat "Il box contiene un oggetto casuale per i pet."
                    - chat "Sicuro di volere procedere con l'acquisto?."
                    - narrate "Scegli una della seguenti risposte digitando il numero corrispondente"
                    - narrate "<red>1) <gold>Sì, sono sicuro. (paga 150 token)"
                    - narrate "<red>2) <gold>No, ci ho ripensato"
                    - zap 'step:acquisto5'
        'acquisto1':
            chat trigger:
                '1':
                    trigger: '/1/) Sì, sono sicuro.'
                    script:
                    - if <player.flag[token]> >= 10 {
                     - flag player token:-:10
                     - execute as_server "mythicd give <player.name> -a 1 -t uncommon"
                     - narrate "Consegni <red><bold>10 token<red><bold>. <reset><gold>Ti sono rimasti <red><bold><player.flag[token]>."
                     }
                     else {
                     - narrate "<red>Hey! hai solo <red><bold><player.flag[token]>. Ti servono <red><bold>10 token per acquistare questo oggetto!"
                     }
                    - zap 'step:Negozio'
                '2':
                    trigger: '/2/) No, ci ho ripensato.'
                    script:
                    - zap 'step:Negozio'

        'acquisto2':
            chat trigger:
                '1':
                    trigger: '/1/) Sì, sono sicuro.'
                    script:
                    - if <player.flag[token]> >= 100 {
                     - flag player token:-:100
                     - execute as_server "mythicd give <player.name> -a 1 -t rare"
                     - narrate "Consegni <red><bold>100 token<red><bold>. <reset><gold>Ti sono rimasti <red><bold><player.flag[token]>."
                     }
                     else {
                     - narrate "<red>Hey! hai solo <red><bold><player.flag[token]>. Ti servono <red><bold>100 token per acquistare questo oggetto!"
                     }
                    - zap 'step:Negozio'
                '2':
                    trigger: '/2/) No, ci ho ripensato.'
                    script:
                    - zap 'step:Negozio'
        'acquisto3':
            chat trigger:
                '1':
                    trigger: '/1/) Sì, sono sicuro.'
                    script:
                    - if <player.flag[token]> >= 500 {
                     - flag player token:-:500
                     - execute as_server "mythicd give <player.name> -a 1 -t epic"
                     - narrate "Consegni <red><bold>500 token<red><bold>. <reset><gold>Ti sono rimasti <red><bold><player.flag[token]>."
                     }
                     else {
                     - narrate "<red>Hey! hai solo <red><bold><player.flag[token]>. Ti servono <red><bold>500 token per acquistare questo oggetto!"
                     }
                    - zap 'step:Negozio'
                '2':
                    trigger: '/2/) No, ci ho ripensato.'
                    script:
                    - zap 'step:Negozio'
        'acquisto4':
            chat trigger:
                '1':
                    trigger: '/1/) Sì, sono sicuro.'
                    script:
                    - if <player.flag[token]> >= 1000 {
                     - flag player token:-:1000
                     - execute as_server "mythicd give <player.name> -a 1 -t legendary"
                     - narrate "Consegni <red><bold>1000 token<red><bold>. <reset><gold>Ti sono rimasti <red><bold><player.flag[token]>."
                     }
                     else {
                     - narrate "<red>Hey! hai solo <red><bold><player.flag[token]>. Ti servono <red><bold>1000 token per acquistare questo oggetto!"
                     }
                    - zap 'step:Negozio'
                '2':
                    trigger: '/2/) No, ci ho ripensato.'
                    script:
                    - zap 'step:Negozio'
        'acquisto5':
            chat trigger:
                '1':
                    trigger: '/1/) Sì, sono sicuro.'
                    script:
                    - if <player.flag[token]> >= 150 {
                     - flag player token:-:150
                     - random 6
                     - give i@leash qty:1 player:p@<player.name>
                     - give i@iron_barding qty:1 player:p@<player.name>
                     - give i@gold_barding qty:1 player:p@<player.name>
                     - give i@diamond_barding qty:1 player:p@<player.name>
                     - give i@name_tag qty:1 player:p@<player.name>
                     - give i@saddle qty:1 player:p@<player.name>
                     - narrate "Consegni <red><bold>150 token<red><bold>. <reset><gold>Ti sono rimasti <red><bold><player.flag[token]>."
                     }
                     else {
                     - narrate "<red>Hey! hai solo <red><bold><player.flag[token]>. Ti servono <red><bold>150 token per acquistare questo oggetto!"
                     }
                    - zap 'step:Negozio'
                '2':
                    trigger: '/2/) No, ci ho ripensato.'
                    script:
                    - zap 'step:Negozio'