Bonjour/Bonsoir tout le monde !
Voici mon problème : Je crée une barre de vie qui diminue au fur et à mesure que le perso' prend des degats. Sachant que la barre fait 150px de long et que certains perso ont 4500 de vie, je dois mettre la vie sur 150. Donc voici mon code : http://pastebin.com/qewAg7UA (Je ne l'ai pas mis en entier bien evidemment). Mais, quand je lance mon jeu, la barre de vie n'apparait pas !
Pourquoi ? Merci d'avance !
Tu défini pas decoupeJ1.y, essai avec ça :
pos.x = 154;
pos.y = 60;
decoupeJ1.x = pos.x;
decoupeJ1.y = pos.y;
decoupeJ1.w = j1.getVie() * 150 / j1.getVieMax();
decoupeJ1.h = 5;
SDL_BlitSurface(vie, &decoupeJ1, ecran, &pos);
Ah ouais j'dois être fatigué ^^ Merci !
Ah bah ça plante.
Quelle est erreur?
Juste une question, à la base "decoupe" c'est quoi ça nature?
Y a pas d'erreur en fait je lance le jeu, je selectionne des persos (C'est un jeu de catch, donc je choisis deux persos) et quand j'arrive à l'interface de combat quand la barre de vie apparait, la fenêtre se ferme !
C'est un SDL_Rect.
Bon j'ai fais un cout pour tester la valeur de l'opération, ça fait 0. Je vais regarder ce qui cloche..
decoupeJ1.w = j1.getVie() * 150 / j1.getVieMax(); c'est ça qui vaut 0 ? Si oui remplace 150 par 150.0
Problème réglé !
Le problème venait d'où donc?
Bah je crée un objet Catcheur (Que j'ai crée) que j'appelais J1 mais avec le constructeur de base, et ensuite dans un switch je le recréais mais avec le constructeur surchargé. Donc les attributs buggaient. ^^