Наверное все играли в PinPong хоть на телевизоре или на DVD. Хочу представить вам свою версию игры на Delphi
Для какого жанра игра:ВремяУбивалка На каком движке/конструкторе:Delphi7 В каком пространстве:2D Какой вид в игре: сбоку Какие есть похожие игры: PingPong Какой Язык Пр. используется в игре: Delphi, Для какой платформы: Windows Предоставление исходного кода игры:Open Source API: OpenGL Какой тип лицензии распространения:Freeware
Трасировка - выполнения програмы шаг за шагом, предназначена как раз для случая когда програма у тебя неправильно работает и нужно понять где спрятался жук.
private procedure shar(); procedure memory(); { Private declarations } public { Public declarations } end;
var Form1: TForm1;
PosX,PosY,VelX,VelY:Single; implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin memory; PosX:=250; PosY:=250; VelX:=2; VelY:=2; end;
procedure TForm1.shar; begin PosX:=PosX+VelX; PosY:=PosY+VelY; Image4.Left:=Round(PosX); Image4.Top:=Round(PosY); if PosX> ClientWidth-50 then VelX:=-VelX; if PosX<0 then VelX:=-VelX+random(2); if PosY> ClientHeight-58 then VelY:=-VelY; if PosY<0 then VelY:=-VelY+random(2); end;
procedure TForm1.Timer1Timer(Sender: TObject); var Overlay:Trect; begin shar; if IntersectRect(Overlay,Image4.BoundsRect,Image2.BoundsRect) then begin VelX:=-VeLx+Random(3); VelY:=-VelY+Random(3); end;
if IntersectRect(Overlay,Image4.BoundsRect,Image3.BoundsRect) then begin VelX:=-VeLx-Random(3); VelY:=-VelY-Random(3); end; end;
procedure TForm1.Timer2Timer(Sender: TObject); begin if Image2.Top>ClientHeight-Image2.Height-40 then Image2.top:=Image2.Top else begin if Image4.Top>Image2.Top then Image2.Top:=Image4.Top+Image2.Width; end; if Image4.Top<Image2.Top then Image2.Top:=Image4.top-Image4.Width; end;
procedure TForm1.memory; var H:THandle; begin if Win32Platform=ver_platform_win32_nt then H:=OpenProcess(PROCESS_ALL_ACCESS,False,GetCurrentProcessId); SetProcessWorkingSetSize(H,Dword(-1),DWORD(-1)); CloseHandle(H); end;