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
BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
2 participantes
Página 1 de 1
BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
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
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:
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á
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á
Última edição por irlansn em Dom 29 Jul 2012, 10:35, editado 1 vez(es)
irlansn- Games Ranking :
Notas recebidas : B+D
Data de inscrição : 18/01/2011
Reputação : 5
Número de Mensagens : 482
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
Você ja tentou usar isso?
- Código:
move_contact_solid(direction,12);
vspeed=0;
Ralphed- Data de inscrição : 18/08/2010
Reputação : 12
Número de Mensagens : 461
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Godot
- Outros
Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
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....
irlansn- Games Ranking :
Notas recebidas : B+D
Data de inscrição : 18/01/2011
Reputação : 5
Número de Mensagens : 482
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
Minha nossa!!!! 19,6MB
Tenho medo que não seja uma engine.
Vou dar uma olhada e depois digo no que deu.
Tenho medo que não seja uma engine.
Vou dar uma olhada e depois digo no que deu.
Ralphed- Data de inscrição : 18/08/2010
Reputação : 12
Número de Mensagens : 461
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Godot
- Outros
Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
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?superrafao escreveu:Minha nossa!!!! 19,6MB
Tenho medo que não seja uma engine.
Vou dar uma olhada e depois digo no que deu.
e isso é porque ta só na 1ª fase... são umas 20...
brigadãooooo
irlansn- Games Ranking :
Notas recebidas : B+D
Data de inscrição : 18/01/2011
Reputação : 5
Número de Mensagens : 482
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: BUG, o player diminui a velocidade quando esta perto do chão, o que fazer?!
ok mais eu vo dormir, amanhã vejo isso.
Good night.
Good night.
Ralphed- Data de inscrição : 18/08/2010
Reputação : 12
Número de Mensagens : 461
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Godot
- Outros
Conteúdo patrocinado
Tópicos semelhantes
» [Resolvido] Fazer objeto cair quando o player chegar perto
» Checar se está perto do player
» [Resolvido]Como fazer o Inimigo atacar se estiver perto do player e o player perder vida
» armadilha quando player chega perto
» Diminuir velocidade quando está em certo lugar
» Checar se está perto do player
» [Resolvido]Como fazer o Inimigo atacar se estiver perto do player e o player perder vida
» armadilha quando player chega perto
» Diminuir velocidade quando está em certo lugar
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos