condition : si Y("active") augmente de 1.
Bonjour/Bonsoir,
Je voudrais mettre en place un système de zoom et de dézoom dans mon jeu, pour marquer la distance.
En gros, si le joueur se déplace vers le haut, il devient plus petit, et s'il se déplace vers le bas il devient plus gros.
Il me faut donc une condition semblable à celle-ci :
If Y("joueur")=Y("joueur")+1 --------> zoom.
Sauf que dit comme ça, ça n'a pas l'air de marcher...
J'ai donc essayé plusieurs techniques mais je n'arrive pas à trouver EXPLICITEMENT la condition : "quand la position en Y du joueur augmente de 1".
Pourriez vous m'aider ?
Merci
Re: condition : si Y("active") augmente de 1.
Le plus simple c'est de faire un truc du genre :
Toujours / Fixer échelle perso à Y("perso") / 480.0
Dans cet exemple j'ai mis Y/480.0 pour que le coefficient d'échelle soit à 0 en haut et à 1 en bas, en supposant que la scène fasse 480 pixels de haut. Il suffit de modifier ça pour avoir d'autres valeurs.
Re: condition : si Y("active") augmente de 1.
Merci d'avoir répondu aussi vite, je vais tester des truks..
Re: condition : si Y("active") augmente de 1.
Je n'y arrive pas...
La taille ne change pas progressivement, quand une certaine coordonnée en Y est atteinte, le perso disparaît (donc j'imagine que la taille est extrêment petite et proche de 0).
Ma scène fait 3703x900 et l'écran de jeu fait 1280x720.
Pourtant j'ai bien mis tes consignes, et j'ai testé plusieurs valeurs.
Re: condition : si Y("active") augmente de 1.
Ah non autant pour moi, j'ai mis /360.0 au lieu de /360 et ça marche, comment ce fait-il que le " .0 " change quelque chose ?
Re: condition : si Y("active") augmente de 1.
Quand on met .0 les calculs sont faits sur des nombres décimaux. Si on n'utilise que des nombres entiers dans une opération, le résultat sera un nombre entier, ce qui donnerait un facteur de zoom de 0 ou 1 dans le cas présent.