Obrigado por visitar a The Game Makers Brasil Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais. |
Movimentos do player através de posições definidas
Movimentos do player através de posições definidas
Meu problema é o seguinte
O player vai poder ir pra três posições da room, para cima, para baixo e no meio (o meio será a posição em que o player irá iniciar no jogo), não é através de movimento ou algo do tipo, eu não quero mover ele, ele vai direto pra posição, basicamente um teleporte.
O erro é que toda vez que eu vou pra cima ou para baixo, e depois quero ir pra umas dessas posições contrarias as que eu estou, ele vai direto pra elas, ignorando totalmente a posição do meio.
Eu não sei exatamente como tava o meu código pq eu acabei mudando pra tentar resolver esse problema, mas agora ele ta assim:
if (keyboard_check(vk_up) or keyboard_check(vk_down))
{
y = 352
}
if (keyboard_check(vk_up) && y = 352)
{
y = cima
}
if (keyboard_check(vk_down) && y = 352)
{
y = baixo
}
O player vai poder ir pra três posições da room, para cima, para baixo e no meio (o meio será a posição em que o player irá iniciar no jogo), não é através de movimento ou algo do tipo, eu não quero mover ele, ele vai direto pra posição, basicamente um teleporte.
O erro é que toda vez que eu vou pra cima ou para baixo, e depois quero ir pra umas dessas posições contrarias as que eu estou, ele vai direto pra elas, ignorando totalmente a posição do meio.
Eu não sei exatamente como tava o meu código pq eu acabei mudando pra tentar resolver esse problema, mas agora ele ta assim:
if (keyboard_check(vk_up) or keyboard_check(vk_down))
{
y = 352
}
if (keyboard_check(vk_up) && y = 352)
{
y = cima
}
if (keyboard_check(vk_down) && y = 352)
{
y = baixo
}
- ValdeciVieira
- Moderador
- Reações: 8
- Mensagens: 122
- Localização: Rio de Janeiro, Brasil
Re: Movimentos do player através de posições definidas
Esse código tá estranho.
O código é executado de cima pra baixo, ele sempre para no meio mas no mesmo frame é movido pra outra posição.
Já que são poucas posição, recomendo usar switch:
Código: Selecionar todos
//1º - Aqui você verifica a tecla "cima" e/ou "baixo"
if (keyboard_check(vk_up) or keyboard_check(vk_down)) {
y = 352; //E define y pra 352
}
//2º - Aqui verifica somente "cima" e se y é igual a 352
if (keyboard_check(vk_up) && y = 352) {
y = cima; //E define y pra posição cima
}
//3º - Aqui verifica somente "baixo" e se y é igual a 352
if (keyboard_check(vk_down) && y = 352) {
y = baixo; //E define y pra posição baixo
}
Já que são poucas posição, recomendo usar switch:
Código: Selecionar todos
if keyboard_check(vk_up) {
switch(y) {
case 352: y = cima; break;
case baixo: y = 352; break;
}
}
if keyboard_check(vk_down) {
switch(y) {
case cima: y = 352; break;
case 352: y = baixo; break;
}
}
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante