Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 25 sept. 2006 à 14:41
lol je debute en scripting :o)
Keanu85
Messages postés8Date d'inscriptionlundi 24 octobre 2005StatutMembreDernière intervention22 septembre 2006 22 sept. 2006 à 11:08
addonds basique ^^ et en plus le dialogue y a plein de perte de place :o tu tes pas cassé le ***
CestFortEnChocolat
Messages postés5Date d'inscriptionsamedi 15 juillet 2006StatutMembreDernière intervention20 septembre 2006 20 sept. 2006 à 13:54
pourquoi ne pas regrouper toutes ces variables
en un seul fichier INI ?
renseigne toi dessus
/writeini /remini
$readini
Bonne continuation
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 13 sept. 2006 à 15:37
ok merci CestFortEnChocolat ^^
CestFortEnChocolat
Messages postés5Date d'inscriptionsamedi 15 juillet 2006StatutMembreDernière intervention20 septembre 2006 12 sept. 2006 à 20:44
juste une opinion, pourquoi ne pas utiliser $iif ?
Si la personne n'a pas mis son numéro de portable par exemple...
alors on met lors du msg $active : $iif(%telephone,Mon num de portable est : $v1)
pour
# if ($devent == init) {
# if (%sexe == homme) did -c Lasv 16
# if (%sexe == femme) did -c Lasv 32
ca serai plus utile de faire
if $devent init { did -c lasv $iif(%sexe homme,16,32) }
enfin je pense ^^
Bonne continuation
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 9 sept. 2006 à 21:00
ok merci rca arkanis je relit plain de foi comme ça jai pigé merci pour toute votre aides =))))
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 9 sept. 2006 à 20:56
ben j'ai tout dit, si tu comprends pas, relis plusieurs fois ce que s333 et moi avons dit, jusqu'à ce que tu comprennes.
en gros, tu ne peux pas commencer une série de ELSEIF s'il n'y a pas un IF tout au début
pour "rappel", elseif signifie SINON SI
le schéma "if, elseif, else" signifie :
Si (...) alors ...
Sinon si (...) alors ...
Sinon ...
toi ce que tu as fait, c'est ça :
Sinon si (...) alors ...
Sinon ...
j'espère que tu comprends qu'il n'est pas possible de commencer par "SINON SI"
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 9 sept. 2006 à 20:43
je ne comprend pas trop rca arkanis je suis nul je sui vrment un ti debutent qui c'est rien faire :(( snif
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 9 sept. 2006 à 19:42
ok merci a vous deux je vait eseillé de le re faire marché =))
S333
Messages postés266Date d'inscriptionvendredi 8 juillet 2005StatutMembreDernière intervention26 juin 2008 9 sept. 2006 à 11:51
set %notice $$?="Pseudo ou Salon ?"
notice %notice $me Je m'app...
Notice $$?="Pseudo ou Salon ?" $me Je m'appelle...
Ca revient au même :) et au moins, tu ne crées pas une variable.
Comme l'a dit arkanis, il y a souvent des elseif qui commencent une série de if...
C'est if truc, sinon(elseif) truc,sinon etc...
Il y a aussi une erreur dans le if $devent sclick, à l'endroit de elseif ($did 29)
Tu as mis une accolade fermée } alors que tu ne l'as pas ouverte dans le elseif(ce qui était d'ailleurs bon). Il faut la supprimmée, parce que tout ce qui suis ne fait pas parti du on click. Même si ça marche comme ça... puisque, on ne peut edit un boutton ou scroll, enfin... un dclick, un uclick, rclick, drop, réagissent aussi dans ce cas. Donc autant les intégrer au sclick.
--- Encore un rappel ---
Lorsque vous utilisez des variables globales(set) dans un add-on... il serait préférable que ces variables ne soient pas déjà utilisées par un autre add-on... Donc mettez des choses plus spécifiques... %pseudo %salon... ce sont des choses qui ont grande chance d'être déjà utilisées... même si on essaie de moins en moins utiliser les variables globales.
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 9 sept. 2006 à 00:19
if ($devent == edit) {
elseif ($did == 13) set %nom $did(13)
puis if ($devent == sclick) {
elseif ($did == 16) set %sexe homme
if ($devent == init) {
elseif (%sexe == homme) did -c Lasv 16
deviennent (dans l'ordre)
if ($devent == edit) {
if ($did == 13) set %nom $did(13)
puis elseif ($devent == sclick) {
if ($did == 16) set %sexe homme
elseif ($devent == init) {
if (%sexe == homme) did -c Lasv 16
en gros, tu ne peux pas faire que ta première condition soit un ELSEIF (ce qui est tout à fait logique)
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 8 sept. 2006 à 23:00
atlantisfr ma source veu plu marché :(
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 8 sept. 2006 à 22:13
tu utilises tjrs des variables, donc ça sux encore :(
En effet panthouffle, le rendre en PW, c'est inutile, déjà qu'il ne l'est pas beaucoup ;)
Tu aurais beaucoup plus de lignes, et ça ne rendrait pas terrible
faire des PWs pour des trucs compliqués, OK, mais pour ça, pas d'accord :)
Ca ne mérite pas qu'on y passe plus d'une heure à mon avis :p
tu as oublié ELSEif pour if ($devent == sclick)
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 8 sept. 2006 à 22:03
Derien Dragounix
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 8 sept. 2006 à 21:57
au merci atlantisfr :)))) je trouve que c'est mieu arengé merci pour ton aide =)))
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 8 sept. 2006 à 21:52
Tu optimises que une partie de tes "On dialog". Cadeau pour cette foi si :
on *:dialog:Lasv:*:*:{
if ($devent == edit) {
elseif ($did == 13) set %nom $did(13)
elseif ($did == 14) set %prenom $did(14)
elseif ($did == 15) set %age $did(15)
elseif ($did == 17) set %ville $did(17)
elseif ($did == 18) set %poids $did(18)
elseif ($did == 19) set %cheveux $did(19)
elseif ($did == 20) set %yeux $did(20)
elseif ($did == 23) set %portable $did(23)
elseif ($did == 22) set %mail $did(22)
elseif ($did == 25) set %asv $did(25)
elseif ($did == 21) set %taille $did(21)
elseif ($did == 36) set %caractere $did(36)
}
if ($devent == sclick) {
elseif ($did == 16) set %sexe homme
elseif ($did == 27) {
elseif (%sexe == homme) msg $active Je suis Un Homme
elseif (%sexe == femme) msg $active Je suis Une Femme
}
elseif ($did == 26) msg $active Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
elseif ($did == 28) msg $active Mon asv est %asv
elseif ($did == 29) msg $active Je m'appelle %nom %prenom
}
elseif ($did == 32) set %sexe femme
elseif ($did == 33) msg $active Mon adresse e-mail est %mail
elseif ($did == 34) {
set %notice $$?="Pseudo ou Salon ?"
notice %notice $me Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids a couleur de mes yeux %yeux a couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
elseif ($did == 38) {
set %pseudo $$?="Pseudo ?"
msg %pseudo Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
elseif ($did == 39) {
set %salon $$?="Salon ?"
msg %salon Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
}
if ($devent == init) {
elseif (%sexe == homme) did -c Lasv 16
elseif (%sexe == femme) did -c Lasv 32
}
}
Panthouffle
Messages postés281Date d'inscriptionjeudi 21 juillet 2005StatutMembreDernière intervention14 avril 2008 8 sept. 2006 à 21:46
Le dialog est pas beau, et niveau code, rassemble tout tes évènements, y'a pas seulement qu'avec edit que ça fonctionne, faut aussi le faire avec les autres, en utilisant $devent :
Désolé mais je suis pas persuadé que ce soit une bonne idée de transformer se code en picwin :/
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 8 sept. 2006 à 21:27
Dragounix, de bons tutoriaux sur les picwins on était fait par KiNdErMaXi sur ce site.
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 8 sept. 2006 à 20:42
atlantisfr je c'est pas faire un dialog en picwin sui un petit debutent
Dragounix
Messages postés36Date d'inscriptiondimanche 16 juillet 2006StatutMembreDernière intervention 3 juillet 2007 8 sept. 2006 à 17:40
ok atlantisfr merci je le modifi dessuite :)
RCA ArKanis
Messages postés1287Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention21 février 2009 8 sept. 2006 à 17:38
mets plutôt des elseif que plein de if à la suite, question rapidité d'execution
tu utilises des variables, c'est vraiment pas terrible :/
pas grand intérêt, et le code est bourré de fautes d'orthographe
atlantisfr
Messages postés76Date d'inscriptionsamedi 12 août 2006StatutMembreDernière intervention 9 août 2007 8 sept. 2006 à 17:34
Les dialogs d'ASV c'est du vu et revu. Si tu approtes des nouveauter comme un ASV en picwin, skinnable et encore le systeme d'ASV c'est pas trés utile. Niveau code, utilise des identifieurs $devent et $did, quand tu as une seule commande par $did retire les { }.
Exemple :
on *:dialog:Lasv:*:*:{
if ($devent == edit) {
if ($did == 13) set %nom $did(13)
if ($did == 14) set %prenom $did(14)
if ($did == 15) set %age $did(15)
if ($did == 17) set %ville $did(17)
if ($did == 18) set %poids $did(18)
if ($did == 19) set %cheveux $did(19)
if ($did == 20) set %yeux $did(20)
if ($did == 23) set %portable $did(23)
if ($did == 22) set %mail $did(22)
if ($did == 25) set %asv $did(25)
if ($did == 21) set %taille $did(21)
if ($did == 36) set %caractere $did(36)
}
}
Au lieu de :
on *:dialog:Lasv:edit:13:{ set %nom $did(13) }
on *:dialog:Lasv:edit:14:{ set %prenom $did(14) }
on *:dialog:Lasv:edit:15:{ set %age $did(15) }
on *:dialog:Lasv:edit:17:{ set %ville $did(17) }
on *:dialog:Lasv:edit:18:{ set %poids $did(18) }
on *:dialog:Lasv:edit:19:{ set %cheveux $did(19) }
on *:dialog:Lasv:edit:20:{ set %yeux $did(20) }
on *:dialog:Lasv:edit:23:{ set %portable $did(23) }
on *:dialog:Lasv:edit:22:{ set %mail $did(22) }
on *:dialog:Lasv:edit:25:{ set %asv $did(25) }
on *:dialog:Lasv:edit:21:{ set %taille $did(21) }
on *:dialog:Lasv:edit:36:{ set %caractere $did(36) }
Voilà donc essaye d'optimiser ton code, modifie ta source sur le site et on revoit ta note aprés.
25 sept. 2006 à 14:41
22 sept. 2006 à 11:08
20 sept. 2006 à 13:54
en un seul fichier INI ?
renseigne toi dessus
/writeini /remini
$readini
Bonne continuation
13 sept. 2006 à 15:37
12 sept. 2006 à 20:44
Si la personne n'a pas mis son numéro de portable par exemple...
alors on met lors du msg $active : $iif(%telephone,Mon num de portable est : $v1)
pour
# if ($devent == init) {
# if (%sexe == homme) did -c Lasv 16
# if (%sexe == femme) did -c Lasv 32
ca serai plus utile de faire
if $devent init { did -c lasv $iif(%sexe homme,16,32) }
enfin je pense ^^
Bonne continuation
9 sept. 2006 à 21:00
9 sept. 2006 à 20:56
en gros, tu ne peux pas commencer une série de ELSEIF s'il n'y a pas un IF tout au début
pour "rappel", elseif signifie SINON SI
le schéma "if, elseif, else" signifie :
Si (...) alors ...
Sinon si (...) alors ...
Sinon ...
toi ce que tu as fait, c'est ça :
Sinon si (...) alors ...
Sinon ...
j'espère que tu comprends qu'il n'est pas possible de commencer par "SINON SI"
9 sept. 2006 à 20:43
9 sept. 2006 à 19:42
9 sept. 2006 à 11:51
notice %notice $me Je m'app...
Notice $$?="Pseudo ou Salon ?" $me Je m'appelle...
Ca revient au même :) et au moins, tu ne crées pas une variable.
Comme l'a dit arkanis, il y a souvent des elseif qui commencent une série de if...
C'est if truc, sinon(elseif) truc,sinon etc...
Il y a aussi une erreur dans le if $devent sclick, à l'endroit de elseif ($did 29)
Tu as mis une accolade fermée } alors que tu ne l'as pas ouverte dans le elseif(ce qui était d'ailleurs bon). Il faut la supprimmée, parce que tout ce qui suis ne fait pas parti du on click. Même si ça marche comme ça... puisque, on ne peut edit un boutton ou scroll, enfin... un dclick, un uclick, rclick, drop, réagissent aussi dans ce cas. Donc autant les intégrer au sclick.
--- Encore un rappel ---
Lorsque vous utilisez des variables globales(set) dans un add-on... il serait préférable que ces variables ne soient pas déjà utilisées par un autre add-on... Donc mettez des choses plus spécifiques... %pseudo %salon... ce sont des choses qui ont grande chance d'être déjà utilisées... même si on essaie de moins en moins utiliser les variables globales.
9 sept. 2006 à 00:19
elseif ($did == 13) set %nom $did(13)
puis if ($devent == sclick) {
elseif ($did == 16) set %sexe homme
if ($devent == init) {
elseif (%sexe == homme) did -c Lasv 16
deviennent (dans l'ordre)
if ($devent == edit) {
if ($did == 13) set %nom $did(13)
puis elseif ($devent == sclick) {
if ($did == 16) set %sexe homme
elseif ($devent == init) {
if (%sexe == homme) did -c Lasv 16
en gros, tu ne peux pas faire que ta première condition soit un ELSEIF (ce qui est tout à fait logique)
8 sept. 2006 à 23:00
8 sept. 2006 à 22:13
En effet panthouffle, le rendre en PW, c'est inutile, déjà qu'il ne l'est pas beaucoup ;)
Tu aurais beaucoup plus de lignes, et ça ne rendrait pas terrible
faire des PWs pour des trucs compliqués, OK, mais pour ça, pas d'accord :)
Ca ne mérite pas qu'on y passe plus d'une heure à mon avis :p
tu as oublié ELSEif pour if ($devent == sclick)
8 sept. 2006 à 22:03
8 sept. 2006 à 21:57
8 sept. 2006 à 21:52
on *:dialog:Lasv:*:*:{
if ($devent == edit) {
elseif ($did == 13) set %nom $did(13)
elseif ($did == 14) set %prenom $did(14)
elseif ($did == 15) set %age $did(15)
elseif ($did == 17) set %ville $did(17)
elseif ($did == 18) set %poids $did(18)
elseif ($did == 19) set %cheveux $did(19)
elseif ($did == 20) set %yeux $did(20)
elseif ($did == 23) set %portable $did(23)
elseif ($did == 22) set %mail $did(22)
elseif ($did == 25) set %asv $did(25)
elseif ($did == 21) set %taille $did(21)
elseif ($did == 36) set %caractere $did(36)
}
if ($devent == sclick) {
elseif ($did == 16) set %sexe homme
elseif ($did == 27) {
elseif (%sexe == homme) msg $active Je suis Un Homme
elseif (%sexe == femme) msg $active Je suis Une Femme
}
elseif ($did == 26) msg $active Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
elseif ($did == 28) msg $active Mon asv est %asv
elseif ($did == 29) msg $active Je m'appelle %nom %prenom
}
elseif ($did == 32) set %sexe femme
elseif ($did == 33) msg $active Mon adresse e-mail est %mail
elseif ($did == 34) {
set %notice $$?="Pseudo ou Salon ?"
notice %notice $me Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids a couleur de mes yeux %yeux a couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
elseif ($did == 38) {
set %pseudo $$?="Pseudo ?"
msg %pseudo Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
elseif ($did == 39) {
set %salon $$?="Salon ?"
msg %salon Je m'appelle %nom %prenom jai %age ans je suis un/une %sexe j'abite a %ville je pèse %poids la couleur de mes yeux %yeux la couleur de mes cheveux %cheveux je mesure %taille je suis %caractere mon e-mail %mail mon numero de portable %portable
}
}
if ($devent == init) {
elseif (%sexe == homme) did -c Lasv 16
elseif (%sexe == femme) did -c Lasv 32
}
}
8 sept. 2006 à 21:46
if ($devent == edit) { ... }
elseif ($devent == sclick) { ... }
elseif (...) { ... }
Désolé mais je suis pas persuadé que ce soit une bonne idée de transformer se code en picwin :/
8 sept. 2006 à 21:27
8 sept. 2006 à 20:42
8 sept. 2006 à 17:40
8 sept. 2006 à 17:38
tu utilises des variables, c'est vraiment pas terrible :/
pas grand intérêt, et le code est bourré de fautes d'orthographe
8 sept. 2006 à 17:34
Exemple :
on *:dialog:Lasv:*:*:{
if ($devent == edit) {
if ($did == 13) set %nom $did(13)
if ($did == 14) set %prenom $did(14)
if ($did == 15) set %age $did(15)
if ($did == 17) set %ville $did(17)
if ($did == 18) set %poids $did(18)
if ($did == 19) set %cheveux $did(19)
if ($did == 20) set %yeux $did(20)
if ($did == 23) set %portable $did(23)
if ($did == 22) set %mail $did(22)
if ($did == 25) set %asv $did(25)
if ($did == 21) set %taille $did(21)
if ($did == 36) set %caractere $did(36)
}
}
Au lieu de :
on *:dialog:Lasv:edit:13:{ set %nom $did(13) }
on *:dialog:Lasv:edit:14:{ set %prenom $did(14) }
on *:dialog:Lasv:edit:15:{ set %age $did(15) }
on *:dialog:Lasv:edit:17:{ set %ville $did(17) }
on *:dialog:Lasv:edit:18:{ set %poids $did(18) }
on *:dialog:Lasv:edit:19:{ set %cheveux $did(19) }
on *:dialog:Lasv:edit:20:{ set %yeux $did(20) }
on *:dialog:Lasv:edit:23:{ set %portable $did(23) }
on *:dialog:Lasv:edit:22:{ set %mail $did(22) }
on *:dialog:Lasv:edit:25:{ set %asv $did(25) }
on *:dialog:Lasv:edit:21:{ set %taille $did(21) }
on *:dialog:Lasv:edit:36:{ set %caractere $did(36) }
Voilà donc essaye d'optimiser ton code, modifie ta source sur le site et on revoit ta note aprés.