indaweed
Messages postés13Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention17 avril 2009
-
4 avril 2009 à 04:37
indaweed
Messages postés13Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention17 avril 2009
-
14 avril 2009 à 15:37
Bonsoir tlm,
Voila j'ai dans l'espoir de faire un ptit bot assez simple pour notre channel mais des problèmes apparaissent :
on 1:text:*:#: {
if ($1 == !test)
/notice $nick bingo
}
et que un peu plus loin dans la remotes j'ai
on 300:text:*:#: {
if ($1 == !try)
/notice $nick game over
}
Le user lvl 300 ne peut pas utiliser !test pourquoi et comment y remédier ?
Merci.
La fumette spa pour les tapettes, enfin je trouve que ca rime bien
indaweed
Messages postés13Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention17 avril 2009 4 avril 2009 à 23:27
Je te remercie pour ta réponse j'essayerais ça demain. Je tiendrais au courant de l'avancée du ptit bot. J'aurais une question un peu plus pointue une fois les commandes de bases fonctionnelles. Je vais mettre un système de news assez simple lors d'une commande genre !addnews il ira écrire dans un txt et tout les x temps il prendra une ligne du texte avec un /play -r le soucis sera de pouvoir delete une news au choix le seul moyen que j'ai trouvé c delete une ligne bien precise mais ca savoir a l'avance qu'elle est la bonne ligne ou non. Donc je dois regarder au préalable dans le txt pour voir la ligne a delete mon but sera de pouvoir rajouter le numéro de la ligne au debut de la news et donc avoir c nombre qui varie en fonction de la ligne si je delete une news en dessous il faudra que le numero de ligne de celle du dessus prenne un /decrease et la je suis complement perdu pour les numero de ligne. Mais une chose en son temps
La fumette spa pour les tapettes, enfin je trouve que ça rime bien
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 5 avril 2009 à 10:49
bon pour moi j'ai prefere mettre la condition "if ($1 = = !test)" avant le $ulevel si non ça va rien changer et tu aura le meme probleme d'avant je pense bien
je t'explique pourquoi
exp:
user1 a un niveau 1
user2 a un niveau 5
user3 a un niveau 300
user4 a un niveau 400
if ($1 == !test) { ;Si le premier mot tapper est "!test"
if ($ulevel >= 1) { ; ici d'apres avoir tapper le mot !test le code va verrifié si son niveau lui permet d'avoir la reponse du bot
donc tous les 4 user ont droit a une reponse du bot
dans le 2eme cas
elseif ($1 == !try) { ;Si le premier mot tapper est "!try"
if ($ulevel >= 300) { ; ici d'apres avoir tapper le mot !try le code va verrifié si son niveau lui permet d'avoir la reponse du bot
user3 et user4 seul ont droit a une reponse
user1 et user2 leur niveau est moin de 300 dont n'ont pas droit a une reponse
au passage pour effacer dans le fichier.txt essaye ça:
"fichier.txt" est le fichier dont les pubs sont enregistrées
if ($read(fichier.txt,w,<la pub a effacer>)) write -dl $+ $readn fichier.txt
@+
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 6 avril 2009 à 18:58
WorldDMT, en quoi utiliser les levels n'est pas trop conseillé, c'est utilisé par des tas de personnes et en plus, tu les utilises quand même au final, $ulevel est juste un moyen de regrouper ou d'être plus clair dans le code...
Maintenant, mirc ne déclenche pas les deux evenement parce qu'il ne déclenche que le premier a matché la définition
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 6 avril 2009 à 19:58
wé je les ai utilisé juste parcequ'il a demandé mais si non pour moi utilisé les level je ne conseille pas parceque dans les script complet il utilisent les level ça va confondre les 2
cs_wims
Messages postés2466Date d'inscriptionvendredi 23 juillet 2004StatutMembreDernière intervention 1 août 20101 6 avril 2009 à 20:49
Sauf que ce n'est pas a nous de géré c'est conflit (c'est a nous d'empéché qu'il puisse y en avoir si on donne un code a qqun pour l'aidé) mais quand un mec pose une question part rapport au level, on suppose que c'est qu'il n'a pas déja qqch avec la gestion des levels d'utilisateurs, il dit dailleurs que c'est pour un bot et non un script...
WorldDMT
Messages postés871Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 20121 7 avril 2009 à 11:18
je suis tt a fait d'accord avec toi Wims mais la plupart des users prennent un scipt complet là ou ils auront tout les option demander pour la protection et autre et il trouve une option de moin alors il decide d'ajouté un addon pour satisfere ses besoin,cet user etant moin experimenté en script mIRC, il peut faire une connerie
alors c'est pourquoi j'ai dis je ne conseille pas j'ai pas dis que c'est pas bien ou ça ne foctionne pas bien
voilà la personne qui poste une question sur le forum, poste en meme temp un code du meme sujet sur le site ircfr.com
indaweed
Messages postés13Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention17 avril 2009 11 avril 2009 à 13:43
Bien le bonjour voila j'ai un peu travaillé et j'en suis arrivé là
ON *:JOIN:#Origine-Online:{
/notice $nick #Origine-online 3;0,1 2;.::2;3;7,1[1F;2;B2;oT1F;]3;0,1 2;T2;ype !Cmd for the list of commands 2;::.2;
/set %afflu.courant $nick($chan, 0)
if (%afflu.courant > %record.affluence) {
/set %record.nick $nick
/set %record.affluence %afflu.courant
/set %record.date $date(mmmm dd)
/set %record.time $asctime(HH:nn)
/msg $chan 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;] 3;0,1: #Origine-Online broke a new record attendance with %record.affluence connected 2;::.2;
/msg $chan 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;] 3;0,1: The record was established on %record.date at %record.time minutes, by %record.nick ::.
}
}
ON *:TEXT:*:?:{
/msg $nick 3;0,1 2;.::2;3;7,1[1F;2;B2;oT1F;]3;0,1 2;O2;hh yeeahhh I'm a bad guyz :) 2;::.2;
/closemsg
}
ON *:TEXT:*:#: {
if ($ulevel >= 1) { ; if ($1 !auth) && ($2 %password ) {
; /guser 400 $nick
; /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 You've been auth with success as $nick 2;::.2;
; else /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 Wrong password 2;::.2;
; }
if ($1 == !cmd) {
/notice $nick 3;7,1 2;T2;he following commands are available to you !
/notice $nick 3;7,1 2;!2;FORUM 3;0,1 ( show url of our forum )
/notice $nick 3;7,1 2;!2;NEWS 3;0,1 ( show a news )
/notice $nick 3;7,1 2;!2;RECRUITMENT 3;0,1 ( show url for more information about recruitment )
/notice $nick 3;7,1 2;!2;RECORD 3;0,1 ( show some record )
/notice $nick 3;7,1 2;!2;SPONSORS 3;0,1 ( show url of our sponsors )
/notice $nick 3;7,1 2;!2;WEB 3;0,1 ( show url of our website )
}
if ($1 == !forum) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;W2;ebsite1F;]3;0,1 : www.origine-online.com 2;::.2; }
if ($1 == !news) { /timerglobalnews 1 1 /play -r #Origine-Online news.txt 2;::.2; }
if ($1 == !recruitment) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;R2;ecruitment1F;]3;0,1 : www.origine-online.com/rejoindre 2;::.2; }
if ($1 == !record) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;R2;ecord1F;]3;0,1 The record of affluence is %record.affluence established the %record.date at %record.time minutes, by %record.nick 2;::.2; }
if ($1 == !sponsors) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;S2;ponsors1F;]3;0,1 : www.PexCreativ.com - www.Webadev.com 2;::.2; }
if ($1 == !web) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;W2;ebsite1F;]3;0,1 : www.origine-online.com 2;::.2; }
if ($1 == !forum) { /msg $chan 3;0,1 2;.::2;3;7,1[1F;2;W2;ebsite1F;]3;0,1 : www.origine-online.com 2;::.2; }
}
if ($ulevel >= 100) {
if ($me isop $chan) {
if ($1 == !cmd) { /notice $nick 3;7,1 2;!2;VOICE 3;0,1 ( voice you on the channel ) }
if ($1 == !voice) { /mode # +v $nick }
}
}
if ($ulevel >= 200) {
if ($me isop $chan) {
if ($1 == !cmd) {
/notice $nick 3;7,1 2;!2;DEVOICE 3;0,1 ( Devoices you or other users on the channel )
/notice $nick 3;7,1 2;!2;OP 3;0,1 ( Ops you or other users on the channel )
/notice $nick 3;7,1 2;!2;DEOP 3;0,1 ( Deops you or other users on the channel )
/notice $nick 3;7,1 2;!2;KICK 3;0,1 ( Kick a user on the channel )
/notice $nick 3;7,1 2;!2;BAN 3;0,1 ( Ban a user on the channel )
/notice $nick 3;7,1 2;!2;DEBAN 3;0,1 ( Removes a single ban from the channel )
/notice $nick 3;7,1 2;!2;ADDNEWS 3;0,1
/notice $nick 3;7,1 2;!2;ADDPUB 3;0,1
/notice $nick 3;7,1 2;!2;DELNEWS 3;0,1
/notice $nick 3;7,1 2;!2;DELPUB 3;0,1
}
if ($1 == !op) { /mode # +ooooo $2- }
if ($1 == !deop) { /mode # -ooooo $2- }
if ($1 == !voice) { /mode # +vvvvv $2- }
if ($1 == !devoice) { /mode # -vvvvv $2- }
if ($1 == !kick) { /kick # $2- }
if ($1 == !ban) { /mode # +b $2- | /kick # $2- }
if ($1 == !deban) { /mode # -b $2- }
if ($1 == !addnews) {
if ($2 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To add a news, type 3;7,1!ADDNEWS 3;0,1followed by your message 2;::.2; | halt }
if ($3 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To add a news, type 3;7,1!ADDNEWS GAME 3;0,1followed by your message 2;::.2; | halt }
else {
/notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 A news has been added 2;::.2;
/inc %addnews 1
/write news.txt 3;0,1 2;.::2; 3;7,1[1F;2;N2;EWS1F;][ $2 ]3;0,1 $3- (2; 2; $+ posted by $nick on $date(mmmm dd) $+ , $date(yyyy) ) 2;::.2; 3;0,1
/write newslog.txt *** $+ $date(dd/mm/yy) at $asctime(HH:nn) : Added by $nick : $3-
}
}
if ($1 == !delnews) {
if ($2 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To delete a news, type 3;7,1!DELNEWS3;0,1 [ligne] 2;::.2; | halt }
else {
/notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 A news has been deleted 2;::.2;
/write $+(-dl,$2.sel) news.txt
/write newslog.txt *** $+ $date(dd/mm/yy) at $asctime(HH:nn) : News n° $2- deleted by $nick .
}
}
if ($1 == !addpub) {
if ($2 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To add a advertising, type 3;7,1!ADDPUB3;0,1 followed by your message 2;::.2; | halt }
else {
/notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 A advertising has been added 2;::.2;
/inc %addpub 1
/write pub.txt 3;0,1 2;.::2; 3;7,1[1F;2;A2;DVERTISING1F;]3;0,1 $2- (2; 2; $+ posted by $nick on $date(mmmm dd) $+ , $date(yyyy) ) 2;::.2; 3;0,1
/write publog.txt *** $+ $date(dd/mm/yy) at $asctime(HH:nn) : Added by $nick : $2-
}
}
if ($1 == !delpub) {
if ($2 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To delete a advertising, type 3;7,1!DELPUB3;0,1 [ligne] 2;::.2; | halt }
else {
/notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 advertising has been deleted 2;::.2;
/write $+(-dl,$2.sel) pub.txt
/write publog.txt *** $+ $date(dd/mm/yy) at $asctime(HH:nn) : Advertising n° $2- deleted by $nick .
}
}
}
if ($ulevel >= 300) {
if ($me isop $chan) {
if ($1 == !startnews) {
/msg #Origine-online 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;]3;0,1 : News activated 2;::.2;
/timernews 0 2700 /play -r #Origine-Online news.txt
}
if ($1 == !stopnews) {
/msg #Origine-online 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;]3;0,1 : News desactivated 2;::.2;
/timernews off
}
if ($1 == !startpub) {
/msg #Origine-online 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;]3;0,1 : Advertising activated 2;::.2;
/timerpub 0 5400 /play -r #Origine-Online pub.txt
}
if ($1 == !stoppub) {
/msg #Origine-online 3;0,1 2;.::2;3;7,1[1F;2;A2;NNOUNCEMENT1F;]3;0,1 : Advertising desactivated 2;::.2;
/timerpub off
}
if ($1 == !addvoice) { /guser 100 $2- | /notice $2- 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 You have been added to the voice list by $nick 2;::.2; }
if ($1 == !addop) { /guser 200 $2- | /notice $2- 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 You have been added to the op list by $nick 2;::.2; }
if ($1 == !addmaster) { /guser 300 $2- | /notice $2- 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 You have been added to the master list by $nick 2;::.2; }
if ($1 == !deluser) { /ruser $2- | /notice $2- 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 You have been remove from the access list by $nick 2;::.2; }
}
}
if ($ulevel >= 400) {
if ($1 == !join) { /join $2- | /msg $2- 3;0,1 2;.::2;3;7,1[1F;2;B2;oT1F;]3;0,1 2;H2;elloooooo, I'm here to idle 2;::.2; }
if ($1 == !part) && ($2 != #Origine-Online) { /msg $2- 3;0,1 2;.::2;3;7,1[1F;2;B2;oT1F;]3;0,1 2;G2;oodbye and see you soon on #Origine-Online 2;::.2; | /part $2- }
}
}
}
J'ai 1 questions
Donc c'est au sujet des news
if ($1 == !addnews) {
if ($2 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To add a news, type 3;7,1!ADDNEWS 3;0,1followed by your message 2;::.2; | halt }
if ($3 == $null) { /notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 To add a news, type 3;7,1!ADDNEWS GAME 3;0,1followed by your message 2;::.2; | halt }
else {
/notice $nick 3;0,1 2;.::2; 3;7,1[1F;2;I2;NFORMATION1F;]3;0,1 A news has been added 2;::.2;
/inc %addnews 1
/write news.txt 3;0,1 2;.::2; 3;7,1[1F;2;N2;EWS1F;][ $2 ]3;0,1 $3- (2; 2; $+ posted by $nick on $date(mmmm dd) $+ , $date(yyyy) ) 2;::.2; 3;0,1
/write newslog.txt *** $+ $date(dd/mm/yy) at $asctime(HH:nn) : Added by $nick : $3-
}
}
dans le /write j'aimerais rajouter dans le texte de la news le numéro de la ligne ou elle se trouve dans le fichier news.txt mais lorsque je supprime une news se nombre devra etre modifié pour que lors d'un affichage de news le numéro soit bien celui de la ligne cela évitera de supprimé une mauvaise ligne.Ou a un autre endroit du scrit
Merci d'avance
La fumette spa pour les tapettes, enfin je trouve que ca rime bien
indaweed
Messages postés13Date d'inscriptionlundi 1 novembre 2004StatutMembreDernière intervention17 avril 2009 14 avril 2009 à 15:37
Yop, j'ai fais pas mal de modif si vous pouviez jeter un petit coup d'oeil tout fonctionne mais je peux surement améliorer la chose ou rendre le code plus propre