Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

Как прокрутить изображение экрана за игроком?????????   Найти похожие ветки 

 
Rasp   (2004-02-25 08:55) [0]

У меня вопрос как прокрутить изображение экрана за игроком в дельфикс?


 
Cash ©   (2004-02-25 12:37) [1]

Имеешь в виду задний вид?
Если спрайт больше экрана и состаит из клеток, то создавай примерно так:
Type
 TMap = class(TBackgroundSprite)
   protected
     procedure DoMove(MoveCount: Integer); override;
   Public
     constructor Create(AParent: TSprite; AX, AY : Integer);
 end;
// далее прпишу Create
constructor TMap.Create(AParent: TSprite; AX, AY : Integer);
var
 i, j          : Integer;
begin
 inherited Create(AParent);
 SetMapSize(AX,AY);
 Image := MainForm.ImageList.Items.Find("GFlur");
 X := 0;
 Y := 0;
 Z := -10;
 Width := MapWidth  * Image.Width;
 Height:= MapHeight * Image.Height;
//случайное заполнение карты
 For i:=0 to AX-1 do
   For j:=0 to AY-1 do
     Chips[i,j]:=Random(20);
     
end;

procedure TMap.DoMove(MoveCount: Integer);
begin
 inherited DoMove(MoveCount);
// прокрутка карты с проверками
 If isLeft in MainForm.DXInput.States
   Then
     begin
       X:=X+ScrollCount;
       If X>0
         Then X:=0;
     end;
 If isRight in MainForm.DXInput.States
   Then
     begin
       X:=X-ScrollCount;
       If X+Width<MainForm.DXDraw.SurfaceWidth
         Then X:=MainForm.DXDraw.SurfaceWidth-Width;
     end;
 If isUp in MainForm.DXInput.States
   Then
     begin
       Y:=Y+ScrollCount;
       If Y>0
         Then Y:=0;
     end;
 If isDown in MainForm.DXInput.States
   Then
     begin
       Y:=Y-ScrollCount;
       If Y+Height<MainForm.DXDraw.SurfaceHeight
         Then Y:=MainForm.DXDraw.SurfaceHeight-Height;
     end;
end;




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

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
6-1082939222
Wiz@rd
2004-04-26 04:27
2004.06.20
SMTP &amp; Outlook


14-1086250581
AlexG
2004-06-03 12:16
2004.06.20
Ассоциация CBOSS


4-1084558183
Druid
2004-05-14 22:09
2004.06.20
Загрузка строки из памяти в TMemo


3-1085547689
Tomkat
2004-05-26 09:01
2004.06.20
FireBird на WinXP


1-1086672440
BanderLog_t
2004-06-08 09:27
2004.06.20
TreeView с CheckBox