Exar-Kun Modérateur
Nombre de messages : 194 Date d'inscription : 09/01/2005
| Sujet: [source] Auto-channel en dialog Dim 8 Mai - 14:43 | |
| - Code:
-
dialog autojoin { title "Bienvenue sur Mysteryscript Auto-join" size -1 -1 170 104 option dbu text "Liste des serveurs :", 1, 6 8 49 8 list 2, 5 17 71 54, size vsbar button "Ajouter", 3, 8 72 30 12 text "Liste des channels :", 4, 86 8 49 8 list 5, 85 17 71 54, size vsbar box "Serveurs", 6, 2 1 77 86 box "Channels", 7, 82 1 77 86 button "Effacer", 8, 42 72 30 12 button "Ajouter", 9, 88 72 30 12 button "Effacer", 10, 122 72 30 12 button "Fermer", 11, 78 90 37 12, cancel button "Aide", 12, 117 90 37 12 check "Activer l'autojoin", 13, 12 90 50 12 } dialog add.serv { title "Ajouter un serveur" size -1 -1 89 36 option dbu text "Adresse du serveur :", 1, 5 6 25 8 edit "", 2, 31 5 52 10, autohs button "Ajouter", 3, 26 19 37 12, ok cancel } dialog add.chan { title "Ajouter un channel" size -1 -1 89 36 option dbu text "Channel :", 1, 5 6 25 8 edit "", 2, 31 5 52 10, autohs button "Ajouter", 3, 26 19 37 12, ok cancel } dialog help.autojoin { title "Auto Join By JoKaiR ~ Aide" size -1 -1 130 69 option dbu text "Cette add-on vous permettra de joindre les channels que vous souhaitez, dans le(s) serveurs que vous aurez spécifié.", 1, 3 3 125 22 text "Pour connaître le network tapez //echo -a $network dans le serveur souhaité.", 2, 3 27 125 16 text "Bon t'chat !", 3, 3 45 31 8 button "Fermer", 4, 44 54 37 12, cancel } on *:DIALOG:*:*:*:{ if ($dname == autojoin) { if ($devent == init) { refresh.list.serv if (%etat.autojoin == on) { did -c autojoin 13 } } elseif ($devent == sclick) { if ($did == 2) { set %actuserv $did(autojoin,2).seltext | lister.channels } elseif ($did == 3) { dialog $+(-,$iif($dialog(add.serv),v,m)) add.serv add.serv } elseif ($did == 8 && $did(autojoin,2).seltext) { hdel autojoin $ifmatch | refresh.list.serv } elseif ($did == 9) { dialog $+(-,$iif($dialog(add.chan),v,m)) add.chan add.chan } elseif ($did == 10 && $did(autojoin,5).sel) { hadd autojoin %actuserv $deltok($hget(autojoin,%actuserv),$ifmatch,32) | refresh.list.serv } elseif ($did == 12) { dialog $+(-,$iif($dialog(help.autojoin),v,m)) help.autojoin help.autojoin } elseif ($did == 13) { set %etat.autojoin $iif($did(autojoin,13).state,on,off) } } } elseif ($dname == add.serv && $devent == sclick && $did == 3 && $did(add.serv,2)) { if (!$hfind(autojoin,$ifmatch)) { hadd autojoin $did(add.serv,2) | hsave autojoin autojoin | refresh.list.serv } else { echo -a [AutoJoin] Ce serveur est déjà dans la liste } } elseif ($dname == add.chan && $devent == sclick && $did == 3 && $did(add.chan,2)) { hadd autojoin %actuserv $addtok($hget(autojoin,%actuserv),$ifmatch,32) hsave autojoin autojoin refresh.list.serv } } on *:START:{ hmake autojoin $iif($exists(autojoin),hload,hsave) autojoin autojoin } on *:CONNECT:{ if (%etat.autojoin == on && $hget(autojoin,$network)) { var %a 1 while ($gettok($hget(autojoin,$network),%a,32)) { join $ifmatch | inc %a } } } on *:LOAD:{ echo -a [AutoJoin] v1.0 By JoKaiR Loaded ! Utilisation : /autojoin set %etat.autojoin on }
alias refresh.list.serv { did -r autojoin 2,5 var %a 1 while ($hget(autojoin,%a).item) { did -a autojoin 2 $ifmatch | inc %a } } alias lister.channels { did -r autojoin 5 var %a 1 while ($gettok($hget(autojoin,%actuserv),%a,32)) { did -a autojoin 5 $ifmatch | inc %a } } alias autojoin { dialog $+(-,$iif($dialog(autojoin),v,m)) autojoin autojoin }
Voila donc je sucite l'aide de Litteul pour savoir si c'est correct ^^ | |
|
LitteulBlack Team
Nombre de messages : 253 Date d'inscription : 22/01/2005
| Sujet: Re: [source] Auto-channel en dialog Dim 8 Mai - 20:26 | |
| Ok Je regarde sa Je vais essayé chaque commande de ta remotte Donc je constate que tu a créer une hash table en général je symbolise comme ceci pour que se soit plus clair, dis moi si part rapport a ton script ce n'est pas le cas ? Je profit alors pour vous faire un petit cours sur les Hash Tables. Attention je n'ais que 3 jours d'etude dessus. Je vais voir pour vous fournir toutes les connaissance que j'ai dessus. I. Modélisation de la Hash TableVoici une facons de modélisé la table - Code:
-
** Hash Table Autojoin **
----------------------------- Autojoin | Serveur | Channel | ----------------------------- 1 | ______ | _______ |
2 | ______ | _______ | : : : : : : x | ______ | _______ |
II. Création de la Hash TablePour créer la Hash Table - Code:
-
/hmake <nom> <N> -> ex.: /hmake autojoin 10 Ceci a créé une hash table capable d'emmagasiner 100 d'items. Si l'item ajouté existe, il remplace la vieille version. i.e: Item = N * 10 | L'option -s fait qu'un message du résultat s'affichera. III. Ajouter/modifier un item dans la Hash TableAjouter ou modifier : - Code:
-
/hadd <nom> <item> <valeur> -> ex.: /hadd autojoin serveur #pour-vous-aider Ceci a ajouté l'item "Serveur" avec la valeur "#pour-vous-aider". L'option -m fait que /hadd crée la table si elle n'existe pas déjà. L'option -uN efface l'item après N secondes. L'option -b indique que vous ajoutez un item &binvar à la table. L'option -c coupe la &binvar à la première valeur nulle et la traite comme du texte simple. L'option -z fait décroître l'item d'un par seconde jusqu'à zéro, puis l'efface. -- Fin Aide Hash table 1- Ajouté un serveur 1. /autojoin 2. Click "Ajouté" 3. Ouverture dialog 4. Ecriture d'un serveur 5. Click "Ajouté" Alors une première erreur présente - Code:
-
• Commande • /hsave: paramètres non valides (ligne 61, script.lsi) - Code:
-
** Ligne 61 **
if (!$hfind(autojoin,$ifmatch)) { hadd autojoin $did(add.serv,2) | hsave autojoin autojoin | refresh.list.serv }
** Alias autojoin
alias autojoin { dialog $+(-,$iif($dialog(autojoin),v,m)) autojoin autojoin }
** Cause de l'erreur **
on *:START:{ hmake autojoin $iif($exists(autojoin),hload,hsave) autojoin autojoin }
Je vois que tu n'a pas référencé la taille de la hash table. Je te conseil de mettre sa a la place - Code:
-
on *:START:{ hmake autojoin 10 $iif($exists(autojoin),hload,hsave) autojoin autojoin }
Bon dsl suis naze se soir j'essaye de vous terminé sa cette semaine ^^ |LitteulBlack| | |
|
Exar-Kun Modérateur
Nombre de messages : 194 Date d'inscription : 09/01/2005
| Sujet: Re: [source] Auto-channel en dialog Mer 11 Mai - 21:28 | |
| bon sa avance ^^ les join se mettent bien dans la hash table mais rien ne se passe .... en fait nan sa avance pas sa Stagne ^^ pfffff ( | |
|
LitteulBlack Team
Nombre de messages : 253 Date d'inscription : 22/01/2005
| Sujet: Re: [source] Auto-channel en dialog Jeu 12 Mai - 22:29 | |
| Dsl mais la j'ai pas le temps de revoir ton code je vais voir ce que je peut faire
/me sais qu'il n'est pas rapide mais car il est trop pris lol
|LitteulBlack| | |
|
LitteulBlack Team
Nombre de messages : 253 Date d'inscription : 22/01/2005
| Sujet: Re: [source] Auto-channel en dialog Jeu 19 Mai - 23:55 | |
| Je me posais la question de savoir ci sa c'est le meme sujet ce que je veut dire si tu veut utilisé cette remotte ici ou tu veut que je regarde le probleme de cette remotte ? |LitteulBlack| | |
|
Exar-Kun Modérateur
Nombre de messages : 194 Date d'inscription : 09/01/2005
| Sujet: Re: [source] Auto-channel en dialog Ven 20 Mai - 9:59 | |
| Nan litteul c'est bon abandonne pour celle ci je vais faire avec l'autre ^^ | |
|
LitteulBlack Team
Nombre de messages : 253 Date d'inscription : 22/01/2005
| Sujet: Re: [source] Auto-channel en dialog Dim 22 Mai - 21:40 | |
| Ok sa marche mais si je comprend bien ca doit faire la meme chose mais c'est quoi qui change la
? ? ?
|LitteulBlack| | |
|
Contenu sponsorisé
| Sujet: Re: [source] Auto-channel en dialog | |
| |
|