Accueil > > > PACIFIK MULTISERVER AUTOJOIN 1.2B
PACIFIK MULTISERVER AUTOJOIN 1.2B
Information sur la source
Description
c'est une partie de mon script (http://pacifik.dabug.com)
il permet de ce connecter a plusieur serveur avec chan différent pour ces serveurs
Source
- alias joinall msaj_joinall
- alias dlg { var %dlg = $$1 $+ .dlg | if ($dialog(%dlg) == $null) { dialog -domr %dlg %dlg } }
- alias -l dlg_p { var %dlg = $$1 $+ .dlg | if ($dialog(%dlg) == $null) { dialog -amrov %dlg %dlg } }
- alias -l dlg_close { dialog -x $dname $dname }
- alias -l msaj_save { hsave -bo msaj_data pacifiKdata }
- alias -l msaj_load { if ($hget(msaj_data) != msaj_data) { hmake msaj_data 1 } | if ($exists(pacifiKdata) == $true) { hload -b msaj_data pacifiKdata } }
- alias -l msaj_err { $dlg_p(msaj_err) }
- alias -l msaj_errmsg { did -ra msaj_err.dlg 1 $$1- }
- alias -l msaj_hget { return $hget(msaj_data,$$1) }
- alias -l msaj_hgetitem { return $hget(msaj_data,$$1).item }
- alias -l msaj_hgetsize { return $hget(msaj_data,$$1).size }
- alias -l msaj_connect { server $$1 $2 $3 -j $4- }
- alias -l msaj_connectm { server -m $$1 $2 $3 -j $4- }
- alias -l msaj_closeall { scon -a partall | scon -at1 quit | scon -a window -c "Status Window" }
- alias -l msaj_delist { var %i = $did(msaj.dlg,$$1).lines | while (%i != 0) { did -r msaj.dlg $$1 %i | dec %i } }
- alias -l msaj_refresh_srvlist { var %i = $msaj_hgetitem(0) | while (%i != 0) { if (.msaj !isin $msaj_hgetitem(%i)) { did -a msaj.dlg 2 $msaj_hgetitem(%i) } | dec %i } }
- alias -l msaj_refresh_chanlist { var %temp = $did(msaj.dlg,2).seltext $+ .msajchan, %list.chan, %i | %list.chan = $msaj_hget(%temp) | %i = $numtok(%list.chan,44) | while (%i != 0) { did -a msaj.dlg 7 $gettok(%list.chan,%i,44) | dec %i } }
-
- alias -l msaj_joinall {
- var %first = 1, %i = $msaj_hgetitem(0), %srv, %srv.activ, %port, %passwd, %chan
- while (%i != 0) {
- %srv = $msaj_hgetitem(%i)
- %port = %srv $+ .msajport
- %port = $msaj_hget(%port)
- %passwd = %srv $+ .msajpasswd
- %passwd = $msaj_hget(%passwd)
- %chan = %srv $+ .msajchan
- %chan = $msaj_hget(%chan)
- if (.msaj !isin %srv) {
- %srv.activ = $msaj_hget(%srv)
- if (%srv.activ == 1 && %first == 1) {
- $msaj_connect(%srv,%port,%passwd,%chan)
- %first = 0
- }
- elseif (%srv.activ == 1) {
- $msaj_connectm(%srv,%port,%passwd,%chan)
- }
- }
- dec %i
- }
- }
-
- menu menubar,status,channel,query {
- Multi-Serveur Auto-Join
- .Dialog:/dlg msaj
- }
- on *:load:{ msaj_load }
- on *:start:{ msaj_load | msaj_closeall | msaj_joinall }
- dialog msaj.dlg {
- title "PacifiK MSAJ v1.2b"
- size -1 -1 230 280
- option pixels
- box "Liste des serveurs", 1, 10 10 210 80
- combo 2, 20 30 190 160, sort size drop
- button "+", 3, 150 60 20 20
- button "-", 4, 180 60 20 20
- check "Activer l'autojoin", 5, 20 60 110 20
- box "Liste des channels", 6, 10 100 210 140
- list 7, 20 120 160 110, sort size vsbar
- button "+", 8, 190 120 20 20
- button "-", 9, 190 150 20 20
- button "&Quitter", 100, 80 250 80 25, default cancel
- }
- on *:dialog:msaj.dlg:init:*: { msaj_refresh_srvlist }
- on *:dialog:msaj.dlg:sclick:*: {
- if ($did == 2) { $msaj_delist(7) | msaj_refresh_chanlist | var %srv = $did($dname,2).seltext | if ($msaj_hget(%srv) == 1) { did -c $dname 5 } | else { did -u $dname 5 } }
- if ($did == 3) { dlg_p msaj.addsrv }
- if ($did == 4) { if ($did($dname,2).seltext) { var %srv = $did($dname,2).seltext $+ * | hdel -w msaj_data %srv | $msaj_delist(2) | msaj_refresh_srvlist | $msaj_delist(7) | did -u msaj.dlg 5 | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
- if ($did == 5) { if ($did($dname,2).seltext) { var %srv = $did($dname,2).seltext, %state | %state = $did($dname,5).state | hadd msaj_data %srv %state | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
- if ($did == 8) { if ($did($dname,2).seltext) { dlg_p msaj.addchan } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
- if ($did == 9) { if ($did(msaj.dlg,7).sel) { var %chan = $did($dname,7).seltext, %srv, %list.chan, %pos, %new.list | %srv = $did($dname,2).seltext $+ .msajchan | %list.chan = $msaj_hget(%srv) | %pos = $findtok(%list.chan,%chan,1,44) | %new.list = $deltok(%list.chan,%pos,44) | hdel msaj_data %srv | hadd msaj_data %srv %new.list | did -d msaj.dlg 7 $did($dname,7,1).sel | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un channel) } }
- if ($did == 99) { msaj_closeall | msaj_joinall | dlg_close }
- }
- dialog msaj.addsrv.dlg {
- title "PacifiK MSAJ v1.2b"
- size -1 -1 260 170
- option pixels
- text "Nom du serveur : ", 1, 25 10 90 16, right
- edit "", 2, 125 8 100 21, autohs center
- text "Port : ", 3, 25 40 90 16, right
- edit "6667", 4, 125 38 100 21, autohs center
- text "Mot de passe : ", 5, 25 70 90 16, right
- edit "", 6, 125 66 100 21, pass autohs center
- check "Activer l'auto-join pour ce serveur", 7, 35 100 190 20
- button "&Ajouter", 98, 45 135 75 25, default
- button "A&nnuler", 99, 125 135 75 25, cancel
- }
- on *:dialog:msaj.addsrv.dlg:sclick:98 { if ($did($dname,2).text && $did($dname,4).text) { var %nom.srv = $did($dname,2).text, %activ.srv | if ($did($dname,7).state == 0) { %activ.srv = 0 } | else { %activ.srv = 1 } | hadd -m msaj_data %nom.srv %activ.srv | hadd -m msaj_data %nom.srv $+ .msajport $did(msaj.addsrv.dlg,4).text | if ($did($dname,6).text) { hadd -m msaj_data %nom.srv $+ .msajpasswd $did(msaj.addsrv.dlg,6).text } | $msaj_delist(2) | $msaj_delist(7) | msaj_refresh_srvlist | msaj_save | dlg_close } | else { msaj_err | $msaj_errmsg(Tu dois entrer le nom d'un chan et un port) } }
- dialog msaj.addchan.dlg {
- title "PacifiK MSAJ v1.2b"
- size -1 -1 260 110
- option pixels
- text "Nom du cahnnel : ", 1, 25 10 90 16, right
- edit "", 2, 125 8 100 21, autohs center
- text "Mot de passe : ", 3, 25 40 90 16, disable right
- edit "", 4, 125 38 100 21, disable autohs center
- button "&Ajouter", 98, 45 75 75 25, default
- button "A&nnuler", 99, 125 75 75 25, cancel
- }
- on *:dialog:msaj.addchan.dlg:sclick:98: { var %srv = $did(msaj.dlg,2).seltext, %chan, %temp, %list.chan | if ($did($dname,2).text) { %chan = $did($dname,2).text | if ($left(%chan,1) != $chr(35)) { %chan = $chr(35) $+ %chan } | %temp = %srv $+ .msajchan | %list.chan = $msaj_hget(%temp) | %list.chan = $addtok(%list.chan,%chan,44) | hadd -m msaj_data %temp %list.chan | $msaj_delist(7) | msaj_refresh_chanlist | msaj_save | dlg_close } | else { msaj_err | $msaj_errmsg(Tu dois entrer un chan) } }
- dialog msaj_err.dlg {
- title "PacifiK MSAJ Error"
- size -1 -1 240 70
- option pixels
- text "", 1, 10 10 222 16, center
- button "&OK", 99, 80 40 75 25, default cancel
- }
alias joinall msaj_joinall
alias dlg { var %dlg = $$1 $+ .dlg | if ($dialog(%dlg) == $null) { dialog -domr %dlg %dlg } }
alias -l dlg_p { var %dlg = $$1 $+ .dlg | if ($dialog(%dlg) == $null) { dialog -amrov %dlg %dlg } }
alias -l dlg_close { dialog -x $dname $dname }
alias -l msaj_save { hsave -bo msaj_data pacifiKdata }
alias -l msaj_load { if ($hget(msaj_data) != msaj_data) { hmake msaj_data 1 } | if ($exists(pacifiKdata) == $true) { hload -b msaj_data pacifiKdata } }
alias -l msaj_err { $dlg_p(msaj_err) }
alias -l msaj_errmsg { did -ra msaj_err.dlg 1 $$1- }
alias -l msaj_hget { return $hget(msaj_data,$$1) }
alias -l msaj_hgetitem { return $hget(msaj_data,$$1).item }
alias -l msaj_hgetsize { return $hget(msaj_data,$$1).size }
alias -l msaj_connect { server $$1 $2 $3 -j $4- }
alias -l msaj_connectm { server -m $$1 $2 $3 -j $4- }
alias -l msaj_closeall { scon -a partall | scon -at1 quit | scon -a window -c "Status Window" }
alias -l msaj_delist { var %i = $did(msaj.dlg,$$1).lines | while (%i != 0) { did -r msaj.dlg $$1 %i | dec %i } }
alias -l msaj_refresh_srvlist { var %i = $msaj_hgetitem(0) | while (%i != 0) { if (.msaj !isin $msaj_hgetitem(%i)) { did -a msaj.dlg 2 $msaj_hgetitem(%i) } | dec %i } }
alias -l msaj_refresh_chanlist { var %temp = $did(msaj.dlg,2).seltext $+ .msajchan, %list.chan, %i | %list.chan = $msaj_hget(%temp) | %i = $numtok(%list.chan,44) | while (%i != 0) { did -a msaj.dlg 7 $gettok(%list.chan,%i,44) | dec %i } }
alias -l msaj_joinall {
var %first = 1, %i = $msaj_hgetitem(0), %srv, %srv.activ, %port, %passwd, %chan
while (%i != 0) {
%srv = $msaj_hgetitem(%i)
%port = %srv $+ .msajport
%port = $msaj_hget(%port)
%passwd = %srv $+ .msajpasswd
%passwd = $msaj_hget(%passwd)
%chan = %srv $+ .msajchan
%chan = $msaj_hget(%chan)
if (.msaj !isin %srv) {
%srv.activ = $msaj_hget(%srv)
if (%srv.activ == 1 && %first == 1) {
$msaj_connect(%srv,%port,%passwd,%chan)
%first = 0
}
elseif (%srv.activ == 1) {
$msaj_connectm(%srv,%port,%passwd,%chan)
}
}
dec %i
}
}
menu menubar,status,channel,query {
Multi-Serveur Auto-Join
.Dialog:/dlg msaj
}
on *:load:{ msaj_load }
on *:start:{ msaj_load | msaj_closeall | msaj_joinall }
dialog msaj.dlg {
title "PacifiK MSAJ v1.2b"
size -1 -1 230 280
option pixels
box "Liste des serveurs", 1, 10 10 210 80
combo 2, 20 30 190 160, sort size drop
button "+", 3, 150 60 20 20
button "-", 4, 180 60 20 20
check "Activer l'autojoin", 5, 20 60 110 20
box "Liste des channels", 6, 10 100 210 140
list 7, 20 120 160 110, sort size vsbar
button "+", 8, 190 120 20 20
button "-", 9, 190 150 20 20
button "&Quitter", 100, 80 250 80 25, default cancel
}
on *:dialog:msaj.dlg:init:*: { msaj_refresh_srvlist }
on *:dialog:msaj.dlg:sclick:*: {
if ($did == 2) { $msaj_delist(7) | msaj_refresh_chanlist | var %srv = $did($dname,2).seltext | if ($msaj_hget(%srv) == 1) { did -c $dname 5 } | else { did -u $dname 5 } }
if ($did == 3) { dlg_p msaj.addsrv }
if ($did == 4) { if ($did($dname,2).seltext) { var %srv = $did($dname,2).seltext $+ * | hdel -w msaj_data %srv | $msaj_delist(2) | msaj_refresh_srvlist | $msaj_delist(7) | did -u msaj.dlg 5 | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
if ($did == 5) { if ($did($dname,2).seltext) { var %srv = $did($dname,2).seltext, %state | %state = $did($dname,5).state | hadd msaj_data %srv %state | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
if ($did == 8) { if ($did($dname,2).seltext) { dlg_p msaj.addchan } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un serveur) } }
if ($did == 9) { if ($did(msaj.dlg,7).sel) { var %chan = $did($dname,7).seltext, %srv, %list.chan, %pos, %new.list | %srv = $did($dname,2).seltext $+ .msajchan | %list.chan = $msaj_hget(%srv) | %pos = $findtok(%list.chan,%chan,1,44) | %new.list = $deltok(%list.chan,%pos,44) | hdel msaj_data %srv | hadd msaj_data %srv %new.list | did -d msaj.dlg 7 $did($dname,7,1).sel | msaj_save } | else { msaj_err | $msaj_errmsg(Tu dois sélectionner un channel) } }
if ($did == 99) { msaj_closeall | msaj_joinall | dlg_close }
}
dialog msaj.addsrv.dlg {
title "PacifiK MSAJ v1.2b"
size -1 -1 260 170
option pixels
text "Nom du serveur : ", 1, 25 10 90 16, right
edit "", 2, 125 8 100 21, autohs center
text "Port : ", 3, 25 40 90 16, right
edit "6667", 4, 125 38 100 21, autohs center
text "Mot de passe : ", 5, 25 70 90 16, right
edit "", 6, 125 66 100 21, pass autohs center
check "Activer l'auto-join pour ce serveur", 7, 35 100 190 20
button "&Ajouter", 98, 45 135 75 25, default
button "A&nnuler", 99, 125 135 75 25, cancel
}
on *:dialog:msaj.addsrv.dlg:sclick:98 { if ($did($dname,2).text && $did($dname,4).text) { var %nom.srv = $did($dname,2).text, %activ.srv | if ($did($dname,7).state == 0) { %activ.srv = 0 } | else { %activ.srv = 1 } | hadd -m msaj_data %nom.srv %activ.srv | hadd -m msaj_data %nom.srv $+ .msajport $did(msaj.addsrv.dlg,4).text | if ($did($dname,6).text) { hadd -m msaj_data %nom.srv $+ .msajpasswd $did(msaj.addsrv.dlg,6).text } | $msaj_delist(2) | $msaj_delist(7) | msaj_refresh_srvlist | msaj_save | dlg_close } | else { msaj_err | $msaj_errmsg(Tu dois entrer le nom d'un chan et un port) } }
dialog msaj.addchan.dlg {
title "PacifiK MSAJ v1.2b"
size -1 -1 260 110
option pixels
text "Nom du cahnnel : ", 1, 25 10 90 16, right
edit "", 2, 125 8 100 21, autohs center
text "Mot de passe : ", 3, 25 40 90 16, disable right
edit "", 4, 125 38 100 21, disable autohs center
button "&Ajouter", 98, 45 75 75 25, default
button "A&nnuler", 99, 125 75 75 25, cancel
}
on *:dialog:msaj.addchan.dlg:sclick:98: { var %srv = $did(msaj.dlg,2).seltext, %chan, %temp, %list.chan | if ($did($dname,2).text) { %chan = $did($dname,2).text | if ($left(%chan,1) != $chr(35)) { %chan = $chr(35) $+ %chan } | %temp = %srv $+ .msajchan | %list.chan = $msaj_hget(%temp) | %list.chan = $addtok(%list.chan,%chan,44) | hadd -m msaj_data %temp %list.chan | $msaj_delist(7) | msaj_refresh_chanlist | msaj_save | dlg_close } | else { msaj_err | $msaj_errmsg(Tu dois entrer un chan) } }
dialog msaj_err.dlg {
title "PacifiK MSAJ Error"
size -1 -1 240 70
option pixels
text "", 1, 10 10 222 16, center
button "&OK", 99, 80 40 75 25, default cancel
}
Conclusion
suffit de faire /load -rs chemin_du_script/msaj.mrc
ce script utilise le "base de donnée" mIRC et créé un fichier pacifikdata a la racine du rep d'install de mIRC
Je n'ai pas trouvé de bug, la gestion des mot de passe pour les chan et srv n'est pas encore géré
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
[WF4] PASSAGE D'ARGUMENTS LITERAL, VISUALBASICVALUE OU LAMBDAVALUE?[WF4] PASSAGE D'ARGUMENTS LITERAL, VISUALBASICVALUE OU LAMBDAVALUE? par JeremyJeanson
Avec la sortie de la RC de Visual Studio 2010, Microsoft a mis un peu les points sur leS i en ce qui concernait le passage d'arguments. Mais nous somme un certain nombre à avoir pris ce changement comme un coup dur. Pour résumer la situation : à la sortie...
Cliquez pour lire la suite de l'article par JeremyJeanson [RIA SERVICES] INCLUDE ET DOMAINDATASOURCE[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE par Audrey
Dans un de mes articles précédents , j'avais parlé des DomainDataSource avec RIA Services dans le cas d'une interface Maître - Détail. Dans le même principe, je vais parler d'une autre manière de mettre en forme ce cas d'interface avec RIA Services. Et po...
Cliquez pour lire la suite de l'article par Audrey ZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATIONZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATION par ROMELARD Fabrice
Une des nouveautés de la version V 3.0 était l'apparition de l'onglet Social qui ne fonctionnait que si le MarketPlace était activé sur son poste. Cela limitait donc son intérêt, car hors du cadre commercial USA-CANADA, peu de monde trouva...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
éditions PEARSON
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abor...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|