begin process at 2012 02 05 16:47:12
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

AddOns

 > AUTO JOIN

AUTO JOIN


 Information sur la source

Note :
5 / 10 - par 5 personnes
5,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :AddOns Niveau :Initié Date de création :24/05/2005 Vu :3 947

Auteur : Damien520

Ecrire un message privé
Commentaire sur cette source (21)
Ajouter un commentaire et/ou une note

 Description

Comme le dit le titre c'est un auto join!

Source

  • dialog autojoin {
  • title "¤¤ Auto-Join ¤¤"
  • size -1 -1 170 261
  • button "Enregistrer", 1, 7 210 155 24, ok
  • box "Option / Entrer un channel", 2, 2 120 166 138
  • list 3, 8 17 155 100
  • edit "", 4, 8 135 154 22, autohs
  • button "&Ajouter", 5, 7 160 74 24
  • button "&Modifier", 6, 87 160 74 24
  • button "&Supprimer", 7, 7 185 74 24
  • button "&Joindre tout", 8, 87 185 74 24
  • check "Activer / Désactiver", 10, 9 235 120 21
  • box "Salons", 11, 2 2 166 117
  • }
  • on *:dialog:autojoin:init:*:{
  • did -b autojoin 5,6,7
  • if ($group(#autojoin) == ON) { did -c autojoin 10 }
  • if (%autojoin.delai !== $null) { did -a autojoin 13 %autojoin.delai }
  • autojoin.update
  • }
  • on *:dialog:autojoin:edit:*:{
  • if ($did(4) == $null) { did -b autojoin 5,6 }
  • else { did -e autojoin 5,6 }
  • if ($did(3).sel == $null) { did -b autojoin 6 }
  • else { did -e autojoin 6 }
  • if ($left($did(4),1) !== $chr(35)) { var %autojoin.edit = $chr(35) $+ $did(4) }
  • else { var %autojoin.edit = $did(4) }
  • if ($findtok(%autojoin.canaux,%autojoin.edit,0,44) == 1) { did -b autojoin 5,6 }
  • if ($did == 13) {
  • if ($did(13) !isnum) { did -r autojoin 13 | unset %autojoin.delai }
  • else { set %autojoin.delai $did(13) }
  • } }
  • on *:dialog:autojoin:sclick:*:{
  • if ($did == 5) {
  • if ($left($did(4),1) !== $chr(35)) { var %autojoin.ajout = $chr(35) $+ $did(4) }
  • else { var %autojoin.ajout = $did(4) }
  • set %autojoin.canaux $sorttok($addtok(%autojoin.canaux,%autojoin.ajout,44),44)
  • autojoin.update
  • }
  • elseif ($did == 6) {
  • if ($left($did(autojoin,4),1) !== $chr(35)) { var %autojoin.modif = $chr(35) $+ $did(4) }
  • else { var %autojoin.modif = $did(4) }
  • set %autojoin.canaux $sorttok($reptok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),%autojoin.modif,1,44),44)
  • autojoin.update
  • }
  • elseif ($did == 7) {
  • set %autojoin.canaux $remtok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),44)
  • autojoin.update
  • }
  • if ($did == 3 && $did(3).sel !== $null) { did -ra autojoin 4 $did(3,$did(3).sel) }
  • elseif ($did == 8) { if ($server != $null) { autojoin.join } }
  • elseif ($did == 10) {
  • if ($did(10).state == 0) { .disable #autojoin }
  • else { .enable #autojoin }
  • }
  • if ($did(3).sel == $null) { did -b autojoin 5,6,7 }
  • else { did -e autojoin 6,7 }
  • if ($did == 3) { did -b autojoin 6 }
  • }
  • alias autojoin.update {
  • did -r autojoin 3,4
  • if (%autojoin.canaux !== $null) {
  • did -e autojoin 8,10
  • var %autojoin.loop.n = 1
  • :loop
  • did -a autojoin 3 $gettok(%autojoin.canaux,%autojoin.loop.n,44)
  • inc %autojoin.loop.n
  • if ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) { goto loop }
  • }
  • else {
  • unset %autojoin.canaux
  • .disable #autojoin
  • did -ub autojoin 8,10
  • } }
  • alias autojoin.join {
  • var %autojoin.loop.n = 1
  • while ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) {
  • if (%autojoin.delai !== $null) { .timer 1 $calc(%autojoin.delai * %autojoin.loop.n) join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
  • else { join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
  • inc %autojoin.loop.n
  • } }
  • #autojoin on
  • on *:connect:autojoin.join
  • #autojoin end
  • }
dialog autojoin {
  title "¤¤ Auto-Join ¤¤"
  size -1 -1 170 261
  button "Enregistrer", 1, 7 210 155 24, ok
  box "Option / Entrer un channel", 2, 2 120 166 138
  list 3, 8 17 155 100 
  edit "", 4, 8 135 154 22, autohs
  button "&Ajouter", 5, 7 160 74 24
  button "&Modifier", 6, 87 160 74 24
  button "&Supprimer", 7, 7 185 74 24
  button "&Joindre tout", 8, 87 185 74 24
  check "Activer / Désactiver", 10, 9 235 120 21
  box "Salons", 11, 2 2 166 117
}

on *:dialog:autojoin:init:*:{
  did -b autojoin 5,6,7
  if ($group(#autojoin) == ON) { did -c autojoin 10 }
  if (%autojoin.delai !== $null) { did -a autojoin 13 %autojoin.delai }
  autojoin.update
}

on *:dialog:autojoin:edit:*:{
  if ($did(4) == $null) { did -b autojoin 5,6 }
  else { did -e autojoin 5,6 }
  if ($did(3).sel == $null) { did -b autojoin 6 }
  else { did -e autojoin 6 }
  if ($left($did(4),1) !== $chr(35)) { var %autojoin.edit = $chr(35) $+ $did(4) }
  else { var %autojoin.edit = $did(4) }
  if ($findtok(%autojoin.canaux,%autojoin.edit,0,44) == 1) { did -b autojoin 5,6 }
  if ($did == 13) {
    if ($did(13) !isnum) { did -r autojoin 13 | unset %autojoin.delai }
    else { set %autojoin.delai $did(13) }
} }
on *:dialog:autojoin:sclick:*:{
  if ($did == 5) {
    if ($left($did(4),1) !== $chr(35)) { var %autojoin.ajout = $chr(35) $+ $did(4) }
    else { var %autojoin.ajout = $did(4) }
    set %autojoin.canaux $sorttok($addtok(%autojoin.canaux,%autojoin.ajout,44),44)
    autojoin.update
  }
  elseif ($did == 6) {
    if ($left($did(autojoin,4),1) !== $chr(35)) { var %autojoin.modif = $chr(35) $+ $did(4) }
    else { var %autojoin.modif = $did(4) }
    set %autojoin.canaux $sorttok($reptok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),%autojoin.modif,1,44),44)
    autojoin.update
  }
  elseif ($did == 7) {
    set %autojoin.canaux $remtok(%autojoin.canaux,$gettok(%autojoin.canaux,$did(3).sel,44),44)
    autojoin.update
  }
  if ($did == 3 && $did(3).sel !== $null) { did -ra autojoin 4 $did(3,$did(3).sel) }
  elseif ($did == 8) { if ($server != $null) { autojoin.join } }
  elseif ($did == 10) {
    if ($did(10).state == 0) { .disable #autojoin }
    else { .enable #autojoin }
  }
  if ($did(3).sel == $null) { did -b autojoin 5,6,7 }
  else { did -e autojoin 6,7 }
  if ($did == 3) { did -b autojoin 6 }
}
alias autojoin.update {
  did -r autojoin 3,4
  if (%autojoin.canaux !== $null) {
    did -e autojoin 8,10
    var %autojoin.loop.n = 1
    :loop
    did -a autojoin 3 $gettok(%autojoin.canaux,%autojoin.loop.n,44)
    inc %autojoin.loop.n
    if ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) { goto loop }
  }
  else {
    unset %autojoin.canaux
    .disable #autojoin
    did -ub autojoin 8,10
} }
alias autojoin.join {
  var %autojoin.loop.n = 1
  while ($gettok(%autojoin.canaux,%autojoin.loop.n,44) !== $null) { 
    if (%autojoin.delai !== $null) { .timer 1 $calc(%autojoin.delai * %autojoin.loop.n) join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
    else { join $gettok(%autojoin.canaux,%autojoin.loop.n,44) }
    inc %autojoin.loop.n
} }
#autojoin on
on *:connect:autojoin.join
#autojoin end
}

 Conclusion

Allez visité le site de ma team http://dreamz-team.site.voila.fr/


 Sources du même auteur

LAG SANS BARRE DE LAG

 Sources de la même categorie

PACMAN MULTI-JOUEUR EN LIGNE par wims
PROXY&SOCKS SCANNER+LEECHER par independentt
GESTIONNAIRE DE HIGHLIGHT AVANCÉ AVEC IGNORE SALON OU PSEUDO par doob666
AUTOJOIN HTABLE MULTISERVER par doob666
TCL - AJOUT SUPPRESSION DE LOGS par Atok

Commentaires et avis

Commentaire de wims le 24/05/2005 15:49:58

Hum a chaque fois que j'veux copier coller une source il me copie aussi les n° des ligne a coté ce qui m'embete assez.J'ai donc pas tester le code ( mais un zip a la limite )
Dans le code apparement je comprend que quelque sois le server/network tu join toujours les meme channel ce qui vraiment pas utile du tout.Des autojoins y'en a pas mal ici , tu aurai pu t'en inspirer :)

Commentaire de talking le 24/05/2005 16:57:58

En ce qui concerne le code. Il y a une optimisation à faire :
if ($did(4) == $null) { did -b autojoin 5,6 }
devient
if (!$did(4)) { did -b autojoin 5,6 }

et
if (%autojoin.delai !== $null) { did -a autojoin 13 autojoin.delai }
devient
if (%autojoin.delai) { did -a autojoin 13 $ifmatch }

Commentaire de MaX_62 le 24/05/2005 16:58:29

- tu peux mettre tes aliases en local (-l)
- pour l'alias autojoin.join, la condition n'est pas nécessaire, car si %autojoin.delai == 0, le timer sera a zero secondes et ça joindra instantanément...
- au lieu de if (%var == $null) tu peux mettre if (!%var)
- au lieu de if (%var != $null) tu peux mettre if (%var)
- dans l'alias autojoin.update, sers toi de /while au lieu de /goto

Puisque cet addon ne gère pas les serveurs, je préfère utiliser l'auto join de mIRC...

PS @ wims : je vois pas pourquoi on devrait mettre un zip a chaque source uniquement parce que TU n'arrives pas a les copier...
PS @ Damien520 : je pense que cette source est plutot niveau débutant que initiée...

Commentaire de tofu le 24/05/2005 17:32:49

non, moi non plus je px pas c/c de code, j'ai les n° des lignes à chaque fois..

Commentaire de clem54 le 24/05/2005 18:54:49

change d'ordinateur :p

Commentaire de clem54 le 24/05/2005 19:09:37

7/10, je suis trop gentil :p

Commentaire de RCA ArKanis le 24/05/2005 19:14:02

pourquoi tu n'utilises pas l'auto-join de mIRC ? il est complet, tu peux mettre un mot de passe, et choisir le serveur, etc ... :x

regroupe tes ON DIALOG sous un même et unique ON DIALOG :p

Commentaire de fjxokt le 24/05/2005 19:27:25

hum alors que dire...
il y a des milliers d'autojoin sur cs, et il y en a des bien plus complet que le tien
- aucune gestion des chans avec clé (+k)
- tu ne verifie pas ce que l'on rentre comme channel (on peut y mettre des espaces etc...)
- il n'est pas multi serveurs
- tu stockes toutes tes données dans des var, chose horrible pr un code de ce genre (les .ini et surtout les hash tables existent)
-de plus je trouve le code assez gros pr ton autojoin pourtant basique
- pourquoi utilise tu une loop dans ton autojoin.update au lieu d'une while ?
- enfin le niveau initié... hum hum

en tout cas ton code ne merite surement pas 7 (dsl de te dire ça mais bon c'est pour la bonne cause ;)

Commentaire de HySteriK le 24/05/2005 20:04:20

ouais c'est vrai c'est lourd les numéros quand on c/c les codes ..
je n'est pas tester ..
je test de moin en moin

Commentaire de talking le 24/05/2005 21:09:24

Puis je pense que un autojoin avec listview mdx gérant le multiserveur puis la possiblité d'avoir une ey (+k) comme l'a dit
fjxokt Tout celà stoqué dans une hashtable aurait été l'idéal

Commentaire de Squallou le 25/05/2005 11:27:32

Mwé bizarre que ça vous copie les numéros de ligne. Pour une fois que j'ai pas de pbs :p. Sinon pour la source, le support multiserveur aurait été pas mal. Pourquoi utiliser un goto aussi barbare ? :p les While sont + rapides et bien plus pratiques. Comme l'ont dit les autres scripteurs, enleve tes "!==".

Une petite question : je sais que les crochets après un IF optimisent la vitesse d'exécution. Mais est-ce pareil pour des parenthèses dans un IF ? Moi je n'en met jamais pour une seule condition et je me posais la question en voyant plusieurs sources en contenir :p.

Sinon design propre et clair et à part le non support multiserveurs j'aime :p
Bonne continuation ^^
7/10

Commentaire de tofu le 25/05/2005 18:29:40

"2.5. /if

Certains tests ont été fait et voici l'ordre de rapidité d'execution des différentes syntaxes de /if.
1) if (condition) command
2) if condition { command }
3) if (condition) { command }"

c/c d'un tuto de scriptsdb.

Commentaire de Squallou le 25/05/2005 19:55:05

Mwé je l'avais lu. Mais il me semblait un peu léger. Enfin bon, s'il le dit et que tout le monde le fait c'est que c'est le cas :p. Donc je vais mettre des parenthèses partout =)

Commentaire de wims le 25/05/2005 21:09:40

Si je demande un zip c'est pas pour moi vu que j'ai pas tester.On a deja parler de ce pb et fjxokt a "regler" le probleme avec un alias :)

Commentaire de kiffmarseillais le 27/05/2005 15:48:02

comment on le charge ?

Commentaire de tofu le 27/05/2005 18:33:40

tu comptes mettre ce commentaire sur tous les codes du site?

pour load un fichier remote on c/c le code ds un fichier remote (alt +r) ds mIRC..

Commentaire de kiffmarseillais le 27/05/2005 18:36:58

ben oui mais i se lance pas ji peu rien
quel émabilité ici :/

Commentaire de RCA ArKanis le 27/05/2005 18:46:15

(aimabilité)
=> tape /dialog -md autojoin autojoin
sinon fais toi un alias qui l'ouvre plus rapidement

Commentaire de AgoRa_ScripT le 27/05/2005 23:38:20

Exactement le même autojoin que le script NoFear.. bizarre.

Commentaire de l_ange_noir le 04/06/2005 23:13:35

pour le code pas testé, mais pour les numeros de lignes, j'suis sur vous utilisez MF .... car j'ai testé sous I.E apres avoir eut le meme pb et c'etait bon .... bug avec les tableaux sous MF :( dmge

Commentaire de l_ange_noir le 04/06/2005 23:34:33

pour le code pas testé, mais pour les numeros de lignes, j'suis sur vous utilisez MF .... car j'ai testé sous I.E apres avoir eut le meme pb et c'etait bon .... bug avec les tableaux sous MF :( dmge

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,978 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales