improve Makefile, update example pictures

This commit is contained in:
slederer 2025-08-15 23:43:09 +02:00
parent 91306135b2
commit 0ea7dcef29
13 changed files with 89 additions and 50 deletions

View file

@ -24,6 +24,7 @@ var pic:PictData;
infile:file;
ch:char;
stickMan:Sprite;
rocket:Sprite;
procedure WaitVSync; external;
@ -80,6 +81,12 @@ begin
aSprite.y := aSprite.y + aSprite.ydelta;
if aSprite.x > 608 then aSprite.x := 0;
if aSprite.y < 0 then
begin
aSprite.y := 200;
aSprite.x := 0;
end;
end;
aSprite.frameLeft := frameLeft;
end;
@ -87,6 +94,7 @@ end;
procedure animLoop;
var i:integer;
oldX,oldY:integer;
roldX,roldY:integer;
begin
stickMan.x := 0;
stickMan.y := 310;
@ -96,26 +104,39 @@ begin
stickMan.xdelta := 2;
stickMan.ydelta := 0;
oldX := stickMan.x;
oldY := stickMan.y;
rocket.x := 0;
rocket.y := 200;
rocket.frameTime := 1;
rocket.frameLeft := rocket.frameTime;
rocket.curFrame := 0;
rocket.xdelta := 2;
rocket.ydelta := -1;
while not ConAvail do
begin
oldX := stickMan.x;
oldY := stickMan.y;
roldX := rocket.x;
roldY := rocket.y;
PutSprite(roldX, roldY, rocket.frame[rocket.curFrame]);
PutSprite(oldX, oldY, stickMan.frame[stickMan.curFrame]);
animateSprite(rocket);
animateSprite(stickMan);
Delay(10);
{Delay(1);}
WaitVSync;
UndrawSprite(oldX, oldY, pic.pixeldata);
UndrawSprite(roldX, roldY, pic.pixeldata);
end;
end;
begin
filename := 'grey.pict';
filename := 'background.pict';
open(infile, filename, ModeReadonly);
read(infile, pic);
close(infile);
@ -125,12 +146,19 @@ begin
loadPalette(pic);
showPic(pic);
open(infile, 'Walking.sprt', ModeReadOnly);
open(infile, 'walking.sprt', ModeReadOnly);
loadSpriteFrame(stickMan, 0, infile, 0);
loadSpriteFrame(stickMan, 1, infile, 1);
loadSpriteFrame(stickMan, 2, infile, 2);
loadSpriteFrame(stickMan, 3, infile, 3);
close(infile);
open(infile, 'rocket.sprt', ModeReadOnly);
loadSpriteFrame(rocket, 0, infile, 0);
loadSpriteFrame(rocket, 1, infile, 1);
loadSpriteFrame(rocket, 2, infile, 2);
loadSpriteFrame(rocket, 3, infile, 3);
close(infile);
animLoop;
end.