O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Bug eventos ao tocar jogador

Iniciado por gcbaiano, 07/05/2015 às 08:28

07/05/2015 às 08:28 Última edição: 07/05/2015 às 11:33 por gcbaiano
Olá pessoal, esse é o meu primeiro post, então se estiver algo fora dos padrões peço desculpas desde já.

É o seguinte. Estou criando um jogo de terror e preciso fazer com que um monstro persiga o personagem
principal e se, caso esse monstro encoste no personagem, apareça a tela de game over.
Na teoria parecia simples. Criei o evento do monstro, coloquei pré definido o movimento dele
( no caso, coloquei para seguir o jogador),  coloquei o comando "Chamar game over "
na prioridade coloquei " junto ao herói", na condição de início coloquei " Ao tocar jogador".
criei um evento secundário para que o monstro só apareça após o jogador passar por esse evento.
Até ai tudo certo. Porém ao testar o jogo, percebi um erro.
Percebi que o "game over" só aparece se o personagem for pra cima do monstro, caso eu
ande no sentido oposto ao monstro ( que é o que eu preciso, já que o objetivo é fugir dele )
nada acontece, ou mesmo se eu nao fizer nada, apenas deixar o personagem parado no mapa,
quando o monstro toca o personagem também nada acontece.
O "game over" só aparece se eu for pra cima do monstro. Não sei se estou esquecendo de fazer algo,
ou se realmente é um bug do rpg maker vx ace.
Cheguei a fazer o mesmo evento no rpg maker vx, e lá deu tudo certo, funcionou tudo perfeitamente,
somente aqui no rpg maker vx ace estou com esse problema.
Vejam essa pequena "Demo" que fiz, vocês vão entender melhor a minha dúvida.

Download da demo: https://mega.co.nz/#!aYUjjAKB!vZ0hFYbd3aP2qSeGJk8_1tKAvWXr_GrMenux99EVG3E

Então man, nesse caso, acho que não seria um bug. Tipo, tem-se lá nas condições de início
a opção Ao tocar jogador, que ativaria o evento se o jogador tocasse o evento, que é a que
escolheu. Porém, como o evento vai acontecer se o evento tocar o jogador, acho que seria
melhor escolher a opção Ao tocar evento, que faz com que a programação seja executada se
o evento encostar no jogador, como dá pra ver nas descrições.
Olha se essa troca resolve.



Eu não falei no tópico, mas já havia feito esse teste. Inclusive nesta demo que fiz para que vocês pudessem verificar, o evento do monstro está com condição "tocar evento". Já testei das duas formas e o erro continua.
Não sei mais o que fazer  :sad:

Bom, eu não sei mesmo porque o "Ao tocar evento" não funciona. No meu projeto também
não funcionou, haha, deve ser por isso que nunca uso. Deve ter que apertar o direcional
de todo modo para funcionar.
Porém, pra resolver isso tu pode mudar a prioridade do monstro para "Acima do Herói"
e colocar uma condição no início da programação.
Na condição, use a opção por scripts e coloque:

$game_map.events[23].x == $game_player.x && $game_map.events[23].y == $game_player.y

Esse 23 é o ID do evento do monstro. Essa condição irá checar se o jogador e o monstro
estão no mesmo tile, como o monstro vai estar acima do herói, isto será possível.
Daí coloque a programação que já está lá dentro da execução da condição.

Então, estou te dando trabalho haha.
Fiz exatamente como você me falou, mas dessa forma eu preciso pressionar alguma tecla para que funcione. Se o personagem ficar parado no mapa nada acontece. Tudo bem que irá dar o game over assim que apertar qualquer direcional, porem acho que fica feio visualmente.
De qualquer forma agradeço a ajuda ^^

Eu fiz aqui e funcionou. Vê se ficou conforme:
Spoiler
[close]

07/05/2015 às 11:31 #6 Última edição: 07/05/2015 às 11:33 por gcbaiano
Nossa.. Te peço até desculpas.
Esqueci de colocar "processo paralelo"  :facepalm: rsrsrs
Deu certinho aqui. Muito obrigado!

+1
:clap:

E eu esqueci de te instruir a pôr como, xD
Bom, fico contente de que conseguiu. Só muda o ícone do tópico para "resolvido"
caso esteja tudo certo agora.