Accueil > > > UN BOT XDCC EN MIRC
UN BOT XDCC EN MIRC
Information sur la source
Description
Bon voila c'est mon tout premier code en irc, il permet d'etre soi meme un bot xdcc qui reagit aux commandes xdcc list, send #pack, remove , donc pour le faire marcher il faut creer un fichier c:\program files\mirc\xdcc.mrc et taper /load -rs xdcc.mrc ds une fenetre qqconque donc tout n'est pas parametrable (le nb de slot et la liste d'attente) mais j'attend toutes vos suggestions pour pouvoir ameliorer mon code
Source
- on *:LOAD:{ echo Script Loaded!
- write -c pack.txt
- dialog -md xdcc_ xdcc_
- }
- ;=================================================================================
- menu channel,menubar {
- XDCC bot
- .gestion du xdcc:dialog -md xdcc_ xdcc_
- }
- ;=================================================================================
- On *:CONNECT: { write -c list.txt }
-
- On *:TEXT:!list:*:{
- notice $nick $me (XDCC) 2 slots d'envoie, liste d'attente de max 10 personnes, $lines(pack.txt) fichiers partagés
- }
-
- On *:TEXT:*xdcc*:?:{
- if ( $2 == list ) { listpack $nick }
- elseif ( $2 == send ) {
- if ( $3 <= $lines(pack.txt) ) addtoqueu $nick $3
- else notice $nick pack non existant
- }
- elseif ( $2 == remove ) { remfrqueu $nick }
- }
-
- On *:SENDFAIL:*: {
- var %lign = 1, %nblines = $lines(list.txt)
- while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,32) != $nick ) {
- inc %lign
- }
- if ( %lign <= %nblines ) {
- notice $nick transfert de $deltok($read(pack.txt,$gettok($read(list.txt,%lign),2,32),1,124) interrompu ... dsl :(
- write -dl %lign list.txt
- dcc send $gettok($read(list.txt,2),1,124)) $gettok($read(pack.txt,$gettok($read(list.txt,2),2,32))),1,124)
- }
- }
-
- on *:FILESENT:*: {
- var %lign = 1, %nblines = $lines(list.txt)
- while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,32) != $nick ) {
- inc %lign
- }
- if ( %lign <= %nblines ) {
- notice $nick transfert de $deltok($read(pack.txt,$gettok($read(list.txt,%lign),2,32)),1,124) accompli
- write -dl %lign list.txt
- dcc send $gettok($read(list.txt,2),1,124)) $gettok($read(pack.txt,$gettok($read(list.txt,2),2,32))),1,124)
- }
- }
-
- alias listpack {
- var %lign = 1, %nblines = $lines(pack.txt)
- notice $1 anime-team's XDCC, 2 slot d'envoie , liste d'attentes $calc( 12 - $lines(pack.txt) )/12
- notice $1 pour avoir un pack, tapez /msg $me xdcc send numero_du_pack
- while ( %lign <= %nblines ) {
- notice $1 pack %lign : $deltok($read(pack.txt,%lign),1,124)
- inc %lign
- }
- notice $1 %nblines fichiers partagés
- }
-
- alias addtoqueu {
- if ( $lines(list.txt) < 12 ) {
- if ( $read(list.txt, w, $1) != $1 ) {
- write list.txt $1 $2
- notice $1 vouz avez été ajouté en position $lines(list.txt)
- if ( $lines(list.txt) < 3 ) {
- notice $1 envoi du pack : $deltok($read(pack.txt,$2),1,124)
- dcc send $1 $gettok($read(pack.txt,$2),1,124)
- }
- }
- else { notice $1 vous ete deja present dans la liste d'attente }
- }
- else { notice $1 liste pleine }
- }
-
-
- alias remfrqueu {
- var %lign = 1, %nblines = $lines(list.txt)
- while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,124) != $1 ) {
- inc %lign
- }
- if ( %lign <= %nblines ) {
- write -dl %lign list.txt
- notice $1 vous avez bien été enlevé de la liste d'attente :)
- }
- else { notice $1 dsl zetes pas dans la liste d'attente :( }
- }
-
- ;========================================================================================
- dialog xdcc_ {
- title "Xdcc"
- size -1 -1 412 129
- option dbu
- button "Ajouter un fichier", 2, 334 11 65 15
- list 1, 9 11 312 105, size
- box "Gestion de votre Xdcc", 7, 3 4 405 116
- button "Supprimer un fichier", 3, 334 32 65 15
- button "Move Up", 5, 334 75 65 15
- button "Modifier une description", 4, 334 53 65 15
- button "Move Down", 6, 334 97 65 15
- }
-
- On *:DIALOG:xdcc_:*:*: {
- if ( $devent == init ) {
- var %lign = 1, %nblines = $lines(pack.txt)
- while ( %lign <= %nblines ) {
- did -a xdcc_ 1 $read(pack.txt,%lign)
- inc %lign
- }
- }
- elseif ( $devent == sclick ) {
- if ( $did == 2 ) {
- var %nam = $sfile(C:\,Ajouter un fichier,Ajouter)
- if ( %nam ) {
- write pack.txt %nam
- did -a xdcc_ 1 %nam
- }
- }
- elseif ( $did == 3 ) {
- if ( $did(1).sel ) {
- write -dl $did(1).sel pack.txt
- did -d xdcc_ 1 $did(1).sel
- }
- }
- elseif ( $did == 4 ) {
- if ( $did(1).sel ) {
- var %temp = $read(pack.txt,$gettok($did(1).sel,1,124))
- write -l $did(1).sel pack.txt $+(%temp,|,$?=" $+(entrez une description pour le fichier,$chr(32),%temp) ")
- did -o xdcc_ 1 $did(1).sel $read(pack.txt,$did(1).sel)
- }
- }
- elseif ( $did == 5 ) {
- if ( $did(1).sel ) {
- if ( $calc( $did(1).sel - 1 ) > 0 ) {
- var %temp = $read(pack.txt,$did(1).sel) , %did_ = $did(1).sel , %didm_ = $calc( $did(1).sel - 1 )
- did -o xdcc_ 1 %didm_ %temp
- did -o xdcc_ 1 %did_ $read(pack.txt,%didm_)
- write -l %did_ pack.txt $read(pack.txt,%didm_)
- write -l %didm_ pack.txt %temp
- }
- }
- }
- elseif ( $did == 6 ) {
- if ( $did(1).sel ) {
- if ( $calc( $did(1).sel + 1 ) <= $lines(pack.txt) ) {
- var %temp = $read(pack.txt,$did(1).sel) , %did_ = $did(1).sel , %didm_ = $calc( $did(1).sel + 1 )
- did -o xdcc_ 1 %didm_ %temp
- did -o xdcc_ 1 %did_ $read(pack.txt,%didm_)
- write -l %did_ pack.txt $read(pack.txt,%didm_)
- write -l %didm_ pack.txt %temp
- }
- }
- }
- }
- }
on *:LOAD:{ echo Script Loaded!
write -c pack.txt
dialog -md xdcc_ xdcc_
}
;=================================================================================
menu channel,menubar {
XDCC bot
.gestion du xdcc:dialog -md xdcc_ xdcc_
}
;=================================================================================
On *:CONNECT: { write -c list.txt }
On *:TEXT:!list:*:{
notice $nick $me (XDCC) 2 slots d'envoie, liste d'attente de max 10 personnes, $lines(pack.txt) fichiers partagés
}
On *:TEXT:*xdcc*:?:{
if ( $2 == list ) { listpack $nick }
elseif ( $2 == send ) {
if ( $3 <= $lines(pack.txt) ) addtoqueu $nick $3
else notice $nick pack non existant
}
elseif ( $2 == remove ) { remfrqueu $nick }
}
On *:SENDFAIL:*: {
var %lign = 1, %nblines = $lines(list.txt)
while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,32) != $nick ) {
inc %lign
}
if ( %lign <= %nblines ) {
notice $nick transfert de $deltok($read(pack.txt,$gettok($read(list.txt,%lign),2,32),1,124) interrompu ... dsl :(
write -dl %lign list.txt
dcc send $gettok($read(list.txt,2),1,124)) $gettok($read(pack.txt,$gettok($read(list.txt,2),2,32))),1,124)
}
}
on *:FILESENT:*: {
var %lign = 1, %nblines = $lines(list.txt)
while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,32) != $nick ) {
inc %lign
}
if ( %lign <= %nblines ) {
notice $nick transfert de $deltok($read(pack.txt,$gettok($read(list.txt,%lign),2,32)),1,124) accompli
write -dl %lign list.txt
dcc send $gettok($read(list.txt,2),1,124)) $gettok($read(pack.txt,$gettok($read(list.txt,2),2,32))),1,124)
}
}
alias listpack {
var %lign = 1, %nblines = $lines(pack.txt)
notice $1 anime-team's XDCC, 2 slot d'envoie , liste d'attentes $calc( 12 - $lines(pack.txt) )/12
notice $1 pour avoir un pack, tapez /msg $me xdcc send numero_du_pack
while ( %lign <= %nblines ) {
notice $1 pack %lign : $deltok($read(pack.txt,%lign),1,124)
inc %lign
}
notice $1 %nblines fichiers partagés
}
alias addtoqueu {
if ( $lines(list.txt) < 12 ) {
if ( $read(list.txt, w, $1) != $1 ) {
write list.txt $1 $2
notice $1 vouz avez été ajouté en position $lines(list.txt)
if ( $lines(list.txt) < 3 ) {
notice $1 envoi du pack : $deltok($read(pack.txt,$2),1,124)
dcc send $1 $gettok($read(pack.txt,$2),1,124)
}
}
else { notice $1 vous ete deja present dans la liste d'attente }
}
else { notice $1 liste pleine }
}
alias remfrqueu {
var %lign = 1, %nblines = $lines(list.txt)
while ( %lign <= %nblines && $gettok($read(list.txt,%lign),1,124) != $1 ) {
inc %lign
}
if ( %lign <= %nblines ) {
write -dl %lign list.txt
notice $1 vous avez bien été enlevé de la liste d'attente :)
}
else { notice $1 dsl zetes pas dans la liste d'attente :( }
}
;========================================================================================
dialog xdcc_ {
title "Xdcc"
size -1 -1 412 129
option dbu
button "Ajouter un fichier", 2, 334 11 65 15
list 1, 9 11 312 105, size
box "Gestion de votre Xdcc", 7, 3 4 405 116
button "Supprimer un fichier", 3, 334 32 65 15
button "Move Up", 5, 334 75 65 15
button "Modifier une description", 4, 334 53 65 15
button "Move Down", 6, 334 97 65 15
}
On *:DIALOG:xdcc_:*:*: {
if ( $devent == init ) {
var %lign = 1, %nblines = $lines(pack.txt)
while ( %lign <= %nblines ) {
did -a xdcc_ 1 $read(pack.txt,%lign)
inc %lign
}
}
elseif ( $devent == sclick ) {
if ( $did == 2 ) {
var %nam = $sfile(C:\,Ajouter un fichier,Ajouter)
if ( %nam ) {
write pack.txt %nam
did -a xdcc_ 1 %nam
}
}
elseif ( $did == 3 ) {
if ( $did(1).sel ) {
write -dl $did(1).sel pack.txt
did -d xdcc_ 1 $did(1).sel
}
}
elseif ( $did == 4 ) {
if ( $did(1).sel ) {
var %temp = $read(pack.txt,$gettok($did(1).sel,1,124))
write -l $did(1).sel pack.txt $+(%temp,|,$?=" $+(entrez une description pour le fichier,$chr(32),%temp) ")
did -o xdcc_ 1 $did(1).sel $read(pack.txt,$did(1).sel)
}
}
elseif ( $did == 5 ) {
if ( $did(1).sel ) {
if ( $calc( $did(1).sel - 1 ) > 0 ) {
var %temp = $read(pack.txt,$did(1).sel) , %did_ = $did(1).sel , %didm_ = $calc( $did(1).sel - 1 )
did -o xdcc_ 1 %didm_ %temp
did -o xdcc_ 1 %did_ $read(pack.txt,%didm_)
write -l %did_ pack.txt $read(pack.txt,%didm_)
write -l %didm_ pack.txt %temp
}
}
}
elseif ( $did == 6 ) {
if ( $did(1).sel ) {
if ( $calc( $did(1).sel + 1 ) <= $lines(pack.txt) ) {
var %temp = $read(pack.txt,$did(1).sel) , %did_ = $did(1).sel , %didm_ = $calc( $did(1).sel + 1 )
did -o xdcc_ 1 %didm_ %temp
did -o xdcc_ 1 %did_ $read(pack.txt,%didm_)
write -l %did_ pack.txt $read(pack.txt,%didm_)
write -l %didm_ pack.txt %temp
}
}
}
}
}
Conclusion
donc y'a pê des erreurs etc et j'attend vraiment vraiment vraiment vraiment impatiemment toutes vos suggestions pour l'ameliorer , l'optimiser etc ... merci infiniment pour tout vos commentaires !
Historique
- 21 août 2005 17:15:38 :
- eu j'av oublié un truc lol dsl
- 21 août 2005 18:37:08 :
- code eclairci
variable locale ds certain remote
- 21 août 2005 18:54:16 :
- remplacement des variables inutiles par des arguments pour fonction
- 21 août 2005 21:22:03 :
- des optimisations ds les boucles
- 22 août 2005 20:19:33 :
- ajout d'un dialogue pour parametrer les fichiers partagées !
- 22 août 2005 22:10:42 :
- correction de bugs / mise sous forme *.mrc / ajout d'un zip & d'un apercu
- 23 août 2005 00:00:24 :
- rajout du !list
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
installer un bot sur son canal [ par BlackWizzard ]
salut! tt le monde!je voudrais savoir comment instaler et administrer un bot sur un channel (le mien C #hackz sur irc.respublica.fr)...G deja un bot m
créer un bot sous quakenet [ par benlesurvivant ]
est-ce que kkun pourrais m'epliquer comment créer un bot sous quakenet. Merci d'avance :-)
Améliorer un bot pour un chan de clan counter-strike [ par JeKto ]
Salut !Je voudrai améliorer mon bot pour mon clan j'ai dejà quelsues commandes TEXT mais je voudrai par exemple que le bot guarde en memoire le nick d
Serveur IRC [ par Delirium ]
Hello :)J'ai crée un nouveau petit reseau IRC dont le but est^la convivialité !!pour le moment il n'est pas encore "super" fréquanté mais avec des gen
BoT Tid@m (NB s'abstenir ;) [ par Tidam ]
Voila C tre simple meme la reponse doit etre simple mais j'arrive po a trouver Tout ce que je ve c'est que quand qq'un me dit qqe chose le bot crée un
bot pickup [ par Goofa ]
Salut, je souhaite creer ou trouver un bot irc afin d'organiser des pickup , si qqn pouvais m'expliquer comment faire, thx.
xdcc [ par usher ]
bonjour je voudrais savoir comment on pourrais prendre des xdcc abandonnés si vous savez merci bien de me repondre
-= Access à un Bot =- [ par Nancy ]
Salut la gang! Bon, j'ai un tit probleme :( J'aimerais faire une ligne de commande à mon bot pour ajouter quelqun automatiquement à mon Bot .Qqn pourr
voila wandoo bot www.demande-gev.fr.st [ par HatMan ]
vous avez fait une demande d'irix mais il ne veut pas de votre salon sur sont whoisfaite une demande de Gevwww.demande-gev.fr.stvoila alors si vous vo
Un léger problème de $ial [ par KaRiLLe ]
Bonjour tout le monde :))Je me permets d'écrire parce que j'ai un léger problème dans une de mes lignes de code mirc pour mon bot! En fait, je voudrai
|
Derniers Blogs
[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA[MIX10] KEYNOTE DEUXIèME JOURNéE - INTERNET EXPLORER 9, HTML5, VISUAL STUDIO 2010, ODATA par cyril
Le deuxième keynote du mix fut très riche en contenu. Internet Explorer 9 Juste un après le lancement de Internet Explorer 8, Microsoft a dévoilé les nouveautés de Internet Explorer 9. Désormais, IE supportera HTML5, SVG et CSS3. L'élément ...
Cliquez pour lire la suite de l'article par cyril CERTIFICATIONS BETA .NET 4CERTIFICATIONS BETA .NET 4 par KooKiz
Les inscriptions pour les certifications beta .NET 4 ont commencé. L'inscription est offerte pour les examens suivants : - 71-511, TS: Windows Applications Development with Microsoft .NET Framework 4 - 71-515, TS: Web Applications Development with...
Cliquez pour lire la suite de l'article par KooKiz [MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2[MIX 2010] - MICROSOFT TRANSLATOR TECHNOLOGY PREVIEW V2 par redo
J'imagine que la plupart d'entre vous connaissent bien et utilisent le service de traduction de Google, mais connaissez-vous celui de Microsoft . Microsoft Translator ? Effectivement, Microsoft nous annoncé le lancement version 2 de la Technologie Preview...
Cliquez pour lire la suite de l'article par redo LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010!LANCEMENT EN PREVIEW DE CYCLONE LORS DES TECHDAYS 2010! par MPOWARE
Toutes les vidéos de ce lancement sont en ligne!
Partie I - Intro
http://www.youtube.com/watch?v=LkQzTQ8T6CA
Partie II - Démo 1
http://www.youtube.com/watch?v=drAhYQ7lqvo
Partie III - Démo 2
http://www.youtube.com/watch?v=c8KM_1Gqybc...
Cliquez pour lire la suite de l'article par MPOWARE
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
|