ROTHLINK.H 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. #ifndef _ROTHLINK_H_INCLUDED
  2. /*
  3. ÉÍÍÍÍÍÍÍÍÍÍÍÍ»
  4. º AUTOHEADER º
  5. ÌÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
  6. º Filename ROTHLINK.H º
  7. ÇÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄĶ
  8. º Creation 23/11/1994 º
  9. ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹
  10. º º
  11. º Updated: Sat 12/8/1995 00:32 º
  12. º º
  13. º Version: 1.097 º
  14. º º
  15. ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
  16. this just contains data used by rothlink.asm
  17. rothrend.h contains rothrend.lib data strucs
  18. */
  19. #ifndef ROTHREND_H_INCLUDE
  20. #include "rothrend.h"
  21. #endif
  22. #ifdef __cplusplus
  23. extern "C" {
  24. #endif
  25. #pragma PACK (1);
  26. /* structure returned from AddRothObject */
  27. typedef struct _VIEW_Position { // Used by SetYZR,SetR,GetXYZR,AddRothObject
  28. signed long int XPos; // Left <> Right
  29. signed long int YPos; // Up <> Down (not forw/back)
  30. signed long int ZPos; //Forward <> Backward
  31. unsigned long int Rotation;
  32. } _VIEW_Position;
  33. #define _SCM_ModeX 12345
  34. #define _SCM_Text 3
  35. #define _SCM_VGA256 0x13
  36. #define _SCF_Interlase 4
  37. #define _SCF_Lores 0
  38. #define _REQ_NoTurn 1 //RequestMove
  39. #define _REQ_Turn 0
  40. typedef struct _LENS_Position { // Used by SetLens
  41. unsigned long int XAspect;
  42. unsigned long int YAspect;
  43. unsigned long int XCenter;
  44. unsigned long int YCenter;
  45. unsigned long int Flags;
  46. unsigned long int CamDist;
  47. } _LENS_Position;
  48. #define _LENF_Normal 0
  49. #define _LENF_Quad 0x03
  50. #define _LENF_Double 0x01
  51. #define _LENF_Tall 0x02
  52. #define _LENF_Blur 0x100 //not imp yet.
  53. #define Match_ID 0
  54. #define Match_GFX 0x10000
  55. typedef struct _MovementCTRL { // Used by SetMovement();
  56. unsigned long int MaxWalkSpeed;
  57. unsigned long int MaxTurnSpeed;
  58. unsigned long int InitTurnSpeed;
  59. // this will get longer...
  60. } _MovementCTRL;
  61. // many = ( DOT_Info()) // Used by DOT_Info
  62. typedef struct _DOT_Info {
  63. unsigned long int Offset;
  64. unsigned short int Rotation; //0-511
  65. unsigned short int ID;
  66. } _DOT_Info;
  67. // // Used by DrawObject()
  68. typedef struct _DrawObject {
  69. unsigned char ImageNo; // Id see rothed
  70. unsigned char Dir; // Direction .. zero normaly
  71. unsigned char Flags; // see below
  72. unsigned char Info; // see below
  73. signed short int EyeLevel; // base of image (raise/lower)
  74. } _DrawObject;
  75. #define DOF_Float 0x02 // DrawObject.Info contains hight
  76. // flags for EditSegmnt
  77. #define ES_RoofHeightSet 0x00000 //
  78. #define ES_RoofHeightAdd 0x08000 //
  79. #define ES_FloorHeightSet 0x00001 //
  80. #define ES_FloorHeightAdd 0x08001 //
  81. #define ES_RoofGfxSet 0x00002 //
  82. #define ES_FloorGfxSet 0x00003 //
  83. typedef struct _WALK_Item {
  84. signed long int x;
  85. signed long int y;
  86. } _WALK_Item;
  87. typedef struct _WALK_List {
  88. unsigned short int unused;
  89. unsigned short int many;
  90. _WALK_Item adj[12];
  91. } _WALK_List;
  92. typedef struct _Links { // offset in _LINK_AddressBase
  93. signed short int X; // x pos
  94. signed short int Y; // y pos
  95. unsigned short int ID; // ID of link dot
  96. unsigned short int Many; // many connections followed by Many * _LinkItems
  97. // here are Many * LinkItems
  98. } _Links;
  99. typedef struct _LinkItems { // Appears after _Links * Many
  100. unsigned short int Offset; // OFFSET16 to joining link base=_Link_AddressBase
  101. signed short int Angle; // -Angle of line to it
  102. } _LinkItems;
  103. #pragma PACK ;
  104. #define _ROTHLINK_H_INCLUDED
  105. #ifdef __cplusplus
  106. };
  107. #endif
  108. #endif
  109.