;Trivia Bot ;Made and Tested by Ox_King and Justin ;Visit us on irc.dragonchat.org #heaven on *:LOAD:/setup_trivia menu channel { Setup Trivia:/setup_trivia } alias setup_trivia /dialog -m trivia_setup trivia_setup on 5:TEXT:!strivia:%trivia.channel:{ if %trivia != $null) { /msg %trivia.channel Trivia is already activated. To de-activate it, press 4!trivia end } else { /strivia } } alias /strivia { /msg %trivia.channel Trivia Script has now been activated. First question in4 30 seconds. /timerstrivia 1 30 question /set %trivia on } alias /question { /set %no.lines $lines(%questions.file) .set %line.no $rand(1,%no.lines) .set %question $gettok($read(%questions.file,%line.no),1,42) .set %answer $gettok($read(%questions.file,%line.no),2,42) .set %question.points $rand(1,30) .inc %question.count 1 /question.check /msg %trivia.channel Question [ $+ %line.no $+ ]:14,1 %question /msg %trivia.channel Points Value:3 %question.points /msg %trivia.channel Question will end in4 30 seconds. /enable #answer .timertrivia 1 30 /stoptrivia } alias /stoptrivia { /msg %trivia.channel Times up. The answer was:4 %answer /msg %trivia.channel Next question in4 30 seconds. .timerstrivia 1 30 question /disable #answer } #answer off on *:TEXT:%answer:%trivia.channel:{ .timertrivia off /msg %trivia.channel 04 $+ $nick Got the correct answer!! /msg %trivia.channel The answer was:4 %answer /timerstrivia 1 10 question /msg %trivia.channel Next question in8,1 10 seconds. .set %nick $nick /addpoint /disable #answer /set %nick.score $readini($mircdir\trivia.ini,POINTS,$nick) /set %nick $nick /check.points } #answer end on 5:TEXT:!trivia end:%trivia.channel:{ if (%trivia != $null) { /msg %trivia.channel Trivia stopped. /msg %trivia.channel 9,1Trivia Script Revision 1. Designed and tested by Ox_King and Justin at /server irc.dragonchat.org .timertrivia off .timerstrivia off /disable #answer /unset %trivia /unset %question.count } else { .notice $nick Trivia isn't active. To enable trivia, type 4!strivia } } alias addpoint { /writeini $mircdir\trivia.ini POINTS %nick $calc($readini($mircdir\trivia.ini,POINTS,%nick) + %question.points) } on *:TEXT:!points*:%trivia.channel:{ if ($2 == $null) { if ($readini($mircdir\trivia.ini,POINTS,$nick) == $null) { /msg %trivia.channel You currently have4 0 points. } else { /msg %trivia.channel You currently have4 $readini($mircdir\trivia.ini,POINTS,$nick) points. } } else { if ($readini($mircdir\trivia.ini,POINTS,$2) == $null) { /msg %trivia.channel $2 currently has4 0 points. } else { /msg %trivia.channel $2 currently has4 $readini($mircdir\trivia.ini,POINTS,$2) points. } } } on *:TEXT:!addquestion*:?:{ if ($gettok($1-,2,42) == $null) { /msg $nick Invalid format. The format should be 4Question*Answer } else { .write %questions.file $2- $+ * $+ $nick /msg $nick Thank you for adding a question. /msg $nick You have added4 1 point to your total. .writeini $mircdir\trivia.ini POINTS $nick $calc($readini($mircdir\trivia.ini,POINTS,$nick) + 1) /msg %trivia.channel 4 $+ $nick has added4 1 point to their total. /closemsg $nick } } alias question.check { if (%question.count >= 20) { /msg %trivia.channel $read $mircdir\ads.txt .unset %question.count return } else { return } } alias check.points { var %a = $lines($mircdir\topscore.txt) while (%a) { if ($read($mircdir\topscore.txt,w, %a) <= %nick.score) { write -i $readn $mircdir\topscore.txt %$nick.score $+ * $+ %nick delete.11 echo -a Check complete } dec %a } halt } alias delete.11 { if ($len(topscore) = 11) { write -d 11 $mircdir\topscore.txt } else { halt } } on *:TEXT:!top10:%trivia.channel:{ /msg $nick TOP 10 /msg $nick 1.4 $gettok($read($mircdir\topscores.txt,1),1,42) With4 $gettok($read($mircdir\topscores.txt,1),2,42) points. /msg $nick 2.4 $gettok($read($mircdir\topscores.txt,2),1,42) With4 $gettok($read($mircdir\topscores.txt,2),2,42) points. /msg $nick 3.4 $gettok($read($mircdir\topscores.txt,3),1,42) With4 $gettok($read($mircdir\topscores.txt,3),2,42) points. /msg $nick 4.4 $gettok($read($mircdir\topscores.txt,4),1,42) With4 $gettok($read($mircdir\topscores.txt,4),2,42) points. /msg $nick 5.4 $gettok($read($mircdir\topscores.txt,5),1,42) With4 $gettok($read($mircdir\topscores.txt,5),2,42) points. /msg $nick 6.4 $gettok($read($mircdir\topscores.txt,6),1,42) With4 $gettok($read($mircdir\topscores.txt,6),2,42) points. /msg $nick 7.4 $gettok($read($mircdir\topscores.txt,7),1,42) With4 $gettok($read($mircdir\topscores.txt,7),2,42) points. /msg $nick 8.4 $gettok($read($mircdir\topscores.txt,8),1,42) With4 $gettok($read($mircdir\topscores.txt,8),2,42) points. /msg $nick 9.4 $gettok($read($mircdir\topscores.txt,9),1,42) With4 $gettok($read($mircdir\topscores.txt,9),2,42) points. /msg $nick 10.4 $gettok($read($mircdir\topscores.txt,10),1,42) With4 $gettok($read($mircdir\topscores.txt,10),2,42) points. } dialog trivia_setup { title "TriviaScript Setup" size -1 -1 178 130 option dbu text "Channel:", 1, 7 9 25 8 edit "", 2, 35 7 129 10 text "Questions File:", 3, 6 19 38 8 edit "", 4, 45 18 82 10 button "Browse", 5, 129 18 35 12 button "Okay", 6, 66 110 37 12, ok edit "TriviaScript Copyright 2003 © DragonChat Productions. Designed and Tested by Ox_King and Justin. Please send all comments and ideas to them on /server irc.dragonchat.org -j #TalkCentral. ", 7, 6 57 157 49, disable multi return button "Enable Trivia", 8, 66 34 37 12 } on *:DIALOG:trivia_setup:init:0:{ if ( %trivia != $null) { /did -a $dname 8 Disable Trivia /did -a $dname 2 %trivia.channel /did -a $dname 4 %questions.file } else { /did -a $dname 8 Enable Trivia /did -a $dname 2 %trivia.channel /did -a $dname 4 %questions.file } } on *:DIALOG:trivia_setup:SCLICK:5://set %questions.file $dir="What questions file to use?" C:\ | /did -a $dname 4 %questions.file on *:DIALOG:trivia_setup:EDIT:2:/set %trivia.channel $did(2) on *:DIALOG:trivia_setup:EDIT:4:/set %questions.file $did(4) on *:DIALOG:trivia_setup:SCLICK:8:{ if (%trivia != $null) { /msg %trivia.channel Trivia stopped by remote host. /msg %trivia.channel 9,1Trivia Script Revision 1. Designed and tested by Ox_King and Justin at /server irc.dragonchat.org .timertrivia off .timerstrivia off /disable #answer /unset %trivia /unset %question.count } else { .echo -a Trivia isn't active. To enable trivia, type 4!strivia } }