begin process at 2010 02 09 19:13:41
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

AddOns

 > AWAY SYSTÈME ÉVOLUÉ, SIMPLE ET CLAIR :)

AWAY SYSTÈME ÉVOLUÉ, SIMPLE ET CLAIR :)


 Information sur la source

Note :
1,4 / 10 - par 5 personnes
1,40 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :AddOns Classé sous :away, absence Niveau :Débutant Date de création :11/08/2006 Date de mise à jour :13/08/2006 13:20:36 Vu / téléchargé :2 464 / 112

Auteur : demo_jouable

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

 Description

Cliquez pour voir la capture en taille normale
Alors comme indiqué dans le titre, c'est un système d'away... mais attendez un peu avant de gueuler!

J'ai essayé de m'appliquer tant au niveau de la prog qu'au niveau de l'utilité de ce dialog pr finalement en faire un outil rapide et (allons jusque là! :)) agréable à utiliser :
Il permet de spécifier bien entendu un message d'away au choix, mais aussi un message de répondeur pour les PVS, et aussi un suffixe à ajouter à votre pseudo, qui sera enlevé une fois votre absence terminée.

En outre, tant que l'away système est activé, il stocke tous les messages provenant des salons dans lequel votre pseudo a été prononcé, et il suffit pour les voir de cliquer sur le bouton "Messages" affublé du nombre de messages reçus. Sans bugs pour moi, mais si vous en voyez n'hésitez pas à me les faire signaler :)

Je tiens aussi à dire que c'est ma première source "officielle", car c'est la toute première que je poste (j'en ai en réalité codé un paquet d'autres :p), donc soyez indulgents! En revanche, si vous remarquez quoi que ce soit au niveau de l'optimisation du code, soyez gentils de me faire parvenir vos suggestions :)... Bien entendu, une note serait sympathique ^^

Voilà voilà :p

Source

  • alias console {
  • dialog -m console console
  • }
  • dialog console {
  • size -1 -1 160 500
  • title "Away Système"
  • icon 1,0 0 160 1500,images\bgdock.png,noborder
  • button "Partir",2,5 124 60 25,flat
  • button "Revenir",3,75 124 60 25,flat, ok
  • button "Messagerie(0)",11,5 154 130 25,flat
  • text "Raison de l'absence",5,10 4 110 22 8
  • edit %awayraison,6,5 19 130 22 15,autohs
  • text "Message du répondeur",7,10 44 110 22 8
  • edit %repawaymsg,8,5 59 130 22 15,autohs
  • text "Ajouter au pseudo",9,10 84 110 22 8
  • edit %awaynick,10,5 99 130 22 15,autohs
  • }
  • #rep off
  • on *:open:?: {
  • msg $nick 7,0(>>Répondeur d'absence<<) 14[> $+ 10 $+ %repawaymsg $+ 14,0<]
  • }
  • #rep end
  • #msgserv off
  • on *:text:*:*: {
  • if ($me isin $strip($1-)) {
  • write textes\messagerie.txt 10,0 $+ $timestamp 4 $+ $nick 10sur 4 $+ $chan 14[> $+ $1- $+ 14,0<]
  • did -r away 11
  • did -a away 11 Messages( $+ $lines(textes\messagerie.txt) $+ )
  • }
  • }
  • #msgserv end
  • on *:dialog:console:sclick:*: {
  • if ($did == 11) { messagerievoir }
  • if ($did == 2) {
  • set %awayraison $did(away,6)
  • set %repawaymsg $did(away,8).text
  • set %awaynick $did(away,10).text
  • set %actunick $me
  • set %awaytime $time
  • //nick $me $+ %awaynick
  • enable #rep | enable #msgserv
  • ame 10,0est 7(>>away<<) 10pour la raison suivante 14[>  $+ 1 $+ %awayraison $+ 14,0 <]10 à 14[> $+ 1 %awaytime $+ 14,0<]
  • set %awayminutes 0 | timer1 0 60 /inc %awayminutes 1
  • set %awayheures 0 | timer11 0 3600 /inc %awayheures 1
  • timer111 0 3600 /set %awayminutes 0
  • set %awaysecondes 0 | timer1111 0 1 /inc %awaysecondes 1 | timer11111 0 60 /set %awaysecondes 0
  • }
  • if ($dname == 3) {
  • ame 10,0est revenu; la raison de son absence était : 14[>  $+ 1 $+ %awayraison $+ 14,0 <]10. Il est partit pendant 14[> $+ 1 %awayheures $+ h %awayminutes $+ min %awaysecondes $+ sec $+ 14,0 <]
  • disable #rep
  • disable #msgserv
  • unset %awayraison
  • unset %repawaymsg
  • unset %awaynick
  • unset %awaybacktime
  • unset %awaytime - awaybacktime
  • nick %actunick
  • unset %actunick
  • unset %awayheures
  • unset %awayminutes
  • unset %awaysecondes
  • write -c textes\messagerie.txt
  • }
  • if ($did == 11) {
  • if ($window(@Messages)) { clear @Messages }
  • if (!$window(@Messages)) { window @Messages }
  • loadbuf @Messages $shortfn(textes\messagerie.txt)
  • }
  • }
  • on *:dialog:console:init: {
  • dll dlls\MDX.dll SetMircVersion $version
  • dll dlls\MDX.dll MarkDialog $dname
  • dll dlls\MDX.dll SetColor $dname 2,3,5,7,9,11 textbg $rgb(51,153,102)
  • dll dlls\MDX.dll SetColor $dname 2,3,5,7,9,11 background $rgb(192,192,192)
  • }
alias console {
  dialog -m console console
}

dialog console {
  size -1 -1 160 500
  title "Away Système"
  icon 1,0 0 160 1500,images\bgdock.png,noborder
  button "Partir",2,5 124 60 25,flat
  button "Revenir",3,75 124 60 25,flat, ok
  button "Messagerie(0)",11,5 154 130 25,flat
  text "Raison de l'absence",5,10 4 110 22 8
  edit %awayraison,6,5 19 130 22 15,autohs
  text "Message du répondeur",7,10 44 110 22 8
  edit %repawaymsg,8,5 59 130 22 15,autohs
  text "Ajouter au pseudo",9,10 84 110 22 8
  edit %awaynick,10,5 99 130 22 15,autohs
}

#rep off
on *:open:?: {
  msg $nick 7,0(>>Répondeur d'absence<<) 14[> $+ 10 $+ %repawaymsg $+ 14,0<]
}
#rep end

#msgserv off
on *:text:*:*: {
  if ($me isin $strip($1-)) {
    write textes\messagerie.txt 10,0 $+ $timestamp 4 $+ $nick 10sur 4 $+ $chan 14[> $+ $1- $+ 14,0<]
    did -r away 11
    did -a away 11 Messages( $+ $lines(textes\messagerie.txt) $+ )
  }
}
#msgserv end

on *:dialog:console:sclick:*: {
  if ($did == 11) { messagerievoir }
  if ($did == 2) {
    set %awayraison $did(away,6)
    set %repawaymsg $did(away,8).text
    set %awaynick $did(away,10).text
    set %actunick $me
    set %awaytime $time
    //nick $me $+ %awaynick
    enable #rep | enable #msgserv
    ame 10,0est 7(>>away<<) 10pour la raison suivante 14[>  $+ 1 $+ %awayraison $+ 14,0 <]10 à 14[> $+ 1 %awaytime $+ 14,0<]
    set %awayminutes 0 | timer1 0 60 /inc %awayminutes 1
    set %awayheures 0 | timer11 0 3600 /inc %awayheures 1
    timer111 0 3600 /set %awayminutes 0
    set %awaysecondes 0 | timer1111 0 1 /inc %awaysecondes 1 | timer11111 0 60 /set %awaysecondes 0
  }
  if ($dname == 3) {
    ame 10,0est revenu; la raison de son absence était : 14[>  $+ 1 $+ %awayraison $+ 14,0 <]10. Il est partit pendant 14[> $+ 1 %awayheures $+ h %awayminutes $+ min %awaysecondes $+ sec $+ 14,0 <]
    disable #rep
    disable #msgserv
    unset %awayraison 
    unset %repawaymsg 
    unset %awaynick
    unset %awaybacktime
    unset %awaytime - awaybacktime
    nick %actunick
    unset %actunick
    unset %awayheures
    unset %awayminutes
    unset %awaysecondes
    write -c textes\messagerie.txt
  }
  if ($did == 11) {
    if ($window(@Messages)) { clear @Messages }
    if (!$window(@Messages)) { window @Messages }
    loadbuf @Messages $shortfn(textes\messagerie.txt)
  }
}

on *:dialog:console:init: {
  dll dlls\MDX.dll SetMircVersion $version
  dll dlls\MDX.dll MarkDialog $dname
  dll dlls\MDX.dll SetColor $dname 2,3,5,7,9,11 textbg $rgb(51,153,102)
  dll dlls\MDX.dll SetColor $dname 2,3,5,7,9,11 background $rgb(192,192,192)
}

 Conclusion

boarf j'ai pas trop de site où exposer mes créations donc voilà quoi :p, et puis j'en ai assez dit dans l'en-tête non? :D

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

13 août 2006 13:19:19 :
optimisation du code
13 août 2006 13:20:36 :
re-optimisation, après la vue d'une erreur :p

 Sources de la même categorie

BLACKLIST PSEUDOS/MASKS par usurpateur
Source avec une capture [XCHAT] ANTI KICK / AWAY C++ par GeroXXXX
JEU DU CODE par alanpersonproject
SERVEUR FTP par hisoka2501
BANNIR LES AGES, LES HOMMES, LES FEMMES ET PSEUDO AVEC CHIFF... par cougar_du_havre

 Sources en rapport avec celle ci

Source avec une capture [XCHAT] ANTI KICK / AWAY C++ par GeroXXXX
[XCHAT] [PERL] ANTI-KICK + AWAY par GeroXXXX
Source avec une capture AWAY BY MSK par devorZ
SYSTÈME D'AWAY AVEC CHANS D'AFFICHAGE CONFIGURABLES par space_power
SYSTEME D'AWAY EN DIALOG par KainKiller

Commentaires et avis

Commentaire de RCA ArKanis le 11/08/2006 13:10:54

  unset %awayraison
  unset %repawaymsg
  unset %awaynick
  ... etc
devient : unset %awayraison %repawaymsg %awaynick ... etc


on *:text:*:*: {
  if ($me isin $strip($1-)) {
    write messagerie.txt 10,0 $+ $timestamp 4 $+ $nick 10sur 4 $+ $chan 14[> $+ $1- $+ 14,0<]
  ...
c'est un ON TEXT qui peut aussi se déclencher pour un PV, donc $chan peut-être nul. Corrige ça

Tu utilises des variables globales, j'aime pas :/

  if ($window(@Messages)) { clear @Messages }
  if (!$window(@Messages)) { window @Messages }
tu connais "else" (sinon)
if ($window(@Messages)) clear @Messages
else window @Messages
(les { } font ralentir le code quand il n'y a qu'une action)

alias away {
  dialog -m away away
}
mets plutôt ça :
alias away if (!$dialog(away)) dialog -m away away
sinon t'auras une erreur si tu tapes 2x /away

    did -r away 11
    did -a away 11 Messages( $+ $lines(messagerie.txt) $+ )
devient : /did -ra away 11 Messages( $+ $lines(messagerie.txt) $+ )
puis qui te dit que le dialog "away" est ouvert ? c'est un on text, il peut très bien être fermé ...

regroupe tes ON DIALOG :
on *:dialog:away:sclick:*:{
  if ($did == ...) { ... }
  elseif ($did == ...) { ... }
}

//nick $me $+ %awaynick
les // ne servent à rien du tout ...
devient : nick $+($me,%awaynick)

niveau originalité : c'est nul
code : moyen
utilité : assez réduite
tu aurais pu imaginer quelqu'un chose en plus, du genre un historique ou autre
Pense aussi à utiliser la fonction /away de mIRC. Elle est très utile et au moins elle apparaît quand on /whois
Vu que tu as un alias away, pour modifier l'away de mIRC, tu devras utiliser /raw away

Commentaire de PaDa le 11/08/2006 13:57:51

Le titre m'a intrigué, mais finalement c'est rigolo. J'te mets 1/10 étant donné que comme d'hab, cette source ne tient aucun compte des deux remarques systématiques ici : PAS DE VARS GLOBALES, et REGROUPEZ VOS ON DIALOG.
Je suppose qu'ArKanis a tout dit sinon, j'ai pas lu.
Courage camarades =]

Commentaire de KiNdErMaXi le 11/08/2006 15:54:48

Je rajouterai qu'il faut utiliser les identifieurs mIRC au lieu de set des var inutiles

$away $awaymsg $awaytime

Dans ton cas, tu gagne 4 variables il me semble

Commentaire de Huitre le 11/08/2006 19:35:23

lol.

1/10.

Voir les commentaires des 15 derniers away system (qui sont aussi mals codés).

Commentaire de Panthouffle le 11/08/2006 23:59:54

Y'a des choses qui cloche dans le titre de ton code "AWAY SYSTÈME ÉVOLUÉ, SIMPLE ET CLAIR :)"
évolué et simple à la fois, et on dit "système d'absence" (limite "système d'away"), sinon j'préfère changer mon nick moi même plutôt que d'utiliser un addon qui m'allongerais la tâche..

Commentaire de MJ92 le 04/09/2006 22:48:09

Hum... évolué... mouais, perso je préfère "me prendre la tête" (car c'est pas le cas) avec le /away et un message que tu tape sur mIRC, qui est également visible lors d'un /whois, que d'utilisé un addon qui fait 80 lignes, et qui, peut être optimiser je pense ... alors que sur mIRC t'as /away message pour l'activer et /away pour le désactiver ...

Bref... Bonne continuation.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Il était away depuis 19min54s... [ par NicX ] Bonjour,comme l'indique le titre,je voudrais calculer la durée de mon absence..je sais plus trop ce qu'il faut utiliser,se serait sympa de me filer un pour chrono sur les away [ par FyLiPuSsE ] bonjour je vrourai savoir comment fais t on un chrono sur les away :-) Away sur plusieurs servers en meme tps [ par Jipem ] Bonjour,J'ai un probleme existentiel que je n'arrive pas a régler :(Dans mon systeme d'away je voudrais laisser le choix entre : "Se mettre away sur c Auto-away au bout de X minutes... [ par Millardo ] J'aimerais faire un auto away au bout de x minutes.Avec un auto deop/dehalfop.Alors j'avais pensé à :on *:connect: {timerIDLE 0 30 {if ( $idle &gt;= $ j'ai un probleme avec un systeme d'away [ par lynk ] http://www.ircfr.com/article.aspx?ID=519je n'arrive pas a le lancer, pourtant tout a l'ai de fonctionner mais je n'arrive pas a savoir ce que je dois Commande en Remote multi server [ par Gouje ] SAlutJ'aimerai savoir si on peut associer une remote a un server ...je m'explik ....Je voudrai par exemple ke lorske je fais /away ca fasse /nick %pse systeme away help plz [ par ketamin ] voila j ai toruver un systee away simple mais le message s affiche en /me en violer moi ej voudrais ki soit en/say come si j ecrivais un mess normale away [ par yoyo1990 ] pourkoi quand je vais en away sa marque You are no longer marked as being awaysvp réponder moi vite a cradl3@msn.com pcq je veux faire mon script le p systeme away [ par ketamin ] voila j aimerais avoir un menue deroulent ds mon systeme away pour choisir un pseudo parmit une liste je vous met le script deja fait au dessoups je d away system. [ par tofu ] un petit screenshot du system d'away que je suis en trin de faire.avis, commentaires, idées à rajouter, insultes, menaces de mort?----tofu\


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

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 : 1,186 sec (4)

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