The main goal was improving the readability of the original code however some ugliness remains.
- Swapped from pointer singleton to instance singleton
- Actually make use of the alpha logic that used to be present
- Added a counter to notifications to indicate if something is being spammed
- Notification timeouts reset if they're sent to the queue again
* Fixed Debug -> Locals crashing if the user added an invalid Local Read.
Fixed Debug Local addendum being way too wide on the page.
* Added the same boundary check for Debug -> Globals.
* Copied code from Debug Globals to Debug Locals.
Redesigned components::input_text to return the InputText result, and add an overloaded method to take a std::string.
Fixed Debug Globals having static text and not using components::input_text to prevent sending the input to the game.
Fixed view_debug_threads::thread_states not properly ending its string causing ImGui to read more than it should from memory.
Made Debug Globals cap the input index to UINT32, as the user could potentially overflow the get_ptr function and cause the game to crash.
* Removed extraneous does_thread_exist deceleration.