Hola, miren, mi conocimiento GML es aun algo simple, pero estoy haciendo un juego, donde quisiera generar el nivel (con objetos, no con tiles) a partir de un simple código typeado en un get_string, es decir, que te pida un codigo y lo pones (ej:
y quiero que lea ese codigo, caracter a caracter, y según que caracter haya, haga una función, que son:
e = crear oEmpty
b = crear oBlock
p = crear oPlayer
l = cambiar la linea de creado de objetos (lo tengo como global.ypos) y poner el global.xpos a 0 (lo ue viene a ser, nueva linea...
x = crear oBlockLimit
f = terminar de leer el codigo.
y bueno... como aun estoy algo verde... lo he intentado, pero ya ando algo desesperado, seguro que uso los comandos que no son, porque es la primera vez que intento hacer algo así...
esto es lo que tengo:
-Todos los objetos creados, con sus nombres bien puestos.
-un script (scWorldLoad):
-un objeto para ejecutar el script en step (mientras le diga que lo ejecute)
-y en una room donde me interesa probar todo, el objeto ultimo nombrado. (y otras cosas parte del juego ahora irrelevantes)...
dejo adjuntado el gmk y un .txt con un codigo de mapa de prueba que intento generar, pero no me sale :(
EDITO: las globales que ven, son previamente creadas en el gamestart de la pantalla de título
PD: Para el que descargue y vea el archivo, sí, es un fangame 2D del Ace of Spades xd
Código [Seleccionar]
eeeeeeeebleeeeeeebblepeeeebbbleeeeebbbbleeeebbbbbleeebbbbbbleebbbbbbblebbbbbbbblxxxxxxxxxf
)y quiero que lea ese codigo, caracter a caracter, y según que caracter haya, haga una función, que son:
e = crear oEmpty
b = crear oBlock
p = crear oPlayer
l = cambiar la linea de creado de objetos (lo tengo como global.ypos) y poner el global.xpos a 0 (lo ue viene a ser, nueva linea...
x = crear oBlockLimit
f = terminar de leer el codigo.
y bueno... como aun estoy algo verde... lo he intentado, pero ya ando algo desesperado, seguro que uso los comandos que no son, porque es la primera vez que intento hacer algo así...
esto es lo que tengo:
-Todos los objetos creados, con sus nombres bien puestos.
-un script (scWorldLoad):
Código [Seleccionar]
if global.creating = 1
{
global.xpos = 0;
global.ypos = 0;
global.line = 0;
global.str = 0;
if global.get = 1 {global.file = get_string("Map Creation",""); global.get = 0;}
global.xobject = string_char_at(global.file,global.str);
global.object = "";
switch global.xobject
{
case "e":
global.object = oEmpty;
global.str += 1;
break;
case "b":
global.object = oBlock;
global.str += 1;
break;
case "p":
global.object = oPlayer;
global.str += 1;
break;
case "x":
global.object = oBlockLimit;
global.str += 1;
break;
case "l":
global.ypos += 16;
global.xpos = 0;
global.str += 1;
break;
case "f":
global.creating = 0;
break;
}
instance_create(global.xpos,global.ypos,global.object);
global.xpos += 16;
}
-un objeto para ejecutar el script en step (mientras le diga que lo ejecute)
-y en una room donde me interesa probar todo, el objeto ultimo nombrado. (y otras cosas parte del juego ahora irrelevantes)...
dejo adjuntado el gmk y un .txt con un codigo de mapa de prueba que intento generar, pero no me sale :(
EDITO: las globales que ven, son previamente creadas en el gamestart de la pantalla de título
PD: Para el que descargue y vea el archivo, sí, es un fangame 2D del Ace of Spades xd