Accueil > > > SIMPLE QUIZZ
SIMPLE QUIZZ
Information sur la source
Description
Systême de quizz simpliste. Pour l'utiliser vous devez créer un txt nommé questions.txt avec les questions sous la forme: Question ? Réponse Exemple: Combient vaut 2 + 2 ? 4 Car le script utilise la caractère "?" comme repère. Néanmoins dans le zip j'ai ajouté la database de questions du célèbre Wquizz modifié pour qu'elle marche avec ce quizz.
Source
- ;Systême de quizz simple par Kentix
-
- ;Infos (si vous souhaitez modifier par la suite...)
- ;La variable %quizzchan contient le nom du salon
- ;La variable %questionsdir contient le chemin du fichier texte questions.txt
- ;La hash table utilisé pour les scores est quizzscores
-
- ;Commandes opérateurs
- ;!quizz active/désactive le quizz
- ;!quizz.reset Reset les scores
-
- ;Commandes pour tout le monde
- ;!premier affiche le meilleur score
- ;!myscore affiche son score
-
-
- ;Lors du chargement du script on cré la var %quizzchan qui contiendra donc le nom du salon où le quizz est exécuté + On initialise la hash table quizzscores
- on *:LOAD:{
- set %quizzchan $input(Insérez le nom du salon où le quizz se déroulera:,oe,Nom du salon de quizz,#exemple)
- set %questionsdir $sfile(questions.txt,La database de questions)
- hmake -s quizzscores 100
- }
-
- ;Lors du lancement de mirc.exe on intialise à chaque fois la hash table quizzscores
- on *:START:{
- hmake -s quizzscores 100
- }
- ;Récupération d'une question au hasard, on prend les mots avant le "?" d'une question et on stocke la question ainsi traitée dans %questionok
- ;On récupère ainsi aussi la réponse qui correspond à la question (sur la même ligne) qu'on stocke dans %reponse
- alias quizzget {
- unset %reponse
- unset %questionok
- set %question $read(%questionsdir)
- var %b = 1, %a = $findtok(%question,?,1,32)
- while (%b <= %a) {
- var %c = $gettok(%question, %b, 32)
- set %questionok $addtok(%questionok, %c, 32)
- inc %b
- }
- inc %a
- var %d = $numtok(%question, 32)
- while (%a <= %d) {
- var %c = $gettok(%question, %a, 32)
- set %reponse $addtok(%reponse, %c, 32)
- inc %a
- }
- }
-
- ;Dis une question récupéré avec quizzget sur le salon contenu dans la var %quizzchan
- alias sayquestion {
- if (%winner) {
- unset %winner
- quizzget
- msg %quizzchan %questionok (Vous avez 15 secondes pour trouver la bonne réponse)
- }
- else {
- msg %quizzchan Personne n'a trouvé ! La réponse était: %reponse
- quizzget
- .timer 1 2 msg %quizzchan %questionok (Vous avez 15 secondes pour trouver la bonne réponse)
- }
- }
-
- ;départ du quizz si le $nick est opérateur du salon
- on @*:TEXT:!quizz:%quizzchan:{
- if (%quizzon) {
- quizzlepremier
- timerQUIZZ off
- unset %quizzon
- msg $chan Le quizz est désormais arrêté, le premier est actuellement %quizzlepremier avec %quizzlepremierstats points.
- }
- else {
- set %winner 1
- set %quizzon 1
- msg $chan Quizz lancé première question dans 15 secondes préparez-vous...
- timerQUIZZ 0 15 sayquestion
- }
- }
-
-
-
- ;réset des scores si $nick op
- on @*:TEXT:!quizz.reset:%quizzchan:{
- hdel -w quizzscores *
- msg $chan Tous les scores ont été remis à 0.
- }
-
-
- ;affiche son score
- on *:text:!myscore:%quizzchan:msg $chan Tu as $iif($hget(quizzscores,$nick),$v1 points,0 point)
-
- ;on extrait le premier des scores (hash quizzscores)
- alias quizzlepremier {
- unset %quizzlepremier %quizzlepremierstats
- if ($hget(quizzscores,0).item) {
- var %h = quizzscores, %max = 0, %i = 1
- while ($hget(%h,%i).item) {
- var %hi = $v1
- if ($hget(%h,%hi) > %max) {
- var %max = $v1, %nick = %hi
- }
- inc %i
- }
- set %quizzlepremier %nick
- set %quizzlepremierstats %max
- }
- else {
- set %quizzlepremier personne
- set %quizzlepremierstats pas de
- }
- }
-
- ;afficher le premier des scores grace à quizzlepremier
- on *:text:!premier:%quizzchan:{
- quizzlepremier
- msg $chan Le premier est actuellement %quizzlepremier avec %quizzlepremierstats points.
- }
- ;détection des réponses si quizz activé
- on *:TEXT:*:%quizzchan:{
- if (%quizzon) {
- if ($strip($1-,burc) == %reponse) {
- hinc quizzscores $nick
- set %winner 1
- msg $chan Félicitations $nick ( $+ $hget(quizzscores, $nick) points) tu as trouvé la bonne réponse, qui était: %reponse (On continue...)
- }
- }
- }
-
- ;détection des changements de pseudo si le pseudo était un joueur alors on update son pseudo dans les quizzscores
- on *:NICK:{
- if ($hget(quizzscores, $nick)) {
- hadd quizzscores $newnick $hget(quizzscores, $nick)
- hdel quizzscores $nick
- }
- }
;Systême de quizz simple par Kentix
;Infos (si vous souhaitez modifier par la suite...)
;La variable %quizzchan contient le nom du salon
;La variable %questionsdir contient le chemin du fichier texte questions.txt
;La hash table utilisé pour les scores est quizzscores
;Commandes opérateurs
;!quizz active/désactive le quizz
;!quizz.reset Reset les scores
;Commandes pour tout le monde
;!premier affiche le meilleur score
;!myscore affiche son score
;Lors du chargement du script on cré la var %quizzchan qui contiendra donc le nom du salon où le quizz est exécuté + On initialise la hash table quizzscores
on *:LOAD:{
set %quizzchan $input(Insérez le nom du salon où le quizz se déroulera:,oe,Nom du salon de quizz,#exemple)
set %questionsdir $sfile(questions.txt,La database de questions)
hmake -s quizzscores 100
}
;Lors du lancement de mirc.exe on intialise à chaque fois la hash table quizzscores
on *:START:{
hmake -s quizzscores 100
}
;Récupération d'une question au hasard, on prend les mots avant le "?" d'une question et on stocke la question ainsi traitée dans %questionok
;On récupère ainsi aussi la réponse qui correspond à la question (sur la même ligne) qu'on stocke dans %reponse
alias quizzget {
unset %reponse
unset %questionok
set %question $read(%questionsdir)
var %b = 1, %a = $findtok(%question,?,1,32)
while (%b <= %a) {
var %c = $gettok(%question, %b, 32)
set %questionok $addtok(%questionok, %c, 32)
inc %b
}
inc %a
var %d = $numtok(%question, 32)
while (%a <= %d) {
var %c = $gettok(%question, %a, 32)
set %reponse $addtok(%reponse, %c, 32)
inc %a
}
}
;Dis une question récupéré avec quizzget sur le salon contenu dans la var %quizzchan
alias sayquestion {
if (%winner) {
unset %winner
quizzget
msg %quizzchan %questionok (Vous avez 15 secondes pour trouver la bonne réponse)
}
else {
msg %quizzchan Personne n'a trouvé ! La réponse était: %reponse
quizzget
.timer 1 2 msg %quizzchan %questionok (Vous avez 15 secondes pour trouver la bonne réponse)
}
}
;départ du quizz si le $nick est opérateur du salon
on @*:TEXT:!quizz:%quizzchan:{
if (%quizzon) {
quizzlepremier
timerQUIZZ off
unset %quizzon
msg $chan Le quizz est désormais arrêté, le premier est actuellement %quizzlepremier avec %quizzlepremierstats points.
}
else {
set %winner 1
set %quizzon 1
msg $chan Quizz lancé première question dans 15 secondes préparez-vous...
timerQUIZZ 0 15 sayquestion
}
}
;réset des scores si $nick op
on @*:TEXT:!quizz.reset:%quizzchan:{
hdel -w quizzscores *
msg $chan Tous les scores ont été remis à 0.
}
;affiche son score
on *:text:!myscore:%quizzchan:msg $chan Tu as $iif($hget(quizzscores,$nick),$v1 points,0 point)
;on extrait le premier des scores (hash quizzscores)
alias quizzlepremier {
unset %quizzlepremier %quizzlepremierstats
if ($hget(quizzscores,0).item) {
var %h = quizzscores, %max = 0, %i = 1
while ($hget(%h,%i).item) {
var %hi = $v1
if ($hget(%h,%hi) > %max) {
var %max = $v1, %nick = %hi
}
inc %i
}
set %quizzlepremier %nick
set %quizzlepremierstats %max
}
else {
set %quizzlepremier personne
set %quizzlepremierstats pas de
}
}
;afficher le premier des scores grace à quizzlepremier
on *:text:!premier:%quizzchan:{
quizzlepremier
msg $chan Le premier est actuellement %quizzlepremier avec %quizzlepremierstats points.
}
;détection des réponses si quizz activé
on *:TEXT:*:%quizzchan:{
if (%quizzon) {
if ($strip($1-,burc) == %reponse) {
hinc quizzscores $nick
set %winner 1
msg $chan Félicitations $nick ( $+ $hget(quizzscores, $nick) points) tu as trouvé la bonne réponse, qui était: %reponse (On continue...)
}
}
}
;détection des changements de pseudo si le pseudo était un joueur alors on update son pseudo dans les quizzscores
on *:NICK:{
if ($hget(quizzscores, $nick)) {
hadd quizzscores $newnick $hget(quizzscores, $nick)
hdel quizzscores $nick
}
}
Historique
- 26 janvier 2008 15:26:38 :
- Infos apportés en plus
- 27 janvier 2008 14:41:21 :
- Optimisation du code + ajout database de questions
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Hebergeur De Bot mIRC [ par Corween ]
Bonsoir :)C'est encore moi, j'avais posé une question, qui se rapprochaiy beaucoup à celle que je vais poser, mais étant nouvea usur le forum, je ne s
bot ou addon badchan [ par HAAGEN ]
Bonjour je voudrais savoir si il existe un addon badchan a rajouté a mon cservice ou un bot en mirc et non eggdrop ' je m'explique le robot fait un wh
Problème de lag en mIRC [ par Lorya51100 ]
Bonjour à tous :)Voici mon second post dans ce fofo car j'ai un nouveau soucis : le lag !En fait, je réalise un bot d'animation en mIRC, donc, quand j
Shell Pour mIRC [ par Corween ]
Vous aurie pas une astuce pour que le bot fonctionne même sur un BNC svp ?Et aussi, auriez vous une adresse de shell hébergent les bot's mIRC svp ?Mer
Code Pour Bot /mirc en link sur 2 serveurs 2Salons Intersalon !!! HelP !!! [ par ronehp ]
Voila Bonjourje me rapelle d'avoie eu ici un addons ici , pour un link entre 2 serveursje ne retrouve plus ce c
nouveau quizz pour mirc [ par FiLou_47 ]
je voudrais s avoir sy il y a un nouveau quizz pour mirc merci
Dcc Chat pour bot mIRC [ par XavSniper ]
Bonjour tout le monde.J'essai de faire un système de DCC Chat pour bot mIRC, mais comme vous vous en seriez douté, celà ne marche pas, ce qui explique
serveur pour bot mIRC [ par JaMyGG ]
Bonjour a tous !Voila ce que je chercher est simple mais très dificil a trouver, je m'explique, je chercher un serveur pour hebrger mon bot mIRC.Merci
recherche addon pour faire parler un bot cservice [ par dj_balboa ]
bonjourvoila je recherche une addon pour mon bot cservice pour le faire parler mais je ne trouve pas pourriez vous m'aidez ou me dire ou puis je trouv
Cherche dévelloppeur pour un script de Quizz en tcl ! [ par Wolverine57 ]
Bonjour,Je suis actuellement à la tête d'un site sur les comics marvel (Marvel-World.com) et nous disposons d'un chat IRC avec un bot de quizz (eggdr
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : ON RAWMODERE : ON RAWMODE par WorldDMT
Cliquez pour lire la suite par WorldDMT AVERTISSMENT ET KIKKAVERTISSMENT ET KIKK par mouhcine951990
Cliquez pour lire la suite par mouhcine951990
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|