reman3/Rayman_X/cpa/public/IPT/IPT_Scpt.h

98 lines
3.9 KiB
C

/*=========================================================================
* IPT_Scpt.h :
* Script read
*
* (c) Ubi Studios 1997
*=======================================================================*/
#if !defined(__IPT_SCPT_H__)
#define __IPT_SCPT_H__
/******************************************/
#if _MSC_VER >= 1000
#pragma once
#endif /* _MSC_VER >= 1000 */
/******************************************/
/****************************************/
#if !defined(CPA_EXPORT)
#if defined(CPA_WANTS_IMPORT)
#define CPA_EXPORT __declspec(dllimport)
#elif defined(CPA_WANTS_EXPORT)
#define CPA_EXPORT __declspec(dllexport)
#else
#define CPA_EXPORT
#endif /*CPA_WANTS_IMPORT || CPA_WANTS_EXPORT*/
#endif /*CPA_EXPORT*/
/****************************************/
#undef EXTERN
#undef extern
#if !defined(D_IPT_Input_VariableDefine)
#define EXTERN extern
#else
#define EXTERN
#endif /* D_IPT_Input_VariableDefine*/
/**** Sections definitions ****/
#define IPT_C_EntryActionSection "InputAction"
#define IPT_C_ParamOptions "Options"
#define IPT_C_SequenceSection "Sequence" /* See also in IPT_KDef.h */
#define IPT_C_AddCommandsSection "AddCommands"
#define IPT_C_ActivateDeviceSection "ActivateDevices"
#define IPT_C_ActivateKeyboardAction "Keyboard"
#define IPT_C_ActivatePadAction "Pad"
#define IPT_C_ActivateJoystickAction "Joystick"
#define IPT_C_KeyDefineSection "KeyDefine"
#define IPT_C_KeyDefineAction "NewKeyDefine"
/**** Macros definitions ****/
#define C_GrandChildSection ( 2)
#define C_ChildSection ( 1)
#define C_ThisSection ( 0)
#define C_ParentSection (-1)
#define C_GrandParentSection (-2)
#define C_GrandChildContext ( 2)
#define C_ChildContext ( 1)
#define C_ThisContext ( 0)
#define C_ParentContext (-1)
#define C_GrandParentContext (-2)
#define M_IsTitle (_eAction==SCR_EA_Anl_BeginSection)
#define M_IsEnd (_eAction==SCR_EA_Anl_EndSection)
#define M_IsBegSubSection (_eAction==SCR_EA_Anl_BeginSubSection)
#define M_IsEndSubSection (_eAction==SCR_EA_Anl_EndSubSection)
#define M_IsEntry (_eAction==SCR_EA_Anl_Entry)
#define M_ActionIs(szActionAsked) (!strcmpi(_p_szName,szActionAsked))
#define M_CheckScriptParamNumber(ulNumber) \
{ \
if (SCR_fn_uc_RdL0_GetNumberOfParameters(_ap_szParams)!=ulNumber) \
M_GameFatalError(E_uwGameScriptBadNumberOfArg); \
}
#if !defined(U64)
/**** Functions definitions ****/
SCR_tde_Anl_ReturnValue IPT_fn_eAddKeyCommandsScriptCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
SCR_tde_Anl_ReturnValue IPT_fn_eAddKeyActionScriptCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
SCR_tde_Anl_ReturnValue IPT_fn_eSequenceCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
SCR_tde_Anl_ReturnValue IPT_fn_eActivateDeviceScriptCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
SCR_tde_Anl_ReturnValue IPT_fn_eKeyDefineScriptCallBack(SCR_tdst_File_Description *_p_stFile,char *_p_szName,char *_ap_szParams[],SCR_tde_Anl_Action _eAction);
#endif /* U64 */
extern CPA_EXPORT IPT_tdxHandleToKeyWordElement IPT_fn_hAllocKeyWord(void);
extern CPA_EXPORT signed short IPT_fn_swGetKeyValue(char *_szKeyName,IPT_tdxHandleToScriptValue _hScriptValueTable);
extern CPA_EXPORT char *IPT_fn_szGetKeyName(signed short swValue,IPT_tdxHandleToScriptValue _hScriptValueTable);
extern CPA_EXPORT char *IPT_fn_p_szGetKeyPointerOfName(char *_szKeyName,IPT_tdxHandleToScriptValue _hScriptValueTable);
extern CPA_EXPORT char *IPT_fn_p_szGetNameOfKeyName(unsigned short uwKeyCode,unsigned char ucFrenchOrAmerican);
#undef EXTERN
#undef extern
#endif /* __IPT_SCPT_H__ */