261 lines
5.8 KiB
C
261 lines
5.8 KiB
C
#include "defines.h"
|
|
|
|
/*══════════════════════════════════════════════════════════════════════════*
|
|
█▀▀▀█ █▀▀▀▀ █▀▀▀█ ██▀▀▀ █▀▀▀█
|
|
██▀▀▀ ██▀▀ ██▀█▀ ▀▀▀▀█ ██ █
|
|
▀▀ ▀▀▀▀▀ ▀▀ ▀ ▀▀▀▀▀ ▀▀▀▀▀
|
|
*══════════════════════════════════════════════════════════════════════════*/
|
|
/*──────────────────────────────────────────────────────────────────────────*/
|
|
|
|
/*--------- divers ---------------------------*/
|
|
|
|
UBYTE *BufSpeak ;
|
|
|
|
UBYTE *LbaFont ;
|
|
UBYTE *Screen ;
|
|
UBYTE PalettePcx[768+500] ;
|
|
WORD MyJoy = 0 ;
|
|
WORD MyFire = 0 ;
|
|
WORD MyKey = 0 ;
|
|
UBYTE *PtrPal ;
|
|
WORD LastFire = 0 ;
|
|
|
|
LONG FlagVsync = 0 ;
|
|
WORD FlagMCGA = FALSE ;
|
|
LONG FlagCredits = FALSE ;
|
|
|
|
UBYTE String[256] ;
|
|
WORD Value ;
|
|
|
|
LONG SampleVolume, MusicVolume, CDVolume, LineVolume, MasterVolume ;
|
|
|
|
WORD SamplesEnable = FALSE ;
|
|
|
|
WORD FlagPalettePcx = FALSE ;
|
|
WORD FlagFade = FALSE ;
|
|
WORD Bulle = TRUE ;
|
|
WORD FlagBlackPal = FALSE ;
|
|
|
|
#ifdef CDROM
|
|
WORD FlaFromCD = TRUE ;
|
|
#else
|
|
#ifdef MAGOUILLE_FLA_HD
|
|
WORD FlaFromCD = TRUE ; // magouille fla sur HD
|
|
#else
|
|
WORD FlaFromCD = FALSE ;
|
|
#endif
|
|
#endif
|
|
|
|
UBYTE PathFla[_MAX_PATH] ;
|
|
|
|
LONG Version_US = TRUE ;
|
|
|
|
/*--------- ressources ---------------------------*/
|
|
|
|
T_HQR_HEADER *HQR_Samples ;
|
|
T_HQR_HEADER *HQR_Midi ;
|
|
T_HQR_HEADER *InventoryObj ;
|
|
|
|
UBYTE *BufferShadow ;
|
|
|
|
/*--------- disk ---------------------------*/
|
|
|
|
char PleaseWait[60] ;
|
|
|
|
UBYTE ProgDrive[_MAX_DRIVE] ;
|
|
UBYTE ProgDir[_MAX_DIR] ;
|
|
|
|
ULONG OrgDrive ;
|
|
UBYTE OrgDir[_MAX_DIR] ;
|
|
|
|
/*
|
|
UBYTE Drive[_MAX_DRIVE] ;
|
|
UBYTE Dir[_MAX_DIR] ;
|
|
*/
|
|
UBYTE Name[_MAX_FNAME] ;
|
|
UBYTE Ext[_MAX_EXT] ;
|
|
|
|
|
|
//UBYTE OrgPathname[_MAX_PATH] ;
|
|
//UBYTE ProgramPathname[_MAX_PATH] ;
|
|
|
|
//UBYTE Pathname[_MAX_PATH] ;
|
|
|
|
/*--------- script ---------------------------*/
|
|
|
|
//UBYTE FicName[_MAX_PATH] ;
|
|
//UBYTE *PtrFiche ;
|
|
//UBYTE *PtrCommand ;
|
|
//UBYTE *PtrFicName ;
|
|
|
|
/*--------- life tools ---------------------------*/
|
|
|
|
//UBYTE DefPathname[_MAX_PATH] ;
|
|
//UBYTE ScePathname[_MAX_PATH] ;
|
|
//UBYTE PcxPathname[_MAX_PATH] ;
|
|
|
|
T_ZONE *ListZone ;
|
|
WORD NbZones = 0 ;
|
|
|
|
T_TRACK *ListBrickTrack ;
|
|
WORD NbBrickTrack = 0 ;
|
|
|
|
/*
|
|
T_FLAG ListFlagCube[MAX_FLAGS_CUBE] ;
|
|
T_FLAG ListFlagGame[MAX_FLAGS_GAME] ;
|
|
*/
|
|
|
|
UBYTE ListFlagCube[MAX_FLAGS_CUBE] ;
|
|
UBYTE ListFlagGame[MAX_FLAGS_GAME] ;
|
|
|
|
UBYTE ListFlagInventory[MAX_INVENTORY] ;
|
|
|
|
/*--------- holomap ----------------------------*/
|
|
|
|
//T_HOLO_OBJ ListHoloObj[MAX_HOLO_OBJ] ;
|
|
//WORD NbHoloObj = 0 ;
|
|
|
|
T_HOLO_POS *ListHoloPos ; // [MAX_HOLO_POS] ;
|
|
UBYTE TabHoloPos[MAX_HOLO_POS] ;
|
|
//UBYTE *TabHoloPos ;
|
|
|
|
/*--------- menus -----------------------------*/
|
|
|
|
WORD GameChoice ;
|
|
WORD GameNbChoices ;
|
|
WORD GameListChoice[10] ; // max 7 (normally)
|
|
|
|
/*--------- perso ----------------------------*/
|
|
|
|
WORD FlagTheEnd = FALSE ;
|
|
|
|
WORD ActionNormal = FALSE ;
|
|
WORD InventoryAction = -1 ;
|
|
WORD Weapon = 0 ; // magicball
|
|
|
|
WORD Comportement = C_NORMAL ;
|
|
//WORD AnimRien = -1;
|
|
WORD AnimRienNormal, AnimRienSportif, AnimRienAgressif, AnimRienDiscret, AnimRienProtopack ;
|
|
|
|
UBYTE *PtrFile3dNormal ;
|
|
UBYTE *PtrFile3dSportif ;
|
|
UBYTE *PtrFile3dAgressif ;
|
|
UBYTE *PtrFile3dDiscret ;
|
|
UBYTE *PtrFile3dProtopack ;
|
|
|
|
WORD SceZoom = 1 ; // hard
|
|
|
|
WORD Shadow = 2 ; // full
|
|
WORD ShadowX, ShadowY, ShadowZ ;
|
|
UBYTE ShadowCol ;
|
|
|
|
WORD NumHolomapTraj = -1 ;
|
|
WORD NumCube = 0 ; // num cube en cours
|
|
WORD NewCube = -1 ; // change cube demandé
|
|
WORD FlagChgCube = 0 ;
|
|
WORD NewPosX, NewPosY, NewPosZ ;
|
|
WORD SceneStartX, SceneStartY, SceneStartZ ;
|
|
WORD CubeStartX, CubeStartY, CubeStartZ ;
|
|
WORD GameOverCube = 0 ;
|
|
|
|
WORD MagicBall = -1 ;
|
|
WORD MagicBallType = 1 ;
|
|
WORD MagicBallCount = 3 ;
|
|
WORD CombatAuto = TRUE ;
|
|
|
|
WORD MagicLevel = 0 ;
|
|
WORD MagicPoint = 0 ;
|
|
WORD NbGoldPieces = 0 ;
|
|
WORD NbLittleKeys = 0 ;
|
|
WORD Chapitre = 0 ;
|
|
WORD NbFourLeafClover = 2 ;
|
|
WORD NbCloverBox = 2 ;
|
|
|
|
WORD Island = 0 ;
|
|
WORD Fuel = 0 ;
|
|
WORD NumPingouin = -1 ;
|
|
|
|
WORD FlagClimbing = FALSE ;
|
|
WORD StartYFalling = 0 ;
|
|
T_REAL_VALUE RealFalling ;
|
|
WORD StepFalling = 1 ;
|
|
|
|
WORD FlagWater = FALSE ;
|
|
|
|
// perso sauvegarde entrée cube
|
|
|
|
//UBYTE SaveGenBody ;
|
|
|
|
//WORD SaveCube ;
|
|
//WORD SaveChapitre ;
|
|
|
|
WORD SaveComportement = C_NORMAL ;
|
|
WORD SaveBeta = 0 ;
|
|
|
|
//WORD SaveLifePoint ;
|
|
//WORD SaveNbGoldPieces ;
|
|
//WORD SaveMagicLevel ;
|
|
//WORD SaveMagicPoint ;
|
|
|
|
//WORD SaveNbCloverBox ;
|
|
//WORD SaveNbFourLeafClover ;
|
|
|
|
//UBYTE SaveListFlagGame[MAX_FLAGS_GAME] ;
|
|
|
|
/*--------- Extra objs ----------------------------*/
|
|
|
|
T_EXTRA ListExtra[MAX_EXTRAS] ;
|
|
|
|
//UBYTE *PtrSpriteExtra ;
|
|
T_HQR_HEADER *HQRPtrSpriteExtra ;
|
|
WORD *PtrZvExtra ;
|
|
|
|
/*---------------- incrust display ----------------*/
|
|
|
|
T_INCRUST_DISP ListIncrustDisp[MAX_INCRUST_DISP] ;
|
|
|
|
/*--------- moteur 3D ----------------------------*/
|
|
|
|
UBYTE *BufferAnim ;
|
|
UBYTE *PtrBufferAnim ;
|
|
|
|
LONG NbBodys = 0 ;
|
|
UBYTE *PtrBody[MAX_BODYS] ;
|
|
// T_HQR_HEADER *HQR_Bodys ;
|
|
|
|
//LONG NbAnims = 0 ;
|
|
//UBYTE *PtrAnim[MAX_ANIMS] ;
|
|
T_HQR_HEADER *HQR_Anims ;
|
|
|
|
LONG NbObjets = 0 ;
|
|
T_OBJET ListObjet[MAX_OBJETS] ;
|
|
|
|
T_SORT ListTri[MAX_OBJETS+MAX_EXTRAS] ;
|
|
|
|
WORD NumObjFollow = NUM_PERSO ;
|
|
|
|
/*--------- ambiance ----------------------------*/
|
|
|
|
WORD SampleAmbiance[4] ;
|
|
WORD SampleRepeat[4] ;
|
|
WORD SampleRnd[4] ;
|
|
WORD SamplePlayed = 0 ;
|
|
ULONG TimerNextAmbiance = 0 ;
|
|
WORD SecondEcart = 30 ;
|
|
WORD SecondMin = 10 ;
|
|
WORD CubeJingle = 255 ;
|
|
UBYTE *PtrXmi = 0 ;
|
|
WORD NumXmi = -2 ;
|
|
|
|
/*--------- brick iso ----------------------------*/
|
|
|
|
WORD FirstTime = TRUE ;
|
|
WORD CameraZone = FALSE ;
|
|
WORD FlagAffGrille = TRUE ;
|
|
|
|
|
|
|
|
|
|
|
|
|