Marzo 16, 2010, 10:57:40 AM Ultima modificación: Marzo 18, 2010, 10:10:54 AM por pucara
Mientras edito una room agregando nuevos objetos, muchas veces me es necesario saber las coordenadas(x e y) exactas de los mismos, pero con el puntero s?lo consigo aproximaciones poco precisas. Tampoco me dice nada "ctrl+click" (no estar?a dem?s saber las propiedades del objeto..)

?Alguien sabe c?mo consultar estas coordenadas?

Gracias por contestar  8)

si son del room ser?a room_width o room_height, explica mejor para poder ayudarte  XD XD XD
Un foro donde hay de todo: http://fileceru.foroactivo.net (se necesitan moderadores para el foro)

a lo que se refiere es que el editor tiene una grilla y las coordenadas que se les da son 0,0 de cada grilla, por lo tanto si las grillas son de 32x32 solo te va a dar las coordenadas cada 32px en x e y:

lo que tenes q hacer es desactivar la grilla y poner los valores de la grilla en X=1 e Y=1 en al parte superior de la ventana de room.
?Eres experto en Game Maker y quieres ense?ar lo que sabes? ?nete a nuestro proyecto como tutor. ?Tienes en mente un gran juego pero no sabes como usar Game Maker? Inscr?bete y un tutor te guiar?. Aprender?s dise?ando un juego para luego dise?ar el tuyo propio. Ap?ntate en http://www.comunidadgm.org/index.php?topic=10462.0.

Parece que no me expres? muy bien.

Empiezo un juego. Creo un objeto. Creo una room. En la room hago click 8 veces para poner 8 objetos desparramados por dicha room.

Pregunta:?C?mo hago para saber las coordenadas exactas de cada objeto en la room? o sea, las coordenadas iniciales de esos supuestos 8 objetos.

Saludos  8)

Pasando el mouse sobre un objeto en la parte baja de la pantalla deverian aparecerte las coordenadas x e y del mismo. Si te referis a saber las coordenadas mientras estas jugando, una forma de verlas seria poner algo asi:
EVENTO CREATE
XX=x
YY=y

EVENTO DRAW
draw_sprite(sprite,0,x,y)
draw_text(x,y,XX)
draw_text(x,y-20,YY)

Aqui tienes el ejemplo XD XD XD
Un foro donde hay de todo: http://fileceru.foroactivo.net (se necesitan moderadores para el foro)

#6 Marzo 17, 2010, 04:46:55 AM Ultima modificación: Marzo 17, 2010, 04:49:47 AM por Maitreya
Mientras juegas, en el debug puedes ver las coordenadas exactas del objeto en el room, abriendo sus variables locales.
Ingame, puedes dibujarlas a ver que pasa:
draw_text(x,y,string(object0.x)+","+string(object0.y))

Citar?C?mo hago para saber las coordenadas exactas de cada objeto en la room?
Guarda sus ID en variables de las que puedas consultar sus coordenadas individualmente:
ID=intance_create(x,y,object0)
draw_text(x,y,string(ID.x)+","+string(ID.y))

Debes saber que hay muchas formas de guardar la ID de la instancia de un objeto:
Citarinstance_create
instance_nearest
object0.id
No se, busca la forma mas conveniente de hacerlo segun la forma en que crees las instancias de tus objetos.
Espero haber sido al menos un poco claro  :-[


Pd: aunque el ejemplo de Soccer2008 aun al ser de  :GM5: funciona en  :GM7: y seguramente en  :GM8:
Cita de: Fenris78Si un tema os resulta de interes y veis que hay poca información, la mejor solucion no es quejarse o pedir sin pensar, sino sugerir algo bien planteado o aportarlo vosotros mismos.
Cita de: CalioSomos desarrolladores independientes y, por lo tanto, no tenemos por qué guiarnos por las tendencias del mercado.

Gracias por contestar muchachos, pero siguen sin entender la pregunta, que a mi juicio est? clara. Adem?s lo que estoy preguntando desde el punto de vista del dise?o inicial de un juego en GM es muy ?til, no s? como no se pregunt? antes.

Vamos de nuevo...

Cuando empiezas a crear un juego, agregas sprites, creas objetos y luego una room. Muchas veces, debes colocar esos objetos en la room, a eso llamo "editar la room";


Cada uno de esos objetos, toma unas coordenadas inicales al ponerlos en la room, tal y como muestra la im?gen.
Si pongo el cursor encima, me muestra las coordenadas de la cuadr?cula, no del objeto, y si ya me meto en c?digo entonces acabo viendo las coordenadas del objeto, pero con el juego corriendo, lo cual ya no sirve.

Teniendo en cuenta todo lo dicho, vuelvo a preguntar:

?C?mo puedo consultar las coordenadas iniciales de un objeto MIENTRAS edito la room?

Carajo....  8)

La verdad q no sabr?a responder esa pregunta, y para q quereis saber eso XD XD XD???
Un foro donde hay de todo: http://fileceru.foroactivo.net (se necesitan moderadores para el foro)

bueno, te digo, que (almenos que uses muchas cuadriculas distintas) es posible

cuando pones un objeto mientras tienes el mouse precionado
te fijas la cordenada de la cuadricula que es igual a la del objeto

si creas objetos invisibles te fijas que aparece un signo de pregnta, lo mismo pasa con estos

otra manera es poner en el create del objeto

show_message("Mi X: "+string(x)+"#Mi Y: "+string(y));

ejecutas el juego anotas las cordenadas, cierras el juego, borras esa linea que pusiste y ya tienes las cordenadas iniciales del objeto...
Cita de: CGM 2008CGM: Un poco mas serios, mejores Juegos.
Bienvenid@ a CGM. Recomenzamos desde cero, con un reglamento mas estricto, mejor definido y con mas ganas que nunca de hacer juegos con calidad comercial. El que avisa no es traidor: Leete las reglas si no quieres llevarte un capon makero.
Mercilessly!!
Plug-In para animaciones: http://ciberman.net/tweenline/

CitarLa verdad q no sabr?a responder esa pregunta, y para q quereis saber eso   ???
La verdad es muy ?til, por ejemplo para pantallas de transici?n donde hay objetos fijos, o detalles de fondo que siempre est?n ah?, solo cambian el estado seg?n convenga. De esta forma con un solo objeto (obj_auxiliar lo llamo yo) se puede cambiar de estado, de sprite, de sonido etc.. s?lo condicionando lo que se necesite.


Por lo visto hay que recurrir  al igenio para saber ese dato, yo lo hac?a de otra forma: Creo un objeto con las coordenadas del mouse y al colisionar con el objeto que quiero leer las coordenadas hago una lectura de sus locales (x,y)

En cualquier caso, gracias mil por contestar  8)

Coordenadas iniciales del objeto en la room (justo antes de que el objeto se mueva por primera vez)
Mmmm...  consulta las variables xstart e ystart

Citarxstart Its starting x-position in the room. //su posicion x inicial en el room
ystart Its starting y-position in the room. //su posicion y inicial en el room
.

Pero mientras editas el room es cierto lo que dice Ciberman, la grilla es una guia para colocar tus objetos, y en la parte baja te muestra las coordenadas que estas se?alando y si en ?stas hay un objeto, el offset se alinea a la grilla y ?ste es el que indica las coordenadas del objeto en el room.
Ya no se que mas decir  :-[
Cita de: Fenris78Si un tema os resulta de interes y veis que hay poca información, la mejor solucion no es quejarse o pedir sin pensar, sino sugerir algo bien planteado o aportarlo vosotros mismos.
Cita de: CalioSomos desarrolladores independientes y, por lo tanto, no tenemos por qué guiarnos por las tendencias del mercado.


CitarYa no se que mas decir  :-[

No hay problema, era s?lo una cuesti?n pr?ctica, ya que de una u otra forma el dato se conoce, pasa que a aveces cuando necesitas consultarlo muchas veces se hace pesado andar inventando "truquitos" para averiguarlo.

Gracias a todos, doy el asunto por solucionado.  8)

Pues usa el evento create de los objetos para q te muestren sus coordenadas justo en ese momento(a la hora de crearse).

Como?... pues yo lo haria de esta manera:

creo en un objeto (en el evento en el que se crea el room) que cree un arreglo bidimensional de tantos espacios como objetos quieres saber sus coordenadas por 2, una fila sera para las x's y otra para las y's, ademas de una variable que empiece con valor 0(al objeto lo llamarmos obj_coordenadas, al arreglo arreglo :p, y a la variable i=0). Entonces, ahora en el create de cada objeto que quieres saber sus coordenadas iniciales se hara el siguente proceso:
obj_coordenadas.arreglo[obj_coordenadas.i][0]=x
obj_coordenadas.arreglo[obj_coordenadas.i][1]=y
obj_coordenadas.i++

y pues en teoria se agregaran las coordenadas de las instancias en orden ascendente a su id desde la posicion 0 hasta la posicion n-1  :-[

No se si esto puede ayudarte, pero prueba

#14 Marzo 19, 2010, 09:29:03 PM Ultima modificación: Marzo 19, 2010, 09:33:12 PM por Ruisu~
Pues si esta la cuadricula es para algo.. para que la posicion se adapte, asi que la posicion es la misma a la que dice en donde diste click D:

igual cuando la cuadricula la tienes en 0,0 la posicion es la misma en la que diste click.. solo tienes que ser un poco mas preciso para que no se te valla de lado el cursor xD

ooh -_- no vi que ya estaba solucionado... bueno aun asi xD