
17.09.2007, 21:23
|
Прохожий
|
|
Регистрация: 17.09.2007
Сообщения: 2
Репутация: 10
|
|
начал делать, но не получается. хотел сделать стрелялки: 2 персонажа по друг другу стреляют или против других персонажей. вот исходник но пока просто 1 корабль и 1 противник.
Код:
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, jpeg, StdCtrls, Buttons;
type
TForm2 = class(TForm)
Splitter1: TSplitter;
SpeedButton1: TSpeedButton;
Image1: TImage;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
BitBtn1: TBitBtn;
SpeedButton5: TSpeedButton;
Timer1: TTimer;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Button1: TButton;
Timer2: TTimer;
Timer3: TTimer;
Image2: TImage;
Timer4: TTimer;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit3;
var
Life,Score,Kill:Integer;
{$R *.dfm}
procedure TForm2.SpeedButton2Click(Sender: TObject);
begin
SpeedButton1.Left:=SpeedButton1.Left-5; //передвигаем игрока на 4 пункта влево
if Timer1.Enabled=False then //если оружие не запущено то оно двигается с нами
Image1.Left:=Image1.Left-5;
if Timer4.Enabled=false then
Image2.Left:=Image2.Left-5;
end;
procedure TForm2.SpeedButton4Click(Sender: TObject);
begin
SpeedButton1.Left:=Speedbutton1.Left+5; //передвигаем игрока на 4 пункта вправо
if Timer1.Enabled=False then //если оружие не запущено то оно двигается с нами
Image1.Left:=Image1.Left+5;
if Timer4.Enabled=false then
Image2.Left:=Image2.Left+5;
end;
procedure TForm2.SpeedButton3Click(Sender: TObject);
begin
Timer1.Enabled:=true;
Timer4.Enabled:=true;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
life:=2;
kill:=0;
score:=0;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
close;
end;
procedure TForm2.Timer1Timer(Sender: TObject);
begin
Image1.Visible:=true; // делаем картинку видимой, только незабудьте перед этим
//в свойствах сделать ее невидимой
Image1.Top:=Image1.Top-100; // вверx на 5 точек
if Image1.Top <0 then // если ушла за пределы формы то...
begin
Image1.Left:=SpeedButton1.left;
Image1.Top:=SpeedButton1.top-15; // ставим в исходную позицию
Timer1.Enabled:=false;
end;
end;
procedure TForm2.Timer2Timer(Sender: TObject);
begin
SpeedButton5.Top:=SpeedButton5.Top+2; // SpeedButton5 - это противник,
//перемещаем его вниз на 2 точки
if SpeedButton5.Top=456 then
begin
life:=life-1;
label4.Caption:=IntToStr(Life);
end;
end;
end.
Учимся оформлять код
|