/*========================================================================= * * ObjSave.c - save obj file * * Version 1.0 * Revision date * *=======================================================================*/ #include "ObjSave.h" #include "conventi.h" #include "print.h" #include "system.h" #include "ModLib.h" //-------------------------------------------------------------------- /**************************************************************************** * Description: save OBJ file header * * Parameters: p_stFile : script file pointer * sFileName : file name * p_vPtr : data pointer * xAction : script action *--------------------------------------------------------------------------- * Revision date: Author: *****************************************************************************/ void MLT_vSaveObjHeader (SCR_tdst_File_Description *p_stFile, char *sFileName, void *p_vPtr, SCR_tde_Ntfy_Action xAction) { xString mes; SCR_fn_v_SvL1_DeleteSection(p_stFile); SCR_M_SvL0_SaveScriptFileHeader(p_stFile); //save theheader section of .obj file sprintf(mes, "%s%s", M_A3D_HEADER, SCR_CC_sz_Cfg_SectionIdMark); SCR_M_SvL0_SaveBeginSection(p_stFile, mes, SCR_CC_C_Cfg_EOL); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionFileType, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 2, "%s", "ObjectsTable"); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionVersionNumber, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 2, "%d", 5); SCR_M_SvL0_SaveEndSection(p_stFile, SCR_CC_C_Cfg_EOL); } /**************************************************************************** * Description: Save OBJ file * * Parameters: p_stFile : script file pointer * sFileName : file name * p_vPtr : data pointer * xAction : script action *--------------------------------------------------------------------------- * Revision date: Author: *****************************************************************************/ void MLT_vSaveObjFile(SCR_tdst_File_Description *p_stFile, char *sFileName, void *p_vPtr, SCR_tde_Ntfy_Action xAction) { xString mes, sFile, sSection, sAction, sIdent; int i; SCR_fn_v_SvL1_ToEndSection(p_stFile); // general section sprintf(mes, "%s%s", M_A3dObjectsTableGENERAL, SCR_CC_sz_Cfg_SectionIdMark); SCR_M_SvL0_SaveBeginSection(p_stFile, mes, SCR_CC_C_Cfg_EOL); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionActor, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 2, "%s", g_sFileIn); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionCount, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 2, "%d", g_lGeometricIndex); //this can be saved or not SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionGridSettings, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 6, "%d,%d,%d,%d,%d", 6,5,0,50,50); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionMaximumIndex, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 2, "%d", g_lGeometricIndex); SCR_M_SvL0_SaveEndSection(p_stFile, SCR_CC_C_Cfg_EOL); // save each module for (i=0; isName, sFile, sAction, sIdent); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 3, "%d,%s", 0, sFile); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionObject, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 3, "%d,%s", 0, sIdent); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionOrientation, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 10, "%d,%d,%d,%d,%d,%d,%d,%d,%d", 1,0,0,0,1,0,0,0,1); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionPosition, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 4, "%d,%d,%d", 0,0,0); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionPivotOrientation, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 10, "%d,%d,%d,%d,%d,%d,%d,%d,%d", 1,0,0,0,1,0,0,0,1); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionPivotPosition, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 4, "%d,%d,%d", 0,0,0); SCR_M_SvL0_SaveEntry(p_stFile, M_OBJActionCustomZoom, SCR_CC_C_Cfg_NoChar); SCR_fn_v_SvL0_SaveParameters_MP(p_stFile, SCR_EF_SvL0_Scanf, 10, "%d,%d,%d,%d,%d,%d,%d,%d,%d", 1,0,0,0,1,0,0,0,1); SCR_M_SvL0_SaveEndSection(p_stFile, SCR_CC_C_Cfg_EOL); } }