- Back to Home »
- cara membuat game spombox dengan delphi 7
Posted by : Unknown
Kamis, 21 Maret 2013
Tutorial Membuat Game spongbob Vs Plankton Delphi 7
Game Spongbob Vs Plankton
Game
ini bercerita tentang spongbob dan plankton sedang berrebut burger dan
musuh spongbob tidak hanya plankton tp juga ubur2 yang mgnejar
spongbob,,,
skrang saya akan memposting cara membuat game tersebut.. . . . ..
syaratya anda harus memiliki aplikasi delphi boleh versi 6 atau versi 7,,
Mulai dengan open new from
buat desain from sebagai berikut
kalau sudah membuat desain lalu kita memberi nama pada setip gambar
spongbob = image,name=spongbob
plankton = image,name=plankton
ubur1 = image,name=mungsuh
ubur1 = image,name=mungsuh
ubur2 = image,name=musuh2
burger =image,name=point
kotak putih pada tanah adalah image =image,tanah
speedbutton =sbatas,sbbawah,sbkanan,sbkiri
dibawah waktu tambah label dengan nama ldljam
dibawah bob tambah label dengan nama skorbob
dibawah plankton tambah label dengan nama sekorplankton
tambah variabel:
var
Form1: TForm1;
lima : Integer;
lemah : Integer;
vskorbob,vsekorplankton : Integer;
menit , detik : Integer ;
jamawal , jamakhir , ketpemenang : String ;
Form1: TForm1;
lima : Integer;
lemah : Integer;
vskorbob,vsekorplankton : Integer;
menit , detik : Integer ;
jamawal , jamakhir , ketpemenang : String ;
dan tambah kode from-> even -> OnCreate masukan kode
procedure TForm1.FormCreate(Sender: TObject);
begin
lima:= 10;
lemah:= 5;
vskorbob:= 0;
vskorbob:= 0;
menit:= 5;
detik:= 0;
ketpemenang:=TimeToStr(Now);
end;
begin
lima:= 10;
lemah:= 5;
vskorbob:= 0;
vskorbob:= 0;
menit:= 5;
detik:= 0;
ketpemenang:=TimeToStr(Now);
end;
untuk menggerakan spongbob kearah atas
klik2x pada sbatas dan masukan kode
procedure TForm1.sbatasClick(Sender: TObject);
begin
if spongbob.Top>=125 then
begin
spongbob.Top:=spongbob.Top-10 ;
end
end;
begin
if spongbob.Top>=125 then
begin
spongbob.Top:=spongbob.Top-10 ;
end
end;
untuk menggerakan spongbob kebawah atas
klik2x pada sbbawah dan masukan kode
procedure TForm1.sbbawahClick(Sender: TObject);
begin
if spongbob.Top+spongbob.Height<=Panel1.Height then
begin
spongbob.Top:=spongbob.Top+10 ;
end
end;
begin
if spongbob.Top+spongbob.Height<=Panel1.Height then
begin
spongbob.Top:=spongbob.Top+10 ;
end
end;
untuk menggerakan spongbob kekanan atas
klik2x pada sbkanan dan masukan kode
procedure TForm1.sbkananClick(Sender: TObject);
begin
if spongbob.Left+spongbob.Width < Panel1.Width then
begin
spongbob.Left:=spongbob.Left+10 ;
end
end;
begin
if spongbob.Left+spongbob.Width < Panel1.Width then
begin
spongbob.Left:=spongbob.Left+10 ;
end
end;
untuk menggerakan spongbob kekiri atas
klik2x pada sbkiri dan masukan kode
procedure TForm1.sbkiriClick(Sender: TObject);
begin
if spongbob.Left >= Panel1.Left then
begin
spongbob.Left:=spongbob.Left-10 ;
end
end;
begin
if spongbob.Left >= Panel1.Left then
begin
spongbob.Left:=spongbob.Left-10 ;
end
end;
Untuk dapat menggerakan spongbob dengan keyboard pada from -> Even->OnKeyDown klik2x
lalu masukan kode
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=VK_left then
begin
sbkiriClick(Owner);
end;
if Key=VK_right then
begin
sbkananClick(Owner);
end;
if Key=VK_up then
begin
sbatasClick(Owner);
end;
if Key=VK_down then
begin
sbbawahClick(Owner);
end;
end;
Shift: TShiftState);
begin
if Key=VK_left then
begin
sbkiriClick(Owner);
end;
if Key=VK_right then
begin
sbkananClick(Owner);
end;
if Key=VK_up then
begin
sbatasClick(Owner);
end;
if Key=VK_down then
begin
sbbawahClick(Owner);
end;
end;
ubur1 agar bisa bergerak maka pada timer1 klik2x masukan kode
begin
mungsuh.Left:=mungsuh.Left+3;
mungsuh.top:=mungsuh.Top+lima;
if mungsuh.Left> Panel1.Width then
begin
mungsuh.Left:=-100;
end;
if mungsuh.Top+mungsuh.Height>Panel1.Height then
begin
lima:=-lima;
end;
if mungsuh.Top<0 then
begin
lima:=-lima;
end;
if (spongbob.Left+spongbob.Width>poin.Left) and
(spongbob.Left<poin.Left+poin.Width) and
(spongbob.Top+spongbob.Height>poin.Top) and
(spongbob.Top<poin.Top+poin.Height) then
begin
Randomize;
poin.Left:=random(Panel1.Width-poin.Height);
poin.Top:=tanah.top+random(tanah.Height-poin.Height);
vskorbob:=vskorbob+10;
end ;
untuk agar ubur2 dapat berjgerak mengejar spongbob maka pada timer2 tmbahkan kode
if musuh2.Left+5>spongbob.Left then
begin
musuh2.Left := musuh2.Left-3;
end
else
begin
musuh2.Left := musuh2.Left+3;
end;
if musuh2.Top+musuh2.Height-5>=spongbob.Top then
begin
musuh2.Top:=musuh2.Top-2;
end
else
begin
musuh2.Top:=musuh2.Top+2;
end;
if (musuh2.Left+musuh2.Width>spongbob.Left) and
(musuh2.Left<spongbob.Left+spongbob.Width) and
(musuh2.Top+musuh2.Height>spongbob.Top) and
(musuh2.Top<spongbob.Top+spongbob.Height) then
begin
vskorbob:=vskorbob-1;
end ;
menggerakan plankton pada timer2 tambah kode sbb:
begin
plankton.Left := plankton.Left-4;
end
else
begin
plankton.Left := plankton.Left+4;
end;
if plankton.Top+plankton.Height-5>=poin.Top then
begin
plankton.Top:=plankton.Top-3;
end
else
begin
plankton.Top:=plankton.Top+3;
end;
if (plankton.Left+plankton.Width>poin.Left) and
(plankton.Left<poin.Left+poin.Width) and
(plankton.Top+plankton.Height>poin.Top) and
(plankton.Top<poin.Top+poin.Height) then
begin
Randomize;
poin.Left:=random(Panel1.Width-poin.Height);
poin.Top:=tanah.top+random(tanah.Height-poin.Height);
vsekorplankton:=vsekorplankton+10;
end ;
Untuk waktu game dan kondisi saat waktu habis pada timer2 tambah kode
jamakhir:=TimeToStr(now);
if jamawal<>jamakhir then
begin
detik:=detik-1;
if detik<0 then
begin
detik:=59;
menit:=menit-1;
end;
end;
if menit<0 then
begin
if vskorbob > vsekorplankton then
begin
ketpemenang:='Selamat Anda Menang';
end
else
if vskorbob<vsekorplankton then
begin
ketpemenang:='Maaf anda kalah..';
end
else
begin
ketPemenang:='Permainan Seri';
end;
Timer1.Enabled:=false;
Timer2.Enabled:=false;
MessageDlg(ketpemenang,mtInformation,mbOKCancel,0);
//running program berhenti
Application.Terminate;
end;
jamawal:=jamakhir;
ldlJam.Caption:='0'+IntToStr(menit)+':'+
IntToStr(detik);
if detik<10 then
begin
ldlJam.Caption:='0'+IntToStr(menit)+':'+
'0'+IntToStr(detik);
end;
end;
Selamat Mencoba