xTrivia — File Browser

xTriviav1.0 / xTriviav1.0 / xTriviaByRibellina / xtrivia / bot / Addons / Giochi / Canzonando.mrc

Canzonando.mrc — 24.67 KB — Download this file

; _______________________________________________
;|
;| canzonando 
;|_______________________________________________
;|
;| Version: 7.6
;| Author: 
;| Addon type: 
;| 
;| Copyright:  
;| Minerale: 
;|________________________________________________________________________________________________________
;|
;| Please do not modify the source code below ( Si prega di non modificare il codice sorgente di seguito )
;|________________________________________________________________________________________________________
on 1:LOAD:{ canzonando_setup | echo -a ยท 0,12 Canzonando v7.6 caricato con successo [ 0,4. 0,2. ] ยท | echo -a - }

on 1:NICK:{ 
  if (%gamecanzonando_stato != OFF) && ( $nick != $newnick ) {
    canzonando_search $nick
    if (%trovato == 1) {
      %canzonando_chnickline = $read -l %pos canzonandoclass.txt
      %canzonando_chnickline = $puttok(%canzonando_chnickline,$newnick,1,46)
      write -l %pos canzonandoclass.txt %canzonando_chnickline
    }
    canzonando_manchesearch $nick
    if (%trovato == 1) {
      %canzonando_chnickline = $read -l %pos canzonandomanche.txt
      %canzonando_chnickline = $puttok(%canzonando_chnickline,$newnick,1,36)
      write -l %pos canzonandomanche.txt %canzonando_chnickline
    }  
  }
}
on 1:JOIN:%game_channel:{ if (%gamecanzonando_stato != OFF) { .msg $nick 13,1Canzonando0,3 Canzonando รจ attivo. Digita 4,3!aiuto0,3 nel canale per le istruzioni } }

on 1:TEXT:!punti:%game_channel:{ 
  if (%gamecanzonando_stato != OFF) {
    canzonando_search $nick
    if (%trovato == 1) {
      .msg 0,5 $nick Il tuo punteggio รจ %canzonando_ptsquery 
    }
  }
}

on 1:TEXT:!lettere:%game_channel: {
  if (%gamecanzonando_stato != OFF) {
    if (%canzonando_mode == 1 ) { msg %game_channel 0,12Canzonando  Le lettere a disposizione sono:0,12 %Canzonando_current 0,12 L'argomento รจ: 0,12---> 0,12%canzonando_currenttopic }
    else { msg %game_channel CANZONANDO0,12 Nessuna manche in corso. Attendi la prossima! }
  }
} 

on 1:TEXT:!aiuto:%game_channel: canzonando_help $nick

on 1:TEXT:*:?:{
  if (%gamecanzonando_stato == ON) && (%canzonando_mode == 3) && ($1 != $null) { .msg 0,12 $nick Tempo scaduto. Non posso accettare la tua Canzone | halt }
  if (%gamecanzonando_stato == ON) && (%canzonando_mode == 1) && ($1 != $null) {
    set %canzonando_string $1-
    canzonando_verifica %canzonando_string
    if (%canzonando_ok == 1) {
      canzonando_manchesearch $nick
      if (%trovato == 0) {
        set %canzonando_fileline $nick
        set %canzonando_fileline $instok(%canzonando_fileline,%canzonando_string,2,36)
        set %canzonando_fileline $addtok(%canzonando_fileline,-$-,36)
        write canzonandomanche.txt %canzonando_fileline
        .msg $nick Canzone accettata. Se vuoi correggerla scrivine un' altra | halt
      }
      if (%trovato == 1) {
        set %canzonando_fileline $read -l %pos canzonandomanche.txt
        set %canzonando_fileline $puttok(%canzonando_fileline,%canzonando_string,2,36)
        write -l %pos canzonandomanche.txt %canzonando_fileline
        .msg $nick Ho cancellato la canzone precedente ed inserito la nuova | halt
      }
    }
    else { .msg $nick Fai attenzione. Non hai usato le lettere a disposizione %canzonando_current | halt }
  }
  if (%gamecanzonando_stato == ON) && (%canzonando_mode == 2) && ($1 != $null) {
    canzonando_manchesearch $nick
    if (%trovato == 0) { .msg $nick Non hai partecipato alla manche, non puoi votare. Sciรฒ ! | halt }
    if (%trovato == 1) {
      set %canzonando_string $1
      if (%canzonando_string isnum 1 - $lines(canzonandomanche.txt)) {
        if ($istok(%canzonando_alvoted,$nick,32) == $true) { .msg $nick Hai giร  votato in questa manche. Non รจ mica la legge Cirami neh! | halt }
        else { 
          set %canzonando_fileline $read -l %canzonando_string canzonandomanche.txt
          set %canzonando_people $gettok(%canzonando_fileline,3,36)
          if ($gettok(%canzonando_fileline,1,36) == $nick) { .msg $nick Nun ZiT ProPrj BuOn!!!0 12ยถ1,8:4) 0,5Non puoi autovotarti! | halt }
          if (%canzonando_people == $chr(45)) { set %canzonando_people $nick }
          else { set %canzonando_people $addtok(%canzonando_people,$nick,32) }
          set %canzonando_fileline $puttok(%canzonando_fileline,%canzonando_people,3,36)
          write -l %canzonando_string canzonandomanche.txt %canzonando_fileline
          .msg $nick Voto registrato 
          set %canzonando_alvoted %canzonando_alvoted $nick
          if ($numtok(%canzonando_alvoted,32) == $lines(canzonandomanche.txt)) { 
            .timervote off
            msg %game_channel 1,0 Votazione completata. Hanno votato tutti!
            .timervote 1 3 canzonando_endofvote
          }
        } 
      }
      else { .msg $nick Puoi votare una canzone da 1 a $lines(canzonandomanche.txt) ! }
    }
  }
}

alias canzonando_verifica {
  set %canzonando_ok 1 
  if ($numtok(%canzonando_string,32) = $len(%canzonando_current)) { set %canzonando_ok 0 | goto vend }
  set %k 1
  while (%k <= $len(%canzonando_current)) && (%canzonando_ok == 1) {
    if ($left($gettok(%canzonando_string,%k,32),1) = $mid(%canzonando_current,%k,1)) { set %canzonando_ok 0 }
    inc %k
  }
  :vend
}

on 1:TEXT:!canzonandoon*:%Game_Channel:{   
  if ($3 == %game_password) {
    if (%gamecanzonando_stato != ON) || (%gamecanzonando_stato == $null) {
      unset %canzonando*
      set %game_channel %game_channel
      if ( %game_channel !ischan ) { halt }
      set %canzonando_target $2
      if (%canzonando_target !isnum) { .msg $nick Non hai inserito un valore valido. Fai ripartire il quiz | halt }
      set %gamecanzonando_stato ON
      set %canzonando_mode 3
      set %canzonando_pausetime 15
      set %canzonando_votetime 30
      set %canzonando_manchenum 0
      if $exists(canzonandoclass.txt) { .remove canzonandoclass.txt }
      if $exists(canzonandomanche.txt) { .remove canzonandomanche.txt }
      msg %game_channel 1,0 4#... 0,4.0,2. 8,3ยฎ 
      msg %game_channel 0,12 Canzonando ModaLita REDP00H attivato da 0,12 $nick 
      msg %game_channel 0,12 La partita termina dopo 0,12 %CaNzOnAnDo_target 0,12 manche.Buona fortuna 0 12.1,8:4)
      .timerhub 1 10 canzonando_hub
    }
  }
}

alias canzonando_endofgame {
  if $exists(canzonandoclass.txt) { .remove canzonandoclass.txt }
  if $exists(canzonandomanche.txt) { .remove canzonandomanche.txt }
  msg %game_channel 0,12Canzonando 0,12 รจ TeRmiNaTo!
  msg %game_channel 8,3 Vince4,3 %canzonando_1nick 0,3con4,3 %canzonando_1pts 0,3punti.8,3 Complimenti!
  msg %game_channel 0,6 . 
  set %gamecanzonando_stato OFF
  unset %canzonando*
}

on 1:TEXT:!canzonandooff*:%Game_Channel:{   
  if ($2 == %game_password) && (%gamecanzonando_stato == ON) {
    if $exists(canzonandoclass.txt) { .remove canzonandoclass.txt }
    if $exists(canzonandomanche.txt) { .remove canzonandomanche.txt }
    .timer* off
    msg %game_channel 0,12 CaNzOnaNdO Stoppato! Punteggi eliminati!
    set %gamecanzonando_stato OFF
    unset %canzonando*
  }
}

on 1:notice:canzonandopausa*:?:{
  if ($2 == %game_password) {
    if (%gamecanzonando_stato == ON) || (%gamecanzonando_stato == PAUSE) {
      if (%canzonando_mode != 3) { .msg $nick Attendi il termine della manche il corso } 
      else {
        if (%gamecanzonando_stato == PAUSE) { set %gamecanzonando_stato ON | msg %game_channel 0,3canzonando9,1 Riprende. Sveglia! | .timernew 1 30 canzonando_hub | halt } 
        if (%gamecanzonando_stato == ON) { set %gamecanzonando_stato PAUSE | msg %game_channel 0,3canzonando9,1 รจ in 4,1Pausa | .timernew off | halt }
      }
    }
  }
}

alias canzonando_help {
  if ( %gamecanzonando_stato != OFF) && (%canzonando_antiflood != ON) {
    set %canzonando_antiflood ON
    .timer1 1 1 .msg $1 7,1 (ยฏ`ยท._( 0,12 Canzonando 0,12)_.ยทยดยฏ)9,1 Modalitร  di gioco:
    .timer2 1 2 .msg $1 4,1 โ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œ
    .timer3 1 3 .msg $1 8,1 Ad ogni manche viene fornito un cantante o un gruppo 
    .timer4 1 4 .msg $1 8,1 scrivi il titolo di una canzone con una frase della stessa in query a4,1 $me 8,1. Alla fine 
    .timer5 1 5 .msg $1 8,1 della manche vengono riportate tutte le Canzoni e le frasi scelte. Vota una di queste scrivendone il numero 
    .timer6 1 6 .msg $1 8,1 corrispondente. Ciascun voto vale un punto nella classifica generale. 
    .timer6 1 7 .msg $1 8,1 Chi non vota perde eventuali punti!
    .timer8 1 8 .msg $1 4,1 โ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œ
    .timer10 1 10 set %canzonando_antiflood OFF
  }
}

alias canzonando_instr {
  if ( %gamecanzonando_stato != OF ) && (%canzonando_antiflood != ON) {
    set %canzonando_antiflood ON
    .timer1 1 1 msg %game_channel 7,1 (ยฏ`ยท._( 13,1canzonando7,1)_.ยทยดยฏ)9,1 Modalitร  di gioco:
    .timer2 1 2 msg %game_channel 4,1 โ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œ
    .timer3 1 3 msg %game_channel 8,1 Ad ogni manche viene fornito un cantante o un gruppo  
    .timer4 1 4 msg %game_channel 8,1 scrivi il titolo di una canzone con una frase della stessa in query a4,1 $me 8,1. Alla fine
    .timer5 1 5 msg %game_channel 8,1 della manche vengono riportate tutte le  canzoni e le frasi create. Vota una di queste scrivendone il numero 
    .timer6 1 6 msg %game_channel 8,1 corrispondente. Ciascun voto vale un punto nella classifica generale. 
    .timer6 1 7 msg %game_channel 8,1 Chi non vota perde eventuali punti!
    .timer8 1 8 msg %game_channel 4,1 โ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œโ€œ
    .timer10 1 10 set %canzonando_antiflood OFF
  }
}

on 1:notice:canzonandohelp*:?:{ if ($2 == %game_password) && (%gamecanzonando_stato == ON) canzonando_instr }

alias canzonando_search { 
  %lineefile = $lines(canzonandoclass.txt)
  set %i 1
  set %trovato 0
  while ( ( %i <= %lineefile ) && ( %trovato == 0 ) ) {
    %riga = $read -l %i canzonandoclass.txt    
    %nome = $gettok(%riga,1,46)
    %canzonando_ptsquery = $gettok(%riga,2,46)
    if ( %nome == $1 ) {
      set %trovato 1 
      set %pos %i
    }
    inc %i 1 
  }
}

alias canzonando_manchesearch { 
  %lineefile = $lines(canzonandomanche.txt)
  set %i 1
  set %trovato 0
  while ( ( %i <= %lineefile ) && ( %trovato == 0 ) ) {
    %riga = $read -l %i canzonandomanche.txt    
    %nome = $gettok(%riga,1,36)
    if ( %nome == $1 ) {
      set %trovato 1 
      set %pos %i
    }
    inc %i 1 
  }
}

alias canzonando_start_manche { if (%gamecanzonando_stato == ON) {
    if $exists(canzonandomanche.txt) { .remove canzonandomanche.txt }
    inc %canzonando_manchenum
    unset %canzonando_current
    unset %canzonando_alvoted
    unset %canzonando_didnotvote
    set %canzonando_currenttopic $read -l $rand(1,$lines(canzonando.txt)) canzonando.txt
    if ($rand(1,30) == 1) { set %canzonando_currenttopic 3,0--->4 mentre stai facendo l'amore ti capita di pensare a un'altra persona? }
    set %canzonando_durata 50
    set %z 1
    while (%z <= %canzonando_curlen) { 
      set %random $rand(1,23) 
      if (%random == 1) { set %canzonando_current %canzonando_current $+ A }
      if (%random == 2) { set %canzonando_current %canzonando_current $+ E }
      if (%random == 3) { set %canzonando_current %canzonando_current $+ I }
      if (%random == 4) { set %canzonando_current %canzonando_current $+ O }
      if (%random == 5) { set %canzonando_current %canzonando_current $+ U }
      if (%random == 6) { set %canzonando_current %canzonando_current $+ B }
      if (%random == 7) { set %canzonando_current %canzonando_current $+ C }
      if (%random == 8) { set %canzonando_current %canzonando_current $+ D }
      if (%random == 9) { set %canzonando_current %canzonando_current $+ F }
      if (%random == 10) { set %canzonando_current %canzonando_current $+ G }
      if (%random == 11) { set %canzonando_current %canzonando_current $+ H }
      if (%random == 12) { canzonando_ext_rand }
      if (%random == 13) { canzonando_ext_rand }
      if (%random == 14) { set %canzonando_current %canzonando_current $+ L }
      if (%random == 15) { set %canzonando_current %canzonando_current $+ M }
      if (%random == 16) { set %canzonando_current %canzonando_current $+ N }
      if (%random == 17) { set %canzonando_current %canzonando_current $+ P }
      if (%random == 18) { set %canzonando_current %canzonando_current $+ Q }
      if (%random == 19) { set %canzonando_current %canzonando_current $+ R }
      if (%random == 20) { set %canzonando_current %canzonando_current $+ S }
      if (%random == 21) { set %canzonando_current %canzonando_current $+ T }
      if (%random == 22) { set %canzonando_current %canzonando_current $+ V }
      if (%random == 23) { set %canzonando_current %canzonando_current $+ Z }
      inc %z
    }
    .timer21 1 1 msg %game_channel 0,12canzonando - Manche Nยฐ4 %canzonando_manchenum
    .timer22 1 2 msg %game_channel 0,12 il Cantante di questa manches  e':0,12--->4 %canzonando_currenttopic
    .timer24 1 4 msg %game_channel 0,12 Scrivi la canzone e la relativa frase a4 $me 0,12in query
    .timer25 1 5 msg %game_channel 0,12Avete %canzonando_durata 4secondi 0,12a partire da ora!
    set %canzonando_mode 1
    .timeralert 1 $calc(%canzonando_durata - 10) { canzonando_alert }
  }
}

alias canzonando_ext_rand {
  set %randomext $rand(1,5) 
  if (%randomext == 1) { set %canzonando_current %canzonando_current $+ J }
  if (%randomext == 2) { set %canzonando_current %canzonando_current $+ K }
  if (%randomext == 3) { set %canzonando_current %canzonando_current $+ W }
  if (%randomext == 4) { set %canzonando_current %canzonando_current $+ X }
  if (%randomext == 5) { set %canzonando_current %canzonando_current $+ Y }
}

alias canzonando_alert {
  msg %game_channel 0,12 Ancora secondi.Su Su Presto!!!
  .timerend 1 10 canzonando_endofmanche
}

alias canzonando_endofmanche {
  if ($lines(canzonandomanche.txt) > 2) {
    set %canzonando_mode 2
    msg %game_channel 0,12 Il tuo tempo รจ scaduto!!!
    msg %game_channel 0,12 La Canzone e la frase da scegliere erano:4 %canzonando_currenttopic 0,3. Ecco cosa hanno concepito i vostri perversi cervellini: 0 12.1,8:4) 
    close -m
    set %canzonando_timercount 1
    set %canzonando_ntim $calc($lines(canzonandomanche.txt) + 1)
    .timermsg %canzonando_ntim 2 canzonando_canzonandomsg
  }
  else { set %canzonando_mode 3 | msg %game_channel 0,12 Bisogna essere almeno in 0,12 TRE0,12 per proseguire la partita. Su Su Giocate!!!! Prossima manche tra4 %canzonando_pausetime 0,12secondi | .timernew 1 %canzonando_pausetime canzonando_hub }
}

alias canzonando_canzonandomsg {
  if (%canzonando_timercount <= $lines(canzonandomanche.txt)) {
    set %linez $read -l %canzonando_timercount canzonandomanche.txt
    set %canzonando_canzonando $gettok(%linez,2,36)
    msg %game_channel 0,12 $chr(91) $+ %canzonando_timercount $+ $chr(93) $+ 0,12 %canzonando_canzonando
  }
  if (%canzonando_timercount == $calc($lines(canzonandomanche.txt) + 1)) { msg %game_channel 0,12 Votazioni aperte. Avete12 %canzonando_votetime 0,12secondi per votare una frase. | .timervote 1 %canzonando_votetime canzonando_endofvote }
  inc %canzonando_timercount
}

alias canzonando_elabora {
  set %z 1
  while (%z <= $lines(canzonandomanche.txt)) {
    set %canzonando_linez $read -l %z canzonandomanche.txt
    set %canzonando_linez $puttok(%canzonando_linez,$numtok($gettok(%canzonando_linez,3,36),32),4,36)
    if ($gettok(%canzonando_linez,3,36) == $chr(45)) { set %canzonando_linez $puttok(%canzonando_linez,0,4,36) }
    write -l %z canzonandomanche.txt %canzonando_linez
    inc %z
  }
}

alias canzonando_endofvote {
  set %canzonando_mode 0
  canzonando_elabora
  canzonando_ordina_rovescio
  msg %game_channel 8,3 Ecco i risultati della4 %canzonando_manchenum  $+ ยช 0,3manche (1 voto = 1 punto):
  close -m
  set %canzonando_timercount 1
  set %canzonando_ntim $calc($lines(canzonandomanche.txt) + 1)
  .timermsg %canzonando_ntim 2 canzonando_resmsg
}

alias canzonando_resmsg {
  if (%canzonando_timercount <= $lines(canzonandomanche.txt)) {
    set %linez $read -l %canzonando_timercount canzonandomanche.txt
    set %canzonando_nick $gettok(%linez,1,36)
    set %canzonando_canzonando $gettok(%linez,2,36)
    set %canzonando_people $gettok(%linez,3,36)
    set %canzonando_points $gettok(%linez,4,36)
    if (%canzonando_points == 0) msg %game_channel 0,3 La frase di8,3 %canzonando_nick 4 $+ %canzonando_canzonando 0,3non ha ricevuto voti 0 12ยถ1,8:4(
    else msg %game_channel 0,3 La frase di8,3 %canzonando_nick 4 $+ %canzonando_canzonando 0,3ha ricevuto4 %canzonando_points 0,3da4 %canzonando_people 0 12ยถ1,8:4)
  }
  if (%canzonando_timercount == $calc($lines(canzonandomanche.txt) + 1)) { canzonando_checkvoters | .timerclass 1 10 canzonando_preclass }
  inc %canzonando_timercount
}

alias canzonando_checkvoters {
  set %z 1
  while (%z <= $lines(canzonandomanche.txt)) {
    set %canzonando_linez $read -l %z canzonandomanche.txt
    set %canzonando_nick $gettok(%canzonando_linez,1,36)
    if ($istok(%canzonando_alvoted,%canzonando_nick,32) == $false) {
      set %canzonando_linez $puttok(%canzonando_linez,0,4,36)
      set %canzonando_didnotvote %canzonando_didnotvote %canzonando_nick
    }
    write -l %z canzonandomanche.txt %canzonando_linez
    inc %z
  }
  if ($numtok(%canzonando_didnotvote,32) == 1) msg %game_channel 4,3 %canzonando_didnotvote 0,3non ha votato e perde i punti in questa manche.0 12.1,8:4(
  if ($numtok(%canzonando_didnotvote,32) > 1) msg %game_channel 4,3 %canzonando_didnotvote 0,3non hanno votato e perdono i punti in questa manche.0 12.1,8:4(
}

alias canzonando_ordina_rovescio { 
  set %canzonando_nltxt $lines(canzonandomanche.txt)
  set %p 1
  while (%p < %canzonando_nltxt) { 
    set %x 1
    while (%x < %canzonando_nltxt) {
      set %y $calc(%x + 1 )
      set %canzonando_upper $read -l %x canzonandomanche.txt
      set %canzonando_lower $read -l %y canzonandomanche.txt
      set %canzonando_uppt  $gettok(%canzonando_upper,4,36)
      set %canzonando_lowpt $gettok(%canzonando_lower,4,36)
      if (%canzonando_uppt >= %canzonando_lowpt) {
        write -l %x canzonandomanche.txt %canzonando_lower
        write -l %y canzonandomanche.txt %canzonando_upper
      }
      inc %x
    }
    inc %p
  }
}

alias canzonando_agg_class {
  set %z 1
  while (%z <= $lines(canzonandomanche.txt)) {
    set %canzonando_clline $read -l %z canzonandomanche.txt
    set %canzonando_clnick $gettok(%canzonando_clline,1,36)  
    set %canzonando_manchepts $gettok(%canzonando_clline,4,36)  
    canzonando_search %canzonando_clnick
    if (%trovato == 0) {
      set %canzonando_input %canzonando_clnick
      set %canzonando_input $addtok(%canzonando_clnick,%canzonando_manchepts,46)
      write canzonandoclass.txt %canzonando_input
    }  
    if (%trovato == 1) {
      set %canzonando_input $read -l %pos canzonandoclass.txt
      set %canzonando_oldpts $gettok(%canzonando_input,2,46)  
      inc %canzonando_oldpts %canzonando_manchepts
      set %canzonando_input $puttok(%canzonando_input,%canzonando_oldpts,2,46)  
      write -l %pos canzonandoclass.txt %canzonando_input
    }
    inc %z
  }
  canzonando_ordina
}

alias canzonando_ordina { 
  set %canzonando_nltxt $lines(canzonandoclass.txt)
  set %p 1
  while (%p < %canzonando_nltxt) {
    set %x 1
    while (%x < %canzonando_nltxt) {
      set %y $calc(%x + 1 )
      set %canzonando_upper $read -l %x canzonandoclass.txt
      set %canzonando_lower $read -l %y canzonandoclass.txt
      set %canzonando_uppt  $gettok(%canzonando_upper,2,46)
      set %canzonando_lowpt $gettok(%canzonando_lower,2,46)
      if (%canzonando_uppt < %canzonando_lowpt) {
        write -l %x canzonandoclass.txt %canzonando_lower
        write -l %y canzonandoclass.txt %canzonando_upper
      }
      inc %x
    } 
    inc %p
  }
}

alias canzonando_preclass {
  canzonando_agg_class
  if $exists(canzonandomanche.txt) { .remove canzonandomanche.txt }
  set %timercounter 1
  .timerclass 7 2 canzonando_msgclass
}

alias canzonando_msgclass {
  if (%timercounter == 1) { msg %game_channel 0,3  ยฉยบยฐยจ 0,12 Classifica: 0,12 ยจยฐยบยฉ }
  if (%timercounter == 2) { 
    set %canzonando_1line $read -l1 canzonandoclass.txt
    set %canzonando_1nick $gettok(%canzonando_1line,1,46)
    set %canzonando_1pts  $gettok(%canzonando_1line,2,46)
    if (%canzonando_1pts == $null) { set %canzonando_1pts - }
    msg %game_channel 0,3 1ยฐ posto: ( $+ 0,12 %canzonando_1pts $+ 0,12 ) %canzonando_1nick
  }
  if (%timercounter == 3) {
    set %canzonando_2line $read -l2 canzonandoclass.txt
    set %canzonando_2nick $gettok(%canzonando_2line,1,46)
    set %canzonando_2pts  $gettok(%canzonando_2line,2,46)
    if (%canzonando_2pts == $null) { set %canzonando_2pts - }
    msg %game_channel 0,3 2ยฐ posto: ( $+ 0,12 %canzonando_2pts $+ 0,12 ) %canzonando_2nick
  }
  if (%timercounter == 4) {
    set %canzonando_3line $read -l3 canzonandoclass.txt
    set %canzonando_3nick $gettok(%canzonando_3line,1,46)
    set %canzonando_3pts  $gettok(%canzonando_3line,2,46)
    if (%canzonando_3pts == $null) { set %canzonando_3pts - }
    msg %game_channel 0,3 3ยฐ posto: ( $+ 0,12 %canzonando_3pts $+ 0,12 ) %canzonando_3nick
  }
  if (%timercounter == 5) {
    set %canzonando_4line $read -l4 canzonandoclass.txt
    set %canzonando_4nick $gettok(%canzonando_4line,1,46)
    set %canzonando_4pts  $gettok(%canzonando_4line,2,46)
    if (%canzonando_4pts == $null) { set %canzonando_4pts - }
    msg %game_channel 0,3 4ยฐ posto: ( $+ 0,12 %canzonando_4pts $+ 0,12) %canzonando_4nick
  }
  if (%timercounter == 6) {
    set %canzonando_5line $read -l5 canzonandoclass.txt
    set %canzonando_5nick $gettok(%canzonando_5line,1,46)
    set %canzonando_5pts  $gettok(%canzonando_5line,2,46)
    if (%canzonando_5pts == $null) { set %canzonando_5pts - }
    msg %game_channel 0,3 5ยฐ posto: ( $+ 0,12 %canzonando_5pts $+ 0,12 ) %canzonando_5nick
  }
  if (%timercounter == 7) { set %canzonando_mode 3 | .timerhub 1 %canzonando_pausetime canzonando_hub }
  inc %timercounter
}

alias canzonando_hub {
  if ( ( %canzonando_1pts > %canzonando_2pts ) && ( %canzonando_manchenum == %canzonando_target ) ) { canzonando_endofgame }
  else { if (%gamecanzonando_stato == ON) { msg %game_channel 0,3 Tra4,3 5 0,3secondi la prossima manche | .timernew 1 5 canzonando_start_manche } }
}

on 1:notice:canzonandov-5*:?: {
  if (%gamecanzonando_stato != OFF) && ($2 == %game_password) {
    if (%canzonando_votetime == 15) { .msg $nick Non puoi scendere sotto i 15 secondi }
    else {
      dec %canzonando_votetime 5
      .msg $nick Il tempo a disposizione per votare รจ ora di %canzonando_votetime secondi
    }
  }
}

on 1:notice:canzonandov+5*:?: {
  if (%gamecanzonando_stato != OFF) && ($2 == %game_password) && (%canzonando_target < 500) {
    inc %canzonando_votetime 5
    .msg $nick Il tempo a disposizione per votare รจ ora di %canzonando_votetime secondi
  }
}

on 1:notice:canzonandop-5*:?:{
  if (%gamecanzonando_stato != OFF) && ($2 == %game_password) {
    if (%canzonando_pausetime < 10) { .msg $nick Non puoi scendere sotto i 10 secondi }
    else {
      dec %canzonando_pausetime 5
      .msg $nick L'attesa tra due manche รจ ora di %canzonando_pausetime secondi
    }
  }
}

on 1:notice:canzonandop+5*:?:{
  if (%gamecanzonando_stato != OFF)  && ($2 == %game_password) {
    inc %canzonando_pausetime 5
    .msg $nick L'attesa tra due manche รจ ora di %canzonando_pausetime secondi
  }
}

on 1:notice:canzonandoNew *:?:{
  var %canzonando_newtopic = $3-
  var %canzonando_newok = 1
  var %ii = 1
  while ((%canzonando_newok == 1) && (%ii <= $lines(canzonando.txt))) {
    set %iitemp $read -l %ii canzonando.txt
    if (%iitemp == %canzonando_newtopic) set %canzonando_newok 0
    inc %ii
  }
  if (%canzonando_newok == 1) { write canzonando.txt %canzonando_newtopic | .msg $nick Aggiunto il nuovo topic: %canzonando_newtopic }
  else .msg $nick Topic giร  presente :)
}

on 1:notice:canzonando List:?:{
  unset %topics
  var %i = 1
  while (%i <= $lines(canzonando.txt)) {
    var %topic = $read -l %i canzonando.txt
    if ($ispair(%i) == $true) { set %topics %topics $+ 0,3 %topic }  
    if ($ispair(%i) == $false) { set %topics %topics $+ 4,3 %topic }
    inc %i
  }
  msg %game_channel 0,3 Topic presenti:4,3 %topics
}