esta atingiu todos os limites

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

esta atingiu todos os limites

Mensagem por jose rocha em Dom 13 Out 2013, 19:39

se testar em windows funciona, mas no android aparece os nomes todos escritos "default" e os numero 0.

global.nome="Joaquim petinga"
global.nome2="Manuel Cornão"
global.nome3="Zé do pipo"
global.nomepontos=1000
global.nomepontos2=100
global.nomepontos3=10

///////////////////////////////////
ini_open("recordes.ini")
global.nomepontos=ini_read_real("Geral","pontos1",real("default"))
global.nomepontos2=ini_read_real("Geral","pontos2",real("default"))
global.nomepontos3=ini_read_real("Geral","pontos3",real ("default"))
global.nome=ini_read_string("Geral","nome",string ("default"))
global.nome2=ini_read_string("Geral","nome2",string ("default"))
global.nome3=ini_read_string("Geral","nome3",string ("default"))


algum gênio tem solução para isto?


Última edição por jose rocha em Dom 13 Out 2013, 19:52, editado 1 vez(es)

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por WellingtonBecker em Dom 13 Out 2013, 19:52

Pois é, fica difícil saber o problema só vendo esses códigos. Pode ser seu GM também com algum BUG. Você converteu seu jogo para android antes?

WellingtonBecker

Ranking : Nota D
Número de Mensagens : 820
Idade : 35
Data de inscrição : 09/05/2013
Notas recebidas : D
Reputação : 105
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Dom 13 Out 2013, 19:53

sim, sempre funcionou bem.

mas neste caso...

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por cascavelo em Dom 13 Out 2013, 20:34

Acho que isto nunca funcionou antes, porque tem um erro aí,
Vou define o valor das variáveis e em seguida manda ler o valores, mas como não gravou nada ainda com ini_write o GM vai atibuir um o valor que estiver em default, ou seja:
Nos três primeiros vai dar zero mesmo, porque real de ("default") é zero porque não tem caracteres numéricos.
Nos três últimos vai setar as variáveis com a palavra "default".

Se você quer preencher as variáveis com os valores de cima, coloque-os no lugar dos "default".

cascavelo

Ranking : Nota A
Número de Mensagens : 1011
Idade : 46
Data de inscrição : 08/12/2011
Notas recebidas : A - A - A - A - A -A -C
Reputação : 71
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 1

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Dom 13 Out 2013, 20:42

eu entendo, o problema é que logicamente este evento está em criar (repete-se quando o jogo inicia), ou seja se fizer o ini_write acontece o seguinte, exemplo:

o jogador ganha o primeiro lugar, faço ini_write para o nome e pontuação dele. Mas depois o jogo reinicia e este evento volta a escrever o mesmo por cima do recorde do jogador: nervoso: 

não é???

ou será que já estou a confundir tudo???


jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por cascavelo em Dom 13 Out 2013, 21:19

O mais provável é que tenha algum erro no seu código com ini_write e ele não está gravando da forma correta.
Confira todos os parâmetros pra ver se está tudo certo no código que salva.

cascavelo

Ranking : Nota A
Número de Mensagens : 1011
Idade : 46
Data de inscrição : 08/12/2011
Notas recebidas : A - A - A - A - A -A -C
Reputação : 71
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 1

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Seg 14 Out 2013, 06:45

está tudo correto, mas têm alguma maneira de ele ter a condição de escrever apenas se for executado pela primeira vez??

assim resolveria tudo.

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por fredcobain em Seg 14 Out 2013, 10:37

Use uma variável booleana para controlar isso.

Ela inicia como false, da primeira vez que ela escreve, mude ela pra true.

E só entra nessa condição se a variável for false.

fredcobain

Ranking : Sem avaliações
Número de Mensagens : 691
Idade : 35
Data de inscrição : 14/04/2011
Reputação : 162
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Seg 14 Out 2013, 12:25

para que serve a variável booleana?

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por fredcobain em Seg 14 Out 2013, 13:24

A variável booleana pode receber os valores TRUE ou FALSE.
Funcionam como flags. São usadas justamente pra casos como o seu.

fredcobain

Ranking : Sem avaliações
Número de Mensagens : 691
Idade : 35
Data de inscrição : 14/04/2011
Reputação : 162
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Seg 14 Out 2013, 13:26

mas então só alteram uma vez?

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por fredcobain em Seg 14 Out 2013, 14:32

Ih, rapaz... agora que eu fui ver que na verdade vc está querendo prevenir de quando o jogo reinicia.

Desse jeito vc vai precisar fazer o controle dentro do próprio ini_file.

Vai ter que criar uma chave pra isso, que só muda uma vez.


fredcobain

Ranking : Sem avaliações
Número de Mensagens : 691
Idade : 35
Data de inscrição : 14/04/2011
Reputação : 162
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por jose rocha em Seg 14 Out 2013, 14:53

fredcobain escreveu:Ih, rapaz... agora que eu fui ver que na verdade vc está querendo prevenir de quando o jogo reinicia.

Desse jeito vc vai precisar fazer o controle dentro do próprio ini_file.

Vai ter que criar uma chave pra isso, que só muda uma vez.


como faço isso, me dê código exemplo se não for muito trabalhoso por favor.

jose rocha

Número de Mensagens : 76
Data de inscrição : 06/10/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: esta atingiu todos os limites

Mensagem por Conteúdo patrocinado Hoje à(s) 18:05


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