GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


engine de corrida

3 participantes

Ir para baixo

engine de corrida Empty engine de corrida

Mensagem por MATEUS123 Seg 14 Dez 2009, 21:46

Queria q me arranjassem uma engine de corrida com as curvas e camera seguindo o carro

obs: PARA GM LITE
MATEUS123
MATEUS123

Data de inscrição : 14/12/2009
Reputação : 0
Número de Mensagens : 9
Prêmios : engine de corrida Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

engine de corrida Empty Re: engine de corrida

Mensagem por jp_away Seg 14 Dez 2009, 21:54

caso aceite um tutorial, aqui está:

Crie um novo projeto.
Lembre-se que vamos fazer apenas o jogo funcionar. Se você quiser, depois pode incrementá-lo com sons e gráficos melhores, mas eu vou usar o que for mais fácil e simples. Os gráficos usados estão anexados neste post.

Crie um sprite spr_carro usando a imagem do carro. Abra o Sprite Editor, e no menu Transform, vá em Resize Canvas, pra modificar o tamanho da imagem. Desmarque a caixa Keep aspect ratio, e coloque 90 por 90 (vai dar 214% por 115%) e dê OK. Agora vá em Transform > Rotate 90 clockwise.
Agora, vamos animar o carro, para dar a impressão de curva, de que o carro gira. Na guia Animation, vá em Rotation Sequence > Counter-Clockwise, e coloque 72 frames. Veja que foram criados frames de animação do carro girando de 5 em 5 graus (isto é, 360 graus, volta completa, divididos por 72, número de frames).
Se você marcar a opção Show Preview, verá o carro girando.
Dê OK, centraliza as coordenadas do sprite, clicando em Center e dê OK novamente.

Agora vamos criar um sprite que irá delimitar as laterais da pista.
Crie um novo sprite spr_parede usando a imagem do bloco cinza. Desmarque a caixa Transparent, centralize as coordenadas e dê OK.

Agora, vamos criar o sprite do adversário. Duplique o spr_carro, coloque como spr_carro2, vá no Sprite Editor, Image > Colorize Partial, e coloque uma cor diferente do outro carro.

Usando a imagem do retângulo quadriculado, crie o spr_chegada.

Acabamos os sprites. Vamos aos Objects.

Primeiro, o obj_carro, o carro controlável pelo jogador.
Coloque o spr_carro, marque a opção Solid, vá no evento Create e coloque o código abaixo:

Código:
Código:
friction = .6
image_speed = 0
No evento Step, coloque este código:

Código:
Código:
if keyboard_check(vk_up) then motion_set(direction,10);
if keyboard_check(vk_right) then direction -= 5;
if keyboard_check(vk_left) then direction += 5;

image_index = direction * image_number/360;
Pronto. Assim o carro já se move, faz curva, desacelera se você parar de pressionar, e o sprite aponta para a direção certa.

Crie um objeto obj_parede, coloque o spr_parede, marque a caixa Solid, e volte ao obj_carro.
No obj_carro, evento Collision > obj_parede, adicione este código:


Código:
Código:
move_contact_solid(direction,-10)
Próximo passo, o adversário. Pra que ele percorra a pista, vamos usar um Path. Mas para isso, antes teremos que criar a room da pista. Crie uma room, e delimite a pista com o obj_parede. Ainda na room, não esqueça de definir uma View que siga o obj_carro, para você sempre vê-lo (uma das Aulas de GML fala sobre Views, caso você não saiba usar).
Antes de criar o Path, crie o obj_carro2, e faça igual ao obj_carro, só retire a parte do evento Step que tem keyboard_check, deixe só a última linha. Coloque um obj_carro2 na room da pista.

Agora crie um Path.
Aparecerá a janela Path Properties. Na barra de ferramentas, o último ícone é Indicate a room to show as background. Clique nesse ícone e escolha a room da sua pista. Ela apareceu no fundo, não é mesmo?
Então, agora é só você definir o caminho que o carro adversário vai seguir nessa pista.

Uma vez que você marcou todos os pontos e definiu o path, salve e vá no obj_carro2.

No evento Create do obj_carro2, adicione esta linha:

Código:
Código:
path_start(nome_do_seu_path,8,0,0)
Esta linha configura para este objeto o path que você fez, com velocidade 8, indica que ele deve parar ao fim do path e que a posição do path é relativa.
Na ajuda do GM, se você consegue ler em inglês, há muito mais detalhes sobre isso aqui e tudo que já foi feito antes.

Agora, para evitar que os carros se choquem, no evento Collision > obj_carro2 do obj_carro, coloque este código:


Código:
Código:
move_outside_solid(direction,16)
Agora para terminar, vamos fazer a linha de chegada. Crie um objeto obj_chegada, usando o spr_chegada. No evento Step, coloque este código:

Código:
Código:
if collision_rectangle(x-64,y-8,x+64,y+8,obj_carro,1,0)
{
show_message("Voce ganhou");
game_restart();
}
else if collision_rectangle(x-64,y-8,x+64,y+8,obj_carro2,1,0)
{
show_message("Voce perdeu");
game_restart();
}
Este código irá mostrar na tela quem venceu ("Voce perdeu" ou "Voce ganhou") e depois irá reiniciar o jogo


Fonte: GOOGLE
jp_away
jp_away

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 05/09/2009
Reputação : 6
Número de Mensagens : 860
Prêmios : engine de corrida Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.jpgamesweb.xpg.com.br/

Ir para o topo Ir para baixo

engine de corrida Empty Re: engine de corrida

Mensagem por Anderson3d Ter 15 Dez 2009, 12:54

Não tinha pensado num jogod e corrida, mas quando fuiv er, realmente não tinha amínima idéia de como fazer hahaha! vcs são mestres ein!?
Anderson3d
Anderson3d

Games Ranking : Nota A

Notas recebidas : A - A
Data de inscrição : 15/02/2009
Reputação : 9
Número de Mensagens : 1479
Prêmios : engine de corrida Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.indiegamebr.com

Ir para o topo Ir para baixo

engine de corrida Empty Re: engine de corrida

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos