home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1999 Spring / macformat-077.iso / Shareware Plus / Development / SpriteWorld 2.2 / SpriteWorld Examples / SpriteTest / SpriteTest.h < prev    next >
Encoding:
Text File  |  1998-01-17  |  2.7 KB  |  144 lines  |  [TEXT/CWIE]

  1. ///--------------------------------------------------------------------------------------
  2. // SpriteTest.h
  3. ///--------------------------------------------------------------------------------------
  4.  
  5.  
  6. #ifndef __SPRITETEST__
  7. #define __SPRITETEST__
  8.  
  9. #ifndef __MENUS__
  10. #include <Menus.h>
  11. #endif
  12.  
  13.  
  14. enum
  15. {
  16.     kBaseResID = 128,
  17.     kGlobeHeight = 48,
  18.     kGlobeBorderWidth = 1,
  19.     kNumberOfGlobeSprites = 4,
  20.     kNumberOfGlobeFrames = 30,
  21.     kGlobeSpriteMoveTime = 0,
  22.     kGlobeSpriteFrameTime = 20,
  23.     kTwoHeight = 50,
  24.     kTwoBorderWidth = 1,
  25.     kNumberOfTwoFrames = 10,
  26.     kBackDropPixPatID = 128,
  27.     kPerformanceAlertID = 200,
  28.     kSetUpTestResID = 400,
  29.     kTestTime = (30 * 60)
  30. };
  31.  
  32. typedef enum
  33.     kCopyBitsProc, 
  34.     kBlitPixieProc, 
  35.     kCompiledProc 
  36. }ProcType;
  37.  
  38. enum
  39. {
  40.     kCopyBitsSpriteButton = 4,
  41.     kBlitPixieSpriteButton,
  42.     kCompiledSpriteButton,
  43.     kCopyBitsOffscreenButton = 8,
  44.     kBlitPixieOffscreenButton,
  45.     kCopyBitsScreenButton = 11,
  46.     kBlitPixieScreenButton,
  47.     kRunTestNowCheckBox
  48. };
  49.  
  50. typedef struct SpriteTestRec SpriteTestRec;
  51. typedef SpriteTestRec *SpriteTestPtr, **SpriteTestHdl;
  52.  
  53.  
  54. struct SpriteTestRec
  55. {
  56.     SpriteWorldPtr spriteWorldP;
  57.     SpriteLayerPtr globeSpriteLayerP;
  58.     SpritePtr globeSpriteArray[kNumberOfGlobeSprites];
  59.     SpritePtr titleSpriteP;
  60.     SpritePtr twoSpriteP;
  61. };
  62.         
  63.  
  64. OSErr SetupSWStuff(
  65.     SpriteTestPtr* spriteTestP,
  66.     CWindowPtr srcWindowP);
  67.  
  68. void DisposeSWStuff(
  69.     SpriteTestPtr spriteTestP);
  70.  
  71. void SetupSpriteWorldElements(
  72.     SpriteTestPtr spriteTestP);
  73.  
  74. void SetupGlobeSprite(
  75.     SpritePtr testSpriteP,
  76.     Rect *moveBoundsRect,
  77.     short horizLocation,
  78.     short vertLocation);
  79.  
  80. void SpriteTestIdle(
  81.     SpriteTestPtr spriteTestP);
  82.  
  83. void UpdateSpriteTest(
  84.     SpriteTestPtr spriteTestP,
  85.     WindowPtr updateWindowP);
  86.  
  87. void HandleCreateSpriteCommand(
  88.     SpriteTestPtr spriteTestP);
  89.  
  90. void HandleSpriteTestTitleCommand(
  91.     SpriteTestPtr spriteTestP);
  92.  
  93. void HandleBouncingBallsCommand(
  94.     SpriteTestPtr spriteTestP);
  95.  
  96. void RemoveClickedSprite(
  97.     SpriteTestPtr spriteTestP);
  98.  
  99. void SetUpTestDialog(
  100.     SpriteTestPtr spriteTestP);
  101.  
  102. void SetSetUpTestButtons(
  103.     DialogPtr theDialog);
  104.     
  105. void RunTheTest(
  106.     SpriteTestPtr spriteTestP);
  107.     
  108. void RestoreFromTest(
  109.     WindowPtr testWindowP,
  110.     SpriteTestPtr spriteTestP);
  111.     
  112. void DisplayPerformance(
  113.     long frames,
  114.     long seconds);
  115.     
  116. SW_FUNC void GlobeSpriteMoveProc(SpritePtr globeSpriteP);
  117.  
  118. SW_FUNC void PixelBounceCollideProc(
  119.     SpritePtr srcSpriteP,
  120.     SpritePtr dstSpriteP,
  121.     Rect* sectRect);
  122.     
  123. SW_FUNC void RegionBounceCollideProc(
  124.     SpritePtr srcSpriteP,
  125.     SpritePtr dstSpriteP,
  126.     Rect* sectRect);
  127.  
  128. SW_FUNC void RadiusBounceCollideProc(
  129.     SpritePtr srcSpriteP,
  130.     SpritePtr dstSpriteP,
  131.     Rect* sectRect);
  132.  
  133. void BounceGlobeOffGlobe(
  134.     SpritePtr srcSpriteP,
  135.     SpritePtr dstSpriteP);
  136.  
  137. void BounceGlobeOffTitle(
  138.     SpritePtr titleSpriteP,
  139.     SpritePtr globeSpriteP,
  140.     Rect* sectRect);
  141.     
  142.  
  143. #endif    /* __SPRITETEST__ */