GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Ontem à(s) 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16


Checagem no hspeed com problemas;

3 participantes

Ir para baixo

Checagem no hspeed com problemas; Empty Checagem no hspeed com problemas;

Mensagem por Convidad Ter 09 Set 2008, 10:37

Fala galera, blz!

Estou usando o seguinte código para checar se o personagem está se movendo "horizontalmente" e para que lado está indo:

Código:
if hspeed!=0
    {
    var_run=1
    if hspeed>0
        var_right=1
    else
    if hspeed<0
        var_right=0
    }
    else
    var_run=0

...a variável "var_run" indica se está se movendo (1) ou não (0) e a "var_right" indica se está voltado para a direita (1) ou esquerda (0)


O problema é que quando o personagem se move na vertical (vspeed) apenas, a variável "var_run" tmb fica sendo verdadeira (1)...

...se alguém aí souber e puder me explicar como eu posso fazer com que apenas a "hspeed" defina a var_run como 0 ou 1 eu agradeço!

flw

t+
avatar
Convidad
Convidado


Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por Convidad Ter 09 Set 2008, 10:50

Humm. Tente executar o jogo no modo debug e cheque se a sua hspeed se altera quando você faz o movimento vertical... (a maioria das vars de movimento trabalham como float)

Pra executar em modo debug é só apertar F6. Vai no menu "Tools -> Show Local Variables". Digite o nome do objeto ou o id da instância que quer testar. As variáveis dela vão ser mostradas em uma janela separada.
avatar
Convidad
Convidado


Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por Convidad Ter 09 Set 2008, 11:01

Vlw brendan... eu já constatei isso com um draw_text para as variáveis do obj... não é o modo mais "técnico", mas a funcionalidade é a mesma XD

A hspeed atinge um valor muito pequeno... 0.0000[...]30, eu chequei no modo debug tmb como vc sugeriu;

Bom, se isso for "normal" de certa forma, acho que terei então que checar se o hspeed é >/< que "0. alguma coisa" à fim de eliminar esse mínimo valor que o vspeed gera Very Happy

Vlw velho... qq novidade eu posto... por hora se alguém tiver alguma outra sugestão eu agradeço tmb!

t+


EDIT: É galera, eu mudei o código para:

Código:
if hspeed!=0
    {
    if hspeed>0.001
        {
        var_run=1
        var_right=1
        }
    else
    if hspeed<-0.001
        {
        var_run=1
        var_right=0
        }
    }
    else
    var_run=0

...com a checagem em >/< que 0.001 e tmb desloquei a definição da var_run e agora ficou tudo OK cyclops

Vlw mais uma vez e podem fechar o tópico;

flw
avatar
Convidad
Convidado


Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por ryan_b Ter 09 Set 2008, 12:41

Tente isso:

Código:
if floor(hspeed) !=0
    {
    var_run=1
    if hspeed>0
        var_right=1
    else
    if hspeed<0
        var_right=0
    }
    else
    var_run=0

floor arredonda um valor para baixo.
avatar
ryan_b

Data de inscrição : 08/09/2008
Reputação : 0
Número de Mensagens : 37
Prêmios : Checagem no hspeed com problemas; Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por KinKing Qui 11 Set 2008, 13:19

Mas o que adianta arredondar o valor de 0 numa checagem?

Minha solução é a seguinte:

Código:
if (hspeed < 0.1 && hspeed > -0.1)
KinKing
KinKing

Data de inscrição : 29/05/2008
Reputação : 16
Número de Mensagens : 422
Prêmios : Checagem no hspeed com problemas; Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://felipejoys.webnode.com

Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por Froidz Qui 11 Set 2008, 14:41

será q não tem q colocar o ! antes do hspeed?
Froidz
Froidz

Data de inscrição : 03/08/2008
Reputação : 4
Número de Mensagens : 1053
Prêmios : Checagem no hspeed com problemas; Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por ryan_b Qui 11 Set 2008, 20:22

KinKing escreveu:Mas o que adianta arredondar o valor de 0 numa checagem?

Minha solução é a seguinte:

Código:
if (hspeed < 0.1 && hspeed > -0.1)

Resolveria se ele não usasse números "quebrados" Very Happy . Ex: 0.13, 0.01, etc.
avatar
ryan_b

Data de inscrição : 08/09/2008
Reputação : 0
Número de Mensagens : 37
Prêmios : Checagem no hspeed com problemas; Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por KinKing Sex 12 Set 2008, 15:43

Resolve justamente porque, se o hspeed estiver entre -0.1 e 0.1, ou seja, com todos os quebrados, ele se torna zero.
KinKing
KinKing

Data de inscrição : 29/05/2008
Reputação : 16
Número de Mensagens : 422
Prêmios : Checagem no hspeed com problemas; Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://felipejoys.webnode.com

Ir para o topo Ir para baixo

Checagem no hspeed com problemas; Empty Re: Checagem no hspeed com problemas;

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos