Probleme identifieur statut

Résolu
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009 - 17 déc. 2008 à 17:34
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009 - 19 déc. 2008 à 16:17
hello

J'ai dans mon script des slaps et pour en limiter l'utilisation j'ai mis un alias qui devrait empecher l'utilisation des slaps si on n'a pas un statut précis,hors pas moyen de faire fonctionner la syntaxe. je vous met mon code :

alias ifoff {
  if ($me !isop #) || ($me !isvoice #) || ($me !ishop #) {
    echo -a Slaps de script interdits sur chans officiels désolé!
    .halt
  }
}

blabla:/$ifoff msg # blabla

Ce que je veux c'est que si on a pas un des statut demandé genre voice ou op ou halfop,on a un msg d'alerte,si on a bel et bien un de ses statut,le slap s'execute et s'affiche.
Les slaps se trouvent dans le fichier channel et l'alias dans le fichier remote.

Problème ca ne veut pas fonctionner et j'ai testé plusieures facons pour la syntaxe,les slaps restent interdits malgré un des bons statuts autorisé.

help....

21 réponses

WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
19 déc. 2008 à 11:23
mm oui je vois Wims ^^

je ne sais pas c'est comme si j'avais un trouble ce jour

aujourd'hui j'ai retesté ce que j'avais fais et ça marche :/ sans aucun probleme c'est drole :p

bref conclusion tu a 2 choix

alias ifoff {
  if (($me isop #) || ($me isvoice #) || ($me ishop #)) me $1-
  else echo -a Slaps de script interdits sur chans officiels désolé!
}

utilisation: /ifoff (le slap msg)

si non tu utilise le simple /me avec ce code

on *:input:#:{
  if ($1 == /me) {
    if ($me !isop #) && ($me !isvoice #) && ($me !ishop #) {
      echo -a Slaps de script interdits sur chans officiels désolé!
      halt
    }
  }
}

là tu fais comme d'habitude /me et le slap msg

je vien de testé et ça marche chez moi
3
cs_KiNdErMaXi Messages postés 1052 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 30 novembre 2009 2
17 déc. 2008 à 18:54
C'est tout bête, il faut mettre un "else" à ta condition !

alias ifoff {
  if ($me !isop #) || ($me !isvoice #) || ($me !ishop #) {
    echo -a Slaps de script interdits sur chans officiels désolé!
  }
 else {
msg # $1-
}
}
(j'ai viré le halt, il est inutile)
et pour tes slaps :
blabla:/ifoff blabla
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
17 déc. 2008 à 19:16
C'est assez bizarre, son code devrais fonctionner, si il dis que mirc lui dis qu'il a ds tout les cas un acces insuffisants, ca veux dire que son alias est bel et bien apelle,
Dans tout les cas, le code de Kindermaxi fonctionnera, mais remplace le /msg par /describe # si c'est un slap
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
17 déc. 2008 à 21:08
salut

blabla:/$ifoff msg # blabla

l'alias ne contien pas de commande "return" esque l'identifieur "$ifoff" est valide?
et esque "/$qlqchose" ça peut fonctionner?!!

j'ai jamais eus ce cas en tout cas mais bref

ce que KiNdErMaXi a dit je pense que ça ne marchera pas

si il est op et sans etre voice ça peut deconé

la logique ne le dit pas je sais mais je ne pense pas
0

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

Posez votre question
cs_KiNdErMaXi Messages postés 1052 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 30 novembre 2009 2
17 déc. 2008 à 21:20
La logique est bonne je pense WorldDMT,
Si il n'est pas op
Ou si il n'est pas voice
Ou si il n'est pas halfhop
Alors il ne peut pas slapper.
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
17 déc. 2008 à 22:40
Non effectivement, WorldDMT a raison, si il est uniquement voice, l'OP veut qu'il est acces au slap, or tu as ecris que s'il n'est pas op, on interdit, il ne faut pas mettre des || mais des &&

Si il n'est pas op
ET SI il n'est pas halfop
ET SI il n'est pas voice
ALORS il n'a pas d'acces et donc pas acces au slap.

/$nom_d'alias ne peut pas fonctionne, du moins pas comme tu a l'air de l'entendre.
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
17 déc. 2008 à 22:47
Ah j'ai pas finis d'expliquer.

Son alias (celui de base) ne contenais pas de return parce que son but etais simplement d'apeller cet alias avant de /msg, si les condition sont juste, il affiche *l'erreur* et il halt donc le /msg n'aurais pas eu lieu.Dans l'autre cas, l'alias renvois $null et ne gene pas la command qui deviens /msg.Ca doit marcher, c'est son / qui fait que ca foire surement.
0
COOLMAN002 Messages postés 969 Date d'inscription lundi 16 juin 2003 Statut Membre Dernière intervention 1 juillet 2012 1
18 déc. 2008 à 03:35
Bonjour/Bonsoir

Euh...

WorldDMT:
blabla:/$ifoff msg # blabla

l'alias ne contien pas de commande "return" esque l'identifieur "$ifoff" est valide?
et esque "/$qlqchose" ça peut fonctionner?!!

Je ne vois pas d'où tu sors ce "blabla: /$ifoff msg # blabla"

En ce qui concerne le code de mon petit chocolat preferé, il fait exactement ce que veut lebaronrouge (si je ne suis PAS OP ou PAS HALFOP ou PAS VOICE: alors je ne peux pas slaps); parce que dans ton "explication" mon petit wimsounet, tu dis qu'il faut des "&&", mais si tu mets des "&&", il faut que l'op soit halfop et aussi voice pour pouvoir faire ce slaps.

Admntium.
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
18 déc. 2008 à 08:47
exact, le but de cet alais est effectivement d'empecher l'utilisation des slaps si on a pas UN des statuts,donc sois voice,sois halfop,sois op, donc non je ne peux pas mettre des "&&" sinon il faudrait les 3 conditions réunies à la fois.
Je ne connaissais pas la comande /describe

Je vais tester les diferentes propositions et vous donne le résultat
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
18 déc. 2008 à 09:15
bon je viens de tester ca ne marche pas pour le code de kindermaxi, avec ou sans describe,avec ou sans halt entre deux,bref je ne comprends pas ou ca coince,la ca m'envois le msg d'erreur et execute quand même le slap,quelque soit mon statut,que j'en ai un ou aucun....

Je pensais me rabattre vers cette autre option à placer devant le slap :

.$iif( $me !isop #,$style(2)) slap1:/msg # blabla blabla

Ce qui a pour effet de griser la ligne et donc ne pas y avoir acces si on est pas op,le soucis est que je ne connais pas non plus la syntaxe pour appliquer cette commande pour qu'elle grise le slap en comparant une fois de plus plusieurs statuts,là ca ne fonctionne que si on est pas op, il me faudrait la même mais qui vérifis aussi que je ne sois pas voice ou halfop...
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
18 déc. 2008 à 09:51
Ah, mais j'ai mal compris apparement (pas super clair non plus en fait) je pensais qu'il voulais le msg d'erreur si l'user n'a pas de grade sur le salon.

"parce que dans ton "explication" mon petit wimsounet, tu dis qu'il faut
des "&&", mais si tu mets des "&&", il faut que l'op
soit halfop et aussi voice pour pouvoir faire ce slaps."

Non justement, en mettant des &&, je signifiais qu'il fallait que l'user soit ou l'un ou l'autre, minimum voice donc pour avoir accès au slap, mais en fait non, il veut afficher le message d'erreur si l'user n'a pas un des status, genre si t'es op et halfop mais pas voice t'a le message d'erreur (completement débile).

Je pense qu'une fois de plus il est indispensable d'avoir une explication clair quand a ce que tu veux vraiment lebaronrouge.

Pour ton $iif, tu peux ajouter plusieurs condition a l'interieur, $iif((1) || (2 && 3),blah) par exemple
mais le code du Kinder fait apparament ce que tu veux, faut juste remplace le $1- du /msg parce que il n'a pas de valeur.
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
18 déc. 2008 à 11:23
"Je ne vois pas d'où tu sors ce "blabla: /$ifoff msg # blabla""

Mr. coolman002 pourquoi ne pas bien ouvrir les yeux et bien lire le promier poste tu verra d'ou je vien avec le "blabla:/$ifoff msg # blabla"

ce cas est souvent drole essayez ce que vous voulez je reste dire que ça ne marchera pas ni avec des "||" ni avec des "&&"

cette logique pourra marcher sur plusieurs condition du style
if (($1 mot1) || ($1 mot2)) && ($2 != $null)

donc en gros avec des "=" mais isop isvoice des truc pareil j'ai tjr eus de problemes avec
conclusion le probleme est sur la condition c'est là le trouble inconnu

regardez meme en fesant ces codes si ça revien tjr au meme pourquoi?! je ne sais pas peut etre probleme de version je ne sais pas aussi

le code1

alias ifoff {
  if (($me isop #) || ($me isvoice #) || ($me ishop #)) me $1-
  else echo -a Slaps de script interdits sur chans officiels désolé!
}


utilisation: /ifoff (le slap msg)


aussi dans le code2


on *:input:#:{
  if ($1 == /me) {
    if ($me !isop #) || ($me !isvoice #) || ($me !ishop #) {
      echo -a Slaps de script interdits sur chans officiels désolé!
      halt
    }
  }
}


là on utilise normalement /me (le slap msg)


pour vous prouvé encore ce que je vous dis essayez de faire


if ($me !isop #) || ($me isvoice #) || ($me ishop #)


vous verrez que si il est op le slap marche si il ne l'ai pas ça marche pas
et si il reçois un voice dans ce cas ça ne marche plus


on essaye aussi le code3 qui est bete


on *:input:#:{
  if ($1 == /me) {
    var %v echo -a Slaps de script interdits sur chans officiels désolé!
    if ($me !isop #) { %v | halt }
    elseif ($me !isvoice #) { %v | halt }
    elseif ($me !ishop #) { %v | halt }
  }
}


on a tjr le meme cas


concusion si il est op sans etre voice ou autre la condition retourne FLASE
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
18 déc. 2008 à 16:22
Au lieu de dire nimporte quoi dans un français les plus douteux relis bien les autres commentaire, tu comprendras p-e que ce que tu décris est bel et bien ce qu'il veut.

C'est marrant comment on peut raconter nimporte quoi quand on ne comprend pas et qu'on y arrive pas

"j'ai tjs eu des problèmes, alors vous en aurez aussi"
Et nan, y'en a qui savent ce qu'il font, perdu :)
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
18 déc. 2008 à 23:49
Je pense avoir été très clair quand à mon explication et qui plus est dans un bon francais, mais je vais le redire pour éviter de relire pour ceux qui ne suivent pas ou mal,mais cela reviendra au même,donc:

Le but est de trouver une syntaxe dans un alias qui dans un premier temps fait une condition qui est la suivante :

vérifier ( via un alias)avant d'executer une action si j'ai bel et bien le level (statut) demandé, à savoir être au minimum voice,ou halfop,ou op (et non les trois conditions à la fois ce serait abusé,logique non?,quoique il faut croire que non puisque machin est persuadé d'avoir d'une bien lus,et deux avoir donc compris,et trois contredire donc tout le monde,bref je vais dire : LOL )

Pour en revenir à mon mouton donc, si UNE des conditions n'est pas remplie, (je ne suis sois pas voice,sois pas halfop,sois pas op) ,cela s'arête la avec un msg d'erreur et un halt, et dans le cas contraire, la commande s'execute ( à savoir le msg de slap) ouf voila je suis cérébralement épuisé.... (humour).

Merci pour ceux éssayant de m'aider c'est très sympa, en esperant que vous allez continuer malgré la "gêne" occasionnée ( )

Car soucis non résolus pour le moment et c'est pas faute d'essayer des syntaxes
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
19 déc. 2008 à 00:08
Tu te contredit encore dans ton dernier post >< :

"vérifier ( via un alias)avant d'executer une action si j'ai bel et bien
le level (statut) demandé, à savoir être au minimum voice,ou halfop,ou
op (et non les trois conditions à la fois"

et :

"Pour en revenir à mon mouton donc, si UNE des conditions n'est pas
remplie, (je ne suis sois pas voice,sois pas halfop,sois pas op) ,cela
s'arête la avec un msg d'erreur et un halt"

être minimum voice ou halfop ou op ça ne veut pas dire grand chose, ya qu'une seul condition minimum :/

On est bien d'accord que ce que tu veux c'est NE PAS ÉXÉCUTER le slap SI tu N'A AUCUN GRADE, çàd que il te faut minimum un voice pour parlé ou autrement dis qu'il faut que tu soit ou op ou halfop ou voice pour pouvoir executer le slap ?
C'est ce que j'avais compris au début, mais après...

Dans ce cas la condition c'est bien :

if ($me isop $active) || ($me ishop $active) || ($me isvoice $active) { le slap est autorisé }
else { le slap ne l'est pas }

Littéralement ça donne :

Si je suis op ou si je suis halfop ou si je suis voice, alors le slap est autorisé, sinon non.

Et pour enlever toute les confusions, cela peu (comme je l'avais dis) s'écrire également :

if ($me !isop $active) && ($me !ishop $active) && ($me !isvoice $active) { le slap n'est PAS autorisé }
else { il l'est }

littéralement :

SI je ne suis pas op et que je ne suis pas halfop et que je ne suis pas voice, alors je n'est pas d'accès (logique) et donc le slap n'est pas autorisé, sinon, il l'est.

Il est dans la logique de l'irc que ce que tu veuilles soit cela.Tu as normalement toutes les cartes en main maintenant :/
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
19 déc. 2008 à 00:09
"çàd que il te faut minimum un voice pour parlé"

dans mon post deviens :

çàd que il te faut minimum un voice pour autorisé le slap

:)
0
cs_lebaronrouge Messages postés 288 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 14 février 2009
19 déc. 2008 à 11:13
"Si je suis op ou si je suis halfop ou si je suis voice, alors le slap est autorisé, sinon non."

voilaaaaaaaaaaaaaaaaaaaaaaaaa

Et pourtant ca ne marche toujours pas..............
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
19 déc. 2008 à 11:33
Lebaronrouge, ca serait bien que tu donnes le(s) code(s) que tu as essaye(s) et dans quel condition tu les as essayes..

WorldDMT, contourne l'alias /me avec un on input n'est pas tres prudent, surtout qu'ici, un simple / de plus devant la command et ca ne marche plus.Le plus propre est de reecrire l'alias (alias me { }) mais je le deconseille aussi, ca peut amener a des confusions inutiles, on fait ca generalement pour reformater l'affichage du /me.
0
WorldDMT Messages postés 871 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2012 1
19 déc. 2008 à 11:41
pour le /me si il va utilisé /me ou //me on pourra remplacé par un istok nn?
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
19 déc. 2008 à 11:47
euh par exemple, mais c'est pas adapte, un iswm serait surement mieux, mais ce n'est pas le probleme.
0
Rejoignez-nous