Hola, tengo unas sencillas preguntas para un juego que estoy creando.
Es un juego de plataformas tipo mario, en realidad es un remake de un juego antiguo llamado alex kidd. Mi problema ahora esta en crear las escaleras para que suba y baje el personaje.
Estoy creando el juego en game maker studio, aunque lo habia comenzado en versiones anteriores y por lo que tengo entendido no se puede usar variables de otro objetos desde otros diferentes, es decir, si ay una variable que se llama
andando_izquierda en el personaje, no puedo utilizarla desde otro objeto para definir alguna accion.
Cuando usaba game maker 6 , o 8.1 en algunos casos usaba esa variable y otras desde otros objetos para realizar acciones sin problema pero ahora me tira errores.
Ahora he creado escaleras y lo que yo tenia puesto era algo como esto,
si el personaje sube por la escalera, la escalera no es solida, pero cuando a llegado a lo alto si lo es para que cuando pase por arriba de la escalera no se caiga, y de igual modo cuando presiones abajo el personaje baje.
En realidad tengo 2 objetos de la escalera creados, uno donde la escalera no es solida para subir y bajar con el que no tengo problema y otro que si lo es llamado escalera_solida, este lo coloco al final de la escalera, pero este objeto no siempre tiene quee ser solido.
Lo que hacia antes era definir variable solid de la escalera desde el personaje de la siguiente manera, si el objeto alex no entra en colision con la escalera solida en las coordenadas (0,0) la escalera_solida se vuelve solida, y en caso contrario deja de serlo para que pueda subir y bajar sin problema.
Ponia las siguientes acciones en el evento step de alex: si no hay un objeto en la posicion (0,0) relativo al personaje alex, entonces: set variable escalera_solida.solid = 1.
La variable solid de la escalera se volvia 1 , ahora con game maker studio tira error porque no reconoce la variable escalera_solida.solid
Lo mismo me ha ocurrido otras veces al intentar llamar variables de objetos desde otros, nose si abra alguna otra forma de acerlo o directamente no se puede.
No entiendo estos cambios en el programa, ahora me parece menos versatil que los anteriores, o quiza sea mejor que versiones anteriores y yo no sepa como usarlo.
Gracias por las ayudas
Cita de: dragon01 en Diciembre 27, 2014, 08:25:43 AM
Lo mismo me ha ocurrido otras veces al intentar llamar variables de objetos desde otros, nose si abra alguna otra forma de acerlo o directamente no se puede.
No entiendo estos cambios en el programa, ahora me parece menos versatil que los anteriores, o quiza sea mejor que versiones anteriores y yo no sepa como usarlo.
Gracias por las ayudas
Esos cambios de los que hablas no existen. La manera de usar GML es la misma en Studio y en GM8, 7 6, etc. Lo que ha cambiado es que ciertas funciones se han removido, pero la forma en que se accede a variables de otros objetos es la misma de toda la vida (al menos mediante código, veo que usas Drag and drop, lo cual no tengo idea si haya cambiado)
escalera_solida.solid = 1 debería de funcionar, si no es así, prueba con
[gml]
with(escalera_solida)
{
solid = 1
}[/gml]
Si eso no funciona, sube tu proyecto para poder verlo con más detalle.