home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-12-05 | 3.5 KB | 77 lines | [TEXT/CWIE] |
- unit Tiling;
-
- interface
-
- {/--------------------------------------------------------------------------------------}
- { Tiling.h}
- {}
- { By: Vern Jensen 10/27/95}
- {/--------------------------------------------------------------------------------------}
-
- {$PUSH}
- {$ALIGN MAC68K}
-
- {/--------------------------------------------------------------------------------------}
- { define the TileMapPtr}
- {/--------------------------------------------------------------------------------------}
-
- uses
- {$IFC undefined THINK_Pascal}
- Types,
- {$ENDC}
- SWCommonHeaders, Sprite, SpriteFrame;
-
- type
- XTileArray = array[0..0] of integer;
- XTileArrayPtr = ^XTileArray;
- XTileArrayPtrArray = array[0..0] of XTileArrayPtr;
- TileMapPtr = ^XTileArrayPtrArray;
-
- type
- {$IFC undefined THINK_Pascal}
- TileChangeProcPtr = procedure ( spriteWorldP :SpriteWorldPtr );
- {$ELSEC}
- TileChangeProcPtr = ProcPtr;
- {$ENDC}
-
- {/--------------------------------------------------------------------------------------}
- { tile function prototypes}
- {/--------------------------------------------------------------------------------------}
-
- function SWInitTiling (spriteWorldP: SpriteWorldPtr; tileHeight: Integer; tileWidth: Integer; maxNumTiles: Integer): OSErr;
- procedure SWExitTiling (spriteWorldP: SpriteWorldPtr);
- function SWCreateTileMap (spriteWorldP: SpriteWorldPtr; var tileMapPtr: TileMapPtr; numTileMapRows: Integer; numTileMapCols: Integer): OSErr;
- procedure SWDisposeTileMap (spriteWorldP: SpriteWorldPtr);
-
- function SWResizeTileMap (spriteWorldP: SpriteWorldPtr; var tileMapPtr: TileMapPtr; numNewTileMapRows: Integer; numNewTileMapCols: Integer): OSErr;
- function SWLoadTileMap (spriteWorldP: SpriteWorldPtr; var tileMapPtr: TileMapPtr; resourceID: Integer): OSErr;
- function SWSaveTileMap (spriteWorldP: SpriteWorldPtr; resourceID: Integer): OSErr;
- procedure SWLockTiles (spriteWorldP: SpriteWorldPtr);
- procedure SWUnlockTiles (spriteWorldP: SpriteWorldPtr);
- procedure SWSetTilingOn (spriteWorldP: SpriteWorldPtr; tilingIsOn: Boolean);
-
- procedure SWSetSpriteUnderTiles (srcSpriteP: SpritePtr; isUnder: Boolean);
- function SWSetTileMaskDrawProc (spriteWorldP: SpriteWorldPtr; drawProc: DrawProcPtr): OSErr;
- function SWLoadTileFromCicnResource (spriteWorldP: SpriteWorldPtr; tileID: Integer; cicnID: Integer; maskKind: MaskType): OSErr;
- function SWLoadTilesFromPictResource (spriteWorldP: SpriteWorldPtr; startTileID: Integer; endTileID: Integer; pictResID: Integer; maskResID: Integer; maskType: MaskType; horizBorderWidth: Integer; vertBorderHeight: Integer): OSErr;
- procedure SWDisposeTile (spriteWorldP: SpriteWorldPtr; tileID: Integer);
- function SWDrawTilesInBackground (spriteWorldP: SpriteWorldPtr): OSErr;
- procedure SWResetTilingCache (spriteWorldP: SpriteWorldPtr);
- procedure SWDrawTile (spriteWorldP: SpriteWorldPtr; tileRow: Integer; tileCol: Integer; tileID: Integer);
-
- procedure SWSetTileChangeProc (spriteWorldP: SpriteWorldPtr; tileChangeProc: TileChangeProcPtr);
- procedure SWChangeTileImage (spriteWorldP: SpriteWorldPtr; tileID: Integer; currentFrame: Integer);
- procedure SWUpdateTileOnScreen (spriteWorldP: SpriteWorldPtr; tileID: Integer);
- procedure SWResetCurrentTileImages (spriteWorldP: SpriteWorldPtr);
- procedure SWDrawTilesInRect (spriteWorldP: SpriteWorldPtr; var updateRectP: Rect; faster: Boolean);
- procedure SWDrawTilesAboveSprite (spriteWorldP: SpriteWorldPtr; var updateRectP: Rect);
- procedure SWWrapRectToWorkArea (spriteWorldP: SpriteWorldPtr; var dstRectP: Rect);
-
- {$ALIGN RESET}
- {$POP}
-
- {$IFC not undefined THINK_Pascal}
- implementation
- {$ENDC}
- end.
-