On* join $nick est entré avant sous ancien $nick

Résolu
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009 - 24 juin 2007 à 02:08
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009 - 27 juin 2007 à 05:31
salut tout le monde !

Avec un niveau halfop et supérieur, quand un nick entre après avoir changé de pseudo  une annonce du serveur dit:
"nick est entré avant comme ancien_nick".

Ce message restreint (aux modérateurs et op) n'est pas vu par les users présents.

Par contre, si  un user change sur le $chan, tout le monde le voit par  "
on 1:NICK:/echo $newnick a changé de pseudo pour $nick" donné par le serveur sur le géné des messages.


J'ai envie (parfois) de faire "tomber" le masque...je m'explique:

quand certains abusent avec de multiples accès et multiples pseudos,
j'aimerais que soudain ladite info serveur s'affiche sur le général !
histoire de calmer le jeu...

Est ce possible..? ; )

merci pour les pistes ! (ou pour le code...)

 

20 réponses

cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
27 juin 2007 à 01:22
Je t'ai dis de laissé l'echo et de rajouter un msg,
Avant de tenté nimporte quoi, regarde au moins a quoi servent les commandes :
/help /msg
/help /echo
bref met ça :
if ($kprot(#,4) 1) if ($_ca(rnick,$site,$nick)) var -s %ea �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;)
if ($kprot(#,35) != 1) {
echo -tq $chan $tma($iif(%tma.addr == on,join,join2),$nick,$address,$chan,%ea)
msg $chan $tma($iif(%tma.addr == on,join,join2),$nick,$address,$chan,%ea)
}
3
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
24 juin 2007 à 02:34
C'est le même principe que ton ancien post, qu'est ce que tu recois depuis le server, une notice ? une snotice ?

Tu pourrais crée une fenetre liste cachée, et stocké tout les lignes de nick.Je suppose que c'est seulement pour un salon mais le principe est le même .
Tu te fait un alias genre f2 ou f4 qui te place dans l'editbox ( sans l'envoyé ) la dernière ligne de la fenetre, et si tu rappuie, ca te remonte les phrase une a une
en gros ca donnerai

on *:notice:*est entré avant comme*:?:{
if (!$window(@n&n)) window -h @n&n
unset %posline
aline @n&n $1-
}

alias f6 {
var %l = $line(@n&n,0)
if (%posline == 1 || !%posline) { editbox -a $line(@n&n,%l) | set %posline %l }
else { set %posline %posline - 1 | editbox -a $line(@n&n,%posline) }
}

on *:input:#tonsalon:if ($line(@n&n,%posline) isin $1-) unset %posline

Ce code est a titre d'exemple et n'ai peux etre pas fonctionnel, il y a plusieur truc a éditer comme le nom du salon et le texte de la notice
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
24 juin 2007 à 02:36
correctif : il ne s'agit pas d'un msg serveur mais d'un msg propre au script ! sorry.
il est donc normal que les users ne puissent pas lire ce genre de phrase... :)

 
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
24 juin 2007 à 17:08
(sauf erreur de ma part) g donc compris que cette ligne est propre à la config de mon script et n'a rien à voir avec les snotices ni notices serveur.
dans le script g identifié que "entroantes" signifie "est entré avant" me donne la ligne concernant l'user déjà passé sous un autre pseudo.
je lis donc ceci dans mon script:
==================================================
on ^1:JOIN:#: {
  if $nick == $me {
    if $window($chan).x <  $window(@sba).w window $chan $calc($gettok(%sbarra,1,32) + $rand(0,50)) $window($chan).y
    set -u30 %tmp.scc. [ $+ [ # $+ . $+ [ $cid ] ] ] on
    %ultcanal = $chan $gettok($remtok(%ultcanal,$chan,32),1-7,32)
    cline $gettok(%skinl,1,44) $chan $me

    var %acc = usr\ $+ $remove(#,$chr(35)) $+ .cch
    set %cpo. $+ # $+ .dat $readini %acc i dat | if %cpo. [ $+ [ # $+ .dat ] ] == $null { unset %cpo. [ $+ [ # $+ .dat ] ] }
    .timer 1 1 _ca entrando $chan
    .timer 1 3 remini usr\infrac.tmp #
    tma.canal canal0 #
    sss join
    set -u15 %tmp.noname on
    if (%afund == on) { if ($dapass(canal. $+ $nnet,$chan) != $null) { mcs * identify $chan $ifmatch } }
    halt
  }

  if ($kprot($chan,2) == 1) && ($ipef($nick) != falsa) { if $ial($address($nick,2),0) > 1 { .timerEHCLONES 1 1 echo -tq $chan $tma(clones,$gettok($address($nick,2),2,64),$clones($nick),$chan) | .timerCLONES 1 1 sss clon } }
  if ($kprot(#,4) == 1) { if $_ca(rnick,$site,$nick) != $null { var %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } }   if ($kprot(#,35) ! 1) echo -tq $chan $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
  if ($kprot(#,32) == 1) .timerWENTRAS 1 3 whois $nick
  if ($kprot(#,38) == 1) && ($me isop #) .timerAVOZ $+ # 1 3 qc mode # +v $nick
  _ca saluda $nick 33 saludo
  if $me isop # _ca ulist join
  halt
}
===============================================================================
donc cette variable { var %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } est stockée dans mon script, puisque je le tuto mirc me dit : "Les variables sont des espaces de stockage temporaire qui permettent de
garder des valeurs dont vous pouvez vous servir plus tard dans votre
script."

reste à modifier pour que cette info ne se limite pas à ma lecture mais qu'elle arrive sur le géné pour tous...
voilà où j'en suis dans mon exploration ! ;)

 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
24 juin 2007 à 17:22
Juste apres, tu as un echo -tq apres un if , c'est ça qui t'affiche l'information mais il faut que tu arrive a voir si cette variable contient bien juste cette info, met var -s %ea et lorsque ca se produit, mirc va t'afficher un message dans la fenetre active : * Set %ea to ""
ou "" sera qqch, surement la phrase que tu veux.
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
25 juin 2007 à 01:28
cette variable "echo -tq" quand je la retire n'affiche plus le msg en question., donc c bien là que ça se joue.
donc je remplace  "echo - tq" par "var -s %ea"
mais là ça ne le fait pas...
je comprends mal c sur...
le "Set %ea to " est automatique ou je dois le coder kk part..?
bref...suis pas noob pour rien hein...lol

 
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
25 juin 2007 à 10:02
Non mais echo -tq, c'est ce qui affiche un msg dans ta fenetre (seul toi peux le voir)
Tu doit juste ajouter un -s entre /var (plus haut) et %ea et dès que cette commande sera effectué, mirc te fera une sorte d'echo de la valeur de la variable, cela va te permettre de voir si cette variable contient juste le message comme quoi un nick est entré avec un autre pseudo ou $null, ou si cette variable peux contenir d'autre message.
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
25 juin 2007 à 19:30
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
25 juin 2007 à 21:42
g procédé comme tu as dis, /var -s %ea
la phrase reste tjrs la meme  "Marcel est entré avant comme Josette "
ledit msg étant sur mon script et m'est destiné perso...
rien d'autre. :/

 
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
25 juin 2007 à 21:46
ok alors ici : if ($kprot(#,35) !1) echo -tq $chan $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
vérifie que :
$tma($iif(%tma.addr == on,join,join2),$nick,$address,$chan,%ea)
te retourne tjs cette même info, car il faudrait pas que tu envoie un msg au autre qui ne leur sont pas destiné.
Si c'est tjs le même msg que tu veux envoyé, alors te suffit de msg $chan %ea juste apres l'echo je dirais
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
26 juin 2007 à 19:41
après mes tests j'observe que:
si je vire ceci "$tma($iif(%tma.addr = = on,join,join2),$nick,$address,$chan,%ea)"
le msg perso sur le géné ne vient plus me dire que Toto est déjà entré sous TRUCmuch
donc le noeud du probleme est bien dans ces deux lignes:
=================================================================================
if ($kprot(#,4) == 1) { if $_ca(rnick,$site,$nick) != $null { var %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } }   if ($kprot(#,35) ! 1) echo -tq $chan $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
==================================================================================

mais g essayé (bien j'espère) tes réponses avec -s et aussi après echo msg $chan %ea
ça ne le fait pas.
alors j'y retourne, je sauvegarde ces 2 lignes et j'essaye  encore ! on finira bien par trouver.
lol.

 
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
26 juin 2007 à 20:51
Euh, je doute que tu trouves la solution dans ce "mic-mac"
La variable %ea contient bien le msg que tu veux afficher mais l'alias tma ( que tu apelle avec plusieur paramètre dont %ea ) modifie peux être cette affichage selon le cas et donc il faut que tu vérifie que ton echo (echo -tq $chan $tma()) renvoie bien tjs ce même msg.Je dis ça dans le cas ou $tma pourrai renvoyer une information que tu ne voudrais (surtout) pas afficher mais sinon, suffit de faire msg $chan %ea ( je te l'ai déja dis ) en même temps que l'echo -tq.
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
26 juin 2007 à 21:41
suis arrivé à ceci qui s'affiche dans la fenetre statuts de mirc , mais pas sur le géné :
===========================================================================
* Set %ea to (il était entré avant sous barbare)
-
msg #nom_du_chan ------» ¦ betatesteur entre (il était entré avant sous barbare)
(donc c'est bien la phrase qui d'habitude s'affiche (pour moi seul) sur le géné.
=============================================================================

sommes pas loin de trouver!..lol.en tous cas j'esaye encore et si je trouve je reviendrai l'expliquer pour ne pas avoir occupé un espace en vain hein !
thx wims
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
26 juin 2007 à 22:13
Hum, apparement tu n'as pas fait ce que je t'ai dis, je peux voir ton code actuel ( juste la partis qui nous interesse )
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
27 juin 2007 à 00:13
avec ceci:
===================================================
 if ($kprot(#,4) == 1) { if $_ca(rnick,$site,$nick) != $null { var -s %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } }  if ($kprot(#,35) !1) echo -tq msg $chan %ea $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
======================================================
s'affiche ceci dans les statuts de mirc et rien sur le géné:
----------------------------------------------------------------------------------------------------------------------
* Set %ea to (il était entré avant sous Guillotin)
-
23:59 msg #nom_du_chan  (il était entré avant sous Guillotin)    ------» ¦ betatesteur entre (il était entré avant sous Guillotin)
-------------------------------------------------------------------------------------------------------------------------------
 :/

 
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
27 juin 2007 à 04:07
oki wims ok...
à force de retourner lire et relire, j'avais mis en place ceci qui me fait arriver au meme résultat :
 if ($kprot(#,4) == 1) { if $_ca(rnick,$site,$nick) != $null { var %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } }  if ($kprot(#,35) !1) msg $chan $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
ne me demande pas pk ça marchait et s'affichait sur le géné applet et mirc, et je le testais encore quand suis venu justement pour proposer à la critique  ma formule...

c'est clair qu'il y a une mauvaise syntaxe quelque part qui boguerait p e mon script,
donc j'adopte ta réponse .
ps: suis le nez dans le tuto msg,echo,% etc...
dsl si je ne capte pas vite, mais je fais l'effort de chercher à comprendre.
:/
thx pour tes réponses.
 
 
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
27 juin 2007 à 04:15
J'ai rien compris, mais si ta validé, c'est que c'est bon :')
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
27 juin 2007 à 04:56
nan c t pas bon car avec ta ormule en fait le script ne cessait de dire que machin (quand il revenait) était entré avant sious un autre pseudo.
alors g mis ma formule, et ça le fait bien...
==================================================================
 if ($kprot(#,4) == 1) { if $_ca(rnick,$site,$nick) != $null { var -s %ea = �F;( $+ $mg(entroantes) $+ �2; $ifmatch $+ �F;) } }  if ($kprot(#,35) !1) msg $chan $tma($iif(%tma.addr on,join,join2),$nick,$address,$chan,%ea)
===================================================================
voilà sur le script:
04:27             «------ ¦ motardeur quitte http://www.xxxx.org
04:36 <@Freenaute>             ------» ¦ socrate entre (il était entré avant sous motardeur)
04:36 @TrucmucheLe-Robot ¦ Hello socrate, je suis content de te voir

pareil sur l'applet et sur l'éggy.
juste un signe venu de nulle part sur la ligne de l'applet devant socrate .
�3;Freenaute�3;>             ------» Š�2; �2;socrate�2; �2;entre �F;(il était entré avant sous�2; motardeur�F;)

pas envie encore de m'auto valider car je ne comprends pas pk ça fonctionne, malgré ma lecture ATTENTIVE et très appliquée des /help mirc...
lol
 pas envie d'envoyer des scripteurs dans les choux si mon truc est un pur hasard !
thx. wims
;)

 
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
27 juin 2007 à 05:03
Non mais c'est exactement ce que je t'ai donné, sauf que moi j'affiche en echo l'info (seul toi la vois) et en plus, sur le salon.
Avec "ton" code qui marche, tu as simpletement arrété l'echo et seulement envoyé le msg sur le salon ( tlm le vois )

Moi je t'ai donné le bon code, tu as simplement fait nimporte fais je ne sais quoi qui n'allait pas, puis tu as (apparament par chance) finis par écrire exactement ce que je t'avais dis de faire (tu as juste viré l'echo).Bref tu as (enfin) réussis. :)
0
cs_freenaute Messages postés 147 Date d'inscription jeudi 24 février 2005 Statut Membre Dernière intervention 6 avril 2009
27 juin 2007 à 05:31
si je parlais de "ma formule" (non validée) c t pour éviter de laisser un autre faire la meme connerie tu sais, suis pas la pour me vautrer dans la paternité de codes dont je ne comprends qu'avec difficulté les effets meme si les explications sont très au dessus de mes approximations wims...
je valide donc ta réponse, mais il est clair que tout le monde a bien compris que g ramé grave.suffirait d'un quizz basique pour me ridiculiser , alors tu vois..."mon code" pffff...mdr
bref...suis pas venu ici pour faire enfler mon cortex mais pour apprendre (certes avec lenteur).
:) désormais je serai encore plus modeste , mais je doute qu'il y ait un niveau en dessous de noob...ou alors je n'ose le prononcer ;)
thx.

 
0
Rejoignez-nous