Vite-game

Description

Ceci est un jeu pour mIRC. Le but est de réécrire le mot le plus vite possible et SANS ESPACES. J'ai prévu le système pour qu'il soit possible d'administrer le jeu même si mIRC est en arriêre plan. A ma connaissance je n'ai trouvé aucun bug. Si vous en trovuez un merci de me le faire savoir.

Source / Exemple :


ON 1:TEXT:!vite:#:{ 
  if ( %rapid == $null ) { /msg $chan Le jeux de la rapidité est lancée! Il y a $lines(mot.txt) mots dans la base. | /msg $chan Le but est de dire le plus vite possible le mot que j'écrie (ET SANS ESPACE). Les majuscules comptent! 14Remettre son scores à 0: !reset -14 Revoir les règles: !règle -14 Revoir le mot à retaper: !repete | set %chan $chan | /set %rapid 1 | /game }
  elseif ( $nick isop $chan ) && ( %rapid != $null ) { /msg $chan Le jeux de la rapidité est terminé. | unset %chan | unset %rapid | unset %mot }
}
ON 1:TEXT:!hlp.vite:#:{ 
  if ( $nick isop $chan ) /notice $nick Liste des commandes OP: !vite (démarre/arrête le jeu), !reset (remet votre score à 0), !règle, !repete (Répéter le dernier mot à trouver), !score, !resetall (Effacer TOUS les scores), !add mot (Ajouter UN mot dans ma DB).
  else /notice $nick Liste des commandes: !vite (lancer le jeu), !règle (revoir les règles), !repete (répéter le mot à retrouver), !reset (remettre son score à zéro), !score.
}
alias game {
  /set %mot $read(mot.txt)
  /msg %chan 4[12 Attention 4]12 Tapez le plus rapidement possible le mot14:4 %mot 
}
ON 1:TEXT:*:%chan:{
  if ( %rapid != $null) && ( $strip($1) === $replace(%mot,$chr(32),$chr(256)) ) {
    if ( $len($1) > 3 ) { /set %pt 1 }
    if ( $len($1) > 5 ) { /set %pt 2 }
    if ( $len($1) > 7 ) { /set %pt 3 }
    if ( $len($1) > 9 ) { /set %pt 4 }
    if ( $len($1) > 11 ) { /set %pt 5 }
    if ( $readini(scorellix.ini,scores,$nick) == $null ) { writeini scorellix.ini scores $nick %pt }
    else writeini scorellix.ini scores $nick $calc($readini(scorellix.ini,scores,$nick) + %pt)
    /msg %chan 4Bien joué12 $nick $+ 14!! 3+ $+ %pt point 4ce qui te fait12 $readini(scorellix.ini,scores,$nick) 4points14.
    /game
  }
  if ( %rapid != $null) && ( $1 == !score ) {
    if ( $readini(scorellix.ini,scores,$nick) == $null ) { /notice $nick Tu n'as pas encore gagné de point }
    else { /notice $nick Tu as $readini(scorellix.ini,scores,$nick) points. }
  }
  if ( %rapid != $null) && ( $1 == !reset ) { if ( $readini(scorellix.ini,scores,$nick) != $null ) { /remini scorellix.ini scores $nick | /msg $chan $nick recommence à 0. } }
  if ( %rapid != $null) && ( $1 == !règle ) { /notice $nick Le but est de dire le plus vite possible le mot que j'écrie (ET SANS ESPACE). Les majuscules comptent! 14Remettre son scores à 0: !reset -14 Revoir les règles: !règle -14 Revoir le mot à retaper: !repete }
  if ( %rapid != $null) && ( $1 == !repete ) { /notice $nick Le dernier mot à retaper rapidement est %mot  }
  if ( %rapid != $null) && ( $nick isop $chan ) && ( $1 == !resetall ) { /notice $nick Vous avez 30 secondes pour confirmer la remise à zéro de tous les scores en tapant !yes | set %confirm 1 | /confirm }
  if ( %rapid != $null) && ( $nick isop $chan ) && ( %confirm != $null ) && ( $1 == !yes ) { /msg $chan 12Tous les scores ont étaient remis à zéro. | /remove scorellix.ini | /unset %confirm | /timerCONFIRM off }
  if ( %rapid != $null) && ( $nick isop $chan ) && ( $1 == !add ) && ( $2 == $null ) { /notice $nick Syntax: !add mot }
  if ( %rapid != $null) && ( $nick isop $chan ) && ( $1 == !add ) && ( $2 != $null ) { /set %mot.add $2 | /notice $nick Dans 2 minutes le mot sera ajouté dans la base de donnée. Vous avez donc 2 minutes pour annuler votre ajout à l'aide de la commande !annul | set %mconfirm 1 | set %mot.nick $nick | mot_add }
  if ( %rapid != $null) && ( $nick isop $chan ) && ( %mconfirm != $null ) && ( $1 == !annul ) { timerMCONFIRM off | /notice $nick Ajout du mot %mot.add annulé. | unset %mot.add | unset %mconfirm }
}
alias confirm { /timerCONFIRM 1 30 unset %confirm }
alias _confirm { /timerMCONFIRM 1 120 validate }
alias validate { write mot.txt %mot.aad | notice %mot.nick  $+ %mot.add ajouté dans la DB. | unset %mot.add | unset %mot.aad | unset %mot.nick | unset %mconfirm }
alias mot_add {
  var %i 1
  unset %mot.aad
  :suivant
  if ( %i > $len(%mot.add) ) goto fin
  else {
    set %mot.aad %mot.aad $mid(%mot.add,%i,1)
    inc %i
    goto suivant
  }
  :fin
  _confirm
}

Conclusion :


Pour la liste des commandes admin, opez-vous sur le canal et tapez !hlp.vite. Les users normaux peuvent taper !hlp.vite mais ne verrons pas les commandes admin.
Bon jeu :)

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (cs_o_be_one)