141 lines
5.8 KiB
C
141 lines
5.8 KiB
C
/*=========================================================================
|
|
* SectInfo.h : SectInfo's functions
|
|
*
|
|
*
|
|
* SectInfo MUST BE REPLACE BY THE HEADER FILENAME
|
|
*
|
|
*
|
|
* Version 1.0
|
|
* Creation date 01/10/96
|
|
* Revision date
|
|
*
|
|
* That file needs to be compatible for all platforms.
|
|
*
|
|
* (c) Ubi Studios 1996
|
|
*=======================================================================*/
|
|
|
|
#if !defined(__SectInfo_H__)
|
|
#define __SectInfo_H__
|
|
|
|
/******************************************/
|
|
#if _MSC_VER >= 1000
|
|
#pragma once
|
|
#endif /* _MSC_VER >= 1000 */
|
|
/******************************************/
|
|
|
|
#include "GAM/Header.h"
|
|
|
|
#undef EXTERN
|
|
#undef extern
|
|
#if !defined(D_SectInfo_VariableDefine)
|
|
#define EXTERN extern
|
|
#else
|
|
#define EXTERN
|
|
#endif /* D_SectInfo_VariableDefine */
|
|
|
|
#if defined(__cplusplus)
|
|
extern "C"
|
|
{
|
|
#endif /* __cplusplus */
|
|
|
|
#if defined(D_SectInfo_StructureDefine)
|
|
typedef struct tdstSectInfo_
|
|
{
|
|
/* Obsolete (keeping it for ascendant compatibility)*/
|
|
HIE_tdxHandleToSuperObject hCurrentSector;
|
|
SECT_tdxHandleOfElementLstCharacter hNodeInSector;
|
|
/* For new version*/
|
|
MTH3D_tdstVector stPreviousPosition;
|
|
|
|
} tdstSectInfo;
|
|
#endif /* D_SectInfo_StructureDefine */
|
|
|
|
|
|
#ifdef CODEWARRIOR
|
|
#include "GAM\InitEnum.h"
|
|
#endif
|
|
/***********************/
|
|
/**** Handle define ****/
|
|
/***********************/
|
|
typedef struct tdstSectInfo_ * MS_tdxHandleToSectInfo;
|
|
|
|
/**** Put here all globals variables : ****/
|
|
/**** EXTERN typeofvar variable; ****/
|
|
|
|
/**** SectInfo scripts ****/
|
|
#define C_SectionSectInfoDescription "SectInfo"
|
|
#define C_EntrySectInfoChamp "Champ"
|
|
|
|
/*******************************/
|
|
/**** Base functions define ****/
|
|
/*******************************/
|
|
#if !defined(U64)
|
|
extern CPA_EXPORT SCR_tde_Anl_ReturnValue fn_eSectInfoScriptCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
|
|
#endif /* U64 */
|
|
/*extern CPA_EXPORT void fn_vSectInfoSaveMiniStructure(SCR_tdst_File_Description *p_stFile,struct tdstEngineObject_ *p_stObject);*/
|
|
extern CPA_EXPORT unsigned long fn_ulSectInfoSizeOf();
|
|
extern CPA_EXPORT void fn_vSectInfoAlloc(struct tdstEngineObject_ *p_stObject);
|
|
extern CPA_EXPORT MS_tdxHandleToSectInfo fn_h_SectInfoRealAlloc();
|
|
extern CPA_EXPORT void fn_vSectInfoFree(struct tdstEngineObject_ *p_stObject);
|
|
extern CPA_EXPORT void fn_vSectInfoInit(struct tdstEngineObject_ *p_stObject,enum tdeObjectTreeInit_ eObjectInit);
|
|
extern CPA_EXPORT void fn_vSectInfoDesinit(struct tdstEngineObject_ *p_stObject,enum tdeObjectTreeInit_ eObjectInit);
|
|
extern CPA_EXPORT void fn_vSectInfoCopyClone(struct tdstEngineObject_ * _p_stObjectDest,struct tdstEngineObject_ * _p_stObjectSrc);
|
|
|
|
/*extern CPA_EXPORT void fn_vSectInfoInitForCharacters(HIE_tdxHandleToSuperObject p_stDynamicHierarchy);*/
|
|
extern CPA_EXPORT void fn_vUpdateActiveSector();
|
|
|
|
extern CPA_EXPORT void fn_vSectInfoSavedValueSAI(MS_tdxHandleToSectInfo hSectInfo);
|
|
extern CPA_EXPORT void fn_vSectInfoFreeInitValueSAI(MS_tdxHandleToSectInfo hSectInfo);
|
|
|
|
/*********************************/
|
|
/**** Access functions define ****/
|
|
/*********************************/
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject fn_h_SectInfoGetCurrentSector(MS_tdxHandleToSectInfo h_SectInfo);
|
|
extern CPA_EXPORT void fn_vSectInfoSetCurrentSector(MS_tdxHandleToSectInfo h_SectInfo,HIE_tdxHandleToSuperObject hCurrentSector);
|
|
extern CPA_EXPORT void fn_vSectInfoSetNode(MS_tdxHandleToSectInfo _hSectInfo,SECT_tdxHandleOfElementLstCharacter _hNode);
|
|
extern CPA_EXPORT SECT_tdxHandleOfElementLstCharacter fn_hSectInfoGetNode(MS_tdxHandleToSectInfo _hSectInfo);
|
|
|
|
/******************************************/
|
|
/**** Same functions for others module ****/
|
|
/******************************************/
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject GAM_fn_hGetCurrentSector(HIE_tdxHandleToSuperObject _hCharacter);
|
|
extern CPA_EXPORT void GAM_fn_vSetCurrentSector(HIE_tdxHandleToSuperObject _hCharacter,HIE_tdxHandleToSuperObject _hCurrentSector);
|
|
|
|
/**********************************/
|
|
/**** Special functions define ****/
|
|
/**********************************/
|
|
extern CPA_EXPORT void fn_vInsertObjectInSectorList(HIE_tdxHandleToSuperObject hSector,HIE_tdxHandleToSuperObject hCharacter);
|
|
extern CPA_EXPORT void fn_vRemoveObjectInSectorList(HIE_tdxHandleToSuperObject hCharacter);
|
|
extern CPA_EXPORT void fn_vSectInfoInitForSingleCharacter(HIE_tdxHandleToSuperObject hCharacter,struct MTH3D_tdstVector_ * hPosition);
|
|
extern CPA_EXPORT void fn_vSectInfoLaunchSectorSoundEvents(HIE_tdxHandleToSuperObject);
|
|
extern CPA_EXPORT void fn_vSectInfoLaunchEventsFromS1ToS2(HIE_tdxHandleToSuperObject,HIE_tdxHandleToSuperObject);
|
|
extern CPA_EXPORT void fn_vSectInfoSetCharacterLauchingEvents(HIE_tdxHandleToSuperObject _hCharacter);
|
|
extern CPA_EXPORT HIE_tdxHandleToSuperObject fn_hSearchSectorFromPosition(HIE_tdxHandleToSuperObject _hCharacter,MTH3D_tdstVector * _p_stPosition);
|
|
extern CPA_EXPORT void fn_vInsertLightInSectorList(HIE_tdxHandleToSuperObject hSector,HIE_tdxHandleToSuperObject hCharacter);
|
|
/* MR1108*/
|
|
extern CPA_EXPORT void fn_vInsertStreamInSectorList(HIE_tdxHandleToSuperObject hSector,HIE_tdxHandleToSuperObject hCharacter);
|
|
|
|
extern CPA_EXPORT void GAM_fn_vSectInfoTestChangeSectorForCharacter(HIE_tdxHandleToSuperObject _hCharacter);
|
|
/*****************************/
|
|
/**** Debugging functions ****/
|
|
/*****************************/
|
|
extern CPA_EXPORT char * fn_p_szSectInfoGetCurrentSectorName(HIE_tdxHandleToSuperObject _hCharacter);
|
|
extern CPA_EXPORT char * fn_p_szSectInfoGetPreviousSectorName(HIE_tdxHandleToSuperObject _hCharacter);
|
|
|
|
extern CPA_EXPORT void fn_vTestAllSectorsListForIncoherences(void);
|
|
|
|
|
|
#ifdef BIN_SaveBin
|
|
extern CPA_EXPORT unsigned long SectInfo_fn_ulWriteBinaryBloc(unsigned long _ulStructAddress, char* _p_cDestBuffer);
|
|
#endif
|
|
/*No read function necessary.*/
|
|
|
|
|
|
|
|
#if defined(__cplusplus)
|
|
}
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* __SectInfo_H__ */
|
|
|