renomear sessão em um ini

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

70% renomear sessão em um ini

Mensagem por Lázaro Games em Sex 04 Out 2013, 12:18

Olá, estou aqui pq estava criando um script com o nome ini_switch_section(ini,oldsec,newsec) que movesse os dados de uma sessão à outra do INI... tentei fazer isso de duas maneiras, a primeira usando file_text_*, mas não tenho como ler e escrever dados com essa função ao mesmo tempo. Então procurei uma dll que tinha a função ini_section_rename, mas quando essa função era executada o jogo travava e o uso da CPU ficava 90% surpreso2 
Eu preciso desse script para dois jogos: um é de Pokémon, esse script vai trocar a posição de alguém da equipe e em um RPG, onde vai ter como organizar os itens automaticamente.

Agradeço a ajuda

Lázaro Games

Ranking : Nota C
Número de Mensagens : 70
Idade : 18
Data de inscrição : 08/08/2010
Notas recebidas : D-B
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://www.lzstargames.blogspot.com

Voltar ao Topo Ir em baixo

70% Re: renomear sessão em um ini

Mensagem por Willy em Sex 04 Out 2013, 13:08

Não seria mais fácil deletar a sessão em e criar uma nova com os valores da antiga?

___________


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

70% Re: renomear sessão em um ini

Mensagem por Lázaro Games em Sex 04 Out 2013, 18:18

sim, eu estou pensando em fazer isso caso não haja função mais fácil... pois ambos os jogos serão grandes (uns 50mb ou mais) e eu queria "economizar" memória RAM e HD tmb encurtando o código (pois as sessões são enormes, e o código ficaria grande mesmo usando "for")

EDIT: achei a solução eu mesmo... pensei e cheguei ao código mais economico para trocar uma sessão por outra, eu fiz:
ini_write_real(section,key,ini_read_real(section,key,default))

Como dá pra ver, o código escreve o que já lê na hora. Criei duas sessões: TEMP1 e TEMP2 onde ficariam os valores da sessão atual e da sessão de destino, logo depois cada TEMP iria para a sessão oposta (TEMP1 iria pra sessão de destino e TEMP2 para a sessão inicial).
Mas para não ficar repetindo o ini_write mais de 120 vezes, usei a função "for" para trocar as sessões do ini_write e ini_read usando as mesmas keys.
Ficou tipo assim:
ini_write_real(sessão para onde escrever que muda conforme "for i", key, ini_read_real(sessão da qual vai ser escrita os dados na nova que muda conforme "for i", key, default))

No final de tudo usei ini_section_delete(section) nas duas sessões temporárias e deu tudo certo Happy 
Dúvida resolvida, já pode fechar o tópico!


Última edição por Lázaro Games em Sab 05 Out 2013, 17:21, editado 1 vez(es) (Razão : Encontrei a resposta sozinho)

Lázaro Games

Ranking : Nota C
Número de Mensagens : 70
Idade : 18
Data de inscrição : 08/08/2010
Notas recebidas : D-B
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://www.lzstargames.blogspot.com

Voltar ao Topo Ir em baixo

70% Re: renomear sessão em um ini

Mensagem por Conteúdo patrocinado Hoje à(s) 12:44


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