begin process at 2010 02 09 21:28:04
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Scripts

 > NOTICE POUR HALFOP OPERATEUR DE SALON

NOTICE POUR HALFOP OPERATEUR DE SALON


 Information sur la source

Note :
Aucune note
Catégorie :Scripts Classé sous :notice, halfop, operateur, hnotice, moderateur Niveau :Débutant Date de création :10/05/2006 Date de mise à jour :11/05/2006 11:36:47 Vu :4 580

Auteur : elkwi

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

 Description

Ce script envoie une notice a tous les utilisateurs halfop et operateur d un salon.
Ceci doit certainement avoir deja été fait. Bref...
Surtout a titre 'educatif', il montre comment utiliser la liste de user sur un salon (c'est un sujet assez recurent) et aussi comment concatener une chaine de caractere.
Code archi commenté pour la bonne comprehension. ;)
NB : Si quelqu un a deja vu ça dans Mirc ou une manière plus simple de le faire, ça m'interesse !!

Source

  • ;; version de base a titre pedagogique et valable dans certains cas (cf le 2ème commentaire de PaDa)
  • /hnotice {
  • ;; syntaxe /hnotice <salon> <message>
  • var %o = 1
  • while ($nick($1,%o) != $null) { ;; pour tous les pseudos presents sur un salon
  • ;; si cen est pas moi et a condition que le pseudo soit halfop ou op
  • if ( ($nick($1,%o) != $me) && ( ($nick($1,%o) isop $1) || ($nick($1,%o) ishop $1) )) {
  • ;; concatenation de la liste des halfop/op avec le pseudo suivant
  • /set %userLs %userLs $+ $nick($1,%o) $+ ,
  • }
  • ;; incrementation (merci RCA ArKanis ;)
  • inc %o
  • }
  • ;; Envoie de la commande en enlevant la ',' de fin (pseudo1,pseudo2...,pseudoN,)
  • /notice $left(%userLs,$calc($len(%userLs) - 1)) $+ $chr(32) $+ <notice moderateur> $+ $chr(32) $+ $2-
  • ;; desallocation des variables
  • unset %o
  • unset %userLs
  • }
  • ;; version PaDa featuring skwi
  • /hnotice {
  • ;; syntaxe /hnotice <salon> <message>
  • /notice @% $+ $1 $+ $chr(32) $+ $2-
  • }
;; version de base a titre pedagogique et valable dans certains cas (cf le 2ème commentaire de PaDa)
/hnotice {
  ;; syntaxe /hnotice <salon> <message>
  var %o = 1
  while ($nick($1,%o) != $null) { ;; pour tous les pseudos presents sur un salon
    ;; si cen est pas moi et a condition que le pseudo soit halfop ou op
    if ( ($nick($1,%o) != $me) && ( ($nick($1,%o) isop $1) || ($nick($1,%o) ishop $1) )) {
      ;; concatenation de la liste des halfop/op avec le pseudo suivant
      /set %userLs %userLs $+ $nick($1,%o) $+ ,
    }
    ;; incrementation (merci RCA ArKanis ;)
    inc %o 
  }
  ;; Envoie de la commande en enlevant la ',' de fin (pseudo1,pseudo2...,pseudoN,) 
  /notice $left(%userLs,$calc($len(%userLs) - 1)) $+ $chr(32) $+ <notice moderateur> $+ $chr(32) $+ $2-
  ;; desallocation des variables
  unset %o
  unset %userLs
}

;; version PaDa featuring skwi
/hnotice {
  ;; syntaxe /hnotice <salon> <message>
  /notice @% $+ $1 $+ $chr(32) $+ $2-
}

 Conclusion

Certains pourraient se demander pourquoi on ne limite pas la commande seulement si celui qui la passe est au moins halfop:
1 - Ceci va etre l'objet d'une autre version pour un autre alias.
2 - dans le cas de certains salon il est interessant qu'un utiliseur 'Voicé' ou pas puisse avertir les moderateurs


 Historique

10 mai 2006 17:44:55 :
Changement de categorie tutoriaux script (arf satanée roulette de souris)
11 mai 2006 11:36:48 :
Prise en compte de la remarque de PaDa (ça allège énormément)

 Sources du même auteur

ANTI IDLE !!! UN DE PLUS
HIGH LIGHT
ALIAS DE GÉNÉRATION DE MOTS DE PASSE ALÉATOIRES

 Sources de la même categorie

LA CONFIGURATION D'UN EGGDROP QUI ENLÈVE LES BANS APRÈS X ... par Atok
Source avec Zip Source avec une capture DARKPROJECT - SCRIPT MIRC par Artwerks
Source avec une capture STATISTIQUES DISQUE(S) DUR(S) par Nort0n
SCRIPT POUR ADMIN STRESSÉ AFFRONTANT UNE URGENCE. par ouroumov
...................... par hgxv

Commentaires et avis

Commentaire de wims le 10/05/2006 20:19:56

$nick($chan,0,oh) retourne le nombre d'halfop et d'op sur le salon.
tu fait une boucle la dessus au lieu de faire une boucle sur tout les users, ca ira bien plus vite !

alias hnotice {
;on initialise les variable
var %a 1 ,%b = $nick($1,0,oh) ,%n
;la boucle
while (%a <= %b) {
;si le nick est different du notre on l'ajoute dans la variable
if ($nick($1,%a,oh) != $me) var %n = $addtok(%nick,$ifmatch,44)
;on incremente
inc %a
}
;on envoi la notice.
notice %n <notice moderateur> $2-
}

T'avais demandé plus court :)

Commentaire de PaDa le 11/05/2006 09:27:15

Je n'ai jamais essayé (et je peux pas depuis le taff), mais préfixer le nom du salon par le mode ne suffit pas ?
Ca, ca marche :
/notice @#salon blah, envoie blah aux ops du salon
/notice @+#salon blah, envoie blah aux ops+voices du salon
/notice +#salon blah, envoie blah aux voices du salon...
Donc je me demande si :
/notice @%#salon blah, n'enverrait pas blah aux ops+hops ? non ?
De toute facon à titre pédagogique c'est bien pour aider les débutants ;)
Bonne continuation.

Commentaire de elkwi le 11/05/2006 11:06:37

Super pour ta remarque WINS ça m apprend des nouveau tips
mais la remarque de PADA r0>< merci a vous 2, j aime quand ça se passe comme ça surtout que je suis loin de maitriser les commandes Irc :D

Commentaire de PaDa le 11/05/2006 11:10:15

Lol, je ne sais pas ce que veut dire ton smiley, mais il faut tester de toute facon, je ne suis pas sur de moi.
A noter que ta méthode peut être intéressante tout de même, sur un serveur ou je suis, il faut l'utiliser sous peine d'avoir son host décrypté qui apparait.
Bonne journée ;)

Commentaire de wims le 12/05/2006 19:16:04

J'ai essayé ces commandes et il faut minimum le voice sur le salon pour pouvoir s'en servir ( sans access ) mais il voulait que la commande reste accessible pour tous...
J'ai appris par la même occasion qu'il existe aussi la meme commande pour les privmsg :
[18:55:47] <oug>y'a aussi /privmsg [mode]#chan
toujour utile :)

Commentaire de RCA ArKanis le 13/05/2006 19:07:55

La solution de Wims est, à mon goût, la bonne
je m'explique :
tu fais une boucle avec : tant que nick est non nul, alors ...
le mieux, c'est de faire comme wims, càd :
var %i = 1, %max = $nick($1,0,oh) (le oh n'est pas obligé, c'est juste histoire de ne pas faire une boucle trop grande ... tu fais ici déjà une restriction sur le nombre de nicks)

et donc while (%i <= %max) { ... }

Tu pourrais stocker le nick dans une variable locale, histoire de ne pas utiliser $nick(#,%i) plusieurs fois. J'pense que t'y gagnerais en temps d'execution.
Je veux dire par là :
var %ni = $nick(#,%i,oh)
if ((%ni != $me) || (%ni ishop $1) || (%ni isop $1))

set %userLs %userLs => utilise /var
Essaye aussi de voir si /notice nick1,nick2 fait flooder s'il y a beaucoup nicks.

Oublie pas de vérifier que $1 est bien un salon. Si ce n'est pas le cas, peut-être que tu pourrais faire en sorte que ce soit le salon actif, si c'est bien un salon bien sûr ($active)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

halfop ... [ par PopKorn ] Pour un op c on ^*:OP:*: { ... pr un voice c on ^*:VOICE:*: { ... mais pour les halfop ... on fais comment ? :pg toujours des questions a la con moi . IRCOP ET notice [ par bastar ] Bonjour certain d'entre vous connaissent les SNOTICE exemple un user vous whois ca vous le dit mais j'aimeras que ca me le dise dans mon -a (active ) aider moi !!!! :( [ par jujuquatre ] salut a tous je cree un bot mirc et j'ai un probleme pour les systeme d'accessquand je m'identifie je fait " login &lt;mon user&gt; &lt;mon mot de pas les notices [ par HatMan ] jaimerai ke les notice dune personne aille dans une window et ke dans la windowje pensai aon *:notice:*:{ halt window @notice aline @notice $ AIDE !!!!!!! [ par lakata ] g un bot !!je voudrais lui faire dire une notice kan une personne se connecte sur mon chan !!par exemple :Mr Dupont se connecte, et une notice lui app Comment empecher d'etre deco pour excess flood [ par Nenex ] Valà mon problème c'est que mon bot doit afficher en notice un certains nombres de messages (il s'agit d'un bot "manager" pour counter strike).par exe Notice après fermeture d un PV [ par Chutney ] voila je voudré ke kan je ferme ma fenetre de query sa envoie une notice o gars concerné een disant : My Query with you has been close; un truc du gen Vote.. [ par matrix301 ] Bonsoir, serait t'il possible avec le script "Vote" de NOMDUCREATEUR de faire un message tous les 1 minutes pour dire que le vote est toujours encore? Anti notice [ par copatte ] Voila j'ai vu des anti notice et anti amsg mai je ne trouve pas la commandes si vous en avais une des deux reponder tanks !! Fermer plusieurs fenêtres {@window'_'$nick} ??? [ par NmL38 ] Voilà j'ai besoin d'un peu d'aide ....j'ai donc j'ai ce petit code on ^*:notice:*:*:{ if (%noticeview == Off) return elseif (!$window($+(@notice,_,$


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 : 0,811 sec (4)

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