Ediwiki

Wiki officiel de l'éditeur de carte du jeu Slayers Online

Outils pour utilisateurs

Outils du site


general:astuces

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
general:astuces [2021/03/24 22:09] – editeursogeneral:astuces [2022/09/25 17:11] (Version actuelle) – modification externe 127.0.0.1
Ligne 398: Ligne 398:
 -> 21/10=2 -> 21/10=2
  
-===== 10. Comptage d'objet =====+===== 10. Comptage d'objets ===== 
 + 
 +Il n'est pas possible de connaitre combien d'objets du même nom (ex: Dague) possède un joueur dans son inventaire directement avec les commandes de l'éditeur. Il n'est possible de connaitre le nombre d'objets total que possède le joueur qu'avec la variable joueur : [[var_char:nbobjetinventaire|%NbObjetInventaire%]]. 
 + 
 +Nous allons utiliser une astuce qui consiste à retirer le potentiel maximum de possession de l'objet recherché au joueur (soit 100 exemplaires) puis nous allons regarder combien il possédait d'items avant et après. Le comptage consiste à récupérer la différence. Il ne faut pas oublier de rendre cette différence par la suite ! 
 + 
 +Attention néanmoins : ce code ne fonctionne pas sur l'éditeur light mais uniquement sur le serveur REEL. 
 + 
 +__Exemple d'illustration :__ 
 +<html><center><table cellspacing=2> 
 +<tr height=25><th colspan=3 align=left><b><u>Page 1</u></b></th></tr> 
 +<tr><td><b>Conditions d'évènements</b></td><td></td><td><b>Commande évènements</b></td></tr> 
 +<tr><td> 
 +<TEXTAREA ROWS=13 WRAP=soft readonly> 
 +Appuie sur bouton 
 +</TEXTAREA> 
 +</td> 
 +<td width=20> 
 +</td> 
 +<td> 
 +<TEXTAREA ROWS=13 WRAP=soft readonly> 
 +//étape 1 : nombre total d'item avant 
 +Variable[13]=%NbObjetInventaire% 
 +DelObject(Dague,100) 
 +//étape 2 : nombre total d'item après 
 +Variable[14]=%NbObjetInventaire% 
 +//étape 3 : la différence donne la quantité de dague 
 +Variable[15]=Variable[13]-Variable[14] 
 +//étape 4 : on redonne les dagues 
 +//attention : ne fonctionne que le serveur réel 
 +AddObject(Dague,Variable[15]) 
 +// 
 +// on peut utiliser la quantité ensuite 
 +Message('Vous avez Variable[15] dagues sur vous.') 
 +// fin : réinitialisation des variables 
 +Variable[13..15]=0 
 +</TEXTAREA> 
 +</td> 
 +</tr> 
 +</table></center> 
 +</html> 
 + 
 +__Réécriture de l'exemple pour être utilisable sur l'éditeur light :__ 
 +<html><center><table cellspacing=2> 
 +<tr height=25><th colspan=3 align=left><b><u>Page 1</u></b></th></tr> 
 +<tr><td><b>Conditions d'évènements</b></td><td></td><td><b>Commande évènements</b></td></tr> 
 +<tr><td> 
 +<TEXTAREA ROWS=13 WRAP=soft readonly> 
 +Appuie sur bouton 
 +</TEXTAREA> 
 +</td> 
 +<td width=20> 
 +</td> 
 +<td> 
 +<TEXTAREA ROWS=13 WRAP=soft readonly> 
 +//étape 1 : nombre total d'item avant 
 +Variable[13]=%NbObjetInventaire% 
 +DelObject(Dague,100) 
 +//étape 2 : nombre total d'item après 
 +Variable[14]=%NbObjetInventaire% 
 +//étape 3 : la différence donne la quantité de dague 
 +Variable[15]=Variable[13]-Variable[14] 
 +//étape 4 : on redonne les dagues 
 +// ne fonctionne que sur le serveur REEL 
 +//AddObject(Dague,Variable[15]) 
 +// substitut pour tester sur votre éditeur light 
 +Condition('Variable[15]=1') 
 +AddObject(Dague,1) 
 +Condition('Variable[15]=2') 
 +AddObject(Dague,2) 
 +Condition('Variable[15]=3') 
 +AddObject(Dague,3) 
 +Condition('Variable[15]=4') 
 +AddObject(Dague,4) 
 +Condition('Variable[15]=5') 
 +AddObject(Dague,5) 
 +Condition('Variable[15]=6') 
 +AddObject(Dague,6) 
 +Condition('Variable[15]=7') 
 +AddObject(Dague,7) 
 +Condition('Variable[15]=8') 
 +AddObject(Dague,8) 
 +Condition('Variable[15]=9') 
 +AddObject(Dague,9) 
 +Condition('Variable[15]=10') 
 +AddObject(Dague,10) 
 +Condition('Variable[15]=11') 
 +AddObject(Dague,11) 
 +Condition('Variable[15]=12') 
 +AddObject(Dague,12) 
 +Condition('Variable[15]=13') 
 +AddObject(Dague,13) 
 +Condition('Variable[15]=14') 
 +AddObject(Dague,14) 
 +Condition('Variable[15]=15') 
 +AddObject(Dague,15) 
 +Condition('Variable[15]=16') 
 +AddObject(Dague,16) 
 +Condition('Variable[15]=17') 
 +AddObject(Dague,17) 
 +Condition('Variable[15]=18') 
 +AddObject(Dague,18) 
 +Condition('Variable[15]=19') 
 +AddObject(Dague,19) 
 +Condition('Variable[15]=20') 
 +AddObject(Dague,20) 
 +Condition('Variable[15]=21') 
 +AddObject(Dague,21) 
 +Condition('Variable[15]=22') 
 +AddObject(Dague,22) 
 +Condition('Variable[15]=23') 
 +AddObject(Dague,23) 
 +Condition('Variable[15]=24') 
 +AddObject(Dague,24) 
 +Condition('Variable[15]=25') 
 +AddObject(Dague,25) 
 +Condition('Variable[15]=26') 
 +AddObject(Dague,26) 
 +Condition('Variable[15]=27') 
 +AddObject(Dague,27) 
 +Condition('Variable[15]=28') 
 +AddObject(Dague,28) 
 +Condition('Variable[15]=29') 
 +AddObject(Dague,29) 
 +Condition('Variable[15]=30') 
 +AddObject(Dague,30) 
 +Condition('Variable[15]=31') 
 +AddObject(Dague,31) 
 +Condition('Variable[15]=32') 
 +AddObject(Dague,32) 
 +Condition('Variable[15]=33') 
 +AddObject(Dague,33) 
 +Condition('Variable[15]=34') 
 +AddObject(Dague,34) 
 +Condition('Variable[15]=35') 
 +AddObject(Dague,35) 
 +Condition('Variable[15]=36') 
 +AddObject(Dague,36) 
 +Condition('Variable[15]=37') 
 +AddObject(Dague,37) 
 +Condition('Variable[15]=38') 
 +AddObject(Dague,38) 
 +Condition('Variable[15]=39') 
 +AddObject(Dague,39) 
 +Condition('Variable[15]=40') 
 +AddObject(Dague,40) 
 +Condition('Variable[15]=41') 
 +AddObject(Dague,41) 
 +Condition('Variable[15]=42') 
 +AddObject(Dague,42) 
 +Condition('Variable[15]=43') 
 +AddObject(Dague,43) 
 +Condition('Variable[15]=44') 
 +AddObject(Dague,44) 
 +Condition('Variable[15]=45') 
 +AddObject(Dague,45) 
 +Condition('Variable[15]=46') 
 +AddObject(Dague,46) 
 +Condition('Variable[15]=47') 
 +AddObject(Dague,47) 
 +Condition('Variable[15]=48') 
 +AddObject(Dague,48) 
 +Condition('Variable[15]=49') 
 +AddObject(Dague,49) 
 +Condition('Variable[15]=50') 
 +AddObject(Dague,50) 
 +Condition('Variable[15]=51') 
 +AddObject(Dague,51) 
 +Condition('Variable[15]=52') 
 +AddObject(Dague,52) 
 +Condition('Variable[15]=53') 
 +AddObject(Dague,53) 
 +Condition('Variable[15]=54') 
 +AddObject(Dague,54) 
 +Condition('Variable[15]=55') 
 +AddObject(Dague,55) 
 +Condition('Variable[15]=56') 
 +AddObject(Dague,56) 
 +Condition('Variable[15]=57') 
 +AddObject(Dague,57) 
 +Condition('Variable[15]=58') 
 +AddObject(Dague,58) 
 +Condition('Variable[15]=59') 
 +AddObject(Dague,59) 
 +Condition('Variable[15]=60') 
 +AddObject(Dague,60) 
 +Condition('Variable[15]=61') 
 +AddObject(Dague,61) 
 +Condition('Variable[15]=62') 
 +AddObject(Dague,62) 
 +Condition('Variable[15]=63') 
 +AddObject(Dague,63) 
 +Condition('Variable[15]=64') 
 +AddObject(Dague,64) 
 +Condition('Variable[15]=65') 
 +AddObject(Dague,65) 
 +Condition('Variable[15]=66') 
 +AddObject(Dague,66) 
 +Condition('Variable[15]=67') 
 +AddObject(Dague,67) 
 +Condition('Variable[15]=68') 
 +AddObject(Dague,68) 
 +Condition('Variable[15]=69') 
 +AddObject(Dague,69) 
 +Condition('Variable[15]=70') 
 +AddObject(Dague,70) 
 +Condition('Variable[15]=71') 
 +AddObject(Dague,71) 
 +Condition('Variable[15]=72') 
 +AddObject(Dague,72) 
 +Condition('Variable[15]=73') 
 +AddObject(Dague,73) 
 +Condition('Variable[15]=74') 
 +AddObject(Dague,74) 
 +Condition('Variable[15]=75') 
 +AddObject(Dague,75) 
 +Condition('Variable[15]=76') 
 +AddObject(Dague,76) 
 +Condition('Variable[15]=77') 
 +AddObject(Dague,77) 
 +Condition('Variable[15]=78') 
 +AddObject(Dague,78) 
 +Condition('Variable[15]=79') 
 +AddObject(Dague,79) 
 +Condition('Variable[15]=80') 
 +AddObject(Dague,80) 
 +Condition('Variable[15]=81') 
 +AddObject(Dague,81) 
 +Condition('Variable[15]=82') 
 +AddObject(Dague,82) 
 +Condition('Variable[15]=83') 
 +AddObject(Dague,83) 
 +Condition('Variable[15]=84') 
 +AddObject(Dague,84) 
 +Condition('Variable[15]=85') 
 +AddObject(Dague,85) 
 +Condition('Variable[15]=86') 
 +AddObject(Dague,86) 
 +Condition('Variable[15]=87') 
 +AddObject(Dague,87) 
 +Condition('Variable[15]=88') 
 +AddObject(Dague,88) 
 +Condition('Variable[15]=89') 
 +AddObject(Dague,89) 
 +Condition('Variable[15]=90') 
 +AddObject(Dague,90) 
 +Condition('Variable[15]=91') 
 +AddObject(Dague,91) 
 +Condition('Variable[15]=92') 
 +AddObject(Dague,92) 
 +Condition('Variable[15]=93') 
 +AddObject(Dague,93) 
 +Condition('Variable[15]=94') 
 +AddObject(Dague,94) 
 +Condition('Variable[15]=95') 
 +AddObject(Dague,95) 
 +Condition('Variable[15]=96') 
 +AddObject(Dague,96) 
 +Condition('Variable[15]=97') 
 +AddObject(Dague,97) 
 +Condition('Variable[15]=98') 
 +AddObject(Dague,98) 
 +Condition('Variable[15]=99') 
 +AddObject(Dague,99) 
 +Condition('Variable[15]=100') 
 +AddObject(Dague,100) 
 +// 
 +Condition('1=1') 
 +// 
 +// 
 +// on peut utiliser la quantité ensuite 
 +Message('Vous avez Variable[15] dagues sur vous.') 
 +// fin : réinitialisation des variables 
 +Variable[13..15]=0 
 + 
 +</TEXTAREA> 
 +</td> 
 +</tr> 
 +</table></center> 
 +</html>
  
general/astuces.1616623749.txt.gz · Dernière modification : 2022/09/25 17:09 (modification externe)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki