Conectar-se
Quem está conectado
26 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 26 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Parada no ar, antes de tocar no chao

em Qui 12 Mar 2015, 18:18
Tipo, em meu jogo de plataforma, quando meu personagem pula, ou simplismente está no ar, antes dele cair no chão, ele da uma parada uns pixels acima e depois cai normalmente.
É meio estranho ver o personagem fazer esse tipo de ação em um jogo.
Queria que ele caísse normalmente no chão, sem dar essa parada antes...
E se for possível, quero não seja um código novo totalmente diferente do meu. Eu vou mandar meu código do personagem. Se possível tentem achar o porque isso acontece e concertem nesse mesmo código:

CREATE

Código:
image_speed=0.20

hsp=0;
vsp=0;
grav=0.5;
saltar=false;
global.matar=false;
global.moeda=false;

global.colisao = 0;
solid = true;


STEP:

Código:
vsp += grav;
y += vsp;
x += hsp;

direita = keyboard_check(vk_right);
esquerda = keyboard_check(vk_left);
cima = keyboard_check(vk_up);


if (direita=true) {
     hsp=4;
     image_xscale=1
     if(global.colisao == 0 ){
       sprite_index = sprite6;}
     if(global.colisao == 1 ){  
       sprite_index = sprite29;}
    
}
else if (esquerda=true) {
     hsp=-4;
     image_xscale=-1;
     if(global.colisao == 0 ){
       sprite_index = sprite6;}
     if(global.colisao == 1 ){  
       sprite_index = sprite29;}
}  
else {
     hsp=0;
     if(global.colisao == 0 ){
       sprite_index = sprite0;}
     if(global.colisao == 1 ){  
       sprite_index = sprite26;}
}

if (place_meeting(x,y+vsp,chao)) {
      grav=0;
      vsp=0;
      if (place_meeting(x,y-16,chao)) {
          grav=0;
          vsp=0;
          saltar=false      
      } else {
            saltar=true
      }
}
else {
      grav=0.5
      saltar=false
}

if (cima=true) {
    if (saltar=true){
    vsp=-6;
    }
}

if (place_meeting(x+hsp,y-1,chao)) {
    hsp=0
}

if (place_meeting(x,y,slimeLVL1)) {
    if(vsp > 0) {
      global.matar = true;
      vsp=-5;      
    } else {
      global.matar = false;
    }
} else {
   global.matar = false;
}



Se puder ajudar ficarei incrivelmente grato felicidade
avatar
Data de inscrição : 26/08/2014
Número de Mensagens : 87
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 3

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://viladogamer.forumeiros.com

Re: Parada no ar, antes de tocar no chao

em Qui 12 Mar 2015, 18:29
Kakisuke, cara para mim também sempre dá isso, eu não o que é, sempre fiquei me perguntando, mas talvez deve ser normal msm.
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: Parada no ar, antes de tocar no chao

em Qui 12 Mar 2015, 18:30
No código de gravidade coloque:
Código:

if (place_meeting(x,y+vsp,chao)) {
      grav=0;
      vsp=0;
      if (place_meeting(x,y-16,chao)) {
          grav=0;
          vsp=0;
          saltar=false     
      } else {
            saltar=true;
            move_contact_solid(270, 15);
      }
O move_contact() move até encostar no objeto sólido tirando assim o gap que causa o problema que você citou. Se o objeto não for solido use a versão sem o "solid".
Flws!
avatar
Ranking : Nota D
Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Número de Mensagens : 334
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 18

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Parada no ar, antes de tocar no chao

em Qui 12 Mar 2015, 22:10
Katisuke não sei se você viu no seu tópico anterior mas estamos usando as mesmas linhas de programação, e esse problema ai é meio que "normal", eu acho que você conseguiu esse script ai vendo o vídeo de um cara no youtube, e esse cara faz as coisas de forma "radical" kkkkk , ele foge do normal, dificilmente alguém aqui vai conseguir te dar uma solução concreta, eu mesmo também tenho esse bug chato, nem sei se é bug, mas resolvi deixar da forma que esta.
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Parada no ar, antes de tocar no chao

em Sex 13 Mar 2015, 20:36
vinians, eu entrei dentro da terra quando eu coloquei seu codigo :/

Isquilo_roedor, tou ligado kkkk mas eu gostei do resultado da engine do tutorial no youtube, achei bem simples e bem eficiente, eu ja concertei a maioria do que eu queria para o game, so falta isso, e outra coisa, q eu vou resolvar dps.
Se me ajudarem nisso, eu posso finalmente progredir no game sem nenhuma interrupção de bug e nada.
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: Parada no ar, antes de tocar no chao

em Sex 13 Mar 2015, 20:40
@katisuke escreveu:vinians, eu entrei dentro da terra quando eu coloquei seu codigo :/
Amigo, isso pode ser se o seu chão não for marcado como solido, neste caso, use move_contact_all() no lugar de move_contact_solid(). E verifique se você colocou o código naquele local que te indiquei no seu código.
Flws!
avatar
Ranking : Nota D
Notas recebidas : E-E-D
Data de inscrição : 22/03/2012
Número de Mensagens : 334
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 18

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Parada no ar, antes de tocar no chao

em Sab 14 Mar 2015, 18:56
Sim funcionou vinians, mas da pra perceber que quando o player em vez de dar aquela paradinha no ar, ele força a encostar no chão.
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: Parada no ar, antes de tocar no chao

em Dom 15 Mar 2015, 19:11
Para resolver isso basta reduzir a aceleração da gravidade. Veja:
Código:

if (vsp < 10)
  vsp += grav;
Neste caso vsp será limitado a 10, regule o valor de acordo com seu jogo.
Flws!
avatar
Data de inscrição : 05/03/2015
Número de Mensagens : 31
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Parada no ar, antes de tocar no chao

em Dom 15 Mar 2015, 20:06
Resolveu maninho kkk, vlw aew, vcs sao feras Very Happy
Conteúdo patrocinado

Re: Parada no ar, antes de tocar no chao

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum