summaryrefslogtreecommitdiff
path: root/3dc/win95/ENVCHUNK.CPP
diff options
context:
space:
mode:
Diffstat (limited to '3dc/win95/ENVCHUNK.CPP')
-rw-r--r--3dc/win95/ENVCHUNK.CPP325
1 files changed, 0 insertions, 325 deletions
diff --git a/3dc/win95/ENVCHUNK.CPP b/3dc/win95/ENVCHUNK.CPP
deleted file mode 100644
index 04cc292..0000000
--- a/3dc/win95/ENVCHUNK.CPP
+++ /dev/null
@@ -1,325 +0,0 @@
-#include "chunk.hpp"
-#include "envchunk.hpp"
-
-//macro for helping to force inclusion of chunks when using libraries
-FORCE_CHUNK_INCLUDE_IMPLEMENT(envchunk)
-
-// Class Environment_Data_Chunk functions
-RIF_IMPLEMENT_DYNCREATE("REBENVDT",Environment_Data_Chunk)
-
-// constructor from buffer
-LOCKABLE_CHUNK_WITH_CHILDREN_LOADER("REBENVDT",Environment_Data_Chunk)
-/*
-Children for Enviornment_Data_Chunk :
-
-"ENVSDSCL" Environment_Scale_Chunk
-"GAMEMODE" Environment_Game_Mode_Chunk
-"ENVPALET" Environment_Palette_Chunk
-"ENVTXLIT" Environment_TLT_Chunk
-"TLTCONFG" TLT_Config_Chunk
-"CLRLOOKP" Coloured_Polygons_Lookup_Chunk
-"MATCHIMG" Matching_Images_Chunk
-"BMPNAMES" Global_BMP_Name_Chunk
-"BMNAMVER" BMP_Names_Version_Chunk
-"BMNAMEXT" BMP_Names_ExtraData_Chunk
-"RIFFNAME" RIF_Name_Chunk
-"ENDTHEAD" Environment_Data_Header_Chunk
-"LIGHTSET" Light_Set_Chunk
-"PRSETPAL" Preset_Palette_Chunk
-"SPECLOBJ" Special_Objects_Chunk
-"AVPEXSTR" AVP_External_Strategy_Chunk
-"BMPMD5ID" Bitmap_MD5_Chunk
-"GLOGENDC" Global_Generator_Data_Chunk
-"FRAGTYPE" Fragment_Type_Chunk
-"ENVACOUS" Environment_Acoustics_Chunk
-"AVPENVIR" AVP_Environment_Settings_Chunk
-"SOUNDDIR" Sound_Directory_Chunk
-"RANTEXID" Random_Texture_ID_Chunk
-*/
-
-
-
-
-// empty constructor
-Environment_Data_Chunk::Environment_Data_Chunk (Chunk_With_Children * parent)
-:Lockable_Chunk_With_Children (parent, "REBENVDT")
-{
- // as necessary, generated automatically
- new Environment_Data_Header_Chunk (this);
-}
-
-
-BOOL Environment_Data_Chunk::file_equals (HANDLE & /*rif_file*/)
-{
- return(TRUE);
-}
-
-Environment_Data_Header_Chunk * Environment_Data_Chunk::get_header()
-{
- return (Environment_Data_Header_Chunk *) this->lookup_single_child ("ENDTHEAD");
-}
-
-const char * Environment_Data_Chunk::get_head_id()
-{
- Environment_Data_Header_Chunk * hdptr = get_header();
-
- if (!hdptr) return (0);
-
- return(hdptr->identifier);
-
-}
-
-void Environment_Data_Chunk::set_lock_user (char * user)
-{
- Environment_Data_Header_Chunk * hdptr = get_header();
-
- if (!hdptr) return;
-
- strncpy (hdptr->lock_user, user,16);
-
- hdptr->lock_user[16] = 0;
-}
-
-void Environment_Data_Chunk::post_input_processing()
-{
- if (get_header())
- if (get_header()->flags & GENERAL_FLAG_LOCKED)
- external_lock = TRUE;
-
- Chunk_With_Children::post_input_processing();
-
-}
-
-///////////////////////////////////////
-
-// Class Environment_Data_Header_Chunk functions
-RIF_IMPLEMENT_DYNCREATE("ENDTHEAD",Environment_Data_Header_Chunk)
-
-// from buffer
-Environment_Data_Header_Chunk::Environment_Data_Header_Chunk (Chunk_With_Children * parent, const char * hdata, size_t /*hsize*/)
- : Chunk (parent, "ENDTHEAD"),
- flags (0), version_no (0)
-{
- flags = *((int *) hdata);
-
- strncpy (lock_user, (hdata + 4), 16);
- lock_user[16] = '\0';
-
- version_no = *((int *) (hdata + 20));
-}
-
-BOOL Environment_Data_Header_Chunk::output_chunk (HANDLE & hand)
-{
- unsigned long junk;
- BOOL ok;
- char * data_block;
-
- data_block = make_data_block_from_chunk();
-
- ok = WriteFile (hand, (long *) data_block, (unsigned long) chunk_size, &junk, 0);
-
- delete [] data_block;
-
- if (!ok) return FALSE;
-
- return TRUE;
-}
-
-void Environment_Data_Header_Chunk::fill_data_block ( char * data_start)
-{
- strncpy (data_start, identifier, 8);
-
- data_start += 8;
-
- *((int *) data_start) = chunk_size;
-
- data_start += 4;
-
- *((int *) data_start) = flags;
- strncpy ((data_start + 4), lock_user, 16);
-
- *((int *) (data_start+20)) = version_no;
-}
-
-void Environment_Data_Header_Chunk::prepare_for_output()
-{
- version_no ++;
-}
-
-///////////////////////////////////////
-
-// Class Environment_Scale_Chunk functions
-RIF_IMPLEMENT_DYNCREATE("ENVSDSCL",Environment_Scale_Chunk)
-
-void Environment_Scale_Chunk::fill_data_block ( char * data_start)
-{
- strncpy (data_start, identifier, 8);
-
- data_start += 8;
-
- *((int *) data_start) = chunk_size;
-
- data_start += 4;
-
- *((double *) data_start) = scale;
-}
-
-///////////////////////////////////////
-
-RIF_IMPLEMENT_DYNCREATE("ENVACOUS",Environment_Acoustics_Chunk)
-
-Environment_Acoustics_Chunk::Environment_Acoustics_Chunk(Environment_Data_Chunk* parent)
-:Chunk(parent,"ENVACOUS")
-{
- env_index=0;
- reverb=2;
- spare=0;
-}
-
-Environment_Acoustics_Chunk::Environment_Acoustics_Chunk(Chunk_With_Children* parent,const char* data,size_t)
-:Chunk(parent,"ENVACOUS")
-{
- env_index=*(int*)data;
- data+=4;
- reverb=*(float*)data;
- data+=4;
- spare=*(int*)data;
-}
-
-void Environment_Acoustics_Chunk::fill_data_block(char* data_start)
-{
- strncpy (data_start, identifier, 8);
-
- data_start += 8;
-
- *((int *) data_start) = chunk_size;
-
- data_start += 4;
-
- *(int*)data_start=env_index;
- data_start+=4;
- *(float*)data_start=reverb;
- data_start+=4;
- *(int*)data_start=spare;
-
-}
-///////////////////////////////////////
-
-RIF_IMPLEMENT_DYNCREATE("SOUNDDIR",Sound_Directory_Chunk)
-
-Sound_Directory_Chunk::Sound_Directory_Chunk(Environment_Data_Chunk* parent,const char* dir)
-:Chunk(parent,"SOUNDDIR")
-{
- directory=new char[strlen(dir)+1];
- strcpy(directory,dir);
-}
-
-Sound_Directory_Chunk::Sound_Directory_Chunk(Chunk_With_Children * const parent, const char* data, size_t const )
-:Chunk(parent,"SOUNDDIR")
-{
- directory=new char[strlen(data)+1];
- strcpy(directory,data);
-}
-
-Sound_Directory_Chunk::~Sound_Directory_Chunk()
-{
- delete [] directory;
-}
-
-void Sound_Directory_Chunk::fill_data_block(char* data_start)
-{
- strncpy (data_start, identifier, 8);
- data_start += 8;
- *((int *) data_start) = chunk_size;
- data_start += 4;
-
- strcpy(data_start,directory);
-}
-
-
-///////////////////////////////////////
-/////////////////////Available shape set collections////////////////////////////////////////
-RIF_IMPLEMENT_DYNCREATE("RANTEXID",Random_Texture_ID_Chunk)
-
-Random_Texture_ID_Chunk::Random_Texture_ID_Chunk(Chunk_With_Children* parent,const char* _name)
-:Chunk(parent,"RANTEXID")
-{
- name=new char[strlen(_name)+1];
- strcpy(name,_name);
- spare1=spare2=0;
-}
-
-
-Random_Texture_ID_Chunk::Random_Texture_ID_Chunk(Chunk_With_Children* parent,const char* data,size_t)
-:Chunk(parent,"RANTEXID")
-{
- CHUNK_EXTRACT_STRING(name);
-
- int num_types,type;
- CHUNK_EXTRACT(num_types,int);
- for(int i=0;i<num_types;i++)
- {
- CHUNK_EXTRACT(type,int);
- random_types.add_entry(type);
- }
- CHUNK_EXTRACT(spare1,int);
- CHUNK_EXTRACT(spare2,int);
-
-}
-
-Random_Texture_ID_Chunk::~Random_Texture_ID_Chunk()
-{
- delete [] name;
-}
-
-void Random_Texture_ID_Chunk::fill_data_block(char* data)
-{
- CHUNK_FILL_START
-
- CHUNK_FILL_STRING(name)
-
- CHUNK_FILL(random_types.size(),int);
- for(LIF<int> rlif(&random_types);!rlif.done();rlif.next())
- {
- CHUNK_FILL(rlif(),int)
- }
-
- CHUNK_FILL(spare1,int)
- CHUNK_FILL(spare2,int)
-
-}
-
-size_t Random_Texture_ID_Chunk::size_chunk()
-{
- chunk_size=12+12+random_types.size()*4;
- chunk_size+=(strlen(name)+4)&~3;
- return chunk_size;
-}
-///////////////////////////////////////
-
-
-
-
-//Class Special_Objects_Chunk :
-RIF_IMPLEMENT_DYNCREATE("SPECLOBJ",Special_Objects_Chunk)
-
-CHUNK_WITH_CHILDREN_LOADER("SPECLOBJ",Special_Objects_Chunk)
-/*
-Children for Special_Objects_Chunk :
-"AVPGENER" AVP_Generator_Chunk
-"SOUNDOB2" Sound_Object_Chunk
-"VIOBJECT" Virtual_Object_Chunk
-"AVPCABLE" AVP_Power_Cable_Chunk
-"AVPSTART" AVP_Player_Start_Chunk
-"AVPPATH2" AVP_Path_Chunk
-"AVPGENEX" AVP_Generator_Extra_Data_Chunk
-"SOUNDEXD" Sound_Object_Extra_Data_Chunk
-"PARGENER" AVP_Particle_Generator_Chunk
-"PLACHIER" Placed_Hierarchy_Chunk
-"CAMORIGN" Camera_Origin_Chunk
-"AVPDECAL" AVP_Decal_Chunk
-"R6WAYPNT" R6_Waypoint_Chunk
-
-*/
-
-