Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

AUTO JOIN SALONS ET SERVEURS ( GÈRE LE MULTISERVEUR )


Information sur la source

Catégorie :AddOns Niveau : Initié Date de création : 09/01/2003 Date de mise à jour : 09/01/2003 17:06:19 Vu / téléchargé: 4 293 / 190

Note :
Aucune note

Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

Description

Un Auto-join simple et fontionnel sur la base des *.ini . Vous pouvez donc mettre un nombre infini de salon ou serveurs a rejoindre a la connection.L'add on ne gère pas encore la rejonction de salons spécifiques a un serveur.Peut etre pour la version 2.0 ?  Utilisez de preference un mIRC vierge afin de tester mon add on, je ne suis pas responsable des degats occasionés sur les scripts :)
 

Source

  • ;=============================
  • ; _____ ___ ==
  • ; / ___/\ / /\ ==
  • ; / /\__\/ / /_/_ ==
  • ; / _/\ / _ _\ ==
  • ; / /_\/ / / \ \_\ ==
  • ; /_____/\ /__/ / \__\ ==
  • ; \_____\/ \__\/ \__\ ==
  • ;=============================
  • ;==== ] eKcH4d0 ScRiPT [ =====
  • ;=======] Auto-join [=========
  • ;================================================================== Dialogue de selection du type d'auto-join
  • on 1:dialog:type:init:0:{
  • //echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 lancé
  • /set %ajs1 $readini(inis/auto-join.ini, serveurs, 1)
  • /set %s $ini(inis/auto-join.ini, serveurs, 0)
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs,0)
  • }
  • dialog Type {
  • option dbu
  • size -1 -1 114 44
  • title "Type d'auto-join"
  • button "Serveurs",1, 3.5 7 35 15
  • button "Salons",2, 39 7 35 15
  • button "Options",3, 75 7 35 15
  • button "Connection",4, 3.5 24 35 15
  • button "Annuler",5, 39 24 35 15,cancel
  • button "Valider",6, 75 24 35 15,ok
  • }
  • on 1:dialog:type:sclick:1:{
  • /dialog -m ajserveur ajserveur
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
  • /inc %s
  • }
  • on 1:dialog:type:sclick:2:{
  • /dialog -m ajsalons ajsalons
  • /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
  • /inc %c
  • }
  • on 1:dialog:type:sclick:3:{
  • /dialog -m ajoptions ajoptions
  • }
  • on 1:dialog:type:sclick:4:{
  • /server %ajs1
  • }
  • ;================================================================= Dialogue d'auto-join salons
  • dialog ajsalons {
  • option dbu
  • size -1 -1 90 100
  • title "Auto-join salon(s)"
  • list 101,5 5 80 80
  • button "Ajouter",501,5 82 25 15
  • button "Enlever",502,32 82 25 15
  • button "Valider",503,60 82 25 15,ok
  • }
  • on 1:dialog:ajsalons:init:0:{
  • /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
  • /set %ajc 1
  • :ajsalons1
  • /did -a ajsalons 101 $readini(inis/auto-join.ini, salons, %ajc )
  • /inc %ajc 1
  • /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
  • /set %ajsalons %ajcmax + 1
  • if ( %ajc > %ajsalons ) { goto ajsalons2 }
  • elseif ( %ajc != %ajsalons ) { goto ajsalons1 }
  • :ajsalons2
  • }
  • on 1:dialog:ajsalons:sclick:502:{
  • /remini inis/auto-join.ini salons $did(ajsalons,101).sel
  • }
  • on 1:dialog:ajsalons:sclick:503:{
  • /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
  • }
  • on 1:dialog:ajsalons:sclick:501:{
  • /set %c $ini(inis/auto-join.ini, salons, 0)
  • /inc %c 1
  • /writeini Inis/Auto-join.ini Salons %c $$?="Entrez le nom d'un salon avec le dièse "
  • }
  • ;================================================================= Dialogue d'auto-join serveurs
  • dialog ajserveur {
  • option dbu
  • size -1 -1 90 100
  • title "Auto-join serveur(s)"
  • list 100,5 5 80 80
  • button "Ajouter",201,5 82 25 15
  • button "Enlever",202,32 82 25 15
  • button "Valider",203,60 82 25 15,ok
  • }
  • on 1:dialog:ajserveur:init:0:{
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
  • /set %ajs1 $readini(inis/auto-join.ini, serveurs, 1)
  • /set %ajs 1
  • :ajserveur1
  • /did -a ajserveur 100 $readini(inis/auto-join.ini, serveurs, %ajs )
  • /inc %ajs 1
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
  • /set %ajserveur %ajsmax + 1
  • if ( %ajs > %ajserveur ) { goto ajserveur2 }
  • elseif ( %ajs != %ajserveur ) { goto ajserveur1 }
  • :ajserveur2
  • }
  • on 1:dialog:ajserveur:sclick:202:{
  • /remini inis/auto-join.ini serveurs $did(ajserveur,100).sel
  • }
  • on 1:dialog:ajserveur:sclick:203:{
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
  • }
  • on 1:dialog:ajserveur:sclick:201:{
  • /set %s $ini(inis/auto-join.ini, serveurs, 0)
  • /inc %s 1
  • /writeini Inis/Auto-join.ini Serveurs %s $$?="Entrez l'adresse d'un serveur"
  • }
  • ;================================================================= Dialogue des options Auto-join
  • dialog ajoptions {
  • option dbu
  • size -1 -1 150 40
  • title "Options de l'Auto-join"
  • check "Activé",301,65 11 30 10
  • check "Activé",302,65 22.5 30 10
  • text "Auto-join serveur(s) : ",401, 5 12.5 52 20
  • text "Auto-join salon(s) : ",402, 5 24 47 20
  • button "Ok",403, 110 12 25 15,ok
  • }
  • ;================================================================= Checks
  • on 1:dialog:ajoptions:init:0:{
  • if (%ajoptionssc == 1) { did -c ajoptions 301 }
  • if (%ajoptionscc == 1) { did -c ajoptions 302 }
  • }
  • on 1:dialog:ajoptions:sclick:301:{
  • if ($did(ajoptions,301).state == 0) {
  • echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 serveur(s) désactivé
  • set %ajoptionssc 0
  • }
  • elseif ($did(ajoptions,301).state == 1) {
  • echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 serveur(s) activé
  • set %ajoptionssc 1
  • }
  • }
  • on 1:dialog:ajoptions:sclick:302:{
  • if ($did(ajoptions,302).state == 0) {
  • set %ajoptionscc 0
  • echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 salon(s) désactivé
  • }
  • elseif ($did(ajoptions,302).state == 1) {
  • echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 salon(s) activé
  • set %ajoptionscc 1
  • }
  • }
  • ;================================================================= Start
  • on 1:load:{
  • /set %s 0
  • /set %ajs 1 }
  • menu menubar,menubar {
  • -
  • eKcH4d0's AdD-OnS:/
  • -
  • Auto-join V1.0:/dialog -m type type
  • }
  • ;================================================================= Connection
  • on 1:connect:{
  • /set %ajsmax $ini(inis/auto-join.ini, serveurs,0)
  • /set %ajcmax $ini(inis/auto-join.ini, salons,0)
  • /set %ajstotal %ajsmax + 1
  • /set %ajctotal %ajcmax + 1
  • /set %ajs 2
  • ;================================================================ Auto-Join Multiserveur
  • if ( %ajoptionssc == 0 ) { goto ajc }
  • elseif ( %ajoptionssc == 1 ) { goto ajs }
  • :ajs
  • if ( $scid(0) == %ajsmax ) { goto ajc }
  • /server -m $readini(inis/auto-join.ini, serveurs, %ajs)
  • if ( %ajs == %ajsmax ) { goto ajc }
  • elseif ( %ajs < %ajsmax ) { goto inc }
  • :inc
  • /inc %ajs 1
  • /goto ajs
  • ;================================================================= Auto-join
  • :ajc
  • if ( %ajoptionscc == 0) { goto fin }
  • /set %ajc 1
  • /join $readini(inis/auto-join.ini, salons, %ajc)
  • if ( %ajc == ajcmax ) { goto fin }
  • elseif ( %ajc < %ajcmax ) { goto ajc2 }
  • :ajc2
  • if ( %ajc < 2 ) { goto fin }
  • /inc %ajc 1
  • /join $readini(inis/auto-join.ini, salons, %ajc)
  • /inc %ajc 1
  • if ( %ajc == ajcmax ) { goto fin }
  • elseif ( %ajc < %ajcmax ) { goto ajc2 }
  • :fin
  • /echo -a 0[ 7 eKcH4d0 ScRiPT 0] 7 Connection établie
  • }
 ;=============================
;      _____    ___         ==
;     / ___/\  /  /\        ==
;    / /\__\/ /  /_/_       == 
;   /  _/\   /  _   _\      == 
;  /  /_\/  /  / \  \_\     ==
; /_____/\ /__/ / \__\      == 
; \_____\/ \__\/   \__\     ==
;=============================
;==== ] eKcH4d0 ScRiPT [ =====
;=======] Auto-join [=========


;================================================================== Dialogue de selection du type d'auto-join

on 1:dialog:type:init:0:{
  //echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 lancé 
  /set %ajs1 $readini(inis/auto-join.ini, serveurs, 1)
  /set %s $ini(inis/auto-join.ini, serveurs, 0)
  /set %ajsmax $ini(inis/auto-join.ini, serveurs,0)
}
dialog Type {
  option dbu 
  size -1 -1 114 44
  title "Type d'auto-join"
  button "Serveurs",1, 3.5 7 35 15
  button "Salons",2, 39 7 35 15
  button "Options",3, 75 7 35 15
  button "Connection",4, 3.5 24 35 15
  button "Annuler",5, 39 24 35 15,cancel
  button "Valider",6, 75 24 35 15,ok
}

on 1:dialog:type:sclick:1:{
  /dialog -m ajserveur ajserveur
  /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
  /inc %s
}
on 1:dialog:type:sclick:2:{
  /dialog -m ajsalons ajsalons
  /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
  /inc %c
}

on 1:dialog:type:sclick:3:{
  /dialog -m ajoptions ajoptions
}
on 1:dialog:type:sclick:4:{
  /server %ajs1
}
;================================================================= Dialogue d'auto-join salons
dialog ajsalons {
  option dbu
  size -1 -1 90 100
  title "Auto-join salon(s)"
  list 101,5 5 80 80
  button "Ajouter",501,5 82 25 15
  button "Enlever",502,32 82 25 15
  button "Valider",503,60 82 25 15,ok
}
on 1:dialog:ajsalons:init:0:{

  /set %ajcmax $ini(inis/auto-join.ini, salons, 0) 
  /set %ajc 1  
  :ajsalons1
  /did -a ajsalons 101 $readini(inis/auto-join.ini, salons, %ajc )
  /inc %ajc 1
  /set %ajcmax $ini(inis/auto-join.ini, salons, 0)  
  /set %ajsalons %ajcmax + 1
  if ( %ajc > %ajsalons ) { goto ajsalons2 }
  elseif ( %ajc != %ajsalons ) { goto ajsalons1 }
  :ajsalons2
}
on 1:dialog:ajsalons:sclick:502:{
  /remini inis/auto-join.ini salons $did(ajsalons,101).sel

}
on 1:dialog:ajsalons:sclick:503:{
  /set %ajcmax $ini(inis/auto-join.ini, salons, 0)
}
on 1:dialog:ajsalons:sclick:501:{  
  /set %c $ini(inis/auto-join.ini, salons, 0)
  /inc %c 1 
  /writeini Inis/Auto-join.ini Salons %c $$?="Entrez le nom d'un salon avec le dièse  "


}

;================================================================= Dialogue d'auto-join serveurs
dialog ajserveur {
  option dbu
  size -1 -1 90 100
  title "Auto-join serveur(s)"
  list 100,5 5 80 80
  button "Ajouter",201,5 82 25 15
  button "Enlever",202,32 82 25 15
  button "Valider",203,60 82 25 15,ok
}
on 1:dialog:ajserveur:init:0:{

  /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0) 
  /set %ajs1 $readini(inis/auto-join.ini, serveurs, 1)
  /set %ajs 1  
  :ajserveur1
  /did -a ajserveur 100 $readini(inis/auto-join.ini, serveurs, %ajs )
  /inc %ajs 1
  /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)  
  /set %ajserveur %ajsmax + 1
  if ( %ajs > %ajserveur ) { goto ajserveur2 }
  elseif ( %ajs != %ajserveur ) { goto ajserveur1 }
  :ajserveur2
}
on 1:dialog:ajserveur:sclick:202:{
  /remini inis/auto-join.ini serveurs $did(ajserveur,100).sel

}
on 1:dialog:ajserveur:sclick:203:{
  /set %ajsmax $ini(inis/auto-join.ini, serveurs, 0)
}
on 1:dialog:ajserveur:sclick:201:{  
  /set %s $ini(inis/auto-join.ini, serveurs, 0)
  /inc %s 1 
  /writeini Inis/Auto-join.ini Serveurs %s $$?="Entrez l'adresse d'un serveur"


}

;================================================================= Dialogue des options Auto-join
dialog ajoptions {
  option dbu
  size -1 -1 150 40
  title "Options de l'Auto-join"
  check "Activé",301,65 11 30 10
  check "Activé",302,65 22.5 30 10
  text "Auto-join serveur(s) : ",401, 5 12.5 52 20
  text "Auto-join salon(s) : ",402, 5 24 47 20
  button "Ok",403, 110 12 25 15,ok
}

;================================================================= Checks
on 1:dialog:ajoptions:init:0:{
  if (%ajoptionssc == 1) { did -c ajoptions 301 }
  if (%ajoptionscc == 1) { did -c ajoptions 302 }
}


on 1:dialog:ajoptions:sclick:301:{
  if ($did(ajoptions,301).state == 0) { 
    echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 serveur(s) désactivé 
    set %ajoptionssc 0
  }
  elseif ($did(ajoptions,301).state == 1) {  
    echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 serveur(s) activé
    set %ajoptionssc 1

  }
}
on 1:dialog:ajoptions:sclick:302:{
  if ($did(ajoptions,302).state == 0) { 
    set %ajoptionscc 0    
    echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 salon(s) désactivé 

  }
  elseif ($did(ajoptions,302).state == 1) {  
    echo -a 0[ 7eKcH4d0 ScRiPT0 ]7 Auto-join 0 salon(s) activé
    set %ajoptionscc 1
  }
}
;================================================================= Start
on 1:load:{
  /set %s 0
/set %ajs 1 }
menu menubar,menubar {
  -
  eKcH4d0's AdD-OnS:/
  - 
  Auto-join V1.0:/dialog -m type type
}

;================================================================= Connection
on 1:connect:{
  /set %ajsmax $ini(inis/auto-join.ini, serveurs,0)
  /set %ajcmax $ini(inis/auto-join.ini, salons,0) 
  /set %ajstotal %ajsmax + 1
  /set %ajctotal %ajcmax + 1
  /set %ajs 2
  ;================================================================ Auto-Join Multiserveur
  if ( %ajoptionssc == 0 ) { goto ajc }
  elseif ( %ajoptionssc == 1 ) { goto ajs }

  :ajs
  if ( $scid(0) == %ajsmax ) { goto ajc }
  /server -m $readini(inis/auto-join.ini, serveurs, %ajs)
  if ( %ajs == %ajsmax ) { goto ajc }
  elseif ( %ajs < %ajsmax ) { goto inc }
  :inc
  /inc %ajs 1
  /goto ajs
  ;================================================================= Auto-join 


  :ajc
  if ( %ajoptionscc == 0) { goto fin }
  /set %ajc 1 
  /join $readini(inis/auto-join.ini, salons, %ajc)
  if ( %ajc == ajcmax ) { goto fin }
  elseif ( %ajc < %ajcmax ) { goto ajc2 }
  :ajc2
  if ( %ajc < 2 ) { goto fin }  
  /inc %ajc 1 
  /join $readini(inis/auto-join.ini, salons, %ajc)
  /inc %ajc 1
  if ( %ajc == ajcmax ) { goto fin }
  elseif ( %ajc < %ajcmax ) { goto ajc2 }

  :fin 
  /echo -a 0[ 7 eKcH4d0 ScRiPT 0] 7 Connection établie
}

Conclusion

Ne pas 'etonner si lorsqu'on ajoute un salon ou un serveur , son nom ne s'affiche pas dans la liste , il faut appuyer sur valider pour qu'il s'y mette comme un grand :)  

Et pis sinon soyez sympatoches c'est ma premiere source , le code est long , les *.ini c'est dépassé , enfin g tout pour plaire :)
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • Auto-join.esTélécharger ce fichier [Réservé aux membres club]6 427 octets

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de CoolWave le 09/01/2003 23:51:06

ça fait planter royalement le script quand on n'entre aucune données :/

signaler à un administrateur
Commentaire de koko le 10/01/2003 07:26:34

j'aime vraiment pas les goto... sinon heu j'ai po encore testé...

signaler à un administrateur
Commentaire de Ekchado le 10/01/2003 12:33:51

bon ba je vais developper une version 2.0 mais je sais pas ou stocker les données...est ce que dans une hash table c bien ? ou dans un .txt ? ou je limite le nombre de serveurs/salons a rejoindre ? :) bye

signaler à un administrateur
Commentaire de YoSkATeR le 10/01/2003 13:16:45

oué graphikemen on a vu mieu..
mais pour te repondre le hash c limité alors ke le texte c illimité....
puis en premiere ligne tu peu mettre le nombre de ligne ca aidera...continu j'aime bien les auto-join!

signaler à un administrateur
Commentaire de Ekchado le 10/01/2003 22:31:22

Merci YoSkATeR ca m'a donné envie de m'y replonger je bosse sur la version 2.0 qui fonctionne avec des .txt et un auto join salons specifiques a un serveur , ou du moins j'essaye :) Dimanche au plus tard c'est la . Bye

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,390 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.