Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

104 lines
1.6 KiB

  1. #ifndef __MAZE_STD_H__
  2. #define __MAZE_STD_H__
  3. #include <stdlib.h>
  4. #include <stdio.h>
  5. #include <string.h>
  6. #include "fixed.h"
  7. #include "genmaze.h"
  8. #include "sscommon.h"
  9. #ifdef __cplusplus
  10. extern "C" {
  11. #endif
  12. typedef struct _IntPt2
  13. {
  14. int x, y;
  15. } IntPt2;
  16. #define DIR_RIGHT 0
  17. #define DIR_UP 1
  18. #define DIR_LEFT 2
  19. #define DIR_DOWN 3
  20. #define DIR_COUNT 4
  21. typedef struct
  22. {
  23. TEXTURE *pTex; // ptr to texture
  24. IPOINT2D texRep; // texture repetition in s and t directions
  25. BOOL bPalRot; // whether should rotate texture palette
  26. int iPalRot; // current palette rotation start point
  27. BOOL bTransp; // transparency on/off for RGBA textures
  28. } TEX_ENV;
  29. typedef struct _MazeView
  30. {
  31. FxPt2 pos;
  32. FaAngle ang;
  33. } MazeView;
  34. #define RENDER_NONE 0
  35. #define RENDER_FLAT 1
  36. #define RENDER_SMOOTH 2
  37. #define RENDER_TEXTURED 3
  38. #define RENDER_COUNT 4
  39. // surfaces
  40. enum {
  41. WALLS = 0,
  42. FLOOR,
  43. CEILING,
  44. NUM_SURFACES
  45. };
  46. // default surface textures
  47. enum {
  48. BRICK_TEXTURE = 0,
  49. WOOD_TEXTURE,
  50. CASTLE_TEXTURE,
  51. CURL4_TEXTURE,
  52. BHOLE4_TEXTURE,
  53. SNOWFLAK_TEXTURE,
  54. SWIRLX4_TEXTURE,
  55. NUM_DEF_SURFACE_TEXTURES
  56. };
  57. // textured objects
  58. enum {
  59. START = 0,
  60. END,
  61. RAT,
  62. AD,
  63. COVER,
  64. NUM_OBJECT_TEXTURES
  65. };
  66. enum {
  67. IMAGEQUAL_DEFAULT = 0,
  68. IMAGEQUAL_HIGH,
  69. IMAGEQUAL_COUNT
  70. };
  71. typedef struct _MazeOptions
  72. {
  73. BOOL depth_test;
  74. int render[NUM_SURFACES];
  75. BOOL frame_count;
  76. BOOL top_view;
  77. BOOL eye_view;
  78. BOOL single_step;
  79. BOOL all_alpha;
  80. BOOL bDither;
  81. int nrats;
  82. } MazeOptions;
  83. extern MazeOptions maze_options;
  84. #ifdef __cplusplus
  85. }
  86. #endif
  87. #endif // __MAZE_STD_H__