Noticias

Se ha publicado un nuevo servicio, el Portal de Juegos Online

* Sponsor

Comunidad Game Maker

Bienvenid@ a la comunidad hispana de Game Maker. Nuestro objetivo es crear videojuegos y dar soporte en castellano de GM. Para mejorar nuestro servicio hemos implantado, como adicion al reglamento general, algunas normas especificas en los subforos más comunes. ¡No olvides informarte antes de participar!.

Autor Tema: No funciona cordenada X ni Y(SOLUCIONADO)  (Leído 413 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Ikaro3d

en: Septiembre 04, 2018, 12:11:22 am
Hola :|,resulta que he hoy me he puesto con mi juego y al rato no se que he tocada y las.variables.x,y no me funcionan  ejemplo un  if objeto pasa por cordenada.y=540 crea.una.instancia , pues ya no me funciana ,es como si se ubiera deshabilitado
« Última modificación: Septiembre 06, 2018, 06:13:12 pm por Ikaro3d »

 


No Tienes Permisos Para Dar Puntos
point 0 Puntos

Este tema no recibió puntos.


Desconectado dixon2010

Respuesta #1 en: Septiembre 04, 2018, 12:31:48 am
Hola buenas tardes:

Los objetos se mueven en pixeles por cada step. La velocidad determinará en que pixel sera posicionado el objeto. Si el objeto esta posicionado en la y=535 y su velocidad vertical es 7 entonces la siguiente posición será y=542 y nunca será y=540. Por lo tanto la condicion if(y=540) será false y nunca producira efecto. Quizas modificastes la velocidad vertical, Pero si aun quieres conservar esa velocidad entonces tendrás que crear otro método para producir el mismo efecto. 

Att. Reyes Davila
« Última modificación: Septiembre 04, 2018, 12:37:25 am por dixon2010 »

Dios nos ayuda y nos da sabiduría para vivir. Cáda código es una obra maestra que hay que respetar aunque exista un código mas eficiente y sencillo.
 
Los siguientes usuarios dieron las gracias a este tema: Ikaro3d


Desconectado Ikaro3d

Respuesta #2 en: Septiembre 04, 2018, 01:00:08 am
Hola dixon2010,si algo se me ha modificado mirare a ver si es la velocidad no se me avía ocurrido gracias por contestar, en cuanto llegue lo mirare

 


Desconectado Ikaro3d

Respuesta #3 en: Septiembre 04, 2018, 09:31:38 pm
Nada la desepercacion a inundado mi room ,he llegado a eliminar todo menos un if donde me genra  una instancia nueva la cual sigue sin funcionar ,arranco un proyecto nuevo y lo mismo me funciona ,como abre deshabilitado las coordenada y.x.
Al final empiezo de nuevo ,a partir de hoy me toca hacer respaldos

 


Desconectado BssString

Respuesta #4 en: Septiembre 04, 2018, 10:13:28 pm
Hola Ikaro3d

Podrías mostrarnos el código para ver lo que intentas hacer?? Quizás tienes algo mal escrito.

Las coordenadas X e Y son relativas al objeto que está corriendo el código, si estás corriendo el código en otro objeto, no funcionará.
Si quieres tomar las coordenadas X e Y de un player, debes correr el código en ese objeto player.
Si por el contrario, estás corriendo el código en un objeto control y quieres tomar las coordenadas de otro objeto, tienes que usar: <object name>.x (sin los signos)
Ejemplo: Si mi objeto se llama "obj_player", yo uso obj_player.x para tomar su coordenada X.

Si tienes dudas, puedes editar el DRAW EVENT de tu objeto y hacer que te dibuje sus coordenadas.
Código: [Seleccionar]
draw_text(0,0,x)
draw_text(0,16,y)

Saludos

Saludos

 
Los siguientes usuarios dieron las gracias a este tema: Ikaro3d


Desconectado Ikaro3d

Respuesta #5 en: Septiembre 05, 2018, 06:08:48 pm
hola buenas tardes BssString ,resulta que me a estado funcionan todo correctamente , tengo puesto que cuando un objeto pase y colisiona con un cuadrado que representa el mar ,me crea una instancia con una animación de una salpicaduras ,hace una par de días se acerco mi hijo de tres años  y se lio a tocar las teclas  ???
pues el casa es que  lo he llegado a borrar todo en ese mimo proyecto y he dejado solo  el if que cuando se encuentre en la posición y 200 me generes la instancia mi velocidad es de 10 a si que cuadra y no me funciona
al crear nuevo proyecto hago todo exactamente lo mismo y me funciona ,eso significa que en el proyecto que no me funciona hay algo deshabilitado
« Última modificación: Septiembre 05, 2018, 06:12:31 pm por Ikaro3d »

 


Desconectado BssString

Respuesta #6 en: Septiembre 05, 2018, 06:54:16 pm
Hola Ikaro3d
Duda: la velocidad de 10 es vertical? O diagonal? Porque si te mueves 10 pixeles en diagonal, en "y" no avanzas los 10 pixeles... avanza menos
Sino es eso, lo único que se me ocurre es que en la room estás creando la instance en una "y" que no es multiplo de 10.
Creo que las rooms de game maker por defecto se dividen en múltiplos de 32, si creas la instance en una coordenada rara, tu "y" jamás será 200.

Lo reitero, para salir de cualquier duda, lo mejor que puedes hacer es dibujar como texto en el evento de dibujo para que te muestre la "y" del objeto en pantalla, así sabes en todo momento cual es el valor que toma la variable "y" mientras vas caminando

 
Los siguientes usuarios dieron las gracias a este tema: Ikaro3d


Desconectado Ikaro3d

Respuesta #7 en: Septiembre 05, 2018, 09:43:03 pm
Lo has bordado es  la maya que esta a 32 y la nave no encaja, estaría en alguna posición  impar en su inicio y a si nunca se encontraban ,GRACIAS !!!!


« Última modificación: Septiembre 06, 2018, 12:20:19 am por Ikaro3d »

 


Desconectado BssString

Respuesta #8 en: Septiembre 06, 2018, 02:09:56 am
Que bueno que hayas encontrado la solución.

PD: Excelentes dibujos man.