Bem, em muitos jogos, vejo que ao apenas ENCOSTAR na LATERAL de um
espinho já mata o persongem. Para resolver esse bug, é bem simples
afinal. Se seu jogo está com esse bug, é porque você fez assim:
SE O PERSONGEM COLIDIR COM O ESPINHO > PERSONAGEM MORRE
Note
que desse modo, seu jogo irá sim ficar bugado, pois mesmo que o jogador
encostar na lateral do espinho, ele morrerá. Veja um exemplo:
Jogo:
Caçada aos Cubinhos Amarelo (não é meu jogo, é apenas um jogo que achei
na internet, que vi que tinha esse bug e usei-o como exemplo)
No jogo acima, ao encostar no espinho, mesmo de lado, eu morro. Para ajeitar esse bug, delete a ação:
SE O PERSONGEM COLIDIR COM O ESPINHO > PERSONAGEM MORRE
Agora
crie um novo Active Object (Objeto Ativo) e pinte-o de uma cor
qualquer. Depois ajuste o tamanho dele para ficar encima apenas das
PONTAS do espinho e para ser uma linhazinha superfina.
Tem que ficar assim:
Renomeie ele para "Detector de Colisão". Agora adicione esses eventos no Event Editor (Editor de Eventos):
(PERSONAGEM) COLLISIONS ANOTHERR OBJECT > (PERSONAGEM) DESTROY
START OF FRAME > (DETECTOR DE COLISÃO) MAKE INVISIBLE
Explicando: Quando começar o nível, o detector de colisão ficará invisível. Então
Prontinho! Bug resolvido!
Nota:
Cuidado aonde coloca o detector de colisão! Certifique-se de que no
primeiro e no último espinho o Detector de Colisão ficará assim:
E não assim:
Pois
se ficar do segundo modo, o Detector de Colisão ficará no logo acima da
lateral do espinho, e então... então não vai ter adiantado de nada,
pois assim que o personagem encostar na lateral, também vai encostar no
Detector de Colisão...
Nota 2.: Aqui vai um método para ficar
mais realista ainda. Se você usar pré-definido, crie uma nova condição,
dê um duplo clique sobre o personagem e coloque:
COLLISIONS ANOTHER OBJECT (ESPINHOS) > (PERSONAGEM) MOVEMENT STOP
Isso
fará que se o personagem colidir com a lateral do espinho, ele não vai
prosseguir, como se fosse um obstáculo (até porque, na vida real não
somos feiticeiros que ao se deparar com um espinho, pode
ultrapassá-lo). Sem falar que seria BEM estranho, o personagem
ultrapassar as laterais mas não ultrapassar as pontas do espinho. Se
usar o Custom Movement, é o mesmo raciocínio, só fazer com que ao
colidir com o espinho, o personagem não prossiga.
Nota 3.: Você
tem que fazer esse processo para cada espinho diferente da fase. É mais
trabalhoso, mas deixa o jogo sem bugs. O que você prefere, retirar
todos os bugs que estão à sua altura, ou ignorá-los e fazer um jogo
mal-feito que ninguém vai jogar? Você que sabe...
---------------------------------------------------------
Espero ter ajudado!
Abraços!
espinho já mata o persongem. Para resolver esse bug, é bem simples
afinal. Se seu jogo está com esse bug, é porque você fez assim:
SE O PERSONGEM COLIDIR COM O ESPINHO > PERSONAGEM MORRE
Note
que desse modo, seu jogo irá sim ficar bugado, pois mesmo que o jogador
encostar na lateral do espinho, ele morrerá. Veja um exemplo:
Jogo:
Caçada aos Cubinhos Amarelo (não é meu jogo, é apenas um jogo que achei
na internet, que vi que tinha esse bug e usei-o como exemplo)
No jogo acima, ao encostar no espinho, mesmo de lado, eu morro. Para ajeitar esse bug, delete a ação:
SE O PERSONGEM COLIDIR COM O ESPINHO > PERSONAGEM MORRE
Agora
crie um novo Active Object (Objeto Ativo) e pinte-o de uma cor
qualquer. Depois ajuste o tamanho dele para ficar encima apenas das
PONTAS do espinho e para ser uma linhazinha superfina.
Tem que ficar assim:
Renomeie ele para "Detector de Colisão". Agora adicione esses eventos no Event Editor (Editor de Eventos):
(PERSONAGEM) COLLISIONS ANOTHERR OBJECT > (PERSONAGEM) DESTROY
START OF FRAME > (DETECTOR DE COLISÃO) MAKE INVISIBLE
Explicando: Quando começar o nível, o detector de colisão ficará invisível. Então
Prontinho! Bug resolvido!
Nota:
Cuidado aonde coloca o detector de colisão! Certifique-se de que no
primeiro e no último espinho o Detector de Colisão ficará assim:
E não assim:
Pois
se ficar do segundo modo, o Detector de Colisão ficará no logo acima da
lateral do espinho, e então... então não vai ter adiantado de nada,
pois assim que o personagem encostar na lateral, também vai encostar no
Detector de Colisão...
Nota 2.: Aqui vai um método para ficar
mais realista ainda. Se você usar pré-definido, crie uma nova condição,
dê um duplo clique sobre o personagem e coloque:
COLLISIONS ANOTHER OBJECT (ESPINHOS) > (PERSONAGEM) MOVEMENT STOP
Isso
fará que se o personagem colidir com a lateral do espinho, ele não vai
prosseguir, como se fosse um obstáculo (até porque, na vida real não
somos feiticeiros que ao se deparar com um espinho, pode
ultrapassá-lo). Sem falar que seria BEM estranho, o personagem
ultrapassar as laterais mas não ultrapassar as pontas do espinho. Se
usar o Custom Movement, é o mesmo raciocínio, só fazer com que ao
colidir com o espinho, o personagem não prossiga.
Nota 3.: Você
tem que fazer esse processo para cada espinho diferente da fase. É mais
trabalhoso, mas deixa o jogo sem bugs. O que você prefere, retirar
todos os bugs que estão à sua altura, ou ignorá-los e fazer um jogo
mal-feito que ninguém vai jogar? Você que sabe...
---------------------------------------------------------
Espero ter ajudado!
Abraços!