Вниз
Скачать: CL | DM;

DELPHIX - 2d Engine   Найти похожие ветки 

← →
LM   (2002-07-28 23:51) [0]

Данные формулы для Engine x, y не верны.
как сделать так, чтобы Player всевремя находился в поле зрения?

procedure TPlayer.DoMove(MoveCount: Integer);

begin
inherited DoMove(MoveCount);
speed:=5;



if isLeft in MainForm.DXInput1.States then
Begin
angle:=angle-1;
x:=x+cos256(Angle)*speed/4;
y:=y+sin256(Angle)*speed/4;
end;

if isRight in MainForm.DXInput1.States then
Begin
angle:=angle+1;
x:=x+cos256(Angle)*speed/4;
y:=y+sin256(Angle)*speed/4;

end;



if isUp in MainForm.DXInput1.States then
Begin

if speed_foward<=7 then speed_foward:=speed_foward+0.1;

x:=x+cos256(Angle)*(speed_foward);
y:=y+sin256(Angle)*(speed_foward);


end;

if isDown in MainForm.DXInput1.States then
Begin
if speed_back<=3 then speed_back:=speed_back+0.05;

x:=x-cos256(Angle)*speed_back;
y:=y-sin256(Angle)*speed_back;

end;

if isButton1 in MainForm.DXInput1.States then
Begin
if speed_foward>0 then speed_foward:=speed_foward-0.2;
end;

collision;

Engine.X := ((-Player1.X-cos256(Angle))+Engine.Width div 2-Width div 16)+2 ;
Engine.Y := ((-Player1.Y-sin256(Angle))+Engine.Height div 2-Height div 16)+2 ;

end;


← →
LM   (2002-08-01 15:07) [1]

Народ, помогите плиз!
Может я не очень понятно обьяснил??:(


← →
cyborg ©   (2002-08-02 21:24) [2]

Скорей всего .... да!


← →
Daddy ©   (2002-08-05 13:00) [3]

Вот так спрайт(X,Y) будет всегда посередине экрана. Или я тоже не понял :)

DXSpriteEngine.X := -X + (DXSpriteEngine.Width div 2) - (Width div 2);
DXSpriteEngine.Y := -Y + (DXSpriteEngine.Height div 2) - (Height div 2);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
1-96815
weRUs
2003-01-19 03:34
2003.01.30
Работа с формой


7-97056
3223(jab)
2002-11-17 15:48
2003.01.30
Web Cam


8-96890
Rule
2002-10-16 22:42
2003.01.30
Помогите задать цвет компонентам!!!!!!!


4-97088
Vicheslav
2002-12-15 14:17
2003.01.30
моя прога (Место)(без) Explorer


14-97005
Maximator Vetera
2003-01-12 20:52
2003.01.30
Песня




   Наверх