reman3/Rayman_X/cpa/public/GAM/Basic.h

165 lines
6.3 KiB
C

/*=========================================================================
* Basic.h : Basic engine functions
* This is a part of the Game project.
*
* Version 1.0
* Creation date 20/08/96
* Revision date
*
* That file needs to be compatible for all platforms.
*
* (c) Ubi Studios 1996
*=======================================================================*/
#if !defined(__BASIC_H__)
#define __BASIC_H__
/******************************************/
#if _MSC_VER >= 1000
#pragma once
#endif /* _MSC_VER >= 1000 */
/******************************************/
#include "Options/Options.h"
#include "GAM/Header.h"
#if defined(__cplusplus)
extern "C"
{
#endif /* __cplusplus */
M_BeginDeclareEnumerate(tdeEngineDisplayMode)
edmDisplayModeAll = 0x00000000,
edmDisplayModeGouraud = 0x00000001,
edmDisplayModeTexture = 0x00000002,
edmDisplayModeUseStaticLight = 0x00000003,
edmDisplayModeUseRLI = 0x00000004,
edmDisplayModeWired = 0x00000005,
edmDisplayModeChromed = 0x00000006,
edmNumberOfDisplayMode,
M_EndDeclareEnumerate(tdeEngineDisplayMode,unsigned long)
#if !defined(U64)
/* for the choice of preferences*/
typedef struct tdstPreferences_
{
char cAsk;
char cBinary;
char cSave;
char szBinaryDirectory[64];
/* GuS 13/08/98*/
char cBinaryDsc; /* Pour les game.dsc, game.mem... binarises.*/
} tdstPreferences;
extern CPA_EXPORT void GAM_fn_vSavePreferences(void);
#endif /* U64 */
void fn_vChangeEngineMode(tdeEngineMode eNewMode);
tdeEngineMode fn_eGetEngineMode();
extern CPA_EXPORT char *fn_zsGetCharaterFilenameByEngineObject(char *_szFilename,struct tdstEngineObject_ *_stEngineObject,unsigned char _bCommon);
extern CPA_EXPORT char *fn_zsGetCharaterFilenameByTypeName(char *_szFilename,char *_szFamily,char *_szModel,char *_szPersonnal,unsigned char _bCommon);
extern CPA_EXPORT char *fn_zsGetLevelFilename(char *_szFilename,char *_szLevelName,char *_szExtension);
extern CPA_EXPORT char *fn_zsGetActualLevelFilename(char *_szFilename,char *_szExtension);
extern CPA_EXPORT unsigned char fn_bIsLevelExist(char *_szLevelName);
extern CPA_EXPORT void fn_vSetFirstLevelName(char * _szName);
extern CPA_EXPORT char *fn_p_szGetFirstLevelName(void);
extern CPA_EXPORT void fn_vSetLevelName(char * _szName);
extern CPA_EXPORT char *fn_p_szGetLevelName(void);
extern CPA_EXPORT void fn_vSetNextLevelName(char * _szName);
extern CPA_EXPORT char *fn_p_szGetNextLevelName(void);
extern CPA_EXPORT void fn_vFreeNextLevelName(void);
extern CPA_EXPORT unsigned char fn_bIsNextLevelNameValid(void);
/* ANNECY MT - 08/09/98 {*/
extern CPA_EXPORT long fn_lGetSubMapNumber(void);
/* END ANNECY MT }*/
/*extern CPA_EXPORT void fn_vSetNextLevelPositionName(char * _szPersoName,char * _szCameraName);*/
/*extern CPA_EXPORT char *fn_p_szGetNextLevelPositionPersoName(void);*/
/*extern CPA_EXPORT char *fn_p_szGetNextLevelPositionCameraName(void);*/
/*extern CPA_EXPORT void fn_vFreeNextLevelPositionName(void);*/
/*extern CPA_EXPORT unsigned char fn_bIsLevelPositionNameValid(void);*/
/*extern CPA_EXPORT void GAM_fn_vSetPlayerName(char * _szName);*/
/*extern CPA_EXPORT char *GAM_fn_p_szGetPlayerName(void);*/
/*extern CPA_EXPORT unsigned char GAM_fn_bIsPlayerNameValid(char *_szName);*/
extern CPA_EXPORT void GAM_fn_vSetSlotName(short _wSlotdId, char *_szSlotName);
extern CPA_EXPORT char *GAM_fn_szGetSlotName(short _wSlotId);
extern CPA_EXPORT unsigned char GAM_fn_bIsSlotNameValid(const char *_szName);
unsigned char GAM_fn_bIsSlotValid(short _wSlotdId);
extern CPA_EXPORT void fn_vRecurseSetDisplayBoudingVolumeFlag(HIE_tdxHandleToSuperObject _hSuperObject,unsigned char _bOnOff);
long fn_lAToI(char *szString);
MTH_tdxReal fn_fAToF(char *szString);
void fn_vInitAndRegisterAllScriptSections(void);
extern CPA_EXPORT void fn_vSetDisplayFlag(tdeEngineDisplayMode ulFlag,unsigned char ucValue);
extern CPA_EXPORT void fn_vSetGLIDisplayFlag(unsigned long *p_DisplayMode,tdeEngineDisplayMode ulFlag,unsigned char ucValue);
extern CPA_EXPORT void fn_vChangeViewPortPercent
(
unsigned long _ulMode,
unsigned long _ulWhat,
unsigned long _ulWidth,
unsigned long _ulHeight,
unsigned long _ulClipTop,
unsigned long _ulClipLeft,
unsigned long _ulClipBottom,
unsigned long _ulClipRight,
int _iPosX,
int _iPosY
);
extern CPA_EXPORT void fn_vChangeViewportRatio ( unsigned long ulMode, MTH_tdxReal xRatio) ;
extern CPA_EXPORT void GAM_fn_vActualizeAllGameViewportSize(void);
extern CPA_EXPORT void GAM_fn_vCreateGameDeviceAndViewPorts(void);
extern CPA_EXPORT void GAM_fn_vDestroyGameDeviceAndViewPorts(void);
extern CPA_EXPORT void fn_vCreateFixViewPort(GLD_tdhDevice _hDevice);
extern CPA_EXPORT void fn_vDestroyFixViewPort(GLD_tdhDevice _hDevice);
extern CPA_EXPORT void fn_vChangeFixViewPortSize(unsigned long _ulXMin,unsigned long _ulYMin,unsigned long _ulXMax,unsigned long _ulYMax);
extern CPA_EXPORT void fn_vCreateFixCamera(void);
extern CPA_EXPORT void fn_vCreateGameViewPortCamera(void);
extern CPA_EXPORT void fn_vReputGameViewportCamera(void);
extern CPA_EXPORT void GAM_fn_vAskToChangeLevel(char *szNewLevelName, ACP_tdxBool _bAskForAutosave ) ;
/*extern CPA_EXPORT void GAM_fn_vAskToChangeLevelWithPosition(char *szNewLevelName,char *szNewPositionPersoName,char *szNewPositionCameraName);*/
extern CPA_EXPORT void GAM_fn_vCreateListOfLevel(void);
extern CPA_EXPORT unsigned char GAM_fn_bIsEngineInFixMode(void);
extern CPA_EXPORT unsigned char GAM_fn_bIsEngineInLevelMode(void);
extern CPA_EXPORT void GAM_fn_vSetEngineInFixMode(void);
extern CPA_EXPORT void GAM_fn_vSetEngineInLevelMode(void);
extern CPA_EXPORT void GAM_fn_vTreatExeParameters(void);
extern CPA_EXPORT void GAM_fn_vReadUbiIniFileForGame(void);
#if defined(GAM_VIDEO)
extern CPA_EXPORT char *fn_szGetIntroductionVideoName(void);
extern CPA_EXPORT void fn_vRunTheGameVideo(void);
#endif /* GAM_VIDEO */
extern CPA_EXPORT void fn_vSetEngineInPaused(void);
extern CPA_EXPORT void fn_vResetEngineFromPaused(void);
extern CPA_EXPORT unsigned char fn_bIsEngineInPause(void);
extern CPA_EXPORT void fn_vSetDisplayFixFlag(enum tdeDisplayFixMode_ _eValue);
/* For demo management*/
extern void GAM_fn_vInitDemoTimer();
extern void GAM_fn_vTestDemoTimer();
extern void GAM_fn_vReturnToMenuLevel();
extern void GAM_fn_vLaunchDemoMode();
#if defined(__cplusplus)
}
#endif /* __cplusplus */
#endif /* !__BASIC_H__ */