Partage de fichiers (assez complexe mais vous pouvez télécharger le zip si vous ne cherchez pas à apprendre :d)

Description

Partage de fichiers; Pub, Anti-Pub, Envoi Automatique, Liste des fichiers (dans un fichier), Désactivation du script, Rapport d'erreurs, Rapport de Commentaires, Away, Disable.

Source / Exemple :


; Script dans les remote:
on 1:CONNECT:{
  if (diboo isin $server) { 
;Si vous ètes conneté sur diboo.
    /set %sharet $read(share.txt,2) 
;Load le nombre de fichiers à partager
    return 
;Un peu comme un else.
}
  set %dis 0 
;Si on est pas sur diboo le script est désactivé.
}
on *:TEXT:!nopub:*:{ 
;Si on reçois !nopub.
  if (%dis == 0) { 
; Si le script est désactivé on l'éxécute pas
    return
  }
  if ($len($read(C:\mIRC\antipub.txt, w, $nick)) == 0 ) { 
;Si on est pas deja dans la liste de l'antipub.
    write C:\mIRC\antipub.txt $nick 
;On écrit le nom de celui qui envoies le message.
    /msg $nick 5Ton nom à été ajouté à la liste de 12L'anti Pub5 mais tu auras toujours accès aux commandes 12!aide, !download, !erreur, !commentaire et !nopub5 . 
;Message apès avoir été ajouté
    /msg $nick 12Note: 3 Il est possible que ton nom retournes dans la liste de ceux qui reçoivent la Pub dans ce cas retapes !nopub et écris moi un rapport d'erreur en utilisant 4!erreur <Description de l'erreur2(30 mots Maximum)4> 3.
    close -cm $nick 
; Ferme la fenêtre de PV (Sinon on se retrouve avec plein de fenètres de PV inutiles.
    return 
; Une sorte de else. Si la personne est deja dans la liste de l'antipub. 
  }
  /msg $nick 5Ton nom est deja dans la liste de 12L'anti Pub5 mais si tu reçois toujours la Pub écris moi un rapport d'erreur en utilisant 4!erreur <Description de l'erreur2(30 mots Maximum)4> 5. 
;Message si on est deja dans la liste de l'antipub
  close -cm $nick 
; Ferme la fenêtre de PV (Sinon on se retrouve avec plein de fenètres de PV inutiles.

}
on *:TEXT:!aide:*:{ 
; Si on recois !aide
  if (%dis == 0) { 
; Si le script est désactivé on ne l'exécute pas
    return
  }
  msg $nick 3Chargement de la liste des fichiers en cours... 2(Cela peut prendre quelques secondes)
; Messages avant la liste des fichiers.
  msg $nick 5Voici la liste des fichiers Visual Basic que je peut te fournir pour t'aider. 2( $+ %sharet $+ ) 
  set %temp 3 
; Début du fichier
  set %temp2 %sharet + 3 
;Fin du fichier
  while (%temp < %temp2) { 
;Tant qu'on est pas à la fin de la liste
    set %temp3 %temp - 2 
    /msg $nick 12 $+ %temp3 $+ )2 $read(c:\mirc\share.txt,%temp) 
; On charge les sources et les affichent.
    inc %temp 
; On passe à la ligne suivante
  }
  msg $nick 7Pour télécharger un fichier tapes !download <Numero> ;Message après la liste de fichiers.
  msg $nick 12Note: 5Le script qui te réponds présentement est toujours en version "Beta" donc il est normal qu'il y ait des erreurs.
  msg $nick 5Si tu trouves une erreur tapes 4!erreur <Description de l'erreur2(30 mots Maximum)4>
  msg $nick 5Pour tes commentaires tapes 4!commentaire <Commentaire2(30 mots Maximum)4>
  close -cm $nick 
;On ferme la fenêtre de PV (sinon on se retrouve avec plein de fenètres inutiles.
}
on *:TEXT:!download*:*:{ ;Si on recois !download
  if (%dis == 0) { 
;Si le script est désactivé on ne l'exécute pas.
    return
  }
  set %temp %sharet + 4 + $2 
; On calcule la position du chemin du fichier sélectionné dans la liste.
  set %file $read(c:\mirc\share.txt,%temp) 
; On charge le chemin du fichier sélectionné

  if (%file == $null) { 
; Si le fichier n'existe pas.
    /msg $nick 5Aucun fichier ne correspond à la demmande.
 ;Message si le fichier n'existe pas.
    close -cm $nick ; On ferme la fenêtre de PV (sinon on se retrouve avec plein de fenètres inutiles).
    return 
; Arrèt du script si le fichier n'existe pas sinon ça continue plus loin.
  }
  /dcc send $nick $file 
; Envoi du fichier.
  /msg $nick 5Envoi du fichier en cours... 
; Message quand on envoies le fichier.
  close -cm $nick 
; On ferme la fenètre de PV (sinon on se retrouve avec plein de fenètres inutiles).
}
on *:TEXT:!erreur*:*:{ 
; Si on reçois !erreur
  if (%dis == 0) { 
; Si le script est désactivé on ne l'exécutes pas.
    return
  }
  write c:\mirc\erreurs.txt $nick : $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 
; On écrit les 30 premiers mots de l'erreur dans le fichier.
  msg $nick 5Rapport envoyé pour l'erreur: $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 
; Message après avoir enregistré l'erreur.
  close -cm $nick 
; On ferme la fenêtre de PV (sinon on se retrouve avec plein de fenètres inutiles).
}
on *:TEXT:!commentaire*:*:{ ;Si on reçois !commentaire
  if (%dis == 0) { 
; Si le script est désactivé on ne l'exécutes pas.
    return
  }
  write c:\mirc\commentaires.txt $nick : $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 
; On écrit les 30 premiers mots du commentaire dans le fichier.
  msg $nick 5Rapport envoyé pour le commetaire: $2 $3 $4 $5 $6 $7 $8 $9 $10 $11 $12 $13 $14 $15 $16 $17 $18 $19 $20 $21 $22 $23 $24 $25 $26 $27 $28 $29 $30 
; Message après avoir enregistré le commentaire.
  close -cm $nick ; On ferme la fenêtre de PV (sinon on se retrouve avec plein de fenètres inutiles).
}
on 1:FILESENT:*:{ 
; Quand le fichier est envoyé.
  if (%dis == 0) {  
; Si le script est désactivé on ne l'exécutes pas.
    return
  }
  msg $nick 5Fichier envoyé avec succès. 
; Message quand le fichier est envoyé.
  close -cms $nick 
; On ferme la fenêtre d'envoi de fichier (Sinon on se retrouve avec plein de fenètres inutiles).
}
on 1:SENDFAIL:*:{ 
; Si il y a une erreur lors de l'envoi du fichier.
  if (%dis == 0) { 
; Si le script est désactivé on ne l'exécutes pas.
    return
  }
  msg $nick 5Erreur lors de l'envoi du fichier.
  ; Message quand il y a une erreur lors l'evoi de fichier.
  close -cms $nick 
; On ferme la fenêtre d'envoi de fichier (Sinon on se retrouve avec plein de fenètres inutiles). 
}
on *:TEXT:*:?: { 
; Si on reçois du texte en PV.
  if (%dis == 0) { 
; Si le script est désactivé on ne l'exécutes pas.
    return
  }
  if ($nick == $me) { 
; Si on s'écrit soi meme on n'exécutes pas le script.
    return
  }  
  if (%awayv == 1) {  
; Si on est away.
    if ($1 == !aide) || ($1 == !download) || ($1 == !erreur) || ($1 == !commentaire) || ($1 == !nopub) { 
; Si ce n'est pas une commande.
      return
    }      
    /msg $nick 5Je suis très loin de mon ordinateur mais j'accepterai toujours les commande 12!aide, !download, !erreur et !commentaire 5 pour vous rendre service le plus possible! 
; Message si on remplis toutes les conditions.
  }
}
menu channel,status { 
;Menu des channel et du status.
$iif(diboo.net !isin $server  ,$style(2)) Commandes Diboo 
; Si on est connecté a Diboo on à acces au menu des Commandes Diboo (ce script) mais il y avais d'autres choses dedans (dans une autre de mes sources (Script Diboo)).
  .Script 
;Menu Script
  ..$iif(%awayv == 1,$style(1)) Away:/script away 
;Away, Retour (Crochet quand away)
  ..$iif(%dis == 0,$style(1)) Disable:/script disable 
;Active, désactive le script. (Crochet quand désactivé)
  ..Erreurs
  ...Montrer:/script errors show
  ...Vider:/script errors clear
  ...Montrer et Vider: {
    /script errors show
    /script errors clear
  }
  ..Commentaires
  ...Montrer:/script comments show
  ...Vider:/script comments clear
  ...Montrer et Vider: {
    /script errors show
    /script errors clear
  }
}

on 1:JOIN:#:{
if (%dis == 0) {
  return
}
if ($chan = #programmation) {

  if ($nick == $me) {    
    set %i 1
    :next
    set %nick $nick(#programmation,%i)
    if (%nick == Kheops) {
      return
    }
    if (%nick == $null) goto done
    if ($len($read(C:\mIRC\antipub.txt, w, %nick)) == 0 ) {
      /notice %nick 5Bonjour à toi mon cher ami 2( $+ %nick $+ )5, je vient de te joindre à vous et j'aimerais t'informet que si tu as besoin d'aide tape 4!aide5 et une liste de fichiers que je peut te fournir apparaiteras! 3(J'ai présentement %sharet fichiers que je peut te fournir) 1,8:)
      /notice %nick 12Note: 3 Ceci est un message envoyé automatiquement par un script. Si tu ne veut plus recevoir ce message tape 4!nopub3 1,8:)  
    }
    inc %i
    goto next
    :done
    return
  }
  if ($len($read(C:\mIRC\antipub.txt, w, %nick)) == 0 ) {
    /notice $nick 5Bienvenue à toi mon cher ami 2( $+ $nick $+ )5 qui vient de te joindre à nous! 12 Si tu as besoin d'aide tape 4!aide5 et une liste de fichiers que je peut te fournir apparaiteras! 3(J'ai présentement %sharet fichiers que je peut te fournir) 1,8:)
    /notice $nick 12Note: 3 Ceci est un message envoyé automatiquement par un script. Si tu ne veut plus recevoir ce message tape 4!nopub3 1,8:)  

  }
}

; Script dans les aliases:
/script {
  if ($1 == away) {  
    if (%dis == 0) {
      /titlebar [Script d'aide désactivé]
      return
    }
    if (%awayv == $null) || (%awayv == 0) {
      set %awayv 1
      /amsg 5Je parts très loin de mon ordinateur mais j'accepterai toujours les commandes 12!aide, !download, !erreur, !commentaire et !nopub5 pour vous rendre service le plus possible!
      /titlebar [Script d'aide activé][away]
      return
    }
    set %awayv 0
    /amsg 5Je suis de retour!
    /titlebar [Script d'aide activé]
    return
  }
  if ($1 == disable) {  
    set %awayv 0
    if (%dis == $null) || (%dis == 0) {
      set %dis 1
      /amsg 5Réactivation de script d'aide donc j'accepterai les commandes 12!aide, !download, !erreur et !commentaire5 pour vous rendre service le plus possible!
      /titlebar [Script d'aide activé]
      return
    }
    set %dis 0  
    /amsg 5Désactivation du script d'aide donc les commandes 12!aide, !download, !erreur et !commentaire5 seront innaccesibles.
    /titlebar [Script d'aide désactivé]
    return  
  }
  if ($1 == errors) {
    if ($2 == show) {
      /echo 5Liste des erreurs soummises:
      set %temp 1
      while ($read(c:\mirc\erreurs.txt , %temp) != $null) {
        /echo 2 $+ $read(c:\mirc\erreurs.txt , %temp)
        inc %temp
      }
      return
    }
    if ($2 == clear) {
      /write -c c:\mirc\erreurs.txt 
      /echo 5Liste d'erreurs vidée.
      /echo
      return
    }
    return
  }
  if ($1 == comments) {
    if ($2 == show) {
      /echo 5Liste des commentaires soummis:
      set %temp 1
      while ($read(c:\mirc\erreurs.txt , %temp) != $null) {
        /echo 2 $+ $read(c:\mirc\erreurs.txt , %temp)
        inc %temp
      }
      return
    }
    if ($2 == clear) {
      /write -c c:\mirc\erreurs.txt 
      /echo 5Liste de commentaires vidée.
      /echo
      return
    }
    return
  }
}
/errors {
  if ($1 == show) {
    /echo 5Liste des erreurs soummises:
    set %temp 1
    /set %line création
    while (%line != $null) {
      set %line $read(c:\mirc\erreurs.txt , %temp)      
      /echo 2 %line
      inc %temp
    }
    return
  }
  if ($1 == clear) {
    /write -c c:\mirc\erreurs.txt
    /echo 5Liste d'erreurs vidée.
    /echo
    return
  }
}
/comments {
  if ($1 == show) {
    /echo 5Liste des commentaires soummis:
    set %temp 1
    /set %line création
    while (%line != $null) {
      set %line $read(c:\mirc\erreurs.txt , %temp)      
      /echo 2 %line
      inc %temp
    }
    return
  }
  if ($1 == clear) {
    /write -c c:\mirc\erreurs.txt
    /echo 5Liste de commentaires vidée.
    /echo
    return
  }
}

; Fichier d'erreurs (errors.txt): Vide
; Fichier de commentaires (commentaires.txt): Vide
; Fichier de partage (share.txt):
; (première ligne vide)
; (nombre de sources total)
; (descriptions des sources)
; (5 lignes je crois)
; (chemin des fichiers (meme ordre que les sources))
; Note: Tout les fichiers doivent être dans le même répertoire que MIRC.

Conclusion :


Les Commentaires sont présentés après les commandes car je les avait mit sur la mème ligne mais je viens de me rendre compte que je ne peut pas et c'étais plus simple de faire ça comme ça (comprenez qu'il y a assez de commentaires).

Je n'ais pas mit les commentaires dans le join et dans les aliases car je viens de me rendre compte que j'ai oublier de le mettre et je n'ai pas le gout de le faire mais je le ferai surement à la prochaine version.

Si vous voulez le script mais ne cherchez pas à rien comprendre dans le mirc script téléchargez le c'est beaucoup plus simple :D

Il y a p-e des erreurs à cause des commentaires car je n'ai pas testé la nouvelle version avec les commentaires.

Merci de vos commentaires.
Gorgot
P.S. La nouvelle version qui elle permetteras à plusieurs personnes de partager leurs sources en commun (mettre la liste des fichiers en commun et télécharger selon celui qui la etc etc) car je travaille présentement sur mon forum ASP et sur plusieurs programmes VB.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.