Entrar
Últimos assuntos
» Retorno da GMBR!!!por theguitarmester Ter 19 Mar 2024, 22:38
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49
» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21
» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21
» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39
» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16
» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05
» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55
» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39
» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28
» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01
[Resolvido] Mario aranha (Como arrumar)
3 participantes
Página 1 de 1
[Resolvido] Mario aranha (Como arrumar)
é isso que acontece quando fico de frente com a parede pulando..
Dos dois lados..
Depois de uns 5 segundos ele cai.
se eu pular novamente ele sobe cerca de 16 pixels ( o tamanho do bloco sólido)
Mario aranha mario aranha.. xD
como arruma?
Última edição por ·ßieL em Seg 05 Out 2009, 20:48, editado 1 vez(es)
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: [Resolvido] Mario aranha (Como arrumar)
Poste o código de seu movimento, ficará mais fácil de ajudar.
Btw, está usando máscaras de colisão?
Btw, está usando máscaras de colisão?
Re: [Resolvido] Mario aranha (Como arrumar)
- Código:
//andar e correr :)
if ! (variable_local_exists("var_correndo")) {
var_correndo = 0;
}
if ! (variable_local_exists("var_acelera")) {
var_acelera = 0;
}
if ! (variable_local_exists("var_desacelera")) {
var_desacelera = 0;
}
if (keyboard_check(vk_right))
{
if (place_free(x+var_correndo,y))
{
if (var_acelera < 15) var_acelera += 0.5;
if (var_acelera > 5) && (var_correndo < 10) var_correndo+=0.1;
x += var_correndo;
}
}
if (keyboard_check_released(vk_right)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (keyboard_check(vk_left))
{
if (place_free(x-var_correndo,y))
{
if (var_acelera > -15) var_acelera -= 0.5;
if (var_acelera < -5) && (var_correndo > -10) var_correndo-=0.1;
x += var_correndo;
}
}
if (keyboard_check_released(vk_left)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (var_desacelera < 0)
{
var_desacelera+=0.1;
if (var_desacelera > 0) var_desacelera = 0;
x+=var_desacelera;
}
if (var_desacelera > 0)
{
var_desacelera-=0.1;
if (var_desacelera < 0) var_desacelera = 0;
x+=var_desacelera;
}
//Gravidade :)
if place_free(x,y+2){gravity=0.6 gravity_direction=270}
else
gravity=0
if vspeed>15{vspeed=15}
//Pulo Problematico
if keyboard_check_pressed(vk_space) {
sound_play(snd_pular)
if not(place_free(x,y+2)){vspeed=-9}}
Estou usando mascara..
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: [Resolvido] Mario aranha (Como arrumar)
Tente trocar o código do pulo e da gravidade:
Não se esqueça de determinar o origin da máscara e dos sprites do personagem sempre no meio ou nos pés dele Eu particularmente gosto de colocar sempre no meio.
Não se esqueça de matar a velocidade de queda/subida do personagem no evento de colisão com o bloco sólido:
Qualquer dúvida, estou por aqui. (;
- Código:
//Gravidade :)
if ! (variable_local_exists("var_nochao")) { var_nochao = true; }
if (place_free(x,y+1))
{
gravity = 0.6;
gravity_direction = 270;
var_nochao = false;
}
else
{
gravity = 0;
var_nochao = true;
}
if (vspeed>15) {vspeed = 15;}
if (keyboard_check_pressed(vk_space)) && (var_nochao == true)
{
sound_play(snd_pular)
vspeed=-9
}
Não se esqueça de determinar o origin da máscara e dos sprites do personagem sempre no meio ou nos pés dele Eu particularmente gosto de colocar sempre no meio.
Não se esqueça de matar a velocidade de queda/subida do personagem no evento de colisão com o bloco sólido:
- Código:
move_contact_solid(direction,8);
vspeed = 0;
Qualquer dúvida, estou por aqui. (;
Re: [Resolvido] Mario aranha (Como arrumar)
O Problema continua.. tentei trocar o codigo de movimento por um mais simples e acontece o mesmo, s]a unica coisa que eu acho q ficou diferente foi a distancia que se sobe ... que ficou menor
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: [Resolvido] Mario aranha (Como arrumar)
Tente usar esse codigo,no lugar do que voce esta usando:
- Código:
///////////////////////////Script de plataforma//////////////////////////////////////
if(keyboard_check_pressed(vk_up) and (place_free(x,y+1))=false)
{vspeed=-8} /////
else /////
if(place_free(x,y+1)) /////
{vspeed+=0.5} /////
else /////
{vspeed=0} /////
/////////////////////////////////////////////////////////////////////////////////////
if(place_free(x,y))=false /////
{if(place_free(x+4,y-31))=false{ /////
hspeed=-2 /////
}if(place_free(x-4,y-31))=false{ /////
hspeed=2} /////
y-=6} /////
/////////////////////////////////////////////////////////////////////////////////////
if(keyboard_check(vk_right)and(hspeed<4)and(place_free(x+1,y))) /////
{hspeed+=0.3} /////
/////////////////////////////////////////////////////////////////////////////////////
if(keyboard_check(vk_left)and(hspeed>-4)and(place_free(x-1,y)))
{hspeed-=0.3} /////
/////////////////////////////////////////////////////////////////////////////////////
if keyboard_check(vk_right)=false and keyboard_check(vk_left)=false and hspeed<0.05//
{hspeed+=0.1} ////
/////////////////////////////////////////////////////////////////////////////////////
if keyboard_check(vk_right)=false and keyboard_check(vk_left)=false and hspeed>0 ////
{hspeed-=0.1}
Thyago- Games Ranking :
Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Reputação : 31
Número de Mensagens : 1101
Prêmios :
x 0 x 0 x 0
x 1 x 1 x 0
x 0 x 0 x 0
Re: [Resolvido] Mario aranha (Como arrumar)
·ßieL escreveu:O Problema continua.. tentei trocar o codigo de movimento por um mais simples e acontece o mesmo, s]a unica coisa que eu acho q ficou diferente foi a distancia que se sobe ... que ficou menor
Olha, sabe o código do movimento? Ele tinha uns bugzinhos bestas que não tinha notado antes. Se somarmos a correção desses bugs com aquilo que eu falei lá em cima, teremos o seguinte código:
- Código:
//andar e correr :)
if ! (variable_local_exists("var_correndo")) {
var_correndo = 0;
}
if ! (variable_local_exists("var_acelera")) {
var_acelera = 0;
}
if ! (variable_local_exists("var_desacelera")) {
var_desacelera = 0;
}
if (keyboard_check(vk_right)) && (place_free(x+var_correndo,y))
{
if (var_acelera < 15) var_acelera += 0.5;
if (var_acelera > 5) && (var_correndo < 10) var_correndo+=0.1;
x += var_correndo;
}
if (keyboard_check_released(vk_right)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (keyboard_check(vk_left)) && (place_free(x+var_correndo,y))
{
if (var_acelera > -15) var_acelera -= 0.5;
if (var_acelera < -5) && (var_correndo > -10) var_correndo-=0.1;
x += var_correndo;
}
if (keyboard_check_released(vk_left)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (var_desacelera < 0)
{
var_desacelera+=0.1;
if (place_free(x+var_desacelera,y))
{
if (var_desacelera > 0) var_desacelera = 0;
x+=var_desacelera;
}
else
{
var_desacelera = 0;
}
}
if (var_desacelera > 0)
{
var_desacelera-=0.1;
if (place_free(x+var_desacelera,y))
{
if (var_desacelera < 0) var_desacelera = 0;
x+=var_desacelera;
}
else
{
var_desacelera = 0;
}
}
//Gravidade :)
if ! (variable_local_exists("var_nochao")) { var_nochao = true; }
if (place_free(x,y+1))
{
gravity = 0.6;
gravity_direction = 270;
var_nochao = false;
}
else
{
gravity = 0;
var_nochao = true;
}
if (vspeed>15) {vspeed = 15;}
if (keyboard_check_pressed(vk_space)) && (var_nochao == true)
{
vspeed=-9
}
Caso tenha problemas, montei uma mini-engine com esse mesmo código. Para evitar ter o trabalho de baixá-la, tente fazer tudo o que eu falei antes.
Acelera____o.gm6 - 0.01MB
Você tinha outra dúvida, relacionada a sprites, certo? Poste ela nesse tópico, ficará mais fácil do que acompanhar dois tópicos ao mesmo tempo.
Re: [Resolvido] Mario aranha (Como arrumar)
Sim queria encaixar sprite de correr, andar, ficar parado e quem sabe derrapar...
(uso o GMPro), então to aberto a scripts diferentes xD
(uso o GMPro), então to aberto a scripts diferentes xD
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Re: [Resolvido] Mario aranha (Como arrumar)
·ßieL escreveu:Sim queria encaixar sprite de correr, andar, ficar parado e quem sabe derrapar...
(uso o GMPro), então to aberto a scripts diferentes xD
Já vou editar esse post com o código funcionando com sprites, mas o código anterior funcionou?
Edit:
Perfeitamente adaptado para sprites. Lembre-se de mudar os nomes para os sprites de seu projeto, e de que eles estejam virados para a direita (nota: o código gira os sprites para esquerda e direita automaticamente).
- Código:
//andar e correr :)
if ! (variable_local_exists("var_correndo")) {
var_correndo = 0;
}
if ! (variable_local_exists("var_acelera")) {
var_acelera = 0;
}
if ! (variable_local_exists("var_desacelera")) {
var_desacelera = 0;
}
if ! (variable_local_exists("var_direita")) { var_direita = true; }
if ! (variable_local_exists("var_parado")) { var_parado=true; }
if (keyboard_check(vk_right)) && (place_free(x+var_correndo,y))
{
if (var_acelera < 15) var_acelera += 0.5;
if (var_acelera > 5) && (var_correndo < 10) var_correndo+=0.1;
x += var_correndo;
var_direita = true;
var_parado = false;
if (image_speed < 0.5) { image_speed+=0.005; }
}
if (keyboard_check_released(vk_right)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (keyboard_check(vk_left)) && (place_free(x+var_correndo,y))
{
if (var_acelera > -15) var_acelera -= 0.5;
if (var_acelera < -5) && (var_correndo > -10) var_correndo-=0.1;
x += var_correndo;
var_direita = false;
var_parado = false;
if (image_speed < 0.5) { image_speed+=0.005; }
}
if (keyboard_check_released(vk_left)) { var_desacelera = var_correndo; var_acelera = 0; var_correndo = 0; }
if (var_desacelera < 0)
{
var_desacelera+=0.1;
if (place_free(x+var_desacelera,y))
{
if (var_desacelera > 0) var_desacelera = 0;
x+=var_desacelera;
if (image_speed > 0) && ! (keyboard_check(vk_right))
image_speed -= 0.005;
}
else
{
var_desacelera = 0;
image_speed = 0;
}
}
if (var_desacelera > 0)
{
var_desacelera-=0.1;
if (place_free(x+var_desacelera,y))
{
if (var_desacelera < 0) {var_desacelera = 0;}
x += var_desacelera;
if (image_speed > 0) && ! (keyboard_check(vk_left))
image_speed -= 0.005;
}
else
{
var_desacelera = 0;
image_speed = 0;
}
}
//Gravidade :)
if ! (variable_local_exists("var_nochao")) { var_nochao = true; }
if (place_free(x,y+1))
{
gravity = 0.6;
gravity_direction = 270;
var_nochao = false;
}
else
{
gravity = 0;
var_nochao = true;
}
if (vspeed>15) {vspeed = 15;}
if (keyboard_check_pressed(vk_space)) && (var_nochao == true)
{
vspeed=-9;
var_nochao = false;
}
if (image_speed>0.5) {image_speed=0.5}
if (var_nochao == false)
{
if (var_direita == true)
{
sprite_index = spr_pulando;
image_xscale = 1;
}
else
{
sprite_index = spr_pulando;
image_xscale = -1;
}
}
else
{
if (var_parado == true)
{
if (var_direita == true)
{
sprite_index = spr_parado;
image_xscale = 1;
}
else
{
sprite_index = spr_parado;
image_xscale = -1;
}
}
else
{
if (var_direita == true)
{
if (image_speed < 0.3)
{
sprite_index = spr_andando;
image_xscale = 1;
}
else
{
sprite_index = spr_correndo;
image_xscale = 1;
}
}
else
{
if (image_speed < 0.3)
{
sprite_index = spr_andando;
image_xscale = -1;
}
else
{
sprite_index = spr_correndo;
image_xscale = -1;
}
}
}
}
if (var_desacelera == 0) && (var_correndo == 0) && (var_acelera == 0)
{
if ! (keyboard_check(vk_left)) && ! (keyboard_check(vk_right))
{
var_parado = true;
image_speed = 0;
}
}
if (image_speed < 0) { image_speed = 0; }
if (var_desacelera > 0) && (keyboard_check(vk_right))
{
image_speed = 0;
}
if (var_desacelera < 0) && (keyboard_check(vk_left))
{
image_speed = 0;
}
Caso tenha problemas, a engine:
Aceleração.gm6 - 0.01MB
Última edição por CPinheiro em Seg 05 Out 2009, 19:32, editado 1 vez(es)
Re: [Resolvido] Mario aranha (Como arrumar)
Sim funcionou perfeito *-*
(As sprites tem movimento)
(As sprites tem movimento)
Gabreel- Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Game Maker Studio 2.0
- Javascript
- Outros
Tópicos semelhantes
» [Resolvido]arrumar tempo
» [resolvido]Qual o problema desse engine do Mario?
» [Resolvido]Efeito super mario
» [Resolvido]Engine Super Mario
» [Resolvido]Musica de super mario bros
» [resolvido]Qual o problema desse engine do Mario?
» [Resolvido]Efeito super mario
» [Resolvido]Engine Super Mario
» [Resolvido]Musica de super mario bros
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|