home *** CD-ROM | disk | FTP | other *** search
- {-----------------------------------------------------------------------------}
- { TEGL Windows ToolKit II }
- { Copyright (C) 1990, 1991 TEGL Systems Corporation }
- { All Rights Reserved. }
- {-----------------------------------------------------------------------------}
- { This unit is an identical version of ANIMATE without using Objects }
- {$I switches.inc}
-
- Unit Animunit;
-
- INTERFACE
-
- USES Crt, {sound, nosound}
- TGraph,
- teglmain, {beepstatus}
- Virtmem,
- FastGrph, {flip pages}
- IPStacks,
- TEGLUnit; {windows stacked images}
-
-
- TYPE
- coordinates = record
- x,y : Integer;
- end;
-
- AFramePtr = ^AnimateFrame;
- AnimateFrame = record
- nextframe : AFramePtr; {next pointer, can be circular buffer}
- imagepic : Pointer; {image for display}
- tonehz : Word; {0 turns off tone}
- tonedelay : Word;
- movement : coordinates; {next increment}
- imgdelay : Word; {delay before next image is placed}
- imagesz : Word; {size of image}
- height,width: Word; {length and width of image}
- Color : Word; {color for putpict}
- END;
-
- sequenceptr = ^sequenceset;
- sequenceset = record
- nextsequence : sequenceptr;
- sequencenum : Word;
- sequenceframe : AFramePtr;
- END;
-
- AnimateObject = record
- currentframe : AFramePtr; {pointer to current picture frame}
- firstframe : AFramePtr; {first image pointer}
- sequenceframe : sequenceptr;
- FrameNumber : Word;
- cc : coordinates;
- END;
-
-
- Procedure Init(var AO:AnimateObject);
- Procedure Origin(var AO:AnimateObject; ox,oy:Word);
- Procedure GetOrigin(var AO:AnimateObject; VAR lastox,lastoy:Integer);
- Procedure ResetFrame(var AO:AnimateObject; startframe : Word);
- Function CurrentFrameNumber(VAR AO:AnimateObject) : Word;
- Function Destination(VAR AO:AnimateObject; dx,dy : Word) : Word;
- Procedure AddFrame(VAR AO:AnimateObject; pp:Pointer; mx,my:Integer; ht,wd,dy,hz,hzdy,co:Word);
- Procedure Sequence(var AO:AnimateObject; seqnum:Word);
- Procedure ResetSequence(var AO:AnimateObject);
- Procedure AnimateInit;
- Procedure Animate(var AO:AnimateObject; numframe : Word);
- Procedure AnimateComplete(var AO:AnimateObject);
-
- IMPLEMENTATION
-