# dBroadcasting system # Allows for colorized broadcasts # Users require op or dbroadcast.command permission # Broadcasts are stored in dBroadcasts_saves.yml and is # Editable and reloadable. # Created by Talamar1 Broadcast: type: world debug: false events: on server start: - if { - announce "<&lb>dBroadcast<&rb> Loading Broadcast Config File" - yaml load:dbroadcast_saves.yml id:dbroadcast_saves } else { - announce "<&lb>dBroadcast<&rb> Creating Broadcast Config File" - yaml create id:dbroadcast_saves - yaml savefile:dbroadcast_saves.yml id:dbroadcast_saves } - run InitdBroadcast delay:10t on dbc command: - determine passively fulfilled - if ! && ! { - narrate "<&6>You do not have permission to use the dbroadcast command." - queue clear } - if ]> { - inject dbroadcast_command_add } else if { - inject dbroadcast_command_remove } else if ]> { - inject dbroadcast_command_list } else if ]> { - inject dbroadcast_command_reload } else { - narrate "<&6>/dBc add <<>timer<>> <<>message<>>" - narrate "<&6>/dBc remove <<>dbid<>>" - narrate "<&6>/dBc list" - narrate "<&6>/dBc reload" } InitdBroadcast: type: task debug: false script: - while true { - define broadcasts - if > 0 { - foreach %broadcasts% { - if ].is[==].to[0]> { - announce "" } } } - wait 1m } dbroadcast_command_add: type: task debug: false script: - if { - narrate "<&6>/dBc add <<>timer<>> <<>message<>>" - narrate "<&6>Timer - Amount of time between rebroadcasts" - narrate "<&6>Message - message you want broadcasts" - queue clear } - if { - narrate "dBroadcast Invalid time argument" - narrate "Value must be greater than 5" - queue clear } - define dBtimer - define dBmsg ].as_string> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - define dBmsg ]> - narrate "Timer %dBtimer%" - narrate "Message %dBmsg%" - define bcount - yaml set bclist..timer:%dBtimer% id:dbroadcast_saves - yaml set bclist..message:%dBmsg% id:dbroadcast_saves - yaml savefile:dbroadcast_saves.yml id:dbroadcast_saves dbroadcast_command_list: type: task debug: false script: - if == true { - foreach { - narrate "Key<&co> %value% <&co> <&co> " } } dbroadcast_command_reload: type: task debug: false script: - if { - narrate "<&lb>dBroadcast<&rb> Loading Broadcast Config File" - yaml load:dbroadcast_saves.yml id:dbroadcast_saves } else { - narrate "<&lb>dBroadcast<&rb> Creating Broadcast Config File" - yaml create id:dbroadcast_saves - yaml savefile:dbroadcast_saves.yml id:dbroadcast_saves } dbroadcast_command_remove: type: task debug: true script: - define bcid - if || { - narrate "dBroadcast Invalid broadcast id number" - narrate "Check IDs with /bc list" - queue clear } - yaml set bclist.%bcid%:! id:dbroadcast_saves - yaml create id:temp_broadcast - if != 1 { - yaml savefile:dbroadcast_saves.yml id:dbroadcast_saves } else { - foreach { - yaml set bclist.%loop_index%.timer: id:temp_broadcast - yaml set bclist.%loop_index%.message: id:temp_broadcast } - yaml savefile:dbroadcast_saves.yml id:temp_broadcast - yaml unload id:temp_broadcast } - inject dbroadcast_command_reload