diditigrou Pas mal
Messages : 34
| Sujet: [résolu] Problème de superposition d'affichage Sam 20 Fév 2016 - 11:26 | |
| Bonjour à tous, j'ai mis mon projet de hack & slash un peu de côté (mais j'ai bien avancé ) et je reviens avec pour but de faire un test, adapter une campagne de Dungeon World avec Game Maker (avec forcément moins de possibilités qu'avec des joueurs humains...) en une sorte de "livre dont vous êtes le héros". Mon écran de choix de personnage ressemble à ça : Quand je survole une des images, elle s'agrandit un peu et un rectangle avec un texte apparaît, avec le nain, pas de problème : Mais avec les autres personnages, les images gênent la visibilité comme ceci : Voici le code que j'ai utilisé en event Draw. Petite précision, ce code est sur mon obj_warrior, j'ai créé un objet pour chaque héros : - Code:
-
if (((mouse_x < x + (sprite_width / 2)) && (mouse_x > x - (sprite_width / 2))) && ((mouse_y < y + (sprite_height / 2)) && (mouse_y > y - (sprite_height / 2)))) { image_xscale = 1.2 //redimensionner l'image (largeur) image_yscale = 1.2 //redimensionner l'image (hauteur) draw_rectangle_colour(x -750, y -150, x -200, y+650, c_white, c_white, c_white, c_white, false); draw_set_font(font02); //change la police d'écriture draw_set_halign(fa_center); //alignement horizontal draw_set_valign(fa_top); //alignement vertical draw_set_colour(c_black); //couleur de la police draw_text_ext_transformed(x-475, y-125, "Vous n'avez pas peur de la mort. Vous et votre arme avez vu des dizaines d'adversaires et tous sont tombés devant vous. Vous êtes un roc : les attaques s'écrasent sur vous sans laisser de trace et quand la poussière retombe, vous êtes toujours le dernier debout.", -1, 500, 1, 1, 0); } else { image_xscale = 1 //redimensionner l'image (largeur) image_yscale = 1 //redimensionner l'image (hauteur) } Si par ailleurs vous savez comment améliorer la mise en page d'un texte sous Game Maker, je suis preneur.
Dernière édition par diditigrou le Sam 20 Fév 2016 - 14:25, édité 1 fois |
|
Linky439 Utilisateur confirmé: Rang *****
Messages : 2643 Localisation : Sur le forum du CBNA...ou pas Projet Actuel : La Galaxie Scellée
| Sujet: Re: [résolu] Problème de superposition d'affichage Sam 20 Fév 2016 - 13:12 | |
| C'est en fait assez simple : dans un code draw, prenons par exemple le suivant : - Code:
-
//Draw draw1 draw2 draw3 "draw3" va s'afficher au dessus de "draw2" qui va s'afficher au dessus de "draw1". Maintenant, je lis que tu as créé des objets pour chaque visage ? Bon, perso je te conseille plutôt de faire un unique "obj_menu" qui gérera quoi afficher selon la position de la souris, mais pour ton problème, je pense que c'est une question de depth. Lorsque tu utilise le Draw d'un objet, ce qui s'affiche à l'écran est à la profondeur depth de l'objet en question. Si plusieurs objets ont la même profondeur, ce sera alors le plus récent qui sera affiché au dessus des autres. Donc pour ton problème, je pense que la solution c'est : 1) Soit tu fais un unique objet pour gérer le choix des persos (voir du menu en général) et dans ce cas là, tout dans un même draw en veuillant bien à ce que ton code pour le texte soit placé après les visages dans le code. 2) Soit de changer la depth de tes objets selon que la souris soit sur le perso ou pas. _________________ Cliquez pour accéder aux topics dédiés ! |
|
diditigrou Pas mal
Messages : 34
| Sujet: Re: [résolu] Problème de superposition d'affichage Sam 20 Fév 2016 - 14:24 | |
| Super, ça fonctionne au poil (j'ai utilisé depth) ! Je mets le code pour ceux que ça intéresserait : - Code:
-
if (((mouse_x < x + (sprite_width / 2)) && (mouse_x > x - (sprite_width / 2))) && ((mouse_y < y + (sprite_height / 2)) && (mouse_y > y - (sprite_height / 2)))) { image_xscale = 1.2 //redimensionner l'image (largeur) image_yscale = 1.2 //redimensionner l'image (hauteur) depth = -1 draw_rectangle_colour(x -750, y -150, x -200, y+650, c_white, c_white, c_white, c_white, false); draw_set_font(font02); //change la police d'écriture draw_set_halign(fa_center); //alignement horizontal draw_set_valign(fa_top); //alignement vertical draw_set_colour(c_black); //couleur de la police draw_text_ext_transformed(x-475, y-125, "Vous n'avez pas peur de la mort. Vous et votre arme avez vu des dizaines d'adversaires et tous sont tombés devant vous. Vous êtes un roc : les attaques s'écrasent sur vous sans laisser de trace et quand la poussière retombe, vous êtes toujours le dernier debout.", -1, 500, 1, 1, 0); } else { image_xscale = 1 //redimensionner l'image (largeur) image_yscale = 1 //redimensionner l'image (hauteur) depth = 0 } |
|
Contenu sponsorisé
| Sujet: Re: [résolu] Problème de superposition d'affichage | |
| |
|