I suppose if your gonna do it that way, something like this would work ..
alias start.trivia {
set %trivia $1
msg $1 Starting multiple choice Trivia in 10 seconds. Get Ready!
.timertrivia 1 10 trivia.q
}
alias trivia.q {
var %x = $r(1,$lines(trivia.txt))
set %trivia.q $gettok($read(trivia.txt,%x),1,42)
set %trivia.a $gettok($read(trivia.txt,%x),2,42)
msg %trivia Question: $+($chr(3),12,%trivia.q,$chr(3),.) You have 1 minute and 30 seconds!
set %trivia.aq 1
.timertriv 1 90 trivia.a
}
alias trivia.a {
var %x = 1,%y
unset %trivia.aq
msg %trivia Times up! The answers were: %trivia.a
while (%x <= $numtok(%triv.u,32)) {
%y = $gettok(%triv.u,%x,32) with $+(%triv.u. [ $+ [ $gettok(%triv.u,%x,32) ] ] correct,$iif(%x = $numtok(%triv.u,32),.,$chr(44)))
writeini triv-scores.ini scores $gettok(%triv.u,%x,32) $calc($readini(triv-scores.ini,scores,$gettok(%triv.u,%x,32)) + %triv.u. [ $+ [ $gettok(%triv.u,%x,32) ] ])
inc %x
}
msg %trivia Here are the points for this round: %y
msg %trivia Next question in 5 seconds!
unset %trivia.*
unset %triv.*
.timertriv 1 5 trivia.q
}
on *:TEXT:*:#: {
if ($chan != %trivia) halt
if (%trivia.aq) && ($istok(%trivia.a,$1,32)) && (!$istok(%trivia.ala,$1,32)) {
$iif(!$istok($nick,%triv.u,32),set %triv.u %triv.u $nick)
inc %triv.u. [ $+ [ $nick ] ] 1
set %trivia.ala %trivia.ala $1
msg $chan $+($chr(3),12,$nick,$chr(3) got one of the answers: $1
if ($numtok(%trivia.ala,32) = $numtok(%trivia.a,32)) { .timertriv off | trivia.a }
}
elseif ($1 = !score) {
if ($readini(triv.scores.ini,scores,$nick) { msg $chan The score for $nick is: $v1 }
else { msg $chan There is no score for $nick }
}
}
Then, it would be Question*Answer Answer Answer Answer
A basic showing of how it's done. I may implement the idea into my trivia script. I highly doubt it would work in any current Trivia bot, as I'm almost sure some amount of highly modding would need to be done. I'll see if I can work on implementing something in my current trivia bot later this evening.