Alguem poderia fazer uma engine de plataforma ?

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

{resolvido}Alguem poderia fazer uma engine de plataforma ?

Mensagem por Mystery_boy_maker em Seg 12 Abr 2010, 11:55

Oi amigos , eu tenho uma duvida que me ta tirando a paz
todos os jogos de plataformas que eu faço tem o mesmo problema
colisão com o solo, quando o solo e a parede é o mesmo objeto o player gruda nas paredes
ja tentei ver umas engines no yoyogames mais todas são com drag e drop
eu queria uma com GML
Para esclarer o meu problema vou mostra o que eu faço mesmo assim ele gruda

eu faço uma sprite de um bola e o chao um quadrado

no step da bola eu coloco
Código:

if keyboard_check(vk_left){ hspeed = -4 }
if keyboard_check(vk_right){ hspeed = 4 }
if keyboard_check(vk_nokey){ hspeed = 0 }

if keyboard_check(ord("X")){ if not place_free(x,y+1){ vspeed = - 12 }}

gravity_direction = 270
gravity = 1


na colisão com o chao :

Código:
move_contact_solid(direction,10)
vspeed = 0


eu marco o chao como solido e visivel e o player como visivel ( ja tentei como solido junto mais o bug nao muda )


Alguem pode me apontar o erro ou fazer uma engine que use codigos similares ? para mim entender ?


RESOLVIDO


obrigado Denis Lemos


Última edição por Mystery_boy_maker em Seg 12 Abr 2010, 23:03, editado 2 vez(es)

Mystery_boy_maker

Número de Mensagens : 908
Idade : 23
Data de inscrição : 25/01/2010
Reputação : 16
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://recursos-mania.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Markituh em Seg 12 Abr 2010, 12:01

Mystery,veja este tutorial aqui,postado pelo André Gustavo. Os códigos são em GML e até imagem tem Happy

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por mayck em Seg 12 Abr 2010, 12:01

Olha eu achei esa Engine do suadao Em um Forum =D acho q e Iso q VC quer Very Happy
Código:
http://sitedosjogos.forumeiros.com/engines-f50/engine-de-plataforma-fantasma-t256.htm

mayck

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

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Mystery_boy_maker em Seg 12 Abr 2010, 12:16

Bom galera na verdade eu gostaria de saber se esse problema pode ser resolvido
usando pra se mover o codigo desse jeito
Código:

if keyboard_check(vk_left){ hspeed = -4 }
if keyboard_check(vk_right){ hspeed = 4 }

Essas engines mudam isso e o sistema de gravidade do tuto é confuso
eu gostaria que alguem me apontace o erro nesses codigos que eu estou
usando ou fazer uma engine com base nos codicos que eu usei la em cima !

Mystery_boy_maker

Número de Mensagens : 908
Idade : 23
Data de inscrição : 25/01/2010
Reputação : 16
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://recursos-mania.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Suadao em Seg 12 Abr 2010, 12:31

Tenta trocar o seu código de movimentação por esse (coloque no evento Step):

Código:

//Ir para a direita
if keyboard_check(vk_right)
{
if place_free(x+5,y){x+=5}
}
//Ir para a esquerda
if keyboard_check(vk_left)
{
if place_free(x-5,y){x-=5}
}

Espero ter ajudado
Valew!

Suadao

Número de Mensagens : 1035
Idade : 26
Data de inscrição : 22/11/2009
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.recursos-mania.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Denis Lemos em Seg 12 Abr 2010, 13:58

Amigo, isso é bem simples de resolver !

No evento KeyBoard right:
Código:

if place_free(x+(hspeed),y) { hspeed+=1 }
if hspeed>=10 { hspeed=10 }
No KeyBoard left:
Código:

if place_free(x-(hspeed),y) { hspeed-=1 }
if hspeed<=-10 { hspeed=-10 }
No Key_Press SPACE >>para pular<<
Código:

if not place_free(x,y+2) { vspeed=-15 }

No STEP:
Código:

if place_free(x,y+1) { vspeed+=1 } // Gravidade

friction=.25 // Fricção

if not place_free(x+hspeed,y) { hspeed=0 } // Detectar se há colisões nas laterais do objeto

Na colisão com o obj_chao_parede:
Código:
vspeed=0
move_contact_solid(270,5)
Aí está, os códigos completos da engine, testado, e aprovado !
Mas se preferir, também tem a engine de exemplo, com os mesmos códigos àcima !
http://www.4shared.com/file/eewLnzUp/Engine_Coliso.html

OBS: Note que são bem poucas linhas, e é um esquema de colisão com "chão_parede" quase perfeito !

Denis Lemos

Número de Mensagens : 938
Idade : 28
Data de inscrição : 17/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Mystery_boy_maker em Seg 12 Abr 2010, 23:02

Muito obrigado Denis Lemos ficou perfeito amigo muito obrigado mesmo !
eu acabei conseguindo só em ler o que voce colocou não abri a engine mais
muito obrigado cara sou o seu fã !! Very Happy
voce nao sabe como essa duvida me atormentava !!

Obrigado a todos os outros usuarios que se disponibilisaram em responder ao topico !

Mystery_boy_maker

Número de Mensagens : 908
Idade : 23
Data de inscrição : 25/01/2010
Reputação : 16
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://recursos-mania.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Alguem poderia fazer uma engine de plataforma ?

Mensagem por Conteúdo patrocinado Hoje à(s) 07:46


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