Duas dúvidas (Script/Global e INI)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Duas dúvidas (Script/Global e INI)

Mensagem por AlexBosquin em Qua 11 Dez 2013, 21:37

1 - A primeira dúvida é que se seria melhor que eu usar variáveis globais, eu usar script por exemplo:
obj_A - script_execute(scr_controle)
obj_B - script_execute(scr_controle)
obj_Controle - //esse objeto muda o script controle de acordo com as configurações
assim ao invés de usar no obj_A e obj_B global.controle

2 - Segunda duvida é sobre o uso de INI , é bem fácil de ser editado mas eu quero aprender a usar xD
o seguinte como faço pra mandar ela guardar informação da posição de um objeto mesmo que ele tenha várias instancias na room
(uma especie de save) mas só guarda a posição das instancias de um certo objeto na room!

AlexBosquin

Ranking : Nota C
Número de Mensagens : 621
Idade : 20
Data de inscrição : 10/07/2012
Notas recebidas : C
Reputação : 35
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://www.craftstudios.com.br

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Willy em Qua 11 Dez 2013, 23:29

Amigo, não entendi nada da sua primeira pergunta... Está bem difícil de entender.

Referente aos ini's, recomendo meus tutoriais:
Arquivos ini (Parte 1)
Arquivos ini (parte 2)
Arquivos ini (Parte 3)

Para fazer o save do jeito que você quer, você terá que criar um script que percorrerá por todos os objetos na room, pegar os dados de cada um (nome, x,y, variaveis, etc) e então salvar no ini. Já te adianto que isso é um pouco complicado de fazer, mas vale a pena.

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por makgamer em Qui 12 Dez 2013, 00:12

a primeira duvida precisa de legenda pq ta muito dificil mesmo de entender...
a segunda dúvida é mais simples do q parece...
nos objetos que você quer salvar ponha isso no create:
Código:
save=1;
e o objeto que salva vc coloca assim no evento que vai salvar as posições(mouse left/alguma tecla)
Código:
ini_open('save.ini')//pode mudar se quiser o nome da ini
i=0;
with(all){
if variable_local_exists('save'){
obj_quesalva.i+=1;
ini_write_real(string(obj_quesalva.i),'id',id);
ini_write_real(string(obj_quesalva.i),'x',x);
ini_write_real(string(obj_quesalva.i),'y',y);
}}
ini_write_real('save','n',i);
ini_close();
certo agora para ler a posição dos objetos vc usa o seguinte script:
scr_loadgame:
Código:
ini_open('save.ini');
n=ini_read_real('save','n',0);
for(a=0;a<n;a++){
idd=ini_read_real(string(a),'id',0);
xx=ini_read_real(string(a),'x',0);
yy=ini_read_real(string(a),'y',0);
idd.x=xx;
idd.y=yy;
}
acho que funciona, fiz de cabeça pois aqui não tenho gm mas deve funcionar...

makgamer

Ranking : Nota D
Número de Mensagens : 927
Idade : 18
Data de inscrição : 29/03/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   : 1
   :

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Willy em Qui 12 Dez 2013, 00:23

Te garanto que seu código não vai funcionar. Very Happy

Primeiro que não devemos salvar o ID, mas sim, o nome do objeto, uma vez que o ID é a identificação da instância, e não do objeto. Salve um ID e tente dar um instance_create usando ele.

Segundo, usando with(all), não teremos um controle da ordem (e também da lógica) que o script vai salvar os dados no ini, sem falar do risco de perder dados no processo. O ideal é usar um for encadeado (para x e y) que percorre toda a room pegando os dados dos objetos e salvando em uma key com o "i" do for. Esse processo é mais simples se todos os objetos estiverem em uma grade e não existir objetos sobrepostos, caso contrário, vai dar mais dor de cabeça.

Sei disso pois aprendi apanhando, ou seja, fiz um sistema desse...

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por makgamer em Qui 12 Dez 2013, 00:29

é verdade não havia pensado nisso :/ bem então nem adianta tentar usar esse code... eu não sei bem pois nunca tentei fazer um code desse, sempre usei o bom e velho save_game kkk mas de qualquer forma obrigado por corrigir o erro =D

edit: ao invez de depender do id talvez fosse possivel criar no create deles, uma identificação em variavel, assim o código anterior pudesse ser aplicado quem sabe... iria dar uma dor de cabeça pensar nisso mas talvez desse certo você mesmo criar uma identificação, mais ou menos assim:
se o objeto 'a' tem a identificação 14, colocaria algo assim no create:
Código:
idd=14+instance_exists('obj_a');
como na hora da compilação pra rodar o jogo a ordem em que os objetos são adicionados é sempre igual, em uma mesma room o id deste objeto seria sempre o mesmo, acredito eu...

makgamer

Ranking : Nota D
Número de Mensagens : 927
Idade : 18
Data de inscrição : 29/03/2009
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   : 1
   :

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Willy em Qui 12 Dez 2013, 00:36

"Se está muito fácil, desconfie." Razz

Acredito que o "save" que ele está tentando fazer trata-se de uma "room editor in-game"... Não faria sentido salvar todas as informações da room apenas para fazer um save, pois para isso só é necessário salvar as informações relevantes do jogo, como a fase em que parou, vida, pontuação, etc...

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Isaque Onix em Qui 12 Dez 2013, 00:55

Willy, na verdade seria bom ter um id, mais não o id de instancia, alguma variável que identificasse ESSA INSTANCIA, vamos que por exemplo cada objeto tenha um valor diferente.. na hora de ler, ele vai saber o valor por esse id..
e se ele estiver fazendo um "room editor in-game", também seria bom guardar a quantidade de objetos na room, na hora de criar ele usaria um for.. e o id automaticamente poderia ser encaixado ali.

for(i=0; i<('quantidade de objetos'); i+=1){

}

@Off: se tiver criando um "room editor in-game" como o willy disse, te aconselho a estudar as funções file_... também! elas ajudam muito no manuzeio do arquivo, apesar de não saber se essas funções existem no GMS :s

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Willy em Qui 12 Dez 2013, 01:14

O identificador do "ID real" da instância é o nome da mesma... Obtemos isso com a função object_get_name(). Sem o nome do objeto, não terá como fazer um script que monte a room (load) por não termos um objeto especificado para ser criado.

Recentemente eu fiz um sistema desse, mas não está no meu PC... Vou caça-lo, e, se eu encontrar, dou uma polida e compartilho com vocês! blz

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Isaque Onix em Qui 12 Dez 2013, 01:45

eu quis dizer salvar o nome e o id (o id criado, não o indentificador global de instancia '-' ) kk
eu usei em um sistema de inventario ini, mais nem sei onde ta salvo :p

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por AlexBosquin em Qui 12 Dez 2013, 07:31

Opa nunca vi um topico tão movimentando (que eu criei) fico feliz ver o pessoal ajudando assim kkkkkk

então quanto a primeira pergunta é simples vou reformula-la: qual é melhor eu usar variáveis globais ou eu usar um script que seja carregado por várias instancias que irão usá-lo, (lembrando que eu nun sei se dar pra editar scripts em tempo real ou seja dentro de uma ação mudar uma valor de uma var do script)

quanto a segunda pergunta: sim eu quero criar um editor-in game e eu queria salvar os dados de onde o jogador pois os itens então eu queria usar ini vou ler os tutos do willy e ver se consigo, vlw ae todo mundo que comentou xDDDDDD

AlexBosquin

Ranking : Nota C
Número de Mensagens : 621
Idade : 20
Data de inscrição : 10/07/2012
Notas recebidas : C
Reputação : 35
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://www.craftstudios.com.br

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por saim em Qui 12 Dez 2013, 10:38

primeira pergunta: ainda não entendi. Vamos ao ponto, qual o resultado que você quer? Entendi que é alguma coisa relativo ao evento create de muitas instâncias (do mesmo objeto?), mas não entendi O QUE você quer fazer.

Quanto ao INI de salvar/carregar, ninguém está se lembrando da constante object_index? É o número que representa o OBJETO, não a instância. Como se fosse o NOME do objeto, mas sem ser uma string. Assim,
Código:
nome := object_index;
instance_create(x + sprite_width, y, nome);
vai te criar uma cópia do objeto que chamar essas linhas, do lado dele.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Isaque Onix em Qui 12 Dez 2013, 10:56

acho que intendi a primeira pergunta, bom, EU aprendi que sempre é bom iniciar todas as variável globais de uma vez só no inicio do jogo, apesar de nunca colocar em pratica, e sim, tem como usar um script para modificar o valor de uma variável global(e também uma local), mais te aconselho usar só se for algo que necessite um bloco de códigos, afinal, se for um valor já descoberto, pra que o script?

pra retornar o valor pelo script:

no script deve existir a função return + oque deve ser retornado

Código:

//nome do script: Return
return 100*10

e pra alterar a variavel global:

Código:
global.variavel_que_voce_quer=Return()


ou seja,  global.variavel_que_voce_quer=1000

flwz

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Willy em Qui 12 Dez 2013, 14:14

Acho que entendi... Você quer criar um script para declarar varias variáveis locais que outros objetos tem em comum. Se esse for o caso, você pode fazer isso ou criar um objeto pai e declarar os outros objetos como parent desse objeto. Dessa forma, todas as variáveis do pai estarão neles também.
Isso depende muito da sua necessidade e também da forma que achar mais prático.

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 23
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por AlexBosquin em Qui 12 Dez 2013, 16:52

Ah sim obrigado tirei my duvidas xD

AlexBosquin

Ranking : Nota C
Número de Mensagens : 621
Idade : 20
Data de inscrição : 10/07/2012
Notas recebidas : C
Reputação : 35
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://www.craftstudios.com.br

Voltar ao Topo Ir em baixo

Re: Duas dúvidas (Script/Global e INI)

Mensagem por Conteúdo patrocinado Hoje à(s) 16:17


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum