Problème de renvoie dans remote

Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007 - 14 oct. 2006 à 10:35
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007 - 15 oct. 2006 à 17:12
Bonjour à tous !
Je voudrais vous presentez une remote que j'ai fait et qui hélas ne fonctionne pas bien, elle est assez longue je m'en éxcuse, mais j'ai pas trouvé d'autre moyen pour me faire comprendre que de la poster ici. Voici donc la remote suivi des soucis qu'elle engendre :

alias events {
  .msg %activechan $read messages\jouer.txt
  set %events [ $+ [ $nick ] ] 1
  set %evenements [ $+ [ $nick ] ] $rand(1,10)
  .timerendeventsun 1 3601 unset %events [ $+ [ $nick ] ]
  .timerendeventsdeux 1 3601 unset %evenements [ $+ [ $nick ] ]
  .timereventsun 1 3 .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8tu viens d'activer pendant�3;6,8 1 heure �3;1,8divers évenements qui se produiront en ta faveur ou contre toi ! Suspense...
  .timereventsdeux 1 120 Goto .lool
  .timereventstrois 1 600 Goto .lool
  .timereventsquatre 1 1500 Goto .lool
  .timereventscinq 1 1920 Goto .lool
  .timereventssix 1 2880 Goto .lool
  .timereventssept 1 3360 Goto .lool
  .timereventshuit 1 3600 .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8il n'y aura pas d'autres évenements. Tu quittes donc cette case.
}



alias lool {
  if (%evenements [ $+ [ $nick ] ] == 1) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8 te prend�3;13,8 1600 ?Pangya �3;3,8et�3;13,8 50 PV�3;3,8 !
    dec %pangya [ $+ [ $nick ] ] 1600
    dec %pv [ $+ [ $nick ] ] 50
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 2) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;5,8Samantha �3;3,8viens de t'offrir�3;13,8 20 PV �3;3,8!
    inc %pv [ $+ [ $nick ] ] 20
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 3) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8Incroyable ! Phénoménal ! Tu gagnes....�3;13,8 1 ?Pangya�3;3,8.
    inc %pangya [ $+ [ $nick ] ] 1
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 4) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8te prend�3;13,8 2 PV�3;3,8.
    dec %pv [ $+ [ $nick ] ] 2
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 5) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa part t'offre�3;13,8 200 ?Pangya�3;3,8 directement sur ton �3;1,8compte épargne�3;3,8.
    inc %epargne [ $+ [ $nick ] ] 200
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 6) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa part te reprend�3;13,8 500 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 500
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 7) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8Un vol de voiture sur le parking s'est produit. On t'accuse �3;1,8(à tord ?)�3;3,8 de celui-ci. Peu importe qui a raison, tu dois t'acquiter de la somme de�3;13,8 10 000 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 10000
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 8) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8un mysterieux inconnu viens de faire un virement sur ton �3;1,8compte�3;3,8 de�3;13,8 1000 ?Pangya�3;3,8.
    inc %pangya [ $+ [ $nick ] ] 1000
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 9) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;4,1BANQUE�3;6,1ROUTE �3;8,1!!!�3;3,8 Ton �3;1,8compte�3;3,8 d'�3;13,8?Pangya �3;3,8viens d'être remis à�3;13,8 0 �3;3,8!
    set %pangya [ $+ [ $nick ] ] 0
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  if (%evenements [ $+ [ $nick ] ] == 10) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8C'est sympa d'avoir offert un verre au bar de �3;5,8PangyaSino �3;3,8à �3;5,8Samantha�3;3,8, la facture est de�3;13,8 120 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 120
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
}


Voilà, comme vous le voyez, elle est composé de deux alias.
Pour déclencher la totalité de cette remote, il faut auparavant avoir la chance de tomber dessus par une autre commande (pas facile donc de la tester) qui renvoie sur l'alias events. Vous verrez aussi qu'il y a l'alias
lool
, la partie qui me bloque.
Cela fonctionne de cette façon :

Si un user tombe sur l'alias
events
, il doit se produire pendant une heure une série d'évenements définis au hasard par la variable
%evenements
. Par exemple, le premier évenements se déclenche après 2 minutes grâce à .timereventsdeux 1 120 Goto .lool
.

Du moins c'est ce qui devrait se produire mais ça ne fonctionne pas... A chaque fois que les timers de l'user en question arrivent sur leurs valeurs finales, cela doit renvoyer vers l'alias
lool
où un évenement se produira au hasard (en fonction de la variable
%evenements
à chaque fois). Et ainsi de suite pendant une heure ! Il y a en tout 6 évenements pendant cette heure.

Voilà, je cherche à savoir pourquoi le renvoie vers l'alias
lool
ne fonctionne pas 6 fois de suite. Et aussi si vous voyez d'autres erreurs dans ma remote.

Merci et encore désolé pour la longueur de ce post

19 réponses

Tengu84 Messages postés 17 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 4 novembre 2006
14 oct. 2006 à 12:00
Bonjour,

Tout simplement parce que la commande Goto ne fonctionne qu'a l'interieur d'une même procedure/alias.
Là tu y fais reference mais dans une section qui lui est inconnu (car alias different).

Il suffit juste de retirer tes Goto :o)

Cdt.







----------




[¤]

Tengu





[¤]

Network : Voila
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 12:02
En fait j'avais déja essayé sans les Goto, ça ne fonctionnait pas non plus
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 12:09
1) Le timer est faux, ce n'est pas goto .lool mais juste lool :
.timereventsdeux 1 120 lool


2) je n'ai pas regardé le reste du script à la recherche d'erreurs... désolé, j'ai pas le courage ^^

Mais... il y a une erreur non pas de programmation, mais
d'algorithme(pour utiliser des grands mots xD ). en fait... tu as des
timers que tu as bien nommé... malheureusement si moins de 2min après
quelqu'un d'autre active cet alias d'évènement, le timer qui était en
cours sera remplacé par le nouveau...

un exemple pour me faire comprendre :


Niniania j'active l'event Youhouuu

* les timers se lancent*

3min après

Le timer 1 s'est lancé pour pincemi

J'active l'event aussi !

*les timers se relancent*

3min après

le timer de 2min s'est lancé pour Pincemoi mais ceux de pincemi ne se lanceront jamais.


Autre erreur TRES importante de ton script... et je me demande si c'est
pas toi qui avait fait la même précédemment sur le forum :

le $nick dans l'alias lool ne reverra RIEN, de même  pour l'alias event.

$nick $chan etc... ne peuvent être utilisé que dans des évènement... pas exemple ON TEXT.

Si tu veux donner l'information à un alias, il faut appeler l'alias en indiquant une donnée, un paramètre :

exemple : /event $nick

Ainsi dans ton alias event, $1 renverra $nick.


Pour résumer : _ Revois le nom de tes timers

               
       _ Revois l'appel des alias dans tes
timers

               
       _ Revois  tes alias.
--------------------------------
Signature des parents :
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 12:16
Dans ce cas y'a un OS

par exemple j'ai fait ça aussi comme remote (juste un bout) :

alias coffres {
  .msg %activechan $read messages\jouer.txt
  set %combinaison $rand(1000,9999)
  set %coffreok [ $+ [ $nick ] ] 1
  .timeropenun 1 3 .msg %activechan �2;�3;9,1[�3;7,1Case �3;8,1*�3;4,1Coffre-fort�3;8,1*�3;9,1]�3;4,15 $nick �3;12,15si tu trouves la combinaison du �3;7,15Coffre-fort �3;12,15en tappant �3;13,15!code "XXXX"�3;12,15, tu remporteras son contenu !
  .timeropendeux 1 5 .msg %activechan �2;�3;8,1Dans�3;13,1 60 secondes�3;8,1, je change la combinaison.

Ici, dans l'alias, j'ai testé et le $nick est bien remplacé par le pseudo de l'user.
De plus, même sans les Goto, ma remote (1) ne marche pas.

En clair, ça va être difficile pour moi
0

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

Posez votre question
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 12:45
Effectivement... j'ai testé rapidement sur un script bidon... avec
1alias appelé dans l'event, et un autre appelé dans l'alias en
question, $nick renvoie bien quelque chose... il me semblait que ça ne
le faisait pas avant :/ puis je sais pas jusqu'à quel point ça marche.

Bon...

Est-ce que ton alias lool se lance au moins une fois ? (en enlevant les goto)

Qu'est ce qui se lance exactement(enlève les . au timers pour voir lesquels sont bien initialisés)


Sinon, autre erreur qui arrivera dans ton script :

imaginons que mon event soit 1, le 1 de lool se lance, et alors un event m'est redéfini au hasard.... imaginons 3

L'event 3 va se lancer tout de suite ! et si j'ai 5 après... encore le 5 et tout ça en moins de 1sec ^^

Donc... mets des elseif :)

-----------------------
Signature des parents :
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 12:59
elseif (%evenements [ $+ [ $nick ] ] == 2) {...
elseif (%evenements [ $+ [ $nick ] ] == 3) {...

Oui en effet j'ai zappé ça
Après vérification, l'alias lool ne se lance pas, ça me met rien comme erreur dans le status (étrange ça d'ailleurs). Mon mIRC est piégé !

Pourtant le principe de ce que je veux faire, c'est pas si difficile que ça j'ai déja fait pire récemment et ça marche !

Globalement, ce qui m'ennuie, c'est définir des évenements aléatoires, grâce à des variables (ça je sais le faire), mais des timers qui renvoies sur du "au pif" pour un user et pas un autre, ça devient complexe pour ma culture de mIRC

Bon bah je continue de chercher merci si y'a de nouveau des réponses
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 14:16
oui mais ton alias events est lancé... quels timers sont lancés ?

Parce que là... en corrigeant... je ne vois pas trop le problème :/


Ton script génère pas mal de timer quand même ^^ et j'ai une
question... à quoi sert la variable %events$nick parce que tu
l'utilises jamais... c'est pour autre part dans le script ?

---------------------------
Signature des parents :
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 14:41
En effet, la variable %events $nick servira plus atrd dans le jeu que je conçoi pour favoriser par une commande les évenements positifs.

Bah si un pro de l'irc peut pas m'aider, qui ?
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 15:00
Mais réponds à la question xD

Quels timers se lancent ? jusqu'où se lance ton script?

Normalement lool devrait tourner après changements au moins une fois au bout de 2min...

---------------------------
Signature des parents :
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
14 oct. 2006 à 15:04
Reposte ton code actuel corrigé histoire de voir :)
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 16:12
Ok re-voici mon code après de minces modifs :



alias events {
  .msg %activechan $read messages\jouer.txt
  set %evenements [ $+ [ $nick ] ] $rand(1,10)
  .timerendeventsun 1 3601 unset %events [ $+ [ $nick ] ]
  .timerendeventsdeux 1 3601 unset %evenements [ $+ [ $nick ] ]
  .timereventsun 1 3 .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8tu viens d'activer pendant�3;6,8 1 heure �3;1,8divers évenements qui se produiront en ta faveur ou contre toi ! Suspense...
  .timereventsdeux 1 120 .lool
  .timereventstrois 1 600 .lool
  .timereventsquatre 1 1500 .lool
  .timereventscinq 1 1920 .lool
  .timereventssix 1 2880 .lool
  .timereventssept 1 3360 .lool
  .timereventshuit 1 3600 .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8il n'y aura pas d'autres évenements. Tu quittes donc cette case.
}

alias lool {
  if (%evenements [ $+ [ $nick ] ] == 1) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8 te prend�3;13,8 1600 ?Pangya �3;3,8et�3;13,8 50 PV�3;3,8 !
    dec %pangya [ $+ [ $nick ] ] 1600
    dec %pv [ $+ [ $nick ] ] 50
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 2) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;5,8Samantha �3;3,8viens de t'offrir�3;13,8 20 PV �3;3,8!
    inc %pv [ $+ [ $nick ] ] 20
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 3) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8Incroyable ! Phénoménal ! Tu gagnes....�3;13,8 1 ?Pangya�3;3,8.
    inc %pangya [ $+ [ $nick ] ] 1
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 4) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8te prend�3;13,8 2 PV�3;3,8.
    dec %pv [ $+ [ $nick ] ] 2
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 5) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa part t'offre�3;13,8 200 ?Pangya�3;3,8 directement sur ton �3;1,8compte épargne�3;3,8.
    inc %epargne [ $+ [ $nick ] ] 200
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
 elseif (%evenements [ $+ [ $nick ] ] == 6) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa part te reprend�3;13,8 500 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 500
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 7) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8Un vol de voiture sur le parking s'est produit. On t'accuse �3;1,8(à tord ?)�3;3,8 de celui-ci. Peu importe qui a raison, tu dois t'acquiter de la somme de�3;13,8 10 000 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 10000
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 8) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8un mysterieux inconnu viens de faire un virement sur ton �3;1,8compte�3;3,8 de�3;13,8 1000 ?Pangya�3;3,8.
    inc %pangya [ $+ [ $nick ] ] 1000
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 9) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;4,1BANQUE�3;6,1ROUTE �3;8,1!!!�3;3,8 Ton �3;1,8compte�3;3,8 d'�3;13,8?Pangya �3;3,8viens d'être remis à�3;13,8 0 �3;3,8!
    set %pangya [ $+ [ $nick ] ] 0
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
  elseif (%evenements [ $+ [ $nick ] ] == 10) {
    .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $nick �3;1,8voici le résultat de cet évenement : �3;3,8C'est sympa d'avoir offert un verre au bar de �3;5,8PangyaSino �3;3,8à �3;5,8Samantha�3;3,8, la facture est de�3;13,8 120 ?Pangya�3;3,8.
    dec %pangya [ $+ [ $nick ] ] 120
    set %evenements [ $+ [ $nick ] ] $rand(1,10)
  }
}


Alors, quand j'ai la chance de tomber sur l'alias events (1 sur 160 mdrrrrrr), je reçois bien les premiers méssages.
Ensuite, plus rien et je n'ai pas d'erreur dans la fenetre de status du bot. Même en supprimant les "." .C'est dingue ça
Pourtant pas si complexe que ça la remote en principe :

Déclenchement pendant 3600 secondes des timers, 5 évenements se produisent pendant cette heure, les 5 évenements sont définis au hasard par set %evenements [ $+ [ $nick ] ] $rand(1,10)
à la fin de chaque evenement. La seule chose qui me tracasse, c'est les timers ! 

  .timereventsdeux 1 120 .lool
  .timereventstrois 1 600 .lool
  .timereventsquatre 1 1500 .lool
  .timereventscinq 1 1920 .lool
  .timereventssix 1 2880 .lool
  .timereventssept 1 3360 .lool

Après le temps imparti, ça renvoie pas vers l'alias lool et son "if" ou "elseif" correspondant.
Moi non plus je vois pas ce qui cloche, comme beaucoup d'autres comme vous qui m'ont répondu comme vous casi pareil

PS : C'est pas un soucis de version de mIRC déja j'ai testé sur 6.16 et 6.2. Mais bien de codage je pense (ou de scripteur aussi).
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
14 oct. 2006 à 19:11
Il y a des fautes dans ce code, essaye ca :

alias events {
  .msg %activechan $read(messages\jouer.txt)
  set $+(%,evenements,$nick) $r(1,10)
  .timerendeventsun 1 3601 unset $!+(%,events,$nick) $!+(%,evenements,$nick)
 
.timereventsun 1 3 .msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8
$nick �3;1,8tu viens d'activer pendant�3;6,8 1 heure �3;1,8divers évenements
qui se produiront en ta faveur ou contre toi ! Suspense...
  .timereventsdeux 1 120 lool $!nick
  .timereventstrois 1 600 lool $!nick
  .timereventsquatre 1 1500 lool $!nick
  .timereventscinq 1 1920 lool $nick
  .timereventssix 1 2880 lool $!nick
  .timereventssept 1 3360 lool $!nick
 
.timereventshuit 1 3600 msg %activechan �2;�3;1,8[�3;4,8Case
�3;12,8Events�3;1,8]�3;4,8 $!nick �3;1,8il n'y aura pas d'autres évenements. Tu
quittes donc cette case.
}alias lool {
  if ($($+(%,evenements,$1),2) == 1) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8 te
prend�3;13,8 1600 ?Pangya �3;3,8et�3;13,8 50 PV�3;3,8 !
    dec $+(%,pangya,$1) 1600 | dec $+(%pv,$1) 50
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 2) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;5,8Samantha �3;3,8viens de t'offrir�3;13,8 20
PV �3;3,8!
    inc $+(%,pv,$1) 20
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 3) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8Incroyable ! Phénoménal ! Tu
gagnes....�3;13,8 1 ?Pangya�3;3,8.
    inc $+(%,pangya,$1) 1
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 4) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8le méchant �3;5,8PangyaNino �3;3,8te
prend�3;13,8 2 PV�3;3,8.
    dec $+(%,pv,$1) 2
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 5) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa
part t'offre�3;13,8 200 ?Pangya�3;3,8 directement sur ton �3;1,8compte
épargne�3;3,8.
    inc $+(%,epargne,$1) 200
    set $+(%,evenements,$1) $r(1,10)
  }
 elseif ($($+(%evenements,$1),2) == 6) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8la banque, suite à une erreure de sa
part te reprend�3;13,8 500 ?Pangya�3;3,8.
    dec $+(%,pangya,$1) 500
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 7) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8Un vol de voiture sur le parking s'est
produit. On t'accuse �3;1,8(à tord ?)�3;3,8 de celui-ci. Peu importe qui a
raison, tu dois t'acquiter de la somme de�3;13,8 10 000 ?Pangya�3;3,8.
    dec $+(%,pangya,$1) 10000
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 8) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8un mysterieux inconnu viens de faire un
virement sur ton �3;1,8compte�3;3,8 de�3;13,8 1000 ?Pangya�3;3,8.
    inc $+(%,pangya,$1) 1000
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 9) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;4,1BANQUE�3;6,1ROUTE �3;8,1!!!�3;3,8 Ton
�3;1,8compte�3;3,8 d'�3;13,8?Pangya �3;3,8viens d'être remis à�3;13,8 0 �3;3,8!
    set $+(%,pangya,$1) 0
    set $+(%,evenements,$1) $r(1,10)
  }
  elseif ($($+(%evenements,$1),2) == 10) {
   
.msg %activechan �2;�3;1,8[�3;4,8Case �3;12,8Events�3;1,8]�3;4,8 $1 �3;1,8voici le
résultat de cet évenement : �3;3,8C'est sympa d'avoir offert un verre au
bar de �3;5,8PangyaSino �3;3,8à �3;5,8Samantha�3;3,8, la facture est de�3;13,8
120 ?Pangya�3;3,8.
    dec $+(%,pangya,$1) 120
    set $+(%,evenements,$1) $r(1,10)
  }
}

J'ai refais vite fait le codeet j'ai modifié les erreur dans les timers ainsi que dans l'alias lool, dans ton premier alias, que tu lance apres un evenement, j'suis d'accord que $nick est évalué mais dans le second ca m'étonnerait
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 19:16
Quand tu dis qu'il ne se passe rien... tu n'as même pas le premier message en msg ?

retire les . aux msg aussi ^^ pour être sûr que tu les as bien.

.timerendeventsun 1 3601 unset %events [ $+ [ $nick ] ]
  .timerendeventsdeux 1 3601 unset %evenements [ $+ [ $nick ] ]
tu peux les rejoindre en 1seul timer(ça en fera déjà un de moins xD)

EUh.... tu as testé en mettant un echo -a dans ton lool ?

Enlève les . aux lool aussi... c'est pas util

Le mieu serait de pouvoir tester nous même... ^^" ça serait plus
simple... voir si ce n'est pas tu as quelque chose qui cloche autre
part dans le script...

Il est possible que tu utilise déjà le timereventsdeux ou trois ou x
pour un aute truc dans le script... qui se lance avant la fin des
2mins... alors ça empécherait le lancement de lool. De même si une
autre partie du script les arrète.

Pour controler les erreurs, le mieu est de modifier légèrement le
script pour pouvoir le tester rapidement ^^ ( c'est à dire... ramener
le 1/160 à 1/1 de lancer l'event ^^; et enlever un timer, et executer
lool directement)


Enlève les . à tous tes timers, et dis moi lesquels sont lancés s'il te
plait... à savoir s'ils sont lancés ou si l'erreur se trouve en
amont(ce qui m'étonnerait).

Vérifie aussi qu'il n'y a pas quelque chose dans ton script qui
n'utilise pas déjà ce nom de timer(même si tu penses que c'est pour un
autre nick etc...)


Merci ;)

-----------------------
Signature des parents :
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
14 oct. 2006 à 19:29
wims... le fait de mettre $!nick sur les timers... ça va pas être pire ? ça va renvoyer quelque chose ?

de même pour $!+(%,evenements,$nick) .... :/ on efface une variable... pas ce que contient la variable...

Simple question personnelle :)

-------------------------
Signature des parents :
0
cs_wims Messages postés 2466 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 1 août 2010 1
14 oct. 2006 à 19:36
On utilise dans les timers le ! pour réevaluer qqch donc non ca va pas etre pir, c'est juste que dans 120 seconde apres son alias, normalement $nick ne retournera plus rien

Je peux pas testé donc j'attend qu'il me dise ce que ca donne
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
14 oct. 2006 à 22:04
Non au bout de 120 secondes, rien ne s'est passé, mêzme pas un méssage d'erreur dans ma fenêtre de status
0
S333 Messages postés 266 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 26 juin 2008
15 oct. 2006 à 12:36
... quand vas-tu répondre à ma question :'( ?

Enlève les . devant tous les timers, test ton script, et dis moi ce
qu'il y a dans la fenêtre status( il devrait y avoir timer truc
started... )

Comme ça, on saurait s'ils sont bien lancé... au passage, avant la fin
des 120sec, fait un /timers, et copie ce que tu as ici aussi :)


Moi je pense que l'erreur vient du fait que les noms de timers sont
utilisés autre part... et sont soit stoppés, soit utilisés pour une
autre action.

------------------------
Signature des parents :
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
15 oct. 2006 à 13:11
J'ai déja tester en supprimant les . devant les timers, cela me donnait quelque chose en status que j'avais zappé (dsl) :
* /timer: timer eventsdeux not active
et avec /timers :
* Active timers:
* Timer bar 8s delay .play -c Lodan Titlebar.txt (irc.Liberty-tchat.net)
* Timer orgaverif 600s delay Orgaverif (irc.Liberty-tchat.net)

Voilà vraiment dsl d'avoir zappé ça

Mais je pense refaire cette remote autrement, en passant par des commandes d'évenements. cela permettra de ne pas lancer les timers tout le X temps, mais de lancer des évenements en fonction de la situation de l'user dans le jeu.
Si j'y arrive, je pourrais fermer ici
0
Lorya51100 Messages postés 30 Date d'inscription vendredi 15 septembre 2006 Statut Membre Dernière intervention 9 mai 2007
15 oct. 2006 à 17:12
Quoi que avant de fermer ici...

Selon vous, pourquoi ces deux remotes ne marchent-elles pas ?

on *:TEXT:*!bank:#:{
  if (%pangya [ $+ [ $nick ] ] >= 5000) {
    dec %pangya [ $+ [ $nick ] ] 5000
    inc %epargne [ $+ [ $nick ] ] 5000
    .msg %activechan �2;�3;0,3Tu viens de placer�3;4,3 5000 ?Pangya �3;0,3en épargne.
  }
  else {
    .notice $nick �2;�3;0,3Tu dois posseder au minimum�3;4,3 5000 ?Pangya �3;0,3pour en épargner ce montant.
  }
}



on *:TEXT:*!banque:#:{
  if (%pangya [ $+ [ $nick ] ] >= 10000) {
    .timerbanqueun 1 1 inc %epargne [ $+ [ $nick ] ] %pangya [ $+ [ $nick ] ]
    .timerbanquedeux 1 2 set %pangya [ $+ [ $nick ] ] 0
  }
  else {
    .notice $nick �2;�3;0,3Tu dois posséder au moins�3;4,3 10 000 ?Pangya �3;0,3pour épargnez la totalité de ton compte.
  }
}


En fait, soit j'ai les deux conditions en même temps, soit ça marche pas !
!bank epargne 5000 à condition d'en avoir au minimum 5 000 et !banque epargne tout à condition d'avoir au minimum 10 000.
J'y vois pas d'erreurs... et pourtant

Une fois ça corrigé, je ferme ici en vous remerciant de votre GRANDE aide
0
Rejoignez-nous