А самому написать, не?
Я бегал по колизею, там координата z не изменяется и я ее не учитывал.
Код:
var
vx,vy:real;
procedure lines;
var
dx,dy,x1,x2,y1,y2:integer;
s:real;
begin
dx:=x2-x1;
dy:=y2-y1;
if (dx=0) and (dy=0) then exit;
s:=sqrt(dx*dx+dy*dy);
vx:=dx/s;
vy:=dy/s;
Timer01.Enabled:=True;
end;
Ну а в таймере у меня бросается предмет, координаты броска и остановка таймера определяются так:
Код:
x1:=round(x1+vx);
y1:=round(y1+vy);
if x1>=x2 then Timer01.Enabled:=False;
Я отредактировал сообщение, оптимизировал код, убрал лишнюю переменную, без нее можно нормально обойтись.