2022-03-22 02:51:23 +01:00
|
|
|
#ifndef VARIABLES_H
|
|
|
|
#define VARIABLES_H
|
|
|
|
|
|
|
|
#include "z64.h"
|
|
|
|
#include "segment_symbols.h"
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C"
|
|
|
|
{
|
|
|
|
#endif
|
|
|
|
|
|
|
|
extern u32 osTvType;
|
|
|
|
extern u32 osRomBase;
|
|
|
|
extern u32 osResetType;
|
|
|
|
extern u32 osMemSize;
|
|
|
|
extern u8 osAppNmiBuffer[0x40];
|
|
|
|
|
|
|
|
extern u8 D_80009320[];
|
|
|
|
extern u8 D_800093F0[];
|
|
|
|
extern s8 D_80009430;
|
|
|
|
extern u32 D_80009460;
|
|
|
|
extern u32 gDmaMgrDmaBuffSize;
|
|
|
|
extern vu8 gViConfigUseDefault;
|
|
|
|
extern u8 gViConfigAdditionalScanLines;
|
|
|
|
extern u32 gViConfigFeatures;
|
|
|
|
extern f32 gViConfigXScale;
|
|
|
|
extern f32 gViConfigYScale;
|
|
|
|
extern OSPiHandle* gCartHandle;
|
|
|
|
extern u32 __osPiAccessQueueEnabled;
|
|
|
|
extern OSViMode osViModePalLan1;
|
|
|
|
extern s32 osViClock;
|
|
|
|
extern u32 __osShutdown;
|
|
|
|
extern OSHWIntr __OSGlobalIntMask;
|
|
|
|
extern OSThread* __osThreadTail[];
|
|
|
|
extern OSThread* __osRunQueue;
|
|
|
|
extern OSThread* __osActiveQueue;
|
|
|
|
extern OSThread* __osRunningThread;
|
|
|
|
extern OSThread* __osFaultedThread;
|
|
|
|
extern OSPiHandle* __osPiTable;
|
|
|
|
extern OSPiHandle* __osCurrentHandle[];
|
|
|
|
extern OSTimer* __osTimerList;
|
|
|
|
extern OSViMode osViModeNtscLan1;
|
|
|
|
extern OSViMode osViModeMpalLan1;
|
|
|
|
extern OSViContext* __osViCurr;
|
|
|
|
extern OSViContext* __osViNext;
|
|
|
|
extern OSViMode osViModeFpalLan1;
|
|
|
|
extern u32 __additional_scanline;
|
Modern Menu (#5116)
* Add menu files, hook menu up to window system.
Temporarily rename new menu's UIWidgets to UIWidgets2 to allow both menu systems to coexist temporarily.
* Finish implementing new menu.
Rename 2ship UIWidgets to UIWidgets2 to complete facilitation of both menus working for now.
* More preliminary setup
* More prepwork, begin on settings options
* Finish settings, add enhancements windows
* Fix search function not looking past first columns.
* Add dev tool windows
* Finish dev tools
* Add about window
* Fully replace about window
* Remove moved menu items from menubar, add more windows to new menu
* Implement WindowButtonOptions.
Add ability to not embed popout windows when not popped out.
Add ability to hide the button for WindowButtons.
Fix Entrance Tracker from showing when not enabled.
* Fix entrance tracker settings embedded display.
Fix entrance tracker settings window original size declaration.
* Initial implementation of themed radio button widget.
* Move "About" section to second column of general.
Fix sidebar sections starting in second column.
* Restore Entrance Tracker `Draw()` to allow for custom styling.
* Fix combobox positioning formatting.
Fix color picker end spacing.
Convert everything in check tracker settings to UIWidgets2 (except color pickers and section headers).
Make all tracker windows not embed.
* Minor cleanup
* Fix main volume defaults & mirror jitter fix removal on dev
* Improve color picker with RGB/RGBA options. Not finished.
* Finish creating CVarColorPicker and implement for Check Tracker background color.
Fix tracker and network prefixes.
* Finish check tracker settings and convert check tracker.
* Port all Cheats menu except for Beta Quest
* Port over Beta Quest to new menu
* Remove old cheats menu
* Port cutscene skips to modern menu
* Port Timesaver Enhancements to new menu
* Port the Items and Item Count Messages submenu
* Port Difficulty Options to new Menu
* Removes options that have been ported thus far.
* Port "Reduced Clutter" options to new menu
* Add forgotten callbacks to Hyper Enemies/Bosses
* Copy StateButton to UIWidgets2, and implement custom padding for them in the tracker.
* Ports some pause menu related settinga
* Change tracker window active title color.
Make state buttons smaller in tracker to get more info on screen.
* Convert window title active theming to all windows.
* Port the rest of Enhancements->Gameplay to new menu
* Port the "Graphics" Enhancements to new menu
* Ports Fixes over to the Modern Menu
* Ported Restorations to Modern Menu
* Ported Extra Modes to new menu
* Port Autosave and Boot Sequence to modern menu
* Cleans up some leftover data for ported buttons
* Ports Enhancement Presets to new menu
* Port Additional timers to new menu. Removes Enhancements from old menu
* Cleans up some unused stuff
* Ports Randomizer Enhancements to modern menu
* Convert Item Tracker Settings. Something's wrong with the comboboxes in a second column of a table.
* Fix combobox alignment and label position calculations.
* Convert Entrance Tracker window.
* Save Editor Info tab finished.
Added `PushStyleInput` and `PushStyleTabs` for Info tab.
Fixed some indentation in entrance tracker source.
Added font push to tracker windows.
* Increase size of all icons in save editor.
* Convert flag groups to child windows for automatic sizing and border drawing.
* Flags tab completed.
Finished inventory tab.
* Convert save editor help hover to UIWidgets2.
* Various fixes and corrections
* Start cosmetics editor, fix theme colors not updating
* Cosmetics editor conversion progress
* Remove Mac internal resolution restrictions.
* Copy over advanced resolution partial and enable most options as a custom widget.
* Add size to float sliders, more cosmetics editor progress
* Fix incorrect cvar for notifications
* Radio button & header color options, more cosmetics editor progress
* Finish cosmetics editor conversion
* Create and apply THEME_COLOR macro. Resides in SohGui for easy access to mSohMenu.
* Move ResolutionEditor to SohGui directory.
* Add labels to build info.
Fix slider width calculations.
* Fix some advanced resolution widget hiding.
* Fully implement Advanced Resolution options.
Fix graphics settings formatting.
Improve slider label position calculations.
Implement Clamp options on sliders.
* Finish save editor.
Convert save editor code to `using namespace UIWidgets2`.
Fix search crashing on time splits window.
Remove `SetLastItemHoverText` from `UIWidgets2`.
* Unify cvar sectioning in time splits.
* Add InputString and InputInt widgets, and corresponding CVar Widgets
* Adds Widget Type for Inputs, not currently used.
* Convert Sail to modern menu
* Add Combobox that takes a vector of std::strings
* Convert checkbox and combobx to new widgets
* Add Tristate checkbox
* Convert sliders and tristate checkboxes
* Convert top half of Rando window
* remove/replace remainder of UIWidgets usage in option.cpp
* Converts tricks, locations, and removes old UIWidgets refs
* Fix windows build errors
* Remove Tri-State checkboxes
* Use PushStyleInput instead of PushStyleSlider
lol oops didn't realize it was a thing in Ship.
* Rebase and address review comments
* Convert Crowd Control to modern menu.
* Fix build error
* Audio editor progress
* Re-add CVar SaveOnNextFrame calls to Resolution Editor.
Remove old Resolution Editor files.
* Convert TimeSplits to new menu.
Fix a few enum warnings.
* Decrease padding on Arrow Buttons
* Audio editor + gameplay stats done
* Give Randomizer Menu more screen real-estate
* Port plandomizer menu
* Fix slider width calculation and allow combobox LabelPosition::None
* Fix None labelPos and slider width for inline labels
* Fix all slider value label insertions.
Convert Collision Viewer.
* Minor Collision Viewer enum change.
Convert Actor Viewer.
* Theme/convert Message Viewer.
* Add font to Message Viewer.
Theme Value Viewer.
* DL Viewer and SohModals themed.
* Convert Input Viewer.
* Missed some color settings in Input Viewer.
Removed UIWidgets references from Controller Config, and restored SoH version.
* Remove UIWidgets.hpp include from multiple files.
* Completely remove old UIWidgets.
Rename UIWidgets2 to UIWidgets.
Move Accessibility and Language options to new menu.
* Fix Gfx Debugger not showing up.
Remove menubar registration.
* Fix clearCvars references.
* Fix passing std::string to const char* argument.
* enum name spacing
---------
Co-authored-by: aMannus <mannusmenting@gmail.com>
Co-authored-by: Christopher Leggett <chris@leggett.dev>
2025-03-15 16:11:30 -07:00
|
|
|
extern const char gBuildVersion[];
|
2023-11-05 12:34:39 -05:00
|
|
|
extern u16 gBuildVersionMajor;
|
|
|
|
extern u16 gBuildVersionMinor;
|
|
|
|
extern u16 gBuildVersionPatch;
|
Modern Menu (#5116)
* Add menu files, hook menu up to window system.
Temporarily rename new menu's UIWidgets to UIWidgets2 to allow both menu systems to coexist temporarily.
* Finish implementing new menu.
Rename 2ship UIWidgets to UIWidgets2 to complete facilitation of both menus working for now.
* More preliminary setup
* More prepwork, begin on settings options
* Finish settings, add enhancements windows
* Fix search function not looking past first columns.
* Add dev tool windows
* Finish dev tools
* Add about window
* Fully replace about window
* Remove moved menu items from menubar, add more windows to new menu
* Implement WindowButtonOptions.
Add ability to not embed popout windows when not popped out.
Add ability to hide the button for WindowButtons.
Fix Entrance Tracker from showing when not enabled.
* Fix entrance tracker settings embedded display.
Fix entrance tracker settings window original size declaration.
* Initial implementation of themed radio button widget.
* Move "About" section to second column of general.
Fix sidebar sections starting in second column.
* Restore Entrance Tracker `Draw()` to allow for custom styling.
* Fix combobox positioning formatting.
Fix color picker end spacing.
Convert everything in check tracker settings to UIWidgets2 (except color pickers and section headers).
Make all tracker windows not embed.
* Minor cleanup
* Fix main volume defaults & mirror jitter fix removal on dev
* Improve color picker with RGB/RGBA options. Not finished.
* Finish creating CVarColorPicker and implement for Check Tracker background color.
Fix tracker and network prefixes.
* Finish check tracker settings and convert check tracker.
* Port all Cheats menu except for Beta Quest
* Port over Beta Quest to new menu
* Remove old cheats menu
* Port cutscene skips to modern menu
* Port Timesaver Enhancements to new menu
* Port the Items and Item Count Messages submenu
* Port Difficulty Options to new Menu
* Removes options that have been ported thus far.
* Port "Reduced Clutter" options to new menu
* Add forgotten callbacks to Hyper Enemies/Bosses
* Copy StateButton to UIWidgets2, and implement custom padding for them in the tracker.
* Ports some pause menu related settinga
* Change tracker window active title color.
Make state buttons smaller in tracker to get more info on screen.
* Convert window title active theming to all windows.
* Port the rest of Enhancements->Gameplay to new menu
* Port the "Graphics" Enhancements to new menu
* Ports Fixes over to the Modern Menu
* Ported Restorations to Modern Menu
* Ported Extra Modes to new menu
* Port Autosave and Boot Sequence to modern menu
* Cleans up some leftover data for ported buttons
* Ports Enhancement Presets to new menu
* Port Additional timers to new menu. Removes Enhancements from old menu
* Cleans up some unused stuff
* Ports Randomizer Enhancements to modern menu
* Convert Item Tracker Settings. Something's wrong with the comboboxes in a second column of a table.
* Fix combobox alignment and label position calculations.
* Convert Entrance Tracker window.
* Save Editor Info tab finished.
Added `PushStyleInput` and `PushStyleTabs` for Info tab.
Fixed some indentation in entrance tracker source.
Added font push to tracker windows.
* Increase size of all icons in save editor.
* Convert flag groups to child windows for automatic sizing and border drawing.
* Flags tab completed.
Finished inventory tab.
* Convert save editor help hover to UIWidgets2.
* Various fixes and corrections
* Start cosmetics editor, fix theme colors not updating
* Cosmetics editor conversion progress
* Remove Mac internal resolution restrictions.
* Copy over advanced resolution partial and enable most options as a custom widget.
* Add size to float sliders, more cosmetics editor progress
* Fix incorrect cvar for notifications
* Radio button & header color options, more cosmetics editor progress
* Finish cosmetics editor conversion
* Create and apply THEME_COLOR macro. Resides in SohGui for easy access to mSohMenu.
* Move ResolutionEditor to SohGui directory.
* Add labels to build info.
Fix slider width calculations.
* Fix some advanced resolution widget hiding.
* Fully implement Advanced Resolution options.
Fix graphics settings formatting.
Improve slider label position calculations.
Implement Clamp options on sliders.
* Finish save editor.
Convert save editor code to `using namespace UIWidgets2`.
Fix search crashing on time splits window.
Remove `SetLastItemHoverText` from `UIWidgets2`.
* Unify cvar sectioning in time splits.
* Add InputString and InputInt widgets, and corresponding CVar Widgets
* Adds Widget Type for Inputs, not currently used.
* Convert Sail to modern menu
* Add Combobox that takes a vector of std::strings
* Convert checkbox and combobx to new widgets
* Add Tristate checkbox
* Convert sliders and tristate checkboxes
* Convert top half of Rando window
* remove/replace remainder of UIWidgets usage in option.cpp
* Converts tricks, locations, and removes old UIWidgets refs
* Fix windows build errors
* Remove Tri-State checkboxes
* Use PushStyleInput instead of PushStyleSlider
lol oops didn't realize it was a thing in Ship.
* Rebase and address review comments
* Convert Crowd Control to modern menu.
* Fix build error
* Audio editor progress
* Re-add CVar SaveOnNextFrame calls to Resolution Editor.
Remove old Resolution Editor files.
* Convert TimeSplits to new menu.
Fix a few enum warnings.
* Decrease padding on Arrow Buttons
* Audio editor + gameplay stats done
* Give Randomizer Menu more screen real-estate
* Port plandomizer menu
* Fix slider width calculation and allow combobox LabelPosition::None
* Fix None labelPos and slider width for inline labels
* Fix all slider value label insertions.
Convert Collision Viewer.
* Minor Collision Viewer enum change.
Convert Actor Viewer.
* Theme/convert Message Viewer.
* Add font to Message Viewer.
Theme Value Viewer.
* DL Viewer and SohModals themed.
* Convert Input Viewer.
* Missed some color settings in Input Viewer.
Removed UIWidgets references from Controller Config, and restored SoH version.
* Remove UIWidgets.hpp include from multiple files.
* Completely remove old UIWidgets.
Rename UIWidgets2 to UIWidgets.
Move Accessibility and Language options to new menu.
* Fix Gfx Debugger not showing up.
Remove menubar registration.
* Fix clearCvars references.
* Fix passing std::string to const char* argument.
* enum name spacing
---------
Co-authored-by: aMannus <mannusmenting@gmail.com>
Co-authored-by: Christopher Leggett <chris@leggett.dev>
2025-03-15 16:11:30 -07:00
|
|
|
extern const char gGitBranch[];
|
|
|
|
extern const char gGitCommitHash[];
|
2024-08-23 16:17:45 +02:00
|
|
|
extern u8 gGitCommitTag[];
|
|
|
|
extern u8 gBuildTeam[];
|
2022-03-22 02:51:23 +01:00
|
|
|
extern u8 gBuildDate[];
|
|
|
|
extern u8 gBuildMakeOption[];
|
|
|
|
extern OSMesgQueue gPiMgrCmdQ;
|
|
|
|
extern OSViMode gViConfigMode;
|
|
|
|
extern u8 D_80013960;
|
|
|
|
extern OSMesgQueue __osPiAccessQueue;
|
|
|
|
extern OSPiHandle __Dom1SpeedParam;
|
|
|
|
extern OSPiHandle __Dom2SpeedParam;
|
|
|
|
extern OSTime __osCurrentTime;
|
|
|
|
extern u32 __osBaseCounter;
|
|
|
|
extern u32 __osViIntrCount;
|
|
|
|
extern u32 __osTimerCounter;
|
|
|
|
extern DmaEntry gDmaDataTable[0x60C];
|
|
|
|
extern u64 D_801120C0[];
|
|
|
|
extern u8 D_80113070[];
|
|
|
|
extern u64 gJpegUCode[];
|
|
|
|
extern EffectSsOverlay gEffectSsOverlayTable[EFFECT_SS_TYPE_MAX];
|
|
|
|
extern Gfx D_80116280[];
|
|
|
|
extern s32 gDbgCamEnabled;
|
|
|
|
extern GameStateOverlay gGameStateOverlayTable[6];
|
|
|
|
extern u8 gWeatherMode;
|
|
|
|
extern u8 D_8011FB34;
|
|
|
|
extern u8 D_8011FB38;
|
|
|
|
extern u8 gSkyboxBlendingEnabled;
|
|
|
|
extern u16 gTimeIncrement;
|
|
|
|
extern struct_8011FC1C D_8011FC1C[][9];
|
|
|
|
extern SkyboxFile gSkyboxFiles[];
|
|
|
|
extern s32 gZeldaArenaLogSeverity;
|
|
|
|
extern MapData gMapDataTable;
|
|
|
|
extern s16 gSpoilingItems[3];
|
|
|
|
extern s16 gSpoilingItemReverts[3];
|
|
|
|
extern FlexSkeletonHeader* gPlayerSkelHeaders[2];
|
2023-10-27 01:38:43 +01:00
|
|
|
extern u8 gPlayerModelTypes[PLAYER_MODELGROUP_MAX][PLAYER_MODELGROUPENTRY_MAX];
|
2023-09-15 13:39:46 -05:00
|
|
|
extern Gfx* gPlayerLeftHandBgsDLs[];
|
|
|
|
extern Gfx* gPlayerLeftHandOpenDLs[];
|
|
|
|
extern Gfx* gPlayerLeftHandClosedDLs[];
|
|
|
|
extern Gfx* gPlayerLeftHandBoomerangDLs[];
|
2022-03-22 02:51:23 +01:00
|
|
|
extern Gfx gCullBackDList[];
|
|
|
|
extern Gfx gCullFrontDList[];
|
|
|
|
extern Gfx gEmptyDL[];
|
|
|
|
extern u32 gBitFlags[32];
|
|
|
|
extern u16 gEquipMasks[4];
|
|
|
|
extern u16 gEquipNegMasks[4];
|
|
|
|
extern u32 gUpgradeMasks[8];
|
2024-08-01 21:24:24 -07:00
|
|
|
extern u32 gUpgradeNegMasks[8];
|
2022-03-22 02:51:23 +01:00
|
|
|
extern u8 gEquipShifts[4];
|
|
|
|
extern u8 gUpgradeShifts[8];
|
|
|
|
extern u16 gUpgradeCapacities[8][4];
|
|
|
|
extern u32 gGsFlagsMasks[4];
|
|
|
|
extern u32 gGsFlagsShifts[4];
|
|
|
|
extern void* gItemIcons[0x82];
|
2022-04-25 15:19:00 -05:00
|
|
|
extern u8 gItemAgeReqs[];
|
2023-05-21 09:13:38 -07:00
|
|
|
extern u8 gSlotAgeReqs[];
|
2022-03-22 02:51:23 +01:00
|
|
|
extern u8 gItemSlots[56];
|
2022-11-06 02:24:34 -06:00
|
|
|
extern void (*gSceneCmdHandlers[SCENE_CMD_ID_MAX])(PlayState*, SceneCmd*);
|
2022-03-22 02:51:23 +01:00
|
|
|
extern s16 gLinkObjectIds[2];
|
|
|
|
extern u32 gObjectTableSize;
|
|
|
|
extern RomFile gObjectTable[OBJECT_ID_MAX];
|
2023-11-19 19:29:56 +00:00
|
|
|
extern EntranceInfo gEntranceTable[ENTR_MAX];
|
2022-03-22 02:51:23 +01:00
|
|
|
extern SceneTableEntry gSceneTable[SCENE_ID_MAX];
|
|
|
|
extern u16 gSramSlotOffsets[];
|
|
|
|
// 4 16-colors palettes
|
|
|
|
extern u64 gMojiFontTLUTs[4][4]; // original name: "moji_tlut"
|
|
|
|
extern u64 gMojiFontTex[]; // original name: "font_ff"
|
|
|
|
extern KaleidoMgrOverlay gKaleidoMgrOverlayTable[KALEIDO_OVL_MAX];
|
|
|
|
extern KaleidoMgrOverlay* gKaleidoMgrCurOvl;
|
|
|
|
extern u8 gBossMarkState;
|
2024-11-07 11:52:21 -05:00
|
|
|
extern void* gDebugCutsceneScript;
|
2022-03-22 02:51:23 +01:00
|
|
|
extern s32 gScreenWidth;
|
|
|
|
extern s32 gScreenHeight;
|
|
|
|
extern Mtx gMtxClear;
|
|
|
|
extern MtxF gMtxFClear;
|
|
|
|
extern u32 gIsCtrlr2Valid;
|
|
|
|
extern vu32 gIrqMgrResetStatus;
|
|
|
|
extern volatile OSTime gIrqMgrRetraceTime;
|
|
|
|
extern s16* gWaveSamples[9];
|
|
|
|
extern f32 gBendPitchOneOctaveFrequencies[256];
|
|
|
|
extern f32 gBendPitchTwoSemitonesFrequencies[256];
|
|
|
|
extern f32 gNoteFrequencies[];
|
|
|
|
extern u8 gDefaultShortNoteVelocityTable[16];
|
|
|
|
extern u8 gDefaultShortNoteGateTimeTable[16];
|
|
|
|
extern AdsrEnvelope gDefaultEnvelope[4];
|
|
|
|
extern NoteSubEu gZeroNoteSub;
|
|
|
|
extern NoteSubEu gDefaultNoteSub;
|
|
|
|
extern u16 gHeadsetPanQuantization[64];
|
|
|
|
extern s16 D_8012FBA8[];
|
|
|
|
extern f32 gHeadsetPanVolume[128];
|
|
|
|
extern f32 gStereoPanVolume[128];
|
|
|
|
extern f32 gDefaultPanVolume[128];
|
|
|
|
extern s16 sLowPassFilterData[16 * 8];
|
|
|
|
extern s16 sHighPassFilterData[15 * 8];
|
|
|
|
extern s32 gAudioContextInitalized;
|
|
|
|
extern u8 gIsLargeSoundBank[7];
|
|
|
|
extern u8 gChannelsPerBank[4][7];
|
|
|
|
extern u8 gUsedChannelsPerBank[4][7];
|
|
|
|
extern u8 gMorphaTransposeTable[16];
|
|
|
|
extern u8* gFrogsSongPtr;
|
|
|
|
extern OcarinaNote* gScarecrowCustomSongPtr;
|
|
|
|
extern u8* gScarecrowSpawnSongPtr;
|
|
|
|
extern OcarinaSongInfo gOcarinaSongNotes[];
|
|
|
|
extern SoundParams* gSoundParams[7];
|
|
|
|
extern char D_80133390[];
|
|
|
|
extern char D_80133398[];
|
|
|
|
extern SoundBankEntry* gSoundBanks[7];
|
|
|
|
extern u8 gSfxChannelLayout;
|
2024-11-08 22:36:57 -05:00
|
|
|
extern Vec3f gSfxDefaultPos;
|
|
|
|
extern f32 gSfxDefaultFreqAndVolScale;
|
|
|
|
extern s8 gSfxDefaultReverb;
|
2022-03-22 02:51:23 +01:00
|
|
|
extern u8 D_801333F0;
|
|
|
|
extern u8 gAudioSfxSwapOff;
|
|
|
|
extern u8 D_80133408;
|
|
|
|
extern u8 D_8013340C;
|
|
|
|
extern u8 gAudioSpecId;
|
|
|
|
extern u8 D_80133418;
|
|
|
|
extern AudioSpec gAudioSpecs[18];
|
|
|
|
extern s32 gOverlayLogSeverity;
|
|
|
|
extern s32 gSystemArenaLogSeverity;
|
|
|
|
extern u8 __osPfsInodeCacheBank;
|
|
|
|
extern s32 __osPfsLastChannel;
|
2022-10-20 20:55:15 -07:00
|
|
|
extern u8 gWalkSpeedToggle1;
|
|
|
|
extern u8 gWalkSpeedToggle2;
|
2022-12-21 05:32:01 +01:00
|
|
|
extern f32 iceTrapScale;
|
2023-09-26 15:45:37 +02:00
|
|
|
extern f32 triforcePieceScale;
|
Rando Enhancement: Mysterious Shuffled Items (#3227)
* Add rando enhancement "Mysterious Shuffled Items", which obfuscates shuffled freestanding/drawn-in-world items (PoH, tokens, shop items) with a custom question mark model (thanks Hato), and uses the "mysterious item" functionality of `GetMerchantMessage` for everything that supports it, regardless of hint status on generation.
* Reverted back to rando enhancement, but added condition for Mysterious Shuffle not being on for the gem rotation fix to apply.
* First attempt at changing to fake GetItemEntry instead of directly calling the mystery draw function. Needs more work.
* Updated CVar to reflect CVar rework values.
Added `IsCheckShuffled` as preliminary function for checking *only* if a check is shuffled, not necessarily if it is just visible on the tracker. This accounts for the difference between tokensanity and "Always Show GS On Tracker", where you don't want to obfuscate the latter.
* Bit of cleanup.
* Cross-platform building edits. If anyone has a better idea of how to handle this fake GIE, I'm all ears.
* Update to CVar macros.
* Fix freestanding item gives.
Fix mysterious item model colors.
* Fix bombchu bowling mystery.
* Remove bowling bomchus check obfuscation (unused, removed in v3).
2024-05-06 17:17:08 -07:00
|
|
|
extern f32 mysteryItemScale;
|
|
|
|
|
2022-03-22 02:51:23 +01:00
|
|
|
extern const s16 D_8014A6C0[];
|
|
|
|
#define gTatumsPerBeat (D_8014A6C0[1])
|
|
|
|
extern const AudioContextInitSizes D_8014A6C4;
|
|
|
|
extern s16 gOcarinaSongItemMap[];
|
|
|
|
extern u8 D_80155F50[];
|
|
|
|
extern u8 D_80157580[];
|
|
|
|
extern u8 D_801579A0[];
|
|
|
|
extern u64 gJpegUCodeData[];
|
|
|
|
|
|
|
|
extern SaveContext gSaveContext;
|
|
|
|
extern GameInfo* gGameInfo;
|
|
|
|
extern u16 D_8015FCC0;
|
|
|
|
extern u16 D_8015FCC2;
|
|
|
|
extern u16 D_8015FCC4;
|
|
|
|
extern u8 D_8015FCC8;
|
|
|
|
extern u8 gCustomLensFlareOn;
|
|
|
|
extern Vec3f gCustomLensFlarePos;
|
|
|
|
extern s16 gLensFlareScale;
|
|
|
|
extern f32 gLensFlareColorIntensity;
|
|
|
|
extern s16 gLensFlareScreenFillAlpha;
|
|
|
|
extern LightningStrike gLightningStrike;
|
|
|
|
extern MapData* gMapData;
|
|
|
|
extern f32 gBossMarkScale;
|
|
|
|
extern PauseMapMarksData* gLoadedPauseMarkDataTable;
|
|
|
|
extern s32 gTrnsnUnkState;
|
2024-11-09 12:51:31 -05:00
|
|
|
extern Color_RGBA8_u32 gVisMonoColor;
|
2022-03-22 02:51:23 +01:00
|
|
|
extern PreNmiBuff* gAppNmiBufferPtr;
|
|
|
|
extern SchedContext gSchedContext;
|
|
|
|
extern PadMgr gPadMgr;
|
|
|
|
extern uintptr_t gSegments[NUM_SEGMENTS];
|
|
|
|
extern volatile OSTime D_8016A520;
|
|
|
|
extern volatile OSTime D_8016A528;
|
|
|
|
extern volatile OSTime D_8016A530;
|
|
|
|
extern volatile OSTime D_8016A538;
|
|
|
|
extern volatile OSTime D_8016A540;
|
|
|
|
extern volatile OSTime D_8016A548;
|
|
|
|
extern volatile OSTime D_8016A550;
|
|
|
|
extern volatile OSTime D_8016A558;
|
|
|
|
extern volatile OSTime gRSPAudioTotalTime;
|
|
|
|
extern volatile OSTime gRSPGFXTotalTime;
|
|
|
|
extern volatile OSTime gRSPOtherTotalTime;
|
|
|
|
extern volatile OSTime gRDPTotalTime;
|
|
|
|
extern FaultThreadStruct gFaultStruct;
|
|
|
|
|
2022-10-20 20:55:15 -07:00
|
|
|
extern ActiveSound gActiveSounds[7][MAX_CHANNELS_PER_BANK]; // total size = 0xA8
|
|
|
|
extern u8 gSoundBankMuted[];
|
|
|
|
extern u8 D_801333F0;
|
|
|
|
extern u8 gAudioSfxSwapOff;
|
|
|
|
extern u16 gAudioSfxSwapSource[10];
|
|
|
|
extern u16 gAudioSfxSwapTarget[10];
|
|
|
|
extern u8 gAudioSfxSwapMode[10];
|
2023-12-26 13:30:49 -05:00
|
|
|
extern ActiveSequence gActiveSeqs[4];
|
2022-10-20 20:55:15 -07:00
|
|
|
extern AudioContext gAudioContext;
|
|
|
|
extern void(*D_801755D0)(void);
|
2022-03-22 02:51:23 +01:00
|
|
|
|
|
|
|
extern u32 __osMalloc_FreeBlockTest_Enable;
|
|
|
|
extern Arena gSystemArena;
|
|
|
|
extern OSPifRam __osPifInternalBuff;
|
|
|
|
extern u8 __osContLastPoll;
|
|
|
|
extern u8 __osMaxControllers;
|
|
|
|
extern __OSInode __osPfsInodeCache;
|
|
|
|
extern OSPifRam gPifMempakBuf;
|
|
|
|
extern u16 gZBuffer[SCREEN_HEIGHT][SCREEN_WIDTH]; // 0x25800 bytes
|
|
|
|
extern u64 gGfxSPTaskOutputBuffer[0x3000]; // 0x18000 bytes
|
|
|
|
extern u8 gGfxSPTaskYieldBuffer[OS_YIELD_DATA_SIZE]; // 0xC00 bytes
|
|
|
|
extern u8 gGfxSPTaskStack[0x400]; // 0x400 bytes
|
|
|
|
extern GfxPool gGfxPools[2]; // 0x24820 bytes
|
2022-04-02 13:47:22 +02:00
|
|
|
extern u8* gAudioHeap;
|
|
|
|
extern u8* gSystemHeap;
|
2025-02-01 23:33:04 -08:00
|
|
|
extern GameState* gGameState;
|
2022-03-22 02:51:23 +01:00
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
};
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|