Conectar-se
Quem está conectado
27 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 27 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 22/07/2009
Número de Mensagens : 33
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Salvando lista em um file

em Qua 07 Abr 2010, 03:50
Olá estou aprendendo essa linguagem na marra e preciso de uma ajudinha aqui...
Programei no meu objeto inv_other para criar uma lista com cada nome, posição x ,y, e peso da instância encontrada.

{
var i,a,c,l,px,py,inst;
inst = 0;
px = inv_other.x + 6;
py = inv_other.y + 6;

if (lista == 1)
{
lista1 = ds_list_create();
for (l=0; l<=12; l+=1)
{
for (c=0; c<=13; c+=1)
{

inst = instance_position(px,py,gun_parent)
ds_list_add(lista1,inst);
with (inst) do
{
ds_list_add(inv_other.lista1,nome);
ds_list_add(inv_other.lista1,posx);
ds_list_add(inv_other.lista1,posy);
ds_list_add(inv_other.lista1,peso);
instance_destroy();
}

px = px + 36;
}
px = inv_other.x + 6;
py = py + 36;
}
lista1 = ds_list_write(lista1);
}

Depois programei no evento key press L o seguinte:

{
var f;
f = file_text_open_write(working_directory + '\listas\stash1.dat')
file_text_write_string(f,inv_other.lista1)
file_text_close(f);
}

Soh que parece que não há uma conversão de valores para str pois o meu stash1.dat parece com:

2D010000BA00000000000000000000008072F840000000000100000000000000

Na verdade, umas 4 linhas iguais a essas...

Se alguem puder ajudar...
avatar
Data de inscrição : 07/03/2010
Número de Mensagens : 1335
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://cai.na.tl/

Re: Salvando lista em um file

em Qua 07 Abr 2010, 12:32
Não sei se pode ser isso mas parece que você gravou no arquivo de texto o ID da lista e não nenhum valor dela.

(P.S. Usa variáveis e arrays, é mais fácil e eficiente ;) )
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: Salvando lista em um file

em Qua 07 Abr 2010, 14:25
Na verdade voce salvou sua informação de cada instancia em várias linhas. Ou seja, o nome numa linha, a posicao X na outra etc. Pra ficar mais facil seria melhor voce somar essas informações em uma unica linha e depois na hora de ler voce separar.
Voce pode fazer assim:

with (inst) do
{
sLinha := nome + '|' + string(posx) + '|' + string(posy) + '|' + string(peso);
ds_list_add(inv_other.lista1, sLinha);
instance_destroy();
}

Isso vai gravar os dados em cada linha, uma instancia por linha.
Pra salvar em um arquivo texto Evento Keyboard L voce tem que percorrer a lista a savar cada linha assim:


var f;
f = file_text_open_write(working_directory + '\listas\stash1.dat')
for (i = 0; i < ds_list_size(inv_other.lista1); i += 1)
{
sLinha := ds_list_find_value(inv_other.lista1, i);
file_text_write_string(f, sLinha)
file_text_writeln(f);
}
file_text_close(f);

Depois você pode ler cada linha e decofica-las usando o separador.
Qualquer duvida pergunte!
avatar
Data de inscrição : 22/07/2009
Número de Mensagens : 33
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: Salvando lista em um file

em Qui 08 Abr 2010, 03:09
Valeu, ajudou bastante! Very Happy
Conteúdo patrocinado

Re: Salvando lista em um file

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum