Paste #21985: Radio

Date: 2015/10/30 16:54:16 UTC-07:00
Type: Denizen Script

View Raw Paste Download This Paste
Copy Link


Radio: 
  type: world 
  events:
    on radio command:
    - if <context.args.size> != 1 {
      - narrate "<&4>False Syntax. Type: /radio on | /radio off | /radio skip "
      - determine fulfilled
      }
    - if <context.args.get[1]> != on && <context.args.get[1]> != off && <context.args.get[1]> && <context.args.get[1]> != skip {
      - narrate "<&4>False Syntax. Type: /radio on | /radio off | /radio skip "
      - determine fulfilled
      }
    - determine passively fulfilled
    - narrate "<&e>Set radio to:<&f> <context.args.get[1]>"
    - define darg1 radio<context.args.get[1]>
    - inject locally <def[darg1]>
  radioon:
  - if <player.flag[radio]> == 1 {
    - narrate "<&4>Radio is already on!"
    - queue clear
    }
  - flag player radio:1
  - while <player.flag[radio].is[==].to[1]> {
    - if <player.flag[rskip]||2> == 1 {
      - narrate "Debug: radioon loop cleared"
      - while stop
      - queue clear
      }
    - define arg1 <util.random.int[1].to[4]> 
    - define arg2 song<def[arg1]>
    - inject locally <def[arg2]>
    }
  # Dieses Radio darf nicht weiterlaufen , wenn er skip macht. | Bei null , wird 2 eingesetzt 
  radiooff:
  - flag player radio:0
  - midi cancel file:<def[mfile]>
  radioskip:
  - if <player.flag[radio]||2> != 1 {
    - narrate "<&4>You need to set the radio first to: on"
    - narrate "<&4>i.e. /radio on"
    - determine fulfilled
    }
  - determine passively fulfilled
  - midi cancel file:<def[mfile]>
  - flag player rskip:1
  - while <player.flag[radio].is[==].to[1]> {
    - if <player.flag[rskip]> == 2 {
      - narrate "Debug: radioskip cleared"
      - while stop
      - queue clear
      }
    - define arg1 <util.random.int[1].to[4]>
    - define arg2 song<def[arg1]>
    - inject locally <def[arg2]>
    }
  song1:
  - narrate "Playing now: Denizen"
  - midi file:Denizen
  - define mfile Denizen
  - wait 76s
  song2:
  - narrate "Playing now: pause"
  - midi file:pause
  - define mfile pause
  - wait 68s
  song3:
  - narrate "Playing now: tooty"
  - midi file:tooty
  - define mfile tooty
  - wait 97s
  song4:
  - narrate "Playing now: violet_city"
  - midi file:violet_city
  - define mfile violet_city
  - wait 116s