JeuWeb - Crée ton jeu par navigateur
[Résolu] Barre de vie (mana ou autre) - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Barre de vie (mana ou autre) (/showthread.php?tid=3755)

Pages : 1 2


[Résolu] Barre de vie (mana ou autre) - SorenS - 04-03-2009

Bonjour,

Sur cette ancienne discussion :
http://jeuphp.forumactif.com/tutoriaux-scripts-f4/barre-de-viemana-ajustable-t427.htm

on parle de faire une barre de mana droite avec les images.
J'ai deux questions :
- comment faire la même mais avec GD ?
- comment faire une barre non droite ? Un demi cercle par exemple.

Je précise, je ne connais pas beaucoup GD mais je m'efforce de gommer ce défaut Smile


RE: Barre de vie (mana ou autre) - Argorate - 04-03-2009

Personnellement je n'utilise pas GD pour les miennes, car c'est une perte de temps et de ressource. Cela marche impec en jouant sur les div.

Pour une en cercle, je vois très bien comment faire pour que la jauge monte symétriquement, mais si tu souhaites faire avancer la barre que d'un coté jusqu'a se que sa fasse 360°, là je ne sais pas, il faudrais y réfléchir.


RE: Barre de vie (mana ou autre) - Ruz - 04-03-2009

euh...
tu ferais comment pour le premier exemple?

Ruz, intéressé à moyen terme


RE: Barre de vie (mana ou autre) - SorenS - 04-03-2009

Oui je suis moi aussi intéressé par la logique de ton exemple.

Sinon je parlai de quelques chose comme ça:
[Image: barredevieroxasot3.png]


RE: Barre de vie (mana ou autre) - Allwise - 04-03-2009

C'est peut-être réalisable avec des fonctions mathématiques, mais étant nul en math, je découperais ton image en plusieurs zones : 4 en l'occurence, et je les remplirais ou non en fonction de la valeur en jouant avec transparence et la superposition d'images.
[Image: gitan.jpg]
La 1ère serait remplie de gauche à droite, la 2ème de bas en haut etc...

Ptit edit : pour faire un cercle qui se remplit c'est pas compliqué, on définit une forme : un triangle, qui part du centre du cercle et dépasse un peu de son contour, et on le duplique / fait pivoter ( avec le centre de rotation à l'extrémité du triangle, au centre du cercle ). La seule difficulté serait la rotation pour laquelle il faudrait une fonction custom qui permettre de définir le centre de rotation où on veut, mais ça doit sûrement exister...


RE: Barre de vie (mana ou autre) - Argorate - 04-03-2009

Je serais tenté de faire comme Allwise le suggere, découper en plusieurs morceau pour ton cas, parceque je ne vois pas comment faire autrement là Confused

D'où tire tu cette image daillieurs?

Sinon pour la barre de vie qui augmente symetriquement, il suffit de jouer encore une fois avec des divs:
Mettre un div en forme de rond au premier plan, avec du transparant a l'interieur du disque, et un div(représenter par le cardre vert sur mon image) qui aurait la bonne forme en rouge au secon plan:
[Image: barre_pv_cercle.png]

et qui peu varier de taille:
[Image: barre_pv_cercle2.png]

Sinon, Allwise, je n'est pas bien comprit ta methode avec la rotation, pourquoi parles-tu d'un triangle?


RE: Barre de vie (mana ou autre) - madri2 - 04-03-2009

moi je vous fait ça sans GD, en utilisant une grosse image avec du gris a la place de la couleur
puis sur 4 autres fichiers (pour les 4 zones) je créé des images contenant juste les barres (mais pleines)
et après c'est juste des calculs en PHP pour définir la largeur ou hauteur
désolé si le sujet d'origine explique justement ce que je viens de raconter


RE: Barre de vie (mana ou autre) - Allwise - 04-03-2009

Argo, je pensais à un cercle qui se remplit mais différemment, un truc comme ça :
[Image: gitan.jpg]


RE: Barre de vie (mana ou autre) - Roworll - 04-03-2009

Le jour ou IE supportera le SVG en natif, ce genre de chose ne sera plus qu'un mauvais souvenir...
C'est quand même hallucinant que MS traine les pieds à ce point.


RE: Barre de vie (mana ou autre) - Argorate - 05-03-2009

Ah oui je vois mieux maintenant, Allwise! Je m'imaginais pas un triangle si fin, c'est pour ça que j'avais du mal à visualiser se que tu faisais de ton triangle.
Effectivement sur la théorie ça doit bien se faire, faut voir si php offre de manière relativement abordable la possibilité de manipulé les rotations... ^^