Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Jalealf en Septiembre 05, 2018, 07:32:05 AM

Título: Draw Gui y su posicionamiento
Publicado por: Jalealf en Septiembre 05, 2018, 07:32:05 AM
Hola y buenos días,tardes o noches
Seguramente ya me han visto seguido por aquí peguntando sobre varias cosas, esta vez se trata sobre el evento draw gui o mejor dicho el draw_sprite_stretched.
Lo que quiero es colocar una barra rápida de inventario que no ha sido un problema hasta ahora, pero al querer posicionar la barra en el extremo inferior central de la pantalla y escalarlo no logro centrarlo adecuadamente.
¿Como calculan la posición del sprite?,¿La posición es en relación al punto de origen del mismo?

gracias de antemano
Título: Re:Draw Gui y su posicionamiento
Publicado por: BssString en Septiembre 05, 2018, 01:45:35 PM
Hola Jalealf

En ese caso, la función draw_sprite_stretched ignora el origen del sprite y te lo dibuja en la coordenada superior izquierda.
A la coordenada del centro que quieres, réstale el (width/2) y el (height/2) del sprite stretched. De esa forma ajustas la esquina superior izquierda y el sprite queda centrado.

Ojo que game maker modifica el tamaño de la GUI para ajustarlo a la pantalla.
Puedes usar display_set_gui_maximise(1,1) para ignorar el escalado de la Gui

Saludos
Título: Re:Draw Gui y su posicionamiento
Publicado por: Jalealf en Septiembre 08, 2018, 06:00:09 PM
En caso que use draw_sprite, ¿las cordenadas son en relacion a la vista o tengo que crear un objCamara?
Título: Re:Draw Gui y su posicionamiento
Publicado por: BssString en Septiembre 08, 2018, 06:26:58 PM
Hola Jalealf

Si estás dibujando en la GUI, entonces son las coordenadas respecto de la GUI, no tiene relación con la room. La GUI es una surface a parte de la del juego, por lo que tiene su propio tamaño. Dibujar el sprite en x=0;y=0 significa que lo estás dibujando en la esquina superior izquierda de la GUI y tu sprite se dibujará en esa orilla.

Saludos