summaryrefslogtreecommitdiff
path: root/src/win95/oechunk.h
diff options
context:
space:
mode:
authorSteven Fuller <relnev@icculus.org>2001-07-01 00:55:22 +0000
committerPatryk Obara <dreamer.tan@gmail.com>2019-08-20 02:09:04 +0200
commit2186d5f3f95cd74a070a490d899291648d58667a (patch)
tree55241a1afa3e1a22e0b6593a8dead0b703800f44 /src/win95/oechunk.h
parent218ca90543758a20ac326e444ca0643174ca7384 (diff)
Initial revision
Diffstat (limited to 'src/win95/oechunk.h')
-rw-r--r--src/win95/oechunk.h99
1 files changed, 99 insertions, 0 deletions
diff --git a/src/win95/oechunk.h b/src/win95/oechunk.h
new file mode 100644
index 0000000..92aa840
--- /dev/null
+++ b/src/win95/oechunk.h
@@ -0,0 +1,99 @@
+#ifndef _oechunk_h_
+#define _oechunk_h_ 1
+
+#include "Chunk.hpp"
+#include "obchunk.hpp"
+
+#if objedit
+#include "Template.hpp"
+#endif
+//#if engine
+//#define VECTOR VECTORCH
+//#endif
+
+#if engine
+#else
+struct VECTORCH
+{
+ int vx, vy, vz;
+};
+#endif
+
+struct ChunkMapBlock
+{
+ char TemplateName[20];
+ char TemplateNotes[100];
+ int MapType;
+ int MapShape;
+ int MapFlags;
+ int MapFlags2;
+ int MapFlags3;
+ int MapCType;
+ int MapCGameType;
+ int MapCStrategyS;
+ int MapCStrategyL;
+ int MapInteriorType;
+ int MapLightType;
+ int MapMass;
+ VECTORCH MapNewtonV;
+ VECTORCH MapOrigin;
+ int MapViewType;
+
+ int MapVDBData;
+ int SimShapeList;
+
+
+
+};
+
+class Map_Block_Chunk : public Chunk
+{
+public:
+ virtual size_t size_chunk()
+ {
+ return (chunk_size=216);
+ }
+ virtual BOOL output_chunk (HANDLE &);
+
+ virtual void fill_data_block (char * data_start);
+
+ ChunkMapBlock map_data;
+ friend class Object_Project_Data_Chunk;
+
+ Map_Block_Chunk (Object_Project_Data_Chunk * parent)
+ :Chunk(parent,"MAPBLOCK")
+ {}
+
+ //constructor from buffer
+ Map_Block_Chunk (Chunk_With_Children * parent,const char* data,size_t);
+};
+
+struct ChunkStrategy
+{
+ char StrategyName[20];
+ char StrategyNotes[100];
+ int Strategy;
+};
+
+class Strategy_Chunk : public Chunk
+{
+public :
+ virtual size_t size_chunk()
+ {
+ return (chunk_size=136);
+ }
+ virtual BOOL output_chunk (HANDLE &);
+
+ virtual void fill_data_block (char * data_start);
+
+ ChunkStrategy strategy_data;
+ friend class Object_Project_Data_Chunk;
+
+ Strategy_Chunk(Object_Project_Data_Chunk *parent)
+ :Chunk(parent,"STRATEGY")
+ {}
+
+ //constructor from buffer
+ Strategy_Chunk (Chunk_With_Children * parent,const char* data,size_t);
+};
+#endif \ No newline at end of file