11-06-2013, 08:02 PM
Salut,
Plutôt que d'utiliser la position de ton player en case, tu peut récupérer les coordonnées véritable en X/Y (dans player.content si je ne me trompe pas).
A partir de ça, pour une map centrée, la formule est:
Attention, dans ton code commenté tu utilise l'opérateur +=, donc les effets se cumulent.
Note: j'ai testé rapidement avec Chrome, ça à l'air de bien marcher. Mais si les valeurs de player.content.x et player.content.y ne sont pas encore définies dans certains cas (j'ai juste survolé ton code), tu devrais pouvoir calculer la valeur en copiant le code d'assignation de updatePos().
Plutôt que d'utiliser la position de ton player en case, tu peut récupérer les coordonnées véritable en X/Y (dans player.content si je ne me trompe pas).
A partir de ça, pour une map centrée, la formule est:
this.regX = player.content.x - (this.getStage().canvas.width / 2) + (largeur_du_player /2);
this.regY = player.content.y - (this.getStage().canvas.heigth / 2) + (hauteur_du_player /2);
Attention, dans ton code commenté tu utilise l'opérateur +=, donc les effets se cumulent.
Note: j'ai testé rapidement avec Chrome, ça à l'air de bien marcher. Mais si les valeurs de player.content.x et player.content.y ne sont pas encore définies dans certains cas (j'ai juste survolé ton code), tu devrais pouvoir calculer la valeur en copiant le code d'assignation de updatePos().