Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[TUTORIAL/DELPHI] Movimentaçao e Colisao Simples


DragonBoss
 Compartilhar

Posts Recomendados

Ola Galera,

 

Nao tinha nada pra fazer xD, entao resolvir criar um tutorialzinho de como criar movimentaçao e colisao simples no delphi, usando valores de top e left.

 

Entao vamos la:

 

Primeiro vamos por 2 buttons no form, e deixa-los com 50 de altura e 100 de largura, organize-os no form de forma que eles nao se toquem. Nomei eles pra Carro e Parede, respectivamente.

 

Depois disso vamos criar a function ( coloque esse codigo abaixo do Implementation - no começo do codigo do programa- ):

 

function bateu: boolean;

begin

result:= true;

if (form1.carro.Left > form1.parede.Left + 100) or

(form1.carro.Left + 100 < form1.parede.Left) or

(form1.carro.Top > form1.parede.Top + 50) or

(form1.carro.Top + 50 < form1.parede.Top) then result:= false;

end;

 

Explicando: Se o LEFT do carro for maior ke o LEFT da parede +100, ele vai constatar que bateu (é o mesmo esquema pro resto ).

 

 

Agora, Vamos adicionar um Panel no Form , deixe a caption em branco e o visible em "false" e coloke uma Label , mude o visible pra false tbm, deixe a label e Panel do tamanho ke kiserem, e mude a caption da label pra 'Voce Bateu', e insira um button nesse panel, com o visible em false tbm --'e o caption 'ok', insira o segunte codigo neste button:

 

panel1.hide;

label1.hide;

button1.hide;

carro.left:=10;

carro.top:=10;

 

Agora vamos testar pra ve se isso vai funcionar =P.

Coloque um Timer, deixe o interval em 50, ae insira o seguinte codigo:

 

if getkeystate(vk_left)<0 then carro.Left:=carro.Left-2 ;

if getkeystate(vk_Right)<0 then carro.Left:=carro.Left+2;

if getkeystate(vk_up)<0 then carro.top:=carro.top-2;

if getkeystate(vk_down)<0 then carro.top:=carro.top+2;

if bateu then

panel1.show;

label1.show;

button1.show;

 

No fim devemos ter algo assim :

 

tutolm.jpg

 

Entao, leiam o codigo e tentem entender =D, é algo simples, mas com um pouco mais de programaçao, design, quem sabe voces nao façam um jogo tipo GTA 4 do play 3 ( zuera --' ), mas da pra fazer uns joguinhos legais, tipo aqueles de cobrinha e tals.

 

flws ae galera =D

 

Espero ke isso tenha sido util ^^

 

Créditos:

DragonBoss (é, foi eu mesmo que fiz o tuto >..< )

 

Fuiz =X

 

OBS: qualker erro me avisem ^^

Link para o comentário
Compartilhar em outros sites

  • 1 mês depois...

bota aonde qe é pra botar esse function tipo, ali vs disse qe tiqe por no inicio do código especificamente mas bota tipo dps das uses antes das uses por aí...

eu n entendi só por causa disso :(

 

:D

 

edited:

 

eu qe n li direito temsim um lugar especifico desculpa por falar aee !

 

 

edited²

 

fica mais legal se botar o interval para 1 :D

 

daí meu carro anda a cem por hora :3

 

vlw

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.