Arrumar movimentação

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

Arrumar movimentação

Mensagem por Katerp em Sab 04 Jan 2014, 20:28

estava eu no meu projeto fazendo uns testes e achei dois problemas que queria muito resolver, então na verdade não é apenas um problema e sim dois..
para a pessoa que estiver lendo este tópico se souber arrumar alguns dos dois por favor ensine-me ou deixe apenas um tutorial arrumando.
Ah sim.. já procurei aqui uma resposta mas não era exatamente o que eu queria.

1 Problema: Movimentação do player
este problema eu acho que deve ser bem simples resolver.. na verdade acho que os dois é mas.. n sei mexer em códigos pelo menos por enquanto não então estou trabalhando apenas com os botões do GM mesmo.
Quando eu crio um personagem, exemplo um de plataforma com as direções direita e esquerda apenas.
eu crio 3 Sprites olhando para min, olhando para direita e olhando para esquerda com apenas um objeto que seria o player olhando para min.


no Objeto player coloco os seguintes eventos:
keybord left e keybord right para mover player
press keyboard left e press keyboard right para mudar o sprite fazendo a animação dele andando
key release left e key release right para quando soltar ele voltar para o sprite principal do player


mas com esses eventos quando eu entro em uma room e aperto meio rápido a seta direita depois esquerda ele anda mas o player fica com o sprite olhando para min e é isso que eu queria arrumar porque tipo da para jogar de boa mas é mei chato de vez enquanto você mudar de direção e ele ficar olhando para vc até soltar a tecla.

2 Problema: movimentação de tela
se eu uso o exemplo acima não tem este erro porque é apenas um objeto para a tela seguir
mas quando eu crio deste jeito:


com esses monte de objetos não tem o erro de movimentação mas agora n consigo fazer a tela seguir o personagem.
se alguém souber algum jeito de arrumar estes erros por favor deixe ai nos comentarios
e se deixei de mostrar algum detalhe para ajudar a resolver é só falar que eu coloco.

Katerp

Ranking : Nota D
Número de Mensagens : 72
Idade : 19
Data de inscrição : 04/01/2014
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por glasdou em Sab 04 Jan 2014, 23:32

por DnD nao sei resolver entao faça o seguinte
1°elimine os eventos relacionados ao movimento e a troca de sprite
2° elimine a sprite do player olhando pra esquerda
 crie um evento step (add event>step>step) arraste um "execute a piece of code" (control>execute a piece of code) e dentro dele cole o seguinte codigo
Código:
if place_free(x + 4,y) and keyboard_check(vk_right){ //se estiver livre 4 pixels a direita...
x += 4 //anda 4 pixels pra direita
sprite_index = spr_player_direita //mude o spr_player_direita pelo nome do sprite do player olhando pra direita
image_xscale = 1 //fica olhando pra direita
}
else if place_free(x - 4,y) and keyboard_check(vk_left){ //se estiver livre 4 pixels a esquerda...
x -= 4 //anda 4 pixels pra esquerda
sprite_index = spr_player_direita //mude o spr_player_direita pelo nome do sprite do player olhando pra direita
image_xscale = -1 //fica olhando pra esquerda
}
else {
sprite_index = spr_player_de_frente //mude o spr_player_de_frente pelo nome do sprite do player olhando pra frente
}
qualquer erro avise

Abraços se te ajudei clique no Joinha do lado esquerdo da minha foto 

glasdou

Número de Mensagens : 95
Idade : 17
Data de inscrição : 21/11/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por Katerp em Dom 05 Jan 2014, 12:03

glasdou escreveu:por DnD nao sei resolver entao faça o seguinte
1°elimine os eventos relacionados ao movimento e a troca de sprite
2° elimine a sprite do player olhando pra esquerda
 crie um evento step (add event>step>step) arraste um "execute a piece of code" (control>execute a piece of code) e dentro dele cole o seguinte codigo
Código:
if place_free(x + 4,y) and keyboard_check(vk_right){ //se estiver livre 4 pixels a direita...
x += 4 //anda 4 pixels pra direita
sprite_index = spr_player_direita //mude o spr_player_direita pelo nome do sprite do player olhando pra direita
image_xscale = 1 //fica olhando pra direita
}
else if place_free(x - 4,y) and keyboard_check(vk_left){ //se estiver livre 4 pixels a esquerda...
x -= 4 //anda 4 pixels pra esquerda
sprite_index = spr_player_direita //mude o spr_player_direita pelo nome do sprite do player olhando pra direita
image_xscale = -1 //fica olhando pra esquerda
}
else {
sprite_index = spr_player_de_frente //mude o spr_player_de_frente pelo nome do sprite do player olhando pra frente
}
qualquer erro avise

Abraços se te ajudei clique no Joinha do lado esquerdo da minha foto 


Vlw ajudou a arrumar a movimentação mas agora quando estou andando para direita e aperto para andar para esquerda ele da tipo um pulo de mais o menos 1 quadrado.. n sei se fiz algo errado mas tbm n sei se foi erro no código..
Isso é normal?

Katerp

Ranking : Nota D
Número de Mensagens : 72
Idade : 19
Data de inscrição : 04/01/2014
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por felnw em Dom 05 Jan 2014, 14:16

Existem 2 motivos para esse "pulo" é por causa da centralização do sprite, é necessária ao usar image_xscale. Caso o "pulo" não seja devido a isso, pode ser que talvez sejam necessários outros "codes" tipo, que reconheçam que as teclas foram pressionadas ao mesmo tempo ou algo assim.

felnw

Ranking : Nota A
Número de Mensagens : 33
Idade : 27
Data de inscrição : 23/12/2011
Notas recebidas : A-A-B-A-B
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://felnw.blogspot.com

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por felipejoys em Dom 05 Jan 2014, 14:24

Acho que pra evitar esse pulo você só precisa abrir a sprite pelo GM e colocar "Center" para centralizar a origem.

felipejoys

Número de Mensagens : 56
Data de inscrição : 29/12/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por glasdou em Dom 05 Jan 2014, 16:45

é bem simples arrumar esse "PULO" abra os 2 sprite do player (olhando pra frente e pro lado) e coloque a origem no meios dos pés ex: o sprite é 32x32, a origem séra 16x31.
espero ter ajudado

Abraços

glasdou

Número de Mensagens : 95
Idade : 17
Data de inscrição : 21/11/2013
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Arrumar movimentação

Mensagem por Conteúdo patrocinado Hoje à(s) 10:18


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