* Bump LUS to include FileDropMgr's new registration system and initial cursor visibility changes.
* New LUS ref.
* Remove default on for cursor always visible.
Add option to camera controls next to enable mouse input for autocapture.
Set autocapture on startup.
* next LUS
* clang again
* Add "EnableMouse" CVar check to startup SetAutoCaptureMouse.
* Back to LUS main.
* lus version with fixes we need
* very wip
* get it building
* soh otr
* bump lus before fixing soh side stuff
* build
* still builds
* mac error
* bump otrexporter
* bump to lus main
* upstream otrexporter
---------
Co-authored-by: Malkierian <malkierian@gmail.com>
Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
* Implement widget search exclusion.
Exclude all external windows from the search.
* Add second column to search results for non-widget results.
* Implement extra search index.
Add various controls, audio editor, and tracker options to the extra search index.
Fix capitalization on a few options.
Add click-to-view functionality to extra search column.
* Add extraSearchWidgets for searching through non-menu widgets.
Convert Controls extraSearches to widgets. Used to display in-window, as well as provide reference to extraSearchWidgets.
* Swap Audio search to menu widget search system.
* Fix missing static on a ShipInit instance.
* Implement SearchWidgets in popout windows.
Remove remaining vestiges of custom search.
* Add SearchWidget for randomizing audio on seed gen.
* Remove comments on color picker entries in WidgetType.
* Put all search results in middle column for width management.
Change combobox alignment and label position in search results to unify them all to left and above for better organization.
Add "Search Results" text to header of results page for clarification.
* clang
* Add presets sidebar, proof of concept row-based listing.
* Complete and unify section check/x drawing.
* Add error state to InputString, and corresponding members and builders to InputOptions.
Implement saving and loading of preset files.
* Implement `Config::SetBlock()`.
Implement Apply.
Implement Delete.
Some json structure changes.
* Apply `CVarClear()` calls in CVar-prefixed widget functions.
* Comment out satellite preset pickers for now.
* clang
* Fix ButtonOptions initializer list.
* I hate clang...
* Loop new preset checkbox creation.
Restore auto-resizing to new preset popup.
Remove errant BeginDisabled in randomizer (merge artifact?).
* Add BlockInfo struct to make array with all info for each block.
Setup loops for all other same-ish situations (applying presets, setting up columns, etc) based on blockInfo.
* Save tracker windows info for later restoration.
Lay the groundwork for said restoration.
* Complete tracker window restoration on preset application.
* Fix RadioButtonsOptions builder parameter type.
Add race lockout to new and apply buttons.
* Revert application of CVarClear on UIWidgets widgets (need to preserve manually-set default states).
* Remove enhancements satellite picker.
Swap randomizer satellite picker to use the manager presets, only displays presets with randomizer section included.
Move built-in presets to the asset archive, and remove delete button on them.
Remove PresetEntries.cpp.
* Fix locations and tricks tabs not updating live when applying preset with new system.
* Apply RandoGenerating lockout to rando preset Apply button.
* Fix new presets not being properly filtered in satellite selectors.
* Fix currently selected presets getting deleted still being selected in satellite selectors.
* Change BigPoeTargetCount in preset files to 1.
* Handle virtually all warnings in `soh/Enhancements/randomizer`.
Handle order of operations warning in FasterHeavyBlockLift.
* Missed a few.
* Add float-specific versions of some M_PI and M_SQRT defines, and swap them in for the static casts in draw.cpp.
* Swap a static cast for M_PIf in check tracker code.
* Modify the flow for applying opacity to docked tracker windows only when they are docked to the "Main - Deck" dockspace.
* Add opacity clamping for check tracker.
* First pass cheats, extra modes, minigames, difficulty, fixes, graphics
* More progress. One tab left
* Enhancements & cheats done and fix for item tracker font
* 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>
* Basic restructure
* Undo most randomizerInf changes for now
* Small fixes
* Fix linux & mac builds?
* Fix remnants of randomizerInf changes
* Post-merge fix
* Post-merge fix
* Remove unused headers
* Move all "ResourceMgr_" functions to a new file
* Don't transitively include SaveManager
* Move cvar prefixes to a new header
* Add missing includes
* Update OTRGlobals.cpp
* Fix build
* Address review
* Fix some of the errors
* Update gameplaystats.h
* Update z_en_in.c
* Hopefully fix the linux issues
* Fix Linux issues for real this time, I checked
* Update ResourceManagerHelpers.cpp
* Update z_obj_mure2.c
* Post-merge fixes
* Fix build (hopefully)
* Post-merge fixes
* Update z_file_nameset_PAL.c
* cleanup some unnecessary headers (#7)
---------
Co-authored-by: Archez <Archez@users.noreply.github.com>
* Format shops.cpp
* Add 5, 6 & 7 item shopsanity
* Guarantee a bombchu refill
* Fish first shop item index
* Clean up NonShopItems
* Split count options
* Improve item ordering
Ensure potions, blue fire and fairy on shopsanity 6 and less.
There are no hearts in the first 28 items (the ones from n64 rando).
* Post-merge fixes
* Converted all GuiWindows to the new separate Begin/End format in current LUS except InputViewer, CheckTracker, ItemTracker and Modals.
* Setup Check, Entrance, Item trackers and Input Viewer to override `Draw()` to bypass the ImGui Begin and End, as they're not intended to go in the modern menu.
* Cleanup.
* Standardized CVar macros to have `CVAR_` at the front instead of the end.
Removed excluded and replaced sequence macros.
* Missed a few developer CVars outside of `SohMenuBar.cpp`
* 1 more.
* Add all macros.
Replace all randomizer seed setting CVars with appropriate macro.
Cleaned up non-gameplay-critical things that are part of Spock Race rando presets (like RTA timing, displaying timer, displaying the glitch lineup tick, or Fast File Select).
* Wrong slash...
* Fix DEVELOPER_CVAR macro.
Add GENERAL_CVAR macro.
* Change Item Tracker CVars, including open window CVar.
* Swapped open window CVars.
* Swapped Entrance Tracker CVars.
* Swapped Check Tracker CVars.
Changed Item Tracker "HudEditMode" to "Draggable".
* Renamed `RANDOMIZER_CVAR` to `RANDO_ENHANCEMENT_CVAR`.
Swapped rando enhancement CVars.
* Mirroring last commit from part 1 in randomizer.cpp
* Another mirror from pt 1
* Clean up grayed out items in file select.
Tie personal notes saving to `OnExitGame()` to account for save scum resets.
Hide text input box (but not window) for personal notes when a save isn't loaded to prevent saving over a save's notes while in file select.
* Allow check tracker window to be visible and show the "Waiting for file load..." text in file select (ease of positioning).
* Fix key label text placement.
* Persist `areasSpoiled`, change trigger to `OnSceneTransition`.
Add `IsAreaSpoiled` for tie-in to Item Tracker.
Add `SetAreaSpoiled` to unify bitmagic.
* Add proper spoiling evaluation based on specific entrance IDs, or first check collection.
Add light yellow color for vanilla dungeon abbreviations to match the purple for MQ.
* Initialize `areasSpoiled` to 0, so 0 gets saved on file create.
* All new conditional statements around `GameInteractor::IsSaveLoaded()` were inverted. Fixed that.
* Change some c-style casts to `static_cast`.
* Few more cleanups, plus clarifying comment.
* Moves personal notes to the save file under a new itemTracker save section.
* Update soh/soh/Enhancements/randomizer/randomizer_item_tracker.cpp
---------
Co-authored-by: Archez <Archez@users.noreply.github.com>