BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

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

10% BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por irlansn em Sab 28 Jul 2012, 21:13

Olá pessoal, estou fazendo um mega jogo plataforma, e estou com o bug desdo começo, estou a semanas tentando resolve-lo, estou ficando louco affraid
Quando o player cai, ele andes de realmente tocar no chão/plataforma ele diminui a velocidade, e isso porque já resolve muita coisa criando o script: colisao_chao(), antes ele premia, como se tivesse tocado no chão, mas não tocou e volta a ficar com a sprite de pulando e REALMENTE colide com o chão e fica com a sprite de parado novamente.
Acontece principalmente na plataforma, e no chão quando a queda é muito grande, as vezes, ele fica travado no chão e por mais que eu aperte para pular ele não pula, acho que é porque ele ultrapassa o chão(não tinha isso antes do script colisao_chao)

Depois de uns testes acho que descobri o problema e ai criei o tal script que tanto falo, o player vai aumentando a velocidade enquanto cai, e as vezes, quando a queda é muito alta, a velocidade fica tão grande que o player ultrapassaria o chão se continuasse caindo, mas a distancia dele com o chão é muito grande ainda....

e es o script:
Código:
if pulando=true // se estiver pulando, coloquei isso porqu da erro se estiver no chão
and vspeed>0// e estiver caindo
{
obj_=instance_create(x,y,obj_distancia)// cria o objeto que determinará a distancia, e da o nome de obj_
with(obj_)// faz no obj_
{
    globalvar obj;// cria a variavel global: obj
    ii=false// cria a variavel ii, como falso
    for (i=y; ii=false; i+=100)// i = a posição y, se ii ainda for falso, adiciona 100 à ii
    {
        obj=instance_place(x,y+i,argument0)//verifica qual o objeto estou colidindo em tal posição,
        obj2=instance_place(x,y+i,argument1)// no caso de uma plataforma, a mesma coisa do de cima
        if obj2!=-4 and obj!=-4{if obj.y>obj2.y{obj=obj2}}// se não estiver vasio, vé qual deles esta mais perto
        if obj=-4{obj=obj2}// se o primeiro objeto estiver vasio, vai para o segundo
        if obj!=-4{ii=true; instance_destroy()};// se não estiver vasio, é porque achou o objeto(chão)
        if y+i>room_height+100{ii=true; instance_destroy()}// se tiver passato o tamanho da room, "dexiste"
    }
}


if obj!=-4{// se o obj existir


vv=0
ii=vspeed
// o sistema a seguir vai fazer um "previsão" de onde o player vai para, lembrando que o vspeed aumenta 1 a cada steep
for (i=y; i<obj.y; i+=0)
{
ii+=1
vv+=1
i+=ii

if i>obj.y{distancia=i-obj.y;distancia_vv=vv; // se ultrapassar a posição do obj, guarda na variavel "distancia" a distancia entre a posição do player e a do obj
// em distancia_vv, guarda a quantia de steep's que ele vai passar antes de tocar no chão
distancia_ini=distancia// guarda a distancia inicial
}
}}}

o GMK:Gamers in Game.zip
Ele esta um bagunça, rsrs', mas organizei o script e o código de "perceber se estou no chão ou não" esse código esta no obj_player; evento: end steep; o primeiro código...



Ajudem-me por favo, estou maluco já com essa coisa...

agradeço desde já flw


Última edição por irlansn em Dom 29 Jul 2012, 10:35, editado 1 vez(es)

irlansn

Ranking : Nota C
Número de Mensagens : 482
Idade : 18
Data de inscrição : 18/01/2011
Notas recebidas : B+D
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por superrafao em Dom 29 Jul 2012, 00:09

Você ja tentou usar isso?
Código:
move_contact_solid(direction,12);
vspeed=0;

superrafao

Número de Mensagens : 414
Idade : 20
Data de inscrição : 18/08/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por irlansn em Dom 29 Jul 2012, 00:36

superrafao escreveu:Você ja tentou usar isso?
Código:
move_contact_solid(direction,12);
vspeed=0;

hum, nunca vi essa função e o "manual" do GM não explica ela muito bem, fiz um testes e não deu muito certo....
pode me falar mais sobre o move_contact_solid e como ela pode solucionar meus problemas, se possível testa, o GMK ta no tópico, agradeço.... Happy

flw

irlansn

Ranking : Nota C
Número de Mensagens : 482
Idade : 18
Data de inscrição : 18/01/2011
Notas recebidas : B+D
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por superrafao em Dom 29 Jul 2012, 00:57

Minha nossa!!!! 19,6MB
Tenho medo que não seja uma engine.
Vou dar uma olhada e depois digo no que deu.

superrafao

Número de Mensagens : 414
Idade : 20
Data de inscrição : 18/08/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por irlansn em Dom 29 Jul 2012, 01:03

superrafao escreveu:Minha nossa!!!! 19,6MB
Tenho medo que não seja uma engine.
Vou dar uma olhada e depois digo no que deu.
kkkkkk, é porque os gráficos são MUITO pesados, tive que exportar e colocar para ele abrir conforme o jogo roda, se colocar todas no gmk, a memoria RAM fica muito pesada porque ele carrega tudo, mas carregando só os da fase em que estou fica mais leve a memoria ram, entende?
e isso é porque ta só na 1ª fase... são umas 20... Laughing Laughing

brigadãooooo

flw

irlansn

Ranking : Nota C
Número de Mensagens : 482
Idade : 18
Data de inscrição : 18/01/2011
Notas recebidas : B+D
Reputação : 5
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por superrafao em Dom 29 Jul 2012, 01:15

ok mais eu vo dormir, amanhã vejo isso.
Good night. flw

superrafao

Número de Mensagens : 414
Idade : 20
Data de inscrição : 18/08/2010
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

10% Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!

Mensagem por Conteúdo patrocinado Hoje à(s) 14:34


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