Jump to content

Archived

This topic is now archived and is closed to further replies.

chain

Vote.tcl

Recommended Posts

  • Administrators

/! Attention /! : Ce tcl est uniquement compatible sur eggdrop (version 1.6.18 conseiller).

 

 

Se tcl permet a nimporte quelle personne d'un salon ou est présent le bot de lancer un vote auquel ont peut répondre uniquement par oui ou par non.

 

Sachez que je n'ai pas fait ce tcl ... pour l'utiliter même de celui ci, mais pour montrer aux intéréssés l'utilisation de certaines fonctions.

 

Il faut savoir sur cette source, pour les curieux qui voudront la modifier, qu'ils n'auront point de difficulté.

En effet, le tcl est codé de la sorte que vous pouvez facilement le modifier ...

Vous pouvez aussi rajouter des conditions facilement pour rendre le vote accessible uniquement aux opérateurs [isop $nick $chan].

 

Il faut savoir aussi qu'il existe certains bug, comme tout.

Le premier est qu'une personne qui change de pseudo pourra voter autant de fois qu'elle le désire (facilement corrigeable en gardant en mémoire uniquement le host).

Le deuxieme se situe sur la commande !newvote.

En effet, si la commande est mal tapé (exemple : !newvotes Voilaletrucanepasfaire La_quesstion (Voilaletrucanepasfaire doit être un nombre), au lieu de !newvotes secondes La_qyestuib, le bot fonctionnera très mal.

La solution ?

set machin [string index $var 0]

if {![string match *0* $machin] && ![string match *1* $machin] ...} { ... }

Bref, un peut compliquer si ont s'embarque la dedans.

La meilleure chose a faire selon moi est de laisser l'access au @ ou % ou a une personne uniquement ( a vous de voir ).

 

 

 

############################

##                        ##

##Vote.tcl v1.0 by DaV34  ##

##                        ##

############################

 

#################

# Début du Code #

#################

 

#########

# Binds #

#########

 

bind pub - !oui vote_oui

bind pub - !non vote_non

bind pub - !newvote vote_news

 

###########

# Newvote #

###########

 

proc vote_news {nick host hand chan arg} {

	global botnick vote

	# Définition du temps du vote et de la question du vote

	set votetime [lindex $arg 0]

	set votequestion [lrange $arg 1 end]

	# Vérification de l'existence de valeur dans les variables

	if {$votetime=="" || $votequestion==""} {

		putquick "NOTICE $nick :Syntaxe : !newvote  "

		# return 0 

Link to comment
Share on other sites



×
×
  • Create New...