I read some scripting tutorials, and I though I had it figured out, but I get a weird problem. Everything works, but it seems to lose the color codes in the original part of the script.

Here is the code as it stands:
Code:
on *:text:roll &:#: {
  if ($2 !isnum) { msg $chan Invalid input. | return }
  var %totsucs = 0
  var %c = $2
  if (%c > 30) {
    msg # No way, That's too many dice!
    halt
  } 
:reroll
  var %dice = %blank
  var %rers = %blank
  var %s10s = %blank
  var %s9s = %blank
  var %s8s = %blank
  var %sucs = %blank
while (%c > 0) { 
    var %roll = $rand(1,10) 
	if (%roll = 1) { var %roll = 00,01 $+ %roll } 
    elseif (%roll isnum 2-7) { var %roll = 00,01 $+ %roll } 
    elseif (%roll isnum 8-9) { var %roll = 11,01 $+ %roll } 
    else { var %roll = 09,01 $+ %roll } 
    var %dice = %dice $+ $iif(%dice, $+ $chr(44)) %roll 
    dec %c
  }
  msg $chan $nick gets: $replace(%dice,$chr(46), $+ $chr(44) $+ $chr(32))
  var %s10 = 10
  var %s9 = 9
  var %s8 = 8
  var %c = $count(%dice,%s10)
  var %s10s = $count(%dice,%s10)
  var %s9s = $count(%dice,%s9)
  var %s8s = $count(%dice,%s8) 
  var %sucs = $calc(%s10s + %s9s + %s8s)
  var %temp = %sucs
  var %runtot = $calc(%runtot + %sucs)
  var %sucs = %blank
  msg $chan $nick has11,01 %temp 00,01sucesses and needs to reroll11,01 %c  00,01dice.
  var %temp = %blank
  if (%c > 0) {
  goto reroll }
msg $chan <---------------------------------------->
msg $chan $nick has a grand total of04,01 %runtot  00,01sucesses.
msg $chan <---------------------------------------->
}


Last edited by YukiSokudo; 06/04/11 12:04 AM.