J’ai récemment remarqué que le numéro de la direction des objets n’est pas forcément entre 0 et 360. Je sais que l’on peut utiliser une fonction avec “floor”, mais cela rajoute des événements qui pourraient ne pas être là, et cela pourrait être source d’erreurs. Ce que je demande, c’est de rajouter (et pas remplacer) un test dans “éditer l’expression” qui permettrait d’avoir un numéro de direction toujours entre 0 et 360.
Salut,
Ben, la direction est entre 0 et 7 quand une sprites n’est pas en mode rotation automatique : quand il possède des directions avec des images différentes. Sinon, en mode rotation automatique, la direction est entre 0 et 360.
Non, la preuve : regarde mon fichier joint. Si tu fais plus d’un tour vers la droite (ou la gauche), la direction continue à augmenter, même au delà de 360 degrés et en dessous de 0.
Voici l’événement que j’ai utilisé pour faire ce texte dans mon fichier joint :
[Pas de conditions] - Faire = à Enterprise.Direction() à la variable Direction
- Afficher "Direction = "+VariableString(Direction) en 0;0
Pas floor mais mod ( modulo ) plutôt : mod(angle,360) renverra la valeur de l’angle entre 0 et 360.
Je préfère éviter de multiplier les actions, surtout si c’est pour faire quelque chose qui existe déjà ( Faire ce genre de chose rendrait GD gros et pas maintenable au lieu d’avoir quelque chose de léger et joli ). Au final, il n’y a pas grand chose à rajouter de ton coté : Juste une action du style Faire =mod(Objet.Direction() ,360) à la direction de Objet.