Subversion Repositories Games.Carmageddon

Rev

Rev 18 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #ifndef _FLICPLAY_H_
  2. #define _FLICPLAY_H_
  3.  
  4. #include "brender/br_types.h"
  5. #include "dr_types.h"
  6.  
  7. extern int gPalette_allocate_count;
  8. extern int gPalette_fuck_prevention;
  9. extern int gDark_mode;
  10. extern int gTransparency_on;
  11. extern int gPanel_flic_disable;
  12. extern int gPending_flic;
  13. extern int gPlay_from_disk;
  14. extern int gTrans_enabled;
  15. extern br_pixelmap* gPanel_buffer[2];
  16. extern tU32 gSound_time;
  17. extern tFlic_spec gMain_flic_list[372];
  18. extern int gFlic_bunch0[29];
  19. extern int gFlic_bunch1[31];
  20. extern int gFlic_bunch2[8];
  21. extern int gFlic_bunch3[13];
  22. extern int gFlic_bunch4[22];
  23. extern int gFlic_bunch5[5];
  24. extern int gFlic_bunch6[51];
  25. extern int gFlic_bunch7[7];
  26. extern int gFlic_bunch8[16];
  27. extern tFlic_bunch gFlic_bunch[9];
  28. extern char gLast_flic_name[14];
  29. extern tU32 gPanel_flic_data_length[2];
  30. extern tU32 gLast_panel_frame_time[2];
  31. extern tU8* gPanel_flic_data[2];
  32. extern int gPanel_flic_top[2];
  33. extern tFlic_descriptor gPanel_flic[2];
  34. extern int gPanel_flic_left[2];
  35. extern int gPending_pending_flic;
  36. extern int gSound_ID;
  37. extern int gTranslation_count;
  38. extern tDR_font* gTrans_fonts[15];
  39. extern tTranslation_record* gTranslations;
  40. extern br_pixelmap* gPalette;
  41. extern void* gPalette_pixels;
  42. extern tFlic_descriptor* gFirst_flic;
  43.  
  44. void EnableTranslationText(void);
  45.  
  46. void DisableTranslationText(void);
  47.  
  48. void SetFlicSound(int pSound_ID, tU32 pSound_time);
  49.  
  50. int TranslationMode(void);
  51.  
  52. void DontLetFlicFuckWithPalettes(void);
  53.  
  54. void LetFlicFuckWithPalettes(void);
  55.  
  56. void PlayFlicsInDarkness(void);
  57.  
  58. void ReilluminateFlics(void);
  59.  
  60. void TurnFlicTransparencyOn(void);
  61.  
  62. void TurnFlicTransparencyOff(void);
  63.  
  64. void PlayFlicsFromDisk(void);
  65.  
  66. void PlayFlicsFromMemory(void);
  67.  
  68. int FlicsPlayedFromDisk(void);
  69.  
  70. void TurnOffPanelFlics(void);
  71.  
  72. void TurnOnPanelFlics(void);
  73.  
  74. int GetPanelFlicFrameIndex(int pIndex);
  75.  
  76. void FlicPaletteAllocate(void);
  77.  
  78. void AssertFlicPixelmap(tFlic_descriptor_ptr pFlic_info, br_pixelmap* pDest_pixelmap);
  79.  
  80. int StartFlic(char* pFile_name, int pIndex, tFlic_descriptor_ptr pFlic_info, tU32 pSize, tS8* pData_ptr, br_pixelmap* pDest_pixelmap, int pX_offset, int pY_offset, int pFrame_rate);
  81.  
  82. void FreeFlicPaletteAllocate(void);
  83.  
  84. int EndFlic(tFlic_descriptor_ptr pFlic_info);
  85.  
  86. void DoColourMap(tFlic_descriptor_ptr pFlic_info, tU32 chunk_length);
  87.  
  88. void DoDifferenceX(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  89.  
  90. void DoDifferenceTrans(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  91.  
  92. void DoColour256(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  93.  
  94. void DoDeltaTrans(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  95.  
  96. void DoDeltaX(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  97.  
  98. void DoBlack(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  99.  
  100. void DoRunLengthX(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  101.  
  102. void DoRunLengthTrans(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  103.  
  104. void DoUncompressed(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  105.  
  106. void DoUncompressedTrans(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  107.  
  108. void DoMini(tFlic_descriptor* pFlic_info, tU32 chunk_length);
  109.  
  110. void DrawTranslations(tFlic_descriptor* pFlic_info, int pLast_frame);
  111.  
  112. int PlayNextFlicFrame2(tFlic_descriptor* pFlic_info, int pPanel_flic);
  113.  
  114. int PlayNextFlicFrame(tFlic_descriptor* pFlic_info);
  115.  
  116. int PlayFlic(int pIndex, tU32 pSize, tS8* pData_ptr, br_pixelmap* pDest_pixelmap, int pX_offset, int pY_offset, void (*DoPerFrame)(void), int pInterruptable, int pFrame_rate);
  117.  
  118. void SwapScreen(void);
  119.  
  120. void ShowFlic(int pIndex);
  121.  
  122. void InitFlics(void);
  123.  
  124. int LoadFlic(int pIndex);
  125.  
  126. void UnlockFlic(int pIndex);
  127.  
  128. int LoadFlicData(char* pName, tU8** pData, tU32* pData_length);
  129.  
  130. void FreeFlic(int pIndex);
  131.  
  132. void ForceRunFlic(int pIndex);
  133.  
  134. void RunFlicAt(int pIndex, int pX, int pY);
  135.  
  136. void RunFlic(int pIndex);
  137.  
  138. void PreloadBunchOfFlics(int pBunch_index);
  139.  
  140. void UnlockBunchOfFlics(int pBunch_index);
  141.  
  142. void FlushAllFlics(int pBunch_index);
  143.  
  144. void InitFlicQueue(void);
  145.  
  146. int FlicQueueFinished(void);
  147.  
  148. void ProcessFlicQueue(tU32 pInterval);
  149.  
  150. void FlushFlicQueue(void);
  151.  
  152. void AddToFlicQueue(int pIndex, int pX, int pY, int pMust_finish);
  153.  
  154. void InitialiseFlicPanel(int pIndex, int pLeft, int pTop, int pWidth, int pHeight);
  155.  
  156. void DisposeFlicPanel(int pIndex);
  157.  
  158. void ServicePanelFlics(int pCopy_to_buffer);
  159.  
  160. void ChangePanelFlic(int pIndex, tU8* pData, tU32 pData_length);
  161.  
  162. br_pixelmap* GetPanelPixelmap(int pIndex);
  163.  
  164. void LoadInterfaceStrings(void);
  165.  
  166. void FlushInterfaceFonts(void);
  167.  
  168. void SuspendPendingFlic(void);
  169.  
  170. void ResumePendingFlic(void);
  171.  
  172. #endif
  173.