Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Transformar string em real
3 participantes
Página 1 de 1
Transformar string em real
Fala ai moçada, então, eu estou tentado transformar um numero maior em decimal, como por exemplo :
Desse jeito '0.'+valor
Desse jeito string(0.)+valor
Lembrando que o valor, é definido por várias variáveis junto a scripts, veja :
O Problema é que eu não to conseguindo, eu não sei se é Bug do GM, ou Bug do Thiago.
Até!
- Código:
542 vira 0.542
Desse jeito '0.'+valor
Desse jeito string(0.)+valor
Lembrando que o valor, é definido por várias variáveis junto a scripts, veja :
- Código:
scr_concatena(scr_arruma_tempo(global.minuto,false),scr_arruma_tempo(global.segundo,false),scr_arruma_tempo(global.milesimo,true))
O Problema é que eu não to conseguindo, eu não sei se é Bug do GM, ou Bug do Thiago.
Até!
Última edição por Funkbuster em Qui 03 maio 2012, 11:06, editado 3 vez(es)
Black Studio- Games Ranking :
Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Transformar string em real
Tente '0.' + string(valor).
Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.
Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.
Aprenda a calcular a velocidade de suas animações
Entre para o Clube do Inglês:
Re: Transformar string em real
Deu certo pela metade Pedro, Tipo no tempo 00:09:654, ele virou 0,9654
Desse jeito 10 segundo seria menor que 2...
Edit : Talvez se eu adicionar os 0 conforme quantos dígitos tem de certo, vou testar aqui
Edit_2 : Exatamente, deu certo, valeu Pedro,pode fechar o tópico.
Deu outro erro, quando eu fui verificar os valores :
Can't compare arguments, o que isso significa? E como resolver?
Desse jeito 10 segundo seria menor que 2...
Edit : Talvez se eu adicionar os 0 conforme quantos dígitos tem de certo, vou testar aqui
Edit_2 : Exatamente, deu certo, valeu Pedro,
- Eis o código:
- Código:
tempo=scr_concatena(scr_arruma_tempo(global.minuto,false),scr_arruma_tempo(global.segundo,false),scr_arruma_tempo(global.milesimo,true))
if string_length(string(tempo))=1 then tempo='0.000000'+string(tempo)
if string_length(string(tempo))=2 then tempo='0.00000'+string(tempo)
if string_length(string(tempo))=3 then tempo='0.0000'+string(tempo)
if string_length(string(tempo))=4 then tempo='0.000'+string(tempo)
if string_length(string(tempo))=5 then tempo='0.00'+string(tempo)
if string_length(string(tempo))=6 then tempo='0.0'+string(tempo)
if string_length(string(tempo))=7 then tempo='0.'+string(tempo)
Deu outro erro, quando eu fui verificar os valores :
- Código:
___________________________________________
ERROR in
action number 2
of Step Event
for object obj_final_fase:
Error in code at line 23:
if tempo<=0.0010000 then ini_write_real("Levels","Level_1",0);
^
at position 12: Cannot compare arguments.
Can't compare arguments, o que isso significa? E como resolver?
Black Studio- Games Ranking :
Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Transformar string em real
Por que não dá para comparar números com strings.
Converta a string em numero usando real().
Converta a string em numero usando real().
Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.
Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.
Aprenda a calcular a velocidade de suas animações
Entre para o Clube do Inglês:
Re: Transformar string em real
Eu suspeitei que até fosse isso, mas eu não consigo encontrar outro código real, alem de real, agora eu estou em dúvida de como converter porquê... Eu não sei como fazer isso :/ Se alguém puder me ajudar, eu vou ficar muito feliz x3 =)
Até!
Até!
Black Studio- Games Ranking :
Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Transformar string em real
Pare ai, não to entendendo o que você está fazendo.
Está querendo só formatar, comparar tempo que alguma coisa, ou transformar o tempo já formatado?
Está querendo só formatar, comparar tempo que alguma coisa, ou transformar o tempo já formatado?
Re: Transformar string em real
Vish, agora tá dificil de explicar, mas antes, eu queria que tivesse um 0, no numero, até ai tudo bem, mas eu queria usar IFs coisa e tal, para ver se tem record de tempo, só que daí, eu só consegui usando Strings! E com strings eu não posso fazer :
- Código:
if tempo<0,000134765 then medalhadaamizade=true
Black Studio- Games Ranking :
Notas recebidas : C + C
Data de inscrição : 19/10/2011
Reputação : 9
Número de Mensagens : 337
Prêmios :
x 0 x 0 x 0
x 0 x 1 x 0
x 0 x 0 x 0
Re: Transformar string em real
Você deveria evitar de usar números com mais de duas casas decimais no GM.
Se você precisa checar ou exibir tempo foque-se mais em milisegundos.
Um script que fiz:
Por exemplo quando uma fase começa você defini um variável tempo como 0 e a cada step aumenta mais um, então use o script caso a room_speed seja 60:
Se quer tempo real com as variaveis de tempo do GM é so definir o fps para 1000 (1 segundo = 1000 milisegundos).
Na hora de checar pontuação é fácil:
Não é uma boa idéia transformar o tempo em string e depois usar essa string pra comparação.
O ideal nesse caso, assim como mostrei, é uma variável unica que contem o valor do tempo e trabalhar só encima dela afinal é muito mas fácil guardar 6020 segundos do que 1 hora, 40 minutos e 20 segundos.
Se você precisa checar ou exibir tempo foque-se mais em milisegundos.
Um script que fiz:
- Código:
// time_step(steps,fps);
// retorna string com tempo
var str,s,m,h;
str = '';
s = floor((argument0/argument1) mod 60);
m = floor(((argument0/argument1)/60) mod 60);
h = floor((((argument0/argument1)/60)/60));
if h < 10 str += '0'+string(h);
else str += string(h);
str += ':';
if m < 10 str += '0'+string(m);
else str += string(m);
str += ':';
if s < 10 str += '0'+string(s);
else str += string(s);
return str;
Por exemplo quando uma fase começa você defini um variável tempo como 0 e a cada step aumenta mais um, então use o script caso a room_speed seja 60:
- Código:
// 1 segundo = 60 frames
draw(x,y,time_step(tempo,60))
Se quer tempo real com as variaveis de tempo do GM é so definir o fps para 1000 (1 segundo = 1000 milisegundos).
Na hora de checar pontuação é fácil:
- Código:
if tempo < 60*60 medalha = medalha_de_1minuto;
// ou
if tempo < 60*1000 medalha = medalha_de_1minuto;
Não é uma boa idéia transformar o tempo em string e depois usar essa string pra comparação.
O ideal nesse caso, assim como mostrei, é uma variável unica que contem o valor do tempo e trabalhar só encima dela afinal é muito mas fácil guardar 6020 segundos do que 1 hora, 40 minutos e 20 segundos.
Tópicos semelhantes
» [Duvida] Transformar string em numero real
» Transformar HTML em GML em tempo real?
» Transformar o jogo
» [Resolvido]transformar ao ser tocado!
» transformar .gmk do gm8 em .gm6 do game maker 6
» Transformar HTML em GML em tempo real?
» Transformar o jogo
» [Resolvido]transformar ao ser tocado!
» transformar .gmk do gm8 em .gm6 do game maker 6
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos