/*========================================================================= * GameScript.h : Contain all section and section entry of all Game script * This is a part of the Game project. * * Version 1.0 * Creation date 09/08/96 * Revision date * * That file needs to be compatible for all platforms. * * (c) Ubi Studios 1996 *=======================================================================*/ #if !defined(__GameScpt_h__) #define __GameScpt_h__ /******************************************/ #if _MSC_VER >= 1000 #pragma once #endif /* _MSC_VER >= 1000 */ /******************************************/ #include "GAM/Header.h" #define GAM_C_FixScriptPriority 1 #define GAM_C_LevelScriptPriority 2 #define GAM_C_FixDynamicScriptPriority 11 #define GAM_C_LevelDynamicScriptPriority 12 /************************************************************/ /**** IMPORTANT : ****/ /**** All this sections must be registred in ****/ /**** fn_vRegisterAllScriptSections in Basic.c file ****/ /************************************************************/ /**** Directories script ****/ #define C_Section_DirectoriesDescription "DirectoriesDescription" /**** Memory script ****/ #define C_Section_MemoryDescription "NewMemoryDescription" #define C_Section_BinaryMemoryDescription "NewBinaryMemoryDescription" #define C_Section_BinaryMemoryDescriptionPass1 "NewBinaryMemoryDescriptionPass1" #define C_Section_BinaryMemoryDescriptionPass2 "NewBinaryMemoryDescriptionPass2" #define C_Entry_GAM_FixMemory "GameFixMemorySize" #define C_Entry_GAM_LevelMemory "GameLevelMemorySize" #define C_Entry_MenuMemory "MenuMemorySize" #define C_Entry_FontMemory "FontMemorySize" #define C_Entry_SAIFixMemory "SAIFixMemorySize" #define C_Entry_SAILevelMemory "SAIMemorySize" #define C_Entry_AIFixMemory "AIFixMemory" #define C_Entry_AIMemory "AIMemory" #define C_Entry_TMPFixMemory "TMPFixMemory" #define C_Entry_TMPLevelMemory "TMPLevelMemory" #define C_Entry_ACPTextMemory "ACPTextMemory" #define C_Entry_ACPFixMemory "ACPFixMemory" #define C_Entry_ACPLevelMemory "ACPMemory" #define C_Entry_POSMemory "PositionMemorySize" #define C_Entry_ScriptMemory "ScriptMemorySize" #define C_Entry_IPTMemory "IPTMemorySize" /* MR0912*/ #define C_Entry_LipsSynchMemory "LipsSynchMemory" /* For BIN*/ #define C_Entry_UseMemorySnapshot "UseMemorySnapshot" /**** Input devices manager ****/ #define C_Section_InputDeviceManagerDescription "InputDeviceManagerDescription" #define C_Entry_InitInputDeviceManager "InitInputDeviceManager" #define C_Entry_AddInputDeviceFile "AddInputDeviceFile" #define C_Entry_Computable "Computetable" /**** Random manager ****/ #define C_Section_RandomManagerDescription "RandomManagerDescription" #define C_Entry_InitRandomManager "InitRandomManager" /**** Game Options ****/ #define C_Section_GameOptionsFile "GameOptionsFile" #define C_Entry_GameOptionsDefault "DefaultFile" #define C_Entry_GameOptionsCurrent "CurrentFile" /*#define C_Entry_CreditsLevel "CreditsLevelName"*/ #define C_Entry_FrameSynchro "FrameSynchro" #define C_Section_BigFile "BigFiles" #define C_Entry_BigFileVignettes "Vignettes" #define C_Entry_BigFileTextures "Textures" /**** Anim Stacks ****/ #define C_Section_Animstacks "AnimStacks" #define C_Entry_A3dGeneral "A3dGeneral" #define C_Entry_Vertexes "Vertexes" #define C_Entry_Quaternions "Quaternions" #define C_Entry_Hierarchies "Hierarchies" #define C_Entry_NTTO "NTTO" #define C_Entry_OnlyFrames "OnlyFrames" #define C_Entry_Channels "Channels" #define C_Entry_Frames "Frames" #define C_Entry_FramesKF "FramesKF" #define C_Entry_KeyFrames "KeyFrames" #define C_Entry_Events "Events" #define C_Entry_MorphData "MorphData" /******************/ /**** Filename ****/ /******************/ #ifdef ACTIVE_EDITOR #define C_GameMemoryFile "GameData\\Game.mem" #define C_GameScriptFile "GameData\\Game.dsc" #define C_GameVignetteFile "GameData\\Game.pgb" #endif /* ACTIVE_EDITOR*/ #define C_DefaultDirGameData "GameData" #define C_GameMemoryFileName "Game.mem" #define C_GameScriptFileName "Game.dsc" #define C_GameVignetteFileName "Game.pgb" #define C_GameFixScriptFile "Game.Fix" /*#define C_WorldScriptFile "World.dsc"*/ #define C_ScriptCharacterDirectory "Charact" #define C_MemoryDescriptionSuffixe "mem" /**** Suffixe for memories filenames ****/ #define C_ScriptDescriptionSuffixe "dsc" /**** Suffixe for descriptions filenames ****/ #define C_ScriptCharacterSuffixe "car" /**** Suffixe for characters filenames ****/ #define C_ScriptLevelSuffixe "lvl" /**** Suffixe for level filenames ****/ #define C_ScriptAlwaysSuffixe "alw" /**** Suffixe for always filenames ****/ #define C_MecaLevelSuffixe "ame" /*#define C_ScriptPgbSuffixe "pgb"*/ /*****************************************************************************************/ /**** Below : macros used to read script. ****/ /**** to use them, the callback function must have there parameters as next : ****/ /**** FILE *p_stHandle,char *szAction,char *d_szPars[],char cIsTitle ****/ /*****************************************************************************************/ #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); \ } #ifndef _FIRE_DEADCODE_U64_ EXTERN unsigned long g_SCR_a9MemTable[9] #if defined(D_GameGlobals) ={0,0,0,0,0,0,0,0,0} #endif /* D_GameGlobals */ ; #endif /* _FIRE_DEADCODE_U64_ */ #endif /* __GameScpt_h__ */