Communauté Eggdrop

Version complète : Probleme sur une !commande
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.

heretoc

Bonjour,
Voila j'ai un probleme sur une commande qui permet de changer le topic, jusque la tout est bon mais malheuresement quand je veut changer le topic cela coince ...
En effet il prend pas le topic que je lui demande en entier et oublie les deux premiers mots ....

Aparament cela coince au niveau de la variable topic :
set topic [lrange $arg 2 end]

J'ai essayer essayer cela "set topic [lrange [split $arg] 4 end]" mais cela sans succé...

Voici le code tcl:
tcl
if {[string equal -nocase $cmd "!chgtopic"]} {
	set cible [lindex $arg 1]    
	set topic [lrange $arg 2 end]
	if {[verify:host $user] < "8"} {putdcc $::clams(idx) ":$::clams(pseudo) NOTICE $user : Erreur : Accès insuffisant !"; return 0}
	if {$cible eq ""} {putdcc $::clams(idx) ":$::clams(pseudo) NOTICE $user :SyntaXe : !chgtopic <#salon> <topic>"; return 0}
	if {$topic eq ""} {set topic "Salon officiel de $::clams(site)"}
	putdcc $::clams(idx) ":$::clams(pseudo) TOPIC $cible $topic";
	putdcc $::clams(idx) ":$::clams(pseudo) NOTICE $user :Topic de $cible modifier.";
	}



Divers :
set cible [lindex $arg 1] est le salon que l'ont veut changer sont topic.
$::clams(site) est une variable predefini dans un fichier de configuration qui permet d'affiche le site du tchat.


Merci à la personne qui poura m'aider.
Il faut savoir ce qu'il y a dans arg, puisque c'est la qu'est fait le "tri"
Si la variable $arg ne contiens que les arguments sans la commande, il ne faut pas oublier que le premier argument commence avec l'index 0 et pas 1
Et euh sinon, je vois pas grand chose :/
tcl
putdcc $::clams(idx) ":$::clams(pseudo) TOPIC $cible $topic";



Ça devrait plutôt être :
tcl
set timestamp [clock seconds]
putdcc $::clams(idx) ":$::clams(pseudo) TOPIC $cible $timestamp :$topic";


heretoc

Problème résolu aparament il manquer juste le ":" avant $topic