Hola buenas tengo un problema:
He creado un objeto que permite teletransportar a mi personaje;
Por ahora todo est? como yo quiero, pero el problema es que quiero que ese objeto creado en la room determinada se mantenga en dicha room.
?c?mo puedo hacer que el objeto est? presente en la room aunque cambia de room?
Gracias
si te refieres a que aparezca en todas las rooms, activa la casilla "persistent" en las opciones de tu objeto..debajo del nombre...saludos
Ya lo hice pero cuando pongo la casilla persistent, ese objeto se me traslada a la room siguente y no queiro eso
ok, entonces lo que quieres es que, as cambies de room ese objeto aparezca en la posicion que le corresponde en la room donde lo insertaste??
Yo s? te entend?, lo que debes hacer es marcar la room como persistent, no el objeto, desde el editor de rooms. Esto no solo afectar? al "objeto creado" sino a todas las instancias de dicha room. Si esto no resuelve tu problema entonces qu?tale lo de persistent y prueba guardando las coordenadas y dem?s variables del objeto creado que consideres necesarias en una lista o array global y haz que cada vez que entres a esa room se vuelva a crear el objeto recargando las variables desde la lista o array para que parezca que el objeto siempre estuvo ah?.
?Saludos!
Vale ahora ese objeto ya no se va, pero existe otro problema:
El problema es que cuando he dejado el objeto en la room 1 y quiero teletransportarme desde la room 2 a la room 1, el personaje se teletransporta a la room 2 sin estar el personaje. Y quiero que se teletransporte a la room 1.
Gracias.
entonces crea otro objeto ind?ntico al de teletransporte, pero colocalo en la room2, no te olvides de colocar que se vaya a la room1, ese debe ser tu problema...
y como puedo hacer que ese objeto se desplace
Puede ser impresi?n m?a, pero creo que lo que intestas hacer se puede resolver de un modo menos complicado. Sin embargo, hasta no entender bien que es lo que intentas hacer no te puedo ofrecer m?s opciones ?Qu? objeto crea qu? otra cosa (con nombres)? ?D?nde lo crea? ?C?mo se comportan ambos objetos por separado?
Mira voy a ser m?s detallista:
Cuando pulsas la tecla "X" el personaje crea un objeto1 ( es el teletransporte) cuando ese mismo personaje vuelve a pulsar la tecla "X" crea otro objeto2(este objeto permite teletransportar al personaje al lugar donde est? situado el objeto1 creado).
El personaje se puede teletransportar cuando colisiona con el objeto2, pero claro si el personaje se va de la room donde ha colocado el objeto1 y crea en otra room distinta el objeto2 el personaje no puede teletransportarse a la room donde ha puesto el objeto1
Bien, ahora todo me queda claro, excepto una cosa ?Porque deseas que el personaje se teletransporte de una room a otra? O sea ?No puedes crear ambas rooms en una sola con varias vistas e instancias desactivadas? ?De qu? tama?o son las rooms?
Suponiendo que no puedes unificar las rooms entonces lo que debes hacer es simular que los telepuertos son persistentes en la room. Para lo que debes crear un array como este al presionar X:
Citarif (telecontrol==0)
{
instance_create(x,y,telepuerto1)
tp1[0]=room_index; //room actual
tp1[1]=x;
tp1[2]=y;
//y as? vas agregando todas las variables que creas pertinentes
telecontrol+=1;
}
else if (telecontrol==1)
{
instance_create(x,y,telepuerto2)
tp2[0]=room_index;
tp2[1]=x;
tp1[2]=y;
telecontrol+=1;
}
La variable global telecontrol cuando y cu?l telepuerto se debe crear, de modo que si es 0 se deber? crear el telepuerto1, si es 1 se deber? crear el telepuerto2, si es 2 no se deber?n crear m?s telepuertos y el portal entre ambos estar? abierto.
Luego en el evento de colisi?n con telepuerto2...
Citarif (telecontrol==2)
{
room_index=tp1[0];
x=tp1[1];
y=tp1[2];
instance_create(x,y,telepuerto1);
}
Ese es el principio b?sico, necesitas ampliarlo un poco m?s, pero me temo que voy a tener que dejar la respuesta hasta ah?, debo irme con urgencia ?Saludos!
He colocado tu codigo: todo va bien excepto que no puedo que el personaje se teletransporte.
Lo habr? puesto mal:
Que hay que colocar en el room_idex
Y que es tp1[0]
tp1[1]=x;
tp1[2]=y;
Bueno si no lo consigo dejar? de dar la lata y me olvidar? de ese objeto
De todas formas Gracias
Bueno, la verdad es que no me imagino qu? clase de juego est?s desarrollando; una funci?n as? es muy inusual.
room_index es una variable propia del juego que representa la room actual en la que te encuentras.
tp[n] es un array de mi invenci?n; cualquier variable que crees si le agregas corchetes se vuelve un array; consulta el manual para m?s informaci?n.
Por otro lado, si no sueles usar GML me ser?a bastante dif?cil explic?rtelo, ya que los arrays no est?n presentes en la interfaz D&D.
?Saludos!