diff options
| author | Rebellion Developments <rebellion@nomail> | 2000-03-16 11:25:00 +0100 |
|---|---|---|
| committer | Patryk Obara <dreamer.tan@gmail.com> | 2019-08-19 05:45:17 +0200 |
| commit | 218ca90543758a20ac326e444ca0643174ca7384 (patch) | |
| tree | 16bfe3e5307f9f515489000f28728224291a0e3b /3dc/win95/Zsp.hpp | |
Import Aliens vs Predator - Gold (Build 116)
Source code release, imported from:
https://www.gamefront.com/games/aliens-vs-predator-3/file/avp-gold-complete-source-code
All text files were converted to Unix format.
Diffstat (limited to '3dc/win95/Zsp.hpp')
| -rw-r--r-- | 3dc/win95/Zsp.hpp | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/3dc/win95/Zsp.hpp b/3dc/win95/Zsp.hpp new file mode 100644 index 0000000..8f008b5 --- /dev/null +++ b/3dc/win95/Zsp.hpp @@ -0,0 +1,107 @@ +#ifndef _zsp_hpp +#define _zsp_hpp 1 + +#include "shpchunk.hpp" + + +#define rsp_oc_x0 0x00000001 +#define rsp_oc_x1 0x00000002 +#define rsp_oc_y0 0x00000004 +#define rsp_oc_y1 0x00000008 +#define rsp_oc_z0 0x00000010 +#define rsp_oc_z1 0x00000020 + + +// this file should be included from chunk.hpp + + +struct ChunkShape; + +struct ZSP_zone +{ +#if (cencon || shpedit) + ZSP_zone (const ChunkShape &, double, double, double, double); +#endif + + ZSP_zone (); + ~ZSP_zone(); + + ZSP_zone (const ZSP_zone &); + ZSP_zone & operator=(const ZSP_zone &); + + int num_z_polys; + int * z_poly_list; + int num_z_verts; + int * z_vert_list; + + friend unsigned char operator==(const ZSP_zone &, const ZSP_zone &); + friend unsigned char operator!=(const ZSP_zone &, const ZSP_zone &); +}; + + +class ZSP_Data +{ + +public: + +#if (cencon || shpedit) + ZSP_Data (const ChunkShape &, int); +#endif + + ZSP_Data (const char * zdata, size_t zsize); + + ~ZSP_Data (); + + double cube_size; + double cube_radius; + + int num_x_cubes, num_y_cubes, num_z_cubes; + + List<ZSP_zone> zone_array; + + +}; + + +///////////////////////////////////////// + +class Shape_ZSP_Data_Chunk : public Chunk +{ +public: + +#if cencon || shpedit + Shape_ZSP_Data_Chunk (Shape_Sub_Shape_Chunk * parent, ZSP_Data zspin) + : Chunk(parent, "SHPZSPDT"), zspdata (zspin) + {} + + Shape_ZSP_Data_Chunk (Shape_Chunk * parent, ZSP_Data zspin) + : Chunk(parent, "SHPZSPDT"), zspdata (zspin) + {} +#endif + + const ZSP_Data zspdata; + + size_t size_chunk (); + void fill_data_block (char *); + + Shape_ZSP_Data_Chunk (Shape_Sub_Shape_Chunk * parent, const char * zdata, size_t zsize) + : Chunk (parent, "SHPZSPDT"), zspdata (zdata, zsize) + {} + + Shape_ZSP_Data_Chunk (Shape_Chunk * parent, const char * zdata, size_t zsize) + : Chunk (parent, "SHPZSPDT"), zspdata (zdata, zsize) + {} + +}; + + + + + + + + + + + +#endif |
