#ifndef _IN_DATA_H #define _IN_DATA_H #include #include "constants.h" #include "types.h" #define bool s32 #define ubool u32 extern u8 ailist_0000; extern u8 ailist_0001; extern u8 ailist_0002; extern u8 ailist_0003; extern u8 ailist_0004; extern u8 ailist_0005; extern u8 ailist_0006; extern u8 ailist_0007; extern u8 ailist_0008; extern u8 ailist_0009; extern u8 ailist_000a; extern u8 ailist_000b; extern u8 ailist_000c; extern u8 ailist_000d; extern u8 ailist_000e; extern u8 ailist_000f; extern u8 ailist_0010; extern u8 ailist_0011; extern u8 ailist_0012; extern u8 ailist_0013; extern u8 ailist_0014; extern u8 ailist_0015; extern u8 ailist_0016; extern u8 ailist_0017; extern u8 ailist_0018; extern u8 ailist_0019; extern u8 ailist_001a; extern u8 ailist_001b; extern u8 ailist_001c; extern u8 ailist_001d; extern u8 ailist_001e; extern u8 ailist_001f; extern u8 ailist_0020; extern u8 ailist_0021; extern u8 ailist_0022; extern u8 ailist_0023; extern u8 ailist_0024; extern u8 ailist_0025; extern u8 ailist_0026; extern u8 ailist_0027; extern u8 ailist_0028; extern u8 ailist_0029; extern u8 ailist_002a; extern u8 ailist_002b; extern u8 ailist_002c; extern u8 ailist_002d; extern u8 *g_StackLeftAddrs[7]; extern u8 *g_StackAllocatedPos; extern s32 var8005ce74; extern f32 g_ViXScalesBySlot[2]; extern f32 g_ViYScalesBySlot[2]; extern u32 g_SchedViModesPending[2]; extern s32 g_ViUnblackTimer; extern s32 g_ViShakeDirection; extern s32 g_ViShakeIntensity; extern s32 g_ViShakeTimer; extern s8 g_Resetting; extern OSDevMgr __osViDevMgr; extern u32 var8005cefc; extern OSDevMgr __osPiDevMgr; extern OSPiHandle *__osCurrentHandle[2]; extern u32 var8005cf30; extern s32 osViClock; extern u32 __osGlobalIntMask; extern s32 g_VmNumPages; extern s32 g_MainIsEndscreen; extern s32 var8005dd18; extern bool g_MainIsDebugMenuOpen; extern u16 g_SfxVolume; extern s32 g_SoundMode; extern s32 var8005ddd4; extern struct audiorussmapping g_AudioRussMappings[]; extern struct audioconfig g_AudioConfigs[]; extern bool var8005eedc; extern f32 var8005ef10[2]; extern s32 g_NumGlobalAilists; extern s32 g_NumLvAilists; extern u32 var8005ef40; extern u32 var8005ef5c; extern u32 var8005ef7c; extern u32 var8005ef90; extern bool g_ModelDistanceDisabled; extern f32 g_ModelDistanceScale; extern bool var8005efbc; extern f32 var8005efc0; extern u32 var8005efd0; extern bool var8005efd8_2; extern bool var8005efdc; extern u32 var8005efe0; extern u32 var8005efec; extern u32 var8005eff8; extern u32 var8005f000; extern s16 g_NumAnimations; extern struct animsummary *g_Anims; extern u8 *var8005f010; extern s16 *var8005f014; extern s32 var8005f018; extern s32 var8005f01c; extern bool g_AnimHostEnabled; extern s32 var8005f030; extern s32 g_CdHasSavedBlock; extern u16 *g_RdpOutBufferEnd; extern u16 *g_RdpOutBufferStart; extern struct rdptask *g_RdpCurTask; extern N_ALSndPlayer *g_SndPlayer; extern u32 var8005f548; extern s16 n_eqpower[]; extern u32 var8005f66c; extern u8 *var8005f6f8; extern u8 *var8005f6fc; extern u32 var8005f704; extern OSViMode osViModeTable[]; extern u32 var80060890; extern OSTimer *__osTimerList; extern u32 __osPiAccessQueueEnabled; extern OSThread *__osRunQueue; extern OSThread *__osActiveQueue; extern OSThread *__osRunningThread; extern OSThread *__osFaultedThread; extern u32 __osSiAccessQueueEnabled; extern u32 __osContInitialized; extern s32 __osPfsLastChannel; extern s32 g_PfsPrevChannel; extern u8 g_PfsPrevBank; extern u32 var80060990; extern u32 var800609a0; extern u32 var800609c4; extern u32 var800609f0; extern u32 var800611ec; extern OSViMode osViModePalLan1; extern OSViMode osViModeMpalLan1; extern OSViMode osViModeNtscLan1; extern char ldigs[]; extern char udigs[]; extern Gfx var80061380[]; extern Gfx var800613a0[]; extern f32 g_20SecIntervalFrac; extern f32 g_Lv80SecIntervalFrac; extern bool g_NbombsActive; extern s32 g_WeatherActive; extern u32 var80062410; extern bool g_IsTitleDemo; extern s32 g_TitleMode; extern s32 g_TitleNextMode; extern u32 g_TitleDelayedTimer; extern s32 g_TitleDelayedMode; extern s32 g_TitleTimer; extern s32 g_TitleNextStage; extern u32 var800624f0; extern u8 g_FileState; extern u8 var80062944; extern u8 var80062948; extern u8 var8006294c; extern u32 var80062950; extern bool g_WeatherTickEnabled; extern struct var80062960 *var80062960; extern f32 var80062968; extern bool var8006296c; extern u32 var80062974; extern s32 g_NextChrnum; extern s16 g_ChrIndexesByChrnum[240]; extern struct chrdata *g_ChrSlots; extern s32 g_NumChrSlots; extern struct shieldhit *g_ShieldHits; extern bool g_ShieldHitActive; extern s32 g_NumBondBodies; extern s32 g_NumMaleGuardHeads; extern s32 g_NumFemaleGuardHeads; extern s32 g_NumMaleGuardTeamHeads; extern s32 g_NumFemaleGuardTeamHeads; extern s32 g_BondBodies[]; extern s32 g_MaleGuardHeads[]; extern s32 g_MaleGuardTeamHeads[]; extern s32 g_FemaleGuardHeads[]; extern s32 g_FemaleGuardTeamHeads[]; extern s32 var80062c80; extern s32 g_ActiveMaleHeadsIndex; extern s32 g_ActiveFemaleHeadsIndex; extern f32 g_EnemyAccuracyScale; extern f32 g_PlayerDamageRxScale; extern f32 g_PlayerDamageTxScale; extern f32 g_AttackWalkDurationScale; extern struct animtablerow g_DeathAnimsHumanGun[]; extern struct animtablerow g_AnimTableHumanSlumped[]; extern struct animtable *g_AnimTablesByRace[]; extern struct attackanimconfig var800656c0[]; extern struct attackanimgroup *g_StandHeavyAttackAnims[][32]; extern struct attackanimconfig var80065be0[]; extern struct attackanimgroup *g_StandLightAttackAnims[][32]; extern struct attackanimconfig var800663d8[]; extern struct attackanimgroup *g_StandDualAttackAnims[][32]; extern struct attackanimgroup *g_KneelHeavyAttackAnims[][32]; extern struct attackanimgroup *g_KneelLightAttackAnims[][32]; extern struct attackanimgroup *g_KneelDualAttackAnims[][32]; extern struct attackanimconfig g_RollAttackAnims[]; extern struct attackanimconfig g_AttackAnimHeavyWalk; extern struct attackanimconfig g_AttackAnimHeavyRun; extern struct attackanimconfig g_AttackAnimLightWalk; extern struct attackanimconfig g_AttackAnimLightRun; extern struct attackanimconfig g_AttackAnimDualWalk; extern struct attackanimconfig g_AttackAnimDualRun; extern u32 g_StageFlags; extern struct chrdata *g_BgChrs; extern s16 *g_BgChrnums; extern s32 g_NumBgChrs; extern s16 *g_TeamList; extern s16 *g_SquadronList; extern struct var80067e6c *var80067fdc[]; extern s16 var80067ff0[]; extern f32 g_AutoAimScale; extern u32 g_TintedGlassEnabled; extern s32 g_AlarmTimer; extern struct sndstate *g_AlarmAudioHandle; extern f32 g_AlarmSpeakerWeight; extern f32 g_GasReleaseTimer240; extern bool g_GasReleasing; extern struct coord g_GasPos; extern s32 g_GasLastCough60; extern f32 g_GasSoundTimer240; extern struct sndstate *g_GasAudioHandle; extern u32 g_CountdownTimerOff; extern bool g_CountdownTimerRunning; extern f32 g_CountdownTimerValue60; extern u32 g_PlayersDetonatingMines; extern s32 g_NextWeaponSlot; extern s32 g_NextHatSlot; extern struct linkliftdoorobj *g_LiftDoors; extern struct padlockeddoorobj *g_PadlockedDoors; extern struct safeitemobj *g_SafeItems; extern struct linksceneryobj *g_LinkedScenery; extern struct blockedpathobj *g_BlockedPaths; extern struct prop *g_EmbedProp; extern s32 g_EmbedHitPart; extern f32 g_CctvWaitScale; extern f32 g_AutogunAccuracyScale; extern f32 g_AutogunDamageTxScale; extern f32 g_AutogunDamageRxScale; extern f32 g_AmmoQuantityScale; extern struct padeffectobj *g_PadEffects; extern s32 g_LastPadEffectIndex; extern struct autogunobj *g_ThrownLaptops; extern struct beam *g_ThrownLaptopBeams; extern s32 g_MaxThrownLaptops; extern struct prop *g_Lifts[MAX_LIFTS]; extern s32 g_NumLifts; extern u8 g_LiftnumToIndex[MAX_LIFTS]; extern u32 g_TvCmdlist00[]; extern u32 var8006aaa0[]; extern u32 var8006aae4[]; extern struct audiochannel *g_AudioChannels; extern s32 g_ObjectiveLastIndex; extern bool g_ObjectiveChecksDisabled; extern u16 var8006ae90[]; extern u16 var8006af0c[]; extern u16 var8006af8c[]; extern struct weapon *g_Weapons[]; extern bool g_CasingsActive; extern s32 g_MaxModels; extern s32 g_MaxAnims; extern bool g_ModelIsLvResetting; extern s32 g_ModelMostType1; extern s32 g_ModelMostType2; extern s32 g_ModelMostType3; extern s32 g_ModelMostModels; extern s32 g_ModelMostAnims; extern bool g_PlayerTriggerGeFadeIn; extern u32 var80070748; extern u32 var8007074c; extern bool g_PlayersWithControl[]; extern bool g_PlayerInvincible; extern s32 g_InCutscene; extern s16 g_DeathAnimations[]; extern s32 g_NumDeathAnimations; extern s32 g_ScissorX1; extern s32 g_ScissorX2; extern s32 g_ScissorY1; extern s32 g_ScissorY2; #if VERSION >= VERSION_NTSC_1_0 extern char *g_StringPointer; extern char *g_StringPointer2; #else extern char g_StringPointer[]; extern char g_StringPointer2[]; #endif extern s32 g_MpPlayerNum; extern u32 g_MpNumJoined; extern struct menudialogdef g_PreAndPostMissionBriefingMenuDialog; extern struct stageoverviewentry g_StageNames[NUM_SOLOSTAGES]; extern struct menudialogdef g_SoloMissionControlStyleMenuDialog; extern struct menudialogdef g_CiControlStyleMenuDialog; extern struct menudialogdef g_CiControlStylePlayer2MenuDialog; extern struct menudialogdef g_ChangeAgentMenuDialog; extern struct menudialogdef g_2PMissionOptionsHMenuDialog; extern struct menudialogdef g_2PMissionOptionsVMenuDialog; extern struct menudialogdef g_FrWeaponsAvailableMenuDialog; extern struct menudialogdef g_SoloMissionPauseMenuDialog; extern struct menudialogdef g_2PMissionPauseHMenuDialog; extern struct menudialogdef g_2PMissionPauseVMenuDialog; extern struct cutscene g_Cutscenes[]; extern struct menudialogdef g_CiMenuViaPcMenuDialog; extern struct menudialogdef g_CiMenuViaPauseMenuDialog; extern struct menudialogdef g_CheatsMenuDialog; extern struct menudialogdef g_PakChoosePakMenuDialog; extern struct menudialogdef g_FilemgrFileSelect4MbMenuDialog; extern struct menudialogdef g_MpQuickGo4MbMenuDialog; extern struct menudialogdef g_MpConfirmChallenge4MbMenuDialog; extern struct menudialogdef g_MainMenu4MbMenuDialog; extern struct menudialogdef g_MpEditSimulant4MbMenuDialog; extern struct menudialogdef g_AdvancedSetup4MbMenuDialog; extern struct filelist *g_FileLists[]; extern bool var80075bd0[]; extern struct var80075c00 var80075c00[]; extern s32 var80075d64; extern s32 var80075d68; extern s32 g_DebugScreenshotRgb; extern u8 unregistered_function1[]; extern u8 unregistered_function2[]; extern u8 unregistered_function3[]; extern struct ailist g_GlobalAilists[]; extern struct skeleton g_SkelDropship; extern struct skeleton g_SkelSkShuttle; extern struct skeleton g_SkelLift; extern struct skeleton g_SkelCctv; extern struct skeleton g_SkelTerminal; extern struct skeleton g_SkelCiHub; extern struct skeleton g_Skel19; extern struct skeleton g_SkelAutogun; extern struct skeleton g_Skel11; extern struct skeleton g_Skel13; extern struct skeleton g_Skel18; extern struct skeleton g_Skel12; extern struct skeleton g_SkelWindowedDoor; extern struct skeleton g_Skel17; extern struct skeleton g_Skel0C; extern struct skeleton g_SkelLogo; extern struct skeleton g_SkelPdLogo; extern struct skeleton g_SkelHoverbike; extern struct skeleton g_SkelJumpship; extern struct skeleton g_SkelChopper; extern struct skeleton g_SkelRope; extern struct skeleton g_SkelBanner; extern struct skeleton g_SkelMaianUfo; extern struct skeleton g_SkelCableCar; extern struct skeleton g_SkelSubmarine; extern struct skeleton g_SkelTarget; extern struct skeleton g_SkelRareLogo; extern struct skeleton g_SkelWireFence; extern struct skeleton g_SkelBB; extern struct modelstate g_ModelStates[NUM_MODELS]; extern s8 g_PropExplosionTypes[]; extern struct skeleton g_SkelBasic; extern struct skeleton g_SkelChrGun; extern struct skeleton g_Skel0B; extern struct modelfiledata g_PlayerModelFileData; extern struct skeleton g_Skel0A; extern struct skeleton g_Skel20; extern struct skeleton g_SkelClassicGun; extern struct skeleton g_SkelCasing; extern struct skeleton g_Skel06; extern struct skeleton g_SkelUzi; extern struct skeleton g_SkelJoypad; extern struct skeleton g_Skel21; extern struct skeleton g_SkelLaptopGun; extern struct skeleton g_SkelK7Avenger; extern struct skeleton g_SkelFalcon2; extern struct skeleton g_SkelKnife; extern struct skeleton g_SkelCmp150; extern struct skeleton g_SkelDragon; extern struct skeleton g_SkelSuperDragon; extern struct skeleton g_SkelRocket; extern struct skeleton g_Skel4A; extern struct skeleton g_SkelShotgun; extern struct skeleton g_SkelFarsight; extern struct skeleton g_Skel4D; extern struct skeleton g_SkelReaper; extern struct skeleton g_SkelMauler; extern struct skeleton g_SkelDevastator; extern struct skeleton g_SkelPistol; extern struct skeleton g_SkelAr34; extern struct skeleton g_SkelMagnum; extern struct skeleton g_SkelSlayerRocket; extern struct skeleton g_SkelCyclone; extern struct skeleton g_SkelSniperRifle; extern struct skeleton g_SkelTranquilizer; extern struct skeleton g_SkelCrossbow; extern struct skeleton g_SkelTimedProxyMine; extern struct skeleton g_SkelPhoenix; extern struct skeleton g_SkelCallisto; extern struct skeleton g_SkelRcp120; extern struct skeleton g_SkelHudPiece; extern struct skeleton g_SkelHand; extern struct skeleton g_SkelLaser; extern struct skeleton g_SkelGrenade; extern struct skeleton g_SkelEcmMine; extern struct skeleton g_SkelUplink; extern struct skeleton g_SkelRemoteMine; extern struct skeleton g_SkelChr; extern struct skeleton g_SkelSkedar; extern struct skeleton g_SkelDrCaroll; extern struct skeleton g_Skel22; extern struct skeleton g_SkelRobot; extern struct headorbody g_HeadsAndBodies[]; extern f32 g_SkyCloudOffset; extern f32 g_SkyWindSpeed; extern f32 g_SunAlphaFracs[]; extern s32 g_SunFlareTimers240[]; extern u32 var8007dba0; extern u32 var8007dbb8; extern u32 var8007dbd0; extern struct coord g_TeleportToPos; extern struct coord g_TeleportToUp; extern struct coord g_TeleportToLook; extern struct vtxstoretype g_VtxstoreTypes[]; extern s32 g_ExplosionShakeTotalTimer; extern s32 g_ExplosionShakeIntensityTimer; extern f32 g_ExplosionDamageTxScale; extern struct sparktype g_SparkTypes[]; extern bool g_SparksAreActive; extern struct weatherdata *g_WeatherData; extern s32 g_NextShardNum; extern bool g_ShardsActive; extern bool g_WoodShardsActive; extern bool g_GlassShardsActive; extern s32 var800800f0jf; extern s32 var80080108jf; extern s32 var8007fad0; extern struct font *g_FontNumeric; extern struct fontchar *g_CharsNumeric; extern struct font *g_FontHandelGothicXs; extern struct fontchar *g_CharsHandelGothicXs; extern struct font *g_FontHandelGothicSm; extern struct fontchar *g_CharsHandelGothicSm; extern struct font *g_FontHandelGothicMd; extern struct fontchar *g_CharsHandelGothicMd; extern struct font *g_FontHandelGothicLg; extern struct fontchar *g_CharsHandelGothicLg; extern bool var8007fb9c; extern s32 g_StageIndex; extern s16 var8007fc0c; extern struct var800a4640_00 *var8007fc24; extern u16 var8007fc3c; extern s32 g_NumPortalThings; extern f32 var8007fcb4; extern struct stagetableentry g_Stages[61]; extern s32 var80082050; extern u32 g_GfxNumSwaps; extern s32 g_MpMatchIsEnding; extern s32 g_MusicEventQueueLength; extern bool g_MusicNrgIsActive; extern s32 var800840e0; extern s32 var800840e4; extern s32 g_MusicDeathTimer240; extern s32 g_MusicAge60; extern s32 g_MusicLife60; extern s32 g_MusicSilenceTimer60; extern bool g_Jpn; #if VERSION >= VERSION_PAL_BETA extern s32 g_LanguageId; #endif extern struct surfacetype *g_SurfaceTypes[15]; extern u16 *var800844f0; extern struct coord var800845dc; extern struct menudialogdef g_2PMissionInventoryHMenuDialog; extern struct menudialogdef g_2PMissionInventoryVMenuDialog; extern struct menudialogdef g_MpEndscreenChallengeCheatedMenuDialog; extern struct menudialogdef g_MpEndscreenChallengeFailedMenuDialog; extern struct menudialogdef g_MpDropOutMenuDialog; extern struct mparena g_MpArenas[]; extern struct menudialogdef g_MpWeaponsMenuDialog; extern struct menudialogdef g_MpPlayerOptionsMenuDialog; extern struct menudialogdef g_MpControlMenuDialog; extern struct menudialogdef g_MpPlayerStatsMenuDialog; extern struct menudialogdef g_MpPlayerNameMenuDialog; extern struct menudialogdef g_MpLoadSettingsMenuDialog; extern struct menudialogdef g_MpLoadPresetMenuDialog; extern struct menudialogdef g_MpLoadPlayerMenuDialog; extern struct menudialogdef g_MpArenaMenuDialog; extern struct menudialogdef g_MpLimitsMenuDialog; extern struct menudialogdef g_MpHandicapsMenuDialog; extern struct menudialogdef g_MpReadyMenuDialog; extern struct menudialogdef g_MpSimulantsMenuDialog; extern struct menudialogdef g_MpTeamsMenuDialog; extern struct menudialogdef g_MpChallengeListOrDetailsMenuDialog; extern struct menudialogdef g_MpChallengeListOrDetailsViaAdvChallengeMenuDialog; extern struct menudialogdef g_MpAdvancedSetupMenuDialog; extern struct menudialogdef g_MpQuickGoMenuDialog; extern struct menudialogdef g_MpQuickTeamGameSetupMenuDialog; extern struct menudialogdef g_MpQuickTeamMenuDialog; extern struct menudialogdef g_CombatSimulatorMenuDialog; extern struct menudialogdef g_MpCombatOptionsMenuDialog; extern struct menudialogdef g_HtbOptionsMenuDialog; extern struct menudialogdef g_CtcOptionsMenuDialog; extern struct menudialogdef g_KohOptionsMenuDialog; extern struct menudialogdef g_HtmOptionsMenuDialog; extern struct menudialogdef g_PacOptionsMenuDialog; extern struct menudialogdef g_MpScenarioMenuDialog; extern struct menudialogdef g_MpQuickTeamScenarioMenuDialog; extern s32 var80087260; extern bool g_MpEnableMusicSwitching; extern struct mpweapon g_MpWeapons[NUM_MPWEAPONS]; extern struct mphead g_MpHeads[NUM_MPHEADS]; extern struct botprofile g_BotProfiles[18]; extern struct mpbody g_MpBodies[NUM_MPBODIES]; extern struct mppreset g_MpPresets[NUM_MPPRESETS]; extern u32 g_TeamColours[]; extern u32 var80087ce4[]; extern u8 g_BotCount; extern struct aibotweaponpreference g_AibotWeaponPreferences[]; extern u32 var80087eb4; extern struct challenge g_MpChallenges[NUM_CHALLENGES]; extern u8 g_FrIsValidWeapon; extern s32 g_FrWeaponNum; extern u8 g_ChrBioSlot; extern u8 g_HangarBioSlot; extern u8 g_DtSlot; extern u8 var80088bb4; extern struct menudialogdef g_FrWeaponListMenuDialog; extern struct menudialogdef g_FrTrainingInfoInGameMenuDialog; extern struct menudialogdef g_FrTrainingInfoPreGameMenuDialog; extern struct menudialogdef g_FrCompletedMenuDialog; extern struct menudialogdef g_FrFailedMenuDialog; extern struct menudialogdef g_BioListMenuDialog; extern struct menudialogdef g_DtListMenuDialog; extern struct menudialogdef g_DtDetailsMenuDialog; extern struct menudialogdef g_DtFailedMenuDialog; extern struct menudialogdef g_DtCompletedMenuDialog; extern struct menudialogdef g_HtListMenuDialog; extern struct menudialogdef g_HtDetailsMenuDialog; extern struct menudialogdef g_HtFailedMenuDialog; extern struct menudialogdef g_HtCompletedMenuDialog; extern struct menudialogdef g_HangarListMenuDialog; extern struct defaultobj **g_ObjsByTag; #endif