summaryrefslogtreecommitdiff
path: root/3dc/include/module.h
diff options
context:
space:
mode:
Diffstat (limited to '3dc/include/module.h')
-rw-r--r--3dc/include/module.h484
1 files changed, 0 insertions, 484 deletions
diff --git a/3dc/include/module.h b/3dc/include/module.h
deleted file mode 100644
index a42a6ca..0000000
--- a/3dc/include/module.h
+++ /dev/null
@@ -1,484 +0,0 @@
-#ifndef MODULE_INCLUDED
-
-
-/*
-
- Modules
-
-*/
-
-
-#ifdef __cplusplus
-
- extern "C" {
-
-#endif
-
-
- #if SupportModules
-
-
-#include "bh_waypt.h"
-
-typedef struct moduletableheader {
-
- int mth_xsize; /* Extents in world space */
- int mth_ysize;
- int mth_zsize;
-
- int mth_numx; /* Number of modules along each axis */
- int mth_numy;
- int mth_numz;
-
- /* Pointer to an array of pointers to modules */
-
- struct module **mth_moduletable;
-
-} MODULETABLEHEADER;
-
-
-/*
-
- NOTES
-
- There are no pointers to strategy and/or animation data structures yet.
- These will be added as and when they are needed.
-
-*/
-
-typedef enum {
-
- mtype_module,
- mtype_term
-
-} MODULETYPE;
-
-
-typedef union mref {
-
- char mref_name[4]; /* Module name */
- struct module *mref_ptr; /* Module pointer */
-
-} MREF;
-
-
-typedef enum {
-
- vmtype_vmodule,
- vmtype_term
-
-} VMODULETYPE;
-
-
-typedef enum {
-
- vmodi_null, /* Null instruction */
- vmodi_bra_vc /* Branch if viewport closed */
-
-} VMODI;
-
-typedef union _vmodidata {
-
- char vmodidata_label[4];
- struct vmodule *vmodidata_ptr;
- int vmodidata;
-
-} VMODIDATA;
-
-
-typedef struct vmodule {
-
- VMODULETYPE vmod_type;
- char vmod_name[4]; /* Unique name for this VMODULE */
- VMODI vmod_instr;
- VMODIDATA vmod_data;
- MREF vmod_mref;
- VECTORCH vmod_dir;
- int vmod_angle;
- int vmod_flags;
-
-} VMODULE;
-
-
-#define vm_flag_gotptrs 0x00000001 /* VMODULE references have
- been converted from
- names to pointers */
-
-
-#if 0
-
-typedef enum {
-
- vptype_viewport,
- vptype_term
-
-} VIEWPORTTYPE;
-
-
-typedef struct viewport {
-
- VIEWPORTTYPE vp_type;
-
- int vp_flags;
-
- VECTORCH vp0;
- VECTORCH vp1;
- VECTORCH vp2;
- VECTORCH vp3;
-
-} VIEWPORT;
-
-#endif
-
-
-/*
-
- This is the map block for module objects. It was originally based on the
- MAPBLOCK8 structure.
-
-*/
-
-typedef struct modulemapblock {
-
- int MapType;
- int MapShape;
-
- #if LoadingMapsShapesAndTexturesEtc
-
- int MapFNameIndex;
- char **MapFNameArray;
- SHAPEHEADER **MapShapeDataArray;
-
- #endif
-
- VECTORCH MapWorld;
-
- EULER MapEuler;
-
- int MapFlags;
- int MapFlags2;
- int MapFlags3;
-
-
-
- MAPSETVDB *MapVDBData;
-
- int MapInteriorType;
-
- #if InterfaceEngine
-
- /* This will point to the Object_Chunk, it will have to be */
- /* cast within C++ though */
-
- void * o_chunk;
-
- #endif
-
- int MapLightType; /* See LIGHTTYPES */
-
-
- VECTORCH MapOrigin; /* Origin of Rotation */
-
- SIMSHAPELIST *MapSimShapes;
-
- int MapViewType; /* See "VDB_ViewType" */
-
-
- struct displayblock **MapMPtr; /* Write our dptr here as mother */
- struct displayblock **MapDPtr; /* Read our dptr here as daughter */
-
- VECTORCH MapMOffset; /* Offset from mother */
-
- #if SupportMorphing
- MORPHHEADER *MapMorphHeader;
- #endif
-
-} MODULEMAPBLOCK;
-
-
-/*
-
- Module functions called either when the module is visible or when the view
- is inside the module.
-
-*/
-
-typedef enum {
-
- mfun_null,
-
-} MFUNCTION;
-
-
-/*
-
- This is the MODULE structure
-
-*/
-
-struct aimodule;
-
-typedef struct module {
-
- MODULETYPE m_type;
-
- char m_name[4]; /* Unique name for this MODULE */
-
- int m_index; /* Unique module index */
-
- int m_flags;
-
- VECTORCH m_world; /* World location */
-
- MREF m_ext; /* Get module extents from the shape
- found through this other module */
-
- int m_ext_scale; /* Scale extents by this value (fp) */
-
- int m_maxx; /* Module extents */
- int m_minx;
- int m_maxy;
- int m_miny;
- int m_maxz;
- int m_minz;
-
- MODULEMAPBLOCK *m_mapptr; /* Map data for the module object */
- struct displayblock *m_dptr; /* Display block (not constant) */
-
- MREF m_vptr; /* Vertical pointer to module array */
-
- VMODULE *m_vmptr; /* Pointer to an array of VMODULE, or
- "visible module" structures */
-
- MREF *m_link_ptrs; /* Pointer to an arbitrary sized array
- of module references - the array is
- zero terminated */
- /*should be got rid of soon*/
-
-
-
- MODULETABLEHEADER *m_table; /* A hash table whose creation is
- triggered by a threshold value set by
- "system.h". This is to speed up module
- list traversal */
-
- MFUNCTION m_ifvisible; /* Function called if module visible */
- MFUNCTION m_ifvinside; /* Function called if view inside */
- MREF m_funref; /* Function access to another module */
-
- struct strategyblock *m_sbptr; /* Project supplies structure */
-
- int m_numlights; /* # light blocks in array */
- struct lightblock *m_lightarray; /* Ptr. to array of light blocks */
-
- struct extraitemdata *m_extraitemdata;
-
- MATRIXCH m_mat; /* Internal use only */
-
- #if SupportWindows95
- char * name;
- #endif
-
- WAYPOINT_HEADER *m_waypoints;
-
- struct aimodule *m_aimodule; /* the aimodule that this module is a part of*/
-
- float m_sound_reverb; /*settings for the way sound should */
- int m_sound_env_index;/*be played in this module*/
-
-} MODULE;
-
-
-/* Flags */
-
-#define m_flag_infinite 0x00000001 /* No extent test, the
- view is always in this
- module */
-
-#define m_flag_gotptrs 0x00000002 /* Module references have
- been converted from
- names to pointers */
-
-#define m_flag_open 0x00000004 /* The viewport/Door is
- open. This state is
- read from the "dptr"
- morphing frame if it is
- present and if it is
- appropriate to do so */
-
-#define m_flag_dormant 0x00000008 /* The module is not active */
-
-
-#define m_flag_gotmat 0x00000010 /* Internal use only */
-
-#define m_flag_visible_on_map 0x00000020 /* Flag for Kevin's map stuff */
-
-#define m_flag_slipped_inside 0x00000040 /* Another flag 4 Kevin */
-
-#define MODULEFLAG_AIRDUCT 0x80000000
-#define MODULEFLAG_STAIRS 0x40000000
-#define MODULEFLAG_SKY 0x20000000
-#define MODULEFLAG_FOG 0x10000000
-#define MODULEFLAG_HORIZONTALDOOR 0x08000000
-
-
-typedef struct aimodule
-{
- int m_index; //the index in AIModuleArray
-
- VECTORCH m_world; /* World location */
-
- //adjacent aimodules - null terminated array
- struct aimodule **m_link_ptrs;
-
- //the render modules that make up this ai module - null terminated array
- MODULE **m_module_ptrs;
-
- WAYPOINT_HEADER *m_waypoints;
-
- /* CDF 1/6/98 - Routefinder Globals */
- int RouteFinder_FrameStamp;
- int RouteFinder_IterationNumber;
-
-}AIMODULE;
-
-
-/*
- Module Scene Structure
-
-*/
-
-typedef struct scenemodule {
-
- MODULE *sm_module; /* Pointer to module structure for this scene */
- MODULE **sm_marray; /* Pointer to array of pointers to all modules */
-
-} SCENEMODULE;
-
-
-/*
-
- "The View"
-
- The "View Finder" accesses the view location and orientation through this
- global structure. This is so that views can be passed to other functions as
- a single pointer if required.
-
-*/
-
-typedef struct aview {
-
- VECTORCH vloc;
- MATRIXCH vmat;
- struct viewdescriptorblock *vvdb;
-
-} AVIEW;
-
-
-
-
-/*
-
- Module Function Prototypes
-
-*/
-
-#if IncludeModuleFunctionPrototypes
-
-void ModuleHandler(VIEWDESCRIPTORBLOCK *vdb);
-void ProcessModules(VIEWDESCRIPTORBLOCK *vdb, MODULE *mptr);
-void ViewFinder(MODULE *mptr);
-void ReadVMODULEArrays(VMODULE *vptr);
-
-
-void UpdateModules(void);
-void ModuleFunctions(MODULE *mptr, MFUNCTION mf);
-void AllocateModuleObject(MODULE *mptr);
-void DeallocateModuleObject(MODULE *mptr);
-
-
-/*
-
- A project supplied function. The display block has been successfuly
- allocated and has been fully initialised.
-
-*/
-
-void ModuleObjectJustAllocated(MODULE *mptr);
-
-
-/*
-
- A project supplied function. The display block is about to be deallocated.
-
-*/
-
-void ModuleObjectAboutToBeDeallocated(MODULE *mptr);
-
-
-/*
-
- A project supplied function. These are the new and old modules this ????
-
-*/
-
-void NewAndOldModules(int num_new, MODULE **m_new,
- int num_old, MODULE **m_old, char *m_currvis);
-
-
-
-#if SupportMultiCamModules
-void InitGlobalVMA(void);
-void DeallocateGlobalVMA(void);
-#if SupportMultiCamModules
-void UpdateDynamicModuleObjects(void);
-#endif
-#endif
-
-void PreprocessAllModules(void);
-void PreprocessModuleArray(MODULE **m_array_ptr);
-void PreprocessVMODIDATA(VMODULE *v_ptr);
-
-void DeallocateModuleVisArrays(void);
-int GetModuleVisArrays(void);
-int InsideModule(MODULE *mptr);
-
-void ConvertModuleNameToPointer(MREF *mref_ptr, MODULE **m_array_ptr);
-void ConvertVModuleNameToPointer(VMODIDATA *vmodidata_ptr, VMODULE *v_array_ptr);
-
-int CompareName(char *name1, char *name2);
-void PrintName(char *name);
-
-int SaveModuleArray(MODULE *mptr, char *filename);
-MODULE* LoadModuleArray(MODULE *mptr, int size, char *filename);
-
-int IsModuleVisibleFromModule(MODULE *source, MODULE *target);
-
-#endif /* IncludeModuleFunctionPrototypes */
-
-extern SCENEMODULE **Global_ModulePtr;
-extern SCENEMODULE *MainSceneArray[];
-extern AVIEW ModuleView;
-extern MODULE *Global_MotherModule;
-extern char *ModuleCurrVisArray;
-extern char *ModulePrevVisArray;
-extern char *ModuleTempArray;
-extern char *ModuleLocalVisArray;
-extern int ModuleArraySize;
-
-extern int AIModuleArraySize;
-extern AIMODULE *AIModuleArray;
-
-
-#endif /* SupportModules */
-
-
-#ifdef __cplusplus
-
- };
-
-#endif
-
-#define MODULE_INCLUDED
-
-#endif