Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: davidte en Enero 15, 2015, 01:35:18 PM

Título: Pasar de guardarlo en un texto a guardarlo todo en una variable
Publicado por: davidte en Enero 15, 2015, 01:35:18 PM
Tengo este codigo que "lee" la pantalla y con el script lo codifica y lo guarda en un archivo.
Ahora necesito que en vez de guardarlo en un archivo lo guarde en una variable.


if (argument0==""){exit;}

var File,Id,X,Y,Xi,Yi;

File = file_text_open_write(argument0);

for(Yi=0;Yi<room_height;Yi+=32)
{
for(Xi=0;Xi<room_width ;Xi+=32)
{
  X=Xi;
  Y=Yi;
  Dato=noone;
  Id=collision_point(X,Y,all,1,0); 
  if instance_exists(Id){Dato=Id.object_index;}
  script(File,Dato);
 
}
file_text_writeln(File);
}
file_text_close(File);
Título: Re:Pasar de guardarlo en un texto a guardarlo todo en una variable
Publicado por: Clamud en Enero 15, 2015, 07:15:48 PM
En vez de usar el script que escribe en el archivo, mete el object_index en una matriz, ejemplo:
[gml]
var Id,X,Y;

for( Y=0; Y<room_height; Y+=32 )
{
    for( X=0; X<room_width; X+=32)
    {
        Id = collision_point( X,Y, all,1,0 );
        if instance_exists(Id) Matriz[X,Y] = Id.object_index;
    }
}
[/gml]
Si los objetos están alineados, puedes usar la función instance_position en vez de collision_point.