Hello tous le monde,
J'aimerai vous montrer une technique simple pour créer une barre de HP (où autre chose, à vous de voir) qui bougera pixel par pixel.
Commençons par le commencement (qui sait qui dit ça déjà?).
Déjà munissez vous d'une picture d'une jauge et d'une barre :
Jauge
Barre
(Bon ok c'est très petit)
Puis créer un Event Commun en processus parrallèle, que vous nommerez comme vous voulez. :p
On va créer les variables(5) :
-X Barre HP
Elle va nous servir à placé la barre par rapport au HP du héros-Y Barre HP
Elle permet de placé la barre (haut, bas) donc les coordonnés Y de la barre-Calcul Barre
Cette variable contiendra les HP du héros en %-HP Max héros
Les HP max du héros-HP héros
Les HP actuel du hérosVoilà nos variables sont créer, passons à la pratique :
Tous d'abords, on va afficher la jauge en haut à gauche de l'écran(la jauge doit être collé à un coté de l'écran, la barre va se cacher sur les cotés, enfin la c'est pas encore assez clair mais c'est important
) :
<>Afficher une image: 10,jauge,(25,4)
Maintenant, on va afficher la barre de HP aux coordonnés X et Y des variables "X Barre HP" et "Y Barre HP".
D'abord on va configurer la coordonné Y de la barre :
<>Variable(s): [0002: Y Barre HP] = , 4
Puis on affiche la barre :
<>Afficher une image: 9,barreHP,X[0001:X Barre HP], Y[0002:Y Barre HP]
Jusqu'à là, tous va bien ?
Bon, alors maintenant on va passé à la partie la plus importante, on va pêcher les HP du héros en pourcentage.
Pour cela, il faut tous d'abord insérer les HPs actuel du héros dans la variable "Calcul Barre" :
<>Variable(s): [0003:Calcul Barre] = , valeur de [0005:HP héros]
Puis on multiplie cette valeur par 50, pourquoi 50 ? Parce-que ma barre mesure 50 pixels de coté ! C'est très important la aussi!(Donc si votre barre mesure 60 pixels de coté, c'est 60 qu'il faut mettre
) :
<>Variable(s): [0003:Calcul Barre] * , 50
Ensuite on divise la valeur qu'on à dans la variable "Calcul Barre" par les HPs max du héros.(Donc la valeur de la variable "HP Max héros") :
<>Variable(s): [0003:Calcul Barre] = , valeur de [0004:HP Max héros]
Et enfin, on soustrait la valeur de la variable "Calcul Barre" par 25.La encore, pourquoi 25 ?
Car il faut que notre barre se positionne à l'endroit où il y'a la jauge, comme la coordonné X de notre jauge est 25, est que notre barre mesure 50 pixels de coté, en additionnant ces deux variables(Calcul Barre + Coordonné X Jauge) on doit obtenir le nombre de pixel de votre barre.Ici vous pouvait faire le calcul, on obtient bien 50.
<>Variable(s): [0003:Calcul Barre] - , 25
Deux dernière chose, on doit rendre égal la variable "X Barre HP" à la valeur de la variable "Calcul Barre" :
<>Variable(s): [0001:X Barre HP] = , valeur de [0003:Calcul Barre]
Votre Event doit ressembler à ça maintenant :
<>Afficher une image: 10,jauge,(25,4)
<>Variable(s): [0002: Y Barre HP] = , 4
<>Afficher une image: 9,barreHP,X[0001:X Barre HP], Y[0002:Y Barre HP]
<>Variable(s): [0003:Calcul Barre] = , valeur de [0005:HP héros]
<>Variable(s): [0003:Calcul Barre] * , 50
<>Variable(s): [0003:Calcul Barre] = , valeur de [0004:HP Max héros]
<>Variable(s): [0003:Calcul Barre] - , 25
<>Variable(s): [0001:X Barre HP] = , valeur de [0003:Calcul Barre]
Mais nous avons oublié de vérifier si les HPs actuel du héros ne sont pas supérieur aux HP max du héros, si ils le sont, on soustrait les HPs actuel du héros de 1 :
<>Si variable[0005:HP héros] V[0004:HP Max héros] > strict
<>Variable(s): [0005:HP héros] - , 1
<>
Fin
Et voilà l'event au complet :
<>Afficher une image: 10,jauge,(25,4)
<>Variable(s): [0002: Y Barre HP] = , 4
<>Afficher une image: 9,barreHP,X[0001:X Barre HP], Y[0002:Y Barre HP]
<>Variable(s): [0003:Calcul Barre] = , valeur de [0005:HP héros]
<>Variable(s): [0003:Calcul Barre] * , 50
<>Variable(s): [0003:Calcul Barre] = , valeur de [0004:HP Max héros]
<>Variable(s): [0003:Calcul Barre] - , 25
<>Variable(s): [0001:X Barre HP] = , valeur de [0003:Calcul Barre]
<>Si variable[0005:HP héros] V[0004:HP Max héros] > strict
<>Variable(s): [0005:HP héros] - , 1
<>
Fin
<>