xTrivia — File Browser

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

Parolazza.mrc — 11.23 KB — Download this file

on 1:JOIN:%game_channel:{ if (%parolaz.stato == 1) { .msg $nick 13,2 (¯`·._.·»» 0 •°• 11«9P13a11R7o4L8a13Z9Z7a4™11» 0 •°• 13{8=9°13•9°8=13} 11(¯`·._.·»» 13 ¡n CoRsO Sµ 10 .·´¯)9 %parolaz.canale 10(¯`·.  } }

on *:TEXT:!score:%game_channel: { 
  if (%parolaz.stato == 1) {
    parolzzsc_search $nick
    if (%parolzzsc_trovato == 1) { .notice $nick 13,2 Hai 11 %parolzzsc_score 13 Pµn†i!  }
    else { .notice $nick 11,2 $nick 13 NoN Hai Pµn†i!   } 
  }
  unset %parolzzsc_*
}

alias parolzzsc_search { 
  %parolzzsc_lineefile = $lines($scriptdir\ParolazScore.txt)
  set %parolzzsc_i 1
  set %parolzzsc_trovato 0
  while (( %parolzzsc_i <= %parolzzsc_lineefile ) && ( %parolzzsc_trovato == 0 )) {
    %parolzzsc_riga = $read -l %parolzzsc_i $scriptdirParolazScore.txt    
    %parolzzsc_nome = $gettok(%parolzzsc_riga,1,32)
    %parolzzsc_score = $gettok(%parolzzsc_riga,2,32)
    if ( %parolzzsc_nome == $1 ) {
      set %parolzzsc_trovato 1 
      set %parolzzsc_pos %parolzzsc_i
    }
    inc %parolzzsc_i 1 
  }
}

alias parolzz_search { 
  %parolzz_lineefile = $lines($scriptdir\ParolazScore.txt)
  set %parolzz_i 1
  set %parolzz_trovato 0
  while ( ( %parolzz_i <= %parolzz_lineefile ) && ( %parolzz_trovato == 0 ) ) {
    %parolzz_riga = $read -l %parolzz_i $scriptdirParolazScore.txt    
    %parolzz_nome = $gettok(%parolzz_riga,1,32)
    %parolzz_score = $gettok(%parolzz_riga,2,32)
    if ( %parolzz_nome == $1 ) {
      set %parolzz_trovato 1 
      set %parolzz_pos %parolzz_i
    }
    inc %parolzz_i 1 
  }
}

alias parlzstart {
  .unset %cresci
  .unset %parolaz.*
  .set %manche1 1
  .set %numero.man $rand(3,5)
  .msg %game_channel 13,2 (¯`·._.·»» 0 •°• 11«9P13a11R7o4L8a13Z9Z7a4™11» 0 •°• 6 ßy 11 7 MôNCheRR¥77 11(¯`·._.·»» 
  .msg %game_channel 0,1 —[ 13 CoMinCia La PaR†i†a 0 ]— 0 ] 9 %numero.man 0 [ 13 MaNcHe  
  .msg %game_channel 8,2 Indovina La Parola Nascosta Compresa Tra Quelle Scritte! 
  .msg %game_channel 11,1 Aiµ†O ÐisPoNißiLe ÐoPo 4 15 11 †eN†a†iVi 0 (4!help la-lettera!!0) 
  .msg %game_channel 13,2 …(¯¯6o13¯)… 9–– 7 Ð11a9L4L13' 9i7Ð4e11a 7Ð9i 0 0• 8 Oßi_OnE 9–– 13 …(¯6o13¯¯)… 
  %parolaz.stato = 1
} 


alias parolazmsg { 
  inc %parolazza_cont 
  .msg %parolaz.canale 8,2 Tra 4,2 $+ %parolaz.su $+ 8,2 e 4,2 $+ %parolaz.giu 8,2( $+ %parolazza_cont $+ )  
}


on *:TEXT:*:%game_channel:{
  if ($1 == !parolazzaon) {
    if (%parolaz.stato != 1) {
      parlzstart
      %parolaz.su = abaco 
      %parolaz.giu = zuzzurellone 
      %parolaz.canale = %game_channel
      parolaz.2 
    }
  }
  if ($1 == !parolazzaoff) {
    if (%parolaz.stato == 1) { 
      .msg %game_channel 2,8 Mano Annullata dal conduttore! 
      .parolazza_ordina
      %parolaz.stato = 0
      halt
    }
  }

  if (! isin $1) { 
    if  (%parolaz.stato == 1) { 
      %parolazza_risposta = $lower($mid($1,2)) 
      if ($parolazval(%parolazza_risposta) == 0) return 
      set %parolazza_word %parolazza_risposta 
      set %parolazza_trovata $read($scriptdirdictionary\ $+ italiano. [ $+ [ $left(%parolazza_word,1) ] ],w,%parolazza_word,1) 
      if (%parolazza_trovata == %parolazza_word) { 
        if (%parolazza_risposta == %parolaz.parola) {
          .inc %parolazza_cont
          .msg %parolaz.canale 0,2 Hai InÐoViNa†o 9 $+ $nick $+ 0 ÐoPo 4 %parolazza_cont 0 †eN†a†iVi! La PaRoLa eRa: 8 $+ %parolaz.parola 
          .unset %cresci
          .saddpunti
          while (%manche1 < %numero.man) { 
            .inc %manche1
            parolaz.2
          }
          parolaz.3
        } 
        %parolazza_c1 = $parolazchk(%parolazza_risposta,%parolaz.su) 
        %parolazza_c2 = $parolazchk(%parolazza_risposta,%parolaz.giu) 
        %parolazza_c3 = $parolazchk(%parolazza_risposta,%parolaz.parola) 
        if (%parolazza_c1 == 2 && %parolazza_c3 == 1) { %parolaz.su = %parolazza_risposta | parolazmsg | return } 
        if (%parolazza_c2 == 1 && %parolazza_c3 == 2) { %parolaz.giu = %parolazza_risposta | parolazmsg | return } 
      }
      if (%parolazza_risposta == help) && (%parolazza_cont >= 15) {
        if ($2 == $null) { .msg %game_channel 13,2 PeR ChieÐeRe Aiµ†o ScRiVi 8 !help la-lettera 0 (4Il PµN†eGGiO ÐiMiNµiScE!!0)  }
        .set %letter $2
        .set %pos $pos(%parolaz.parola, %letter, 1)
        if (%pos != $null) { 
          alias while {
            var %i 1
            while (%i <= $len(%parolaz.parola)) {
              set %pos $pos(%parolaz.parola, %letter, %i)
              if (%pos != $null) { 
                set %parolazza_hint $left(%parolazza_hint, $calc(%pos - 1)) $+ %letter $+ $mid(%parolazza_hint, $calc(%pos + 1))
              }
              inc %i
            }       
          }
          .inc %cresci
          .set %parolazza_par.p2 $calc(%par.p - %cresci)
          .msg %game_channel 0,1 —[13 %manche1 0 ]— 0 Aiµ†o N° 11 %cresci 0( $+ 13 %parolazza_hint 0 $+ ) 0 Ora I PµN†i SoNo —]  13 %parolazza_par.p2 0 [— 
        }
        ;else { 
        ;.msg %game_channel 0,1 QµeS†a Le††eRa NoN C'è Nella PaRoLa! 
        ;}   
      }
      if (%parolazza_hint == %parolaz.parola) { 
        .msg %game_channel 0,1 —[ 13 $hang NoN Ci SoNo Piµ´ Le††eRe E NeSSuNo GµaÐaGna NµLLa 0 [—  
        .inc %manche1 
        parolaz.2 
        halt 
      } 
      if (%parolazza_risposta == range) { .msg %game_channel 8,2 Tra 4 $+ %parolaz.su $+ 8 e 4 $+ %parolaz.giu 8( $+ %parolazza_cont $+ ) 0,1 0 0 0 8,1 (!Tua-Risposta Per Rispondere) }
    }
  }
}


alias parolaz.2 {
  .unset %cresci
  .set %par.p $rand(15,50)
  .set %parolazza_par.p2 $calc(%par.p - %cresci)
  %parolaz.su = abaco 
  %parolaz.giu = zuzzurellone
  .set %parolaz.lettere a b c d e f g i l m n o p q r s t u v z
  .set %parolaz.lettera $gettok(%parolaz.lettere,$rand(1,$numtok(%parolaz.lettere,32)),32)
  .set %parolaz.parola $read($scriptdirdictionary\ $+ italiano. [ $+ [ %parolaz.lettera ] ] )
  .set %parolazza_hint $replace(%parolaz.parola ,b,-,c,-,d,-,f,-,g,-,h,-,j,-,k,-,l,-,m,-,n,-,p,-,q,-,r,-,s,-,t,-,u,•,v,-,w,-,x,-,y,-,z,-,a,•,e,•,i,•,o,•)
  .timer 1 2 msg %game_channel  0,1 0 0 0 0 0 0 0 0 0 0 0 13 —— 9 —» S†a†e ProN†i «— 13 —— 
  .timer 1 2 msg %game_channel  0,1 —[ 0 MaNcHe NµMeRo ] 13 %manche1 0 Si PaR†e Ða 13 $calc(%par.p - %cresci) 0 PµN†i 
  .timer 1 2 msg %game_channel  8,2 Tra 4,2 $+ %parolaz.su $+ 8,2 e 4,2 $+ %parolaz.giu 0,1 0 0 0 8,1 (!Tua-Risposta Per Rispondere)
  .unset %parolazza_cont
  .halt
}


alias parolaz.3 {
  .saddpunti
  .parolazza_ordina
}

alias parolazval { 
  %parolazza_v1 = 1 
  %parolazza_v2 = $len($$1) 
  while (%parolazza_v1 <= %parolazza_v2) { 
    %parolazza_va = $iif($mid($1,%parolazza_v1,1) == $null,0,$asc($mid($1,%parolazza_v1,1))) 
  if ((%parolazza_va >= 97 && %parolazza_va <= 122) || %parolazza_va == 39 || %parolazza_va == 0) { inc %parolazza_v1 } | else return 0 } | return 1 
}

alias parolazchk { 
  %parolazza_p1 = 1 
  %parolazza_t1 = $iif($len($$1) >= $len($$2), $len($$1),$len($$2)) 
  while (%parolazza_p1 <= %parolazza_t1) { 
    %parolazza_asc1 = $iif($mid($1,%parolazza_p1,1) == $null,0,$asc($mid($1,%parolazza_p1,1))) 
    %parolazza_asc2 = $iif($mid($2,%parolazza_p1,1) == $null,0,$asc($mid($2,%parolazza_p1,1))) 
    if (%parolazza_asc1 < %parolazza_asc2) return 1 
    if (%parolazza_asc1 > %parolazza_asc2) return 2 
    inc %parolazza_p1 
  } 
}


alias saddpunti {
  parolzz_search $nick
  if (%parolzz_trovato == 1) { write -l $+ $calc(%parolzz_i - 1) " $+ $scriptdirParolazScore.txt $+ " $nick $calc(%parolazza_par.p2 + %parolzz_score) }
  else { write " $+ $scriptdirParolazScore.txt $+ " $nick %parolazza_par.p2 | return }
  unset %parolzz_*
}




alias parolazza_ordina { 
  set %parolazza_nltxt $lines($scriptdir\ParolazScore.txt)
  set %parolazza_p 1
  while (%parolazza_p < %parolazza_nltxt) {
    set %parolazza_x 1
    while (%parolazza_x < %parolazza_nltxt) {
      set %parolazza_y $calc(%parolazza_x + 1 )
      set %parolazza_upper $read -l %parolazza_x $scriptdirParolazScore.txt
      set %parolazza_lower $read -l %parolazza_y $scriptdirParolazScore.txt
      set %parolazza_uppt  $gettok(%parolazza_upper,2,32)
      set %parolazza_lowpt $gettok(%parolazza_lower,2,32)
      if (%parolazza_uppt < %parolazza_lowpt) {
        write -l %parolazza_x " $+ $scriptdirParolazScore.txt $+ " %parolazza_lower
        write -l %parolazza_y " $+ $scriptdirParolazScore.txt $+ " %parolazza_upper
      }
      inc %parolazza_x
    } 
    inc %parolazza_p
  }
  .timerclass 1 3 parolazza_preclass
}


alias parolazza_preclass {
  set %timercounter 1
  .timerclass 7 2 parolazza_msgclass
}


alias parolazza_msgclass {
  if (%timercounter == 1) { msg %game_channel  0,1 —] 13 La ClaSSiƒiCa 0 [— 0 0 0 0  }
  if (%timercounter == 2) { 
    set %parolazza_1line $read -l1 $scriptdirParolazScore.txt
    set %parolazza_1nick $gettok(%parolazza_1line,1,32)
    set %parolazza_1pts  $gettok(%parolazza_1line,2,32)
    if (%parolazza_1pts == $null) { set %parolazza_1pts - }
    msg %game_channel  0,1 —] 00 1° PoS†o  0 —[9 %parolazza_1pts 0[— 0 %parolazza_1nick  
  }
  if (%timercounter == 3) {
    set %parolazza_2line $read -l2 $scriptdirParolazScore.txt
    set %parolazza_2nick $gettok(%parolazza_2line,1,32)
    set %parolazza_2pts  $gettok(%parolazza_2line,2,32)
    if (%parolazza_2pts == $null) { set %parolazza_2pts - }
    msg %game_channel  0,1 —] 00 2° PoS†o  0 —[9 %parolazza_2pts 0[— 0 %parolazza_2nick 
  }
  if (%timercounter == 4) {
    set %parolazza_3line $read -l3 $scriptdirParolazScore.txt
    set %parolazza_3nick $gettok(%parolazza_3line,1,32)
    set %parolazza_3pts  $gettok(%parolazza_3line,2,32)
    if (%parolazza_3pts == $null) { set %parolazza_3pts - }
    msg %game_channel  0,1 —] 00 3° PoS†o  0 —[9 %parolazza_3pts 0[— 0 %parolazza_3nick 
  }
  if (%timercounter == 5) {
    set %parolazza_4line $read -l4 $scriptdirParolazScore.txt
    set %parolazza_4nick $gettok(%parolazza_4line,1,32)
    set %parolazza_4pts  $gettok(%parolazza_4line,2,32)
    if (%parolazza_4pts == $null) { set %parolazza_4pts - }
    msg %game_channel  0,1 —] 00 4° PoS†o  0 —[9 %parolazza_4pts 0[— 0 %parolazza_4nick 
  }
  if (%timercounter == 6) {
    set %parolazza_5line $read -l5 $scriptdirParolazScore.txt
    set %parolazza_5nick $gettok(%parolazza_5line,1,32)
    set %parolazza_5pts  $gettok(%parolazza_5line,2,32)
    if (%parolazza_5pts == $null) { set %parolazza_5pts - }
    msg %game_channel  0,1 —] 00 5° PoS†o  0 —[9 %parolazza_5pts 0[— 0 %parolazza_5nick 
  }
  if (%timercounter == 7) {
    .msg %game_channel 13,2 (¯`·._.·»» 0 •°• 11«9P13a11R7o4L8a13Z9Z7a4™11» 0 •°• 6 ßy 7 MôNCheRR¥77 8 TerMiNa†o Sµ13 %game_channel 9(¯`·._.·»» 
    .msg %game_channel 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 0,1 • 15(¯`·.11GraZie A Tµ††i!!15.·´¯) 0 • 
    .unset %cresci
    .unset %parolaz.*
    .unset %manche1
    .unset %par.p
    .unset %parolaz.parola
    .unset %parolazza_*
    .set %parolaz.stato 0
    halt
  }
  inc %timercounter
}