Commit Graph

838 Commits

Author SHA1 Message Date
scawful
c8883a1e54 Remove unused includes and clean up header files 2025-01-16 03:44:37 -05:00
scawful
d9cc92edca Add ParseMessageData to message data helper fns 2025-01-09 21:23:14 -05:00
scawful
e13cdcbf4b Add DrawDungeonMapsRoomGfx 2025-01-06 21:39:27 -05:00
scawful
40a09f17e9 re-render graphics injected into tile16 editor 2025-01-06 21:38:59 -05:00
scawful
7ad0672e74 Wrap overworld sprite graphics draw in experiment flag 2025-01-06 21:38:42 -05:00
scawful
013edb3fae update yaze public header, remove sprite.h, add z3_dungeon_sprite 2025-01-06 16:21:37 -05:00
scawful
6bf8b62d64 Merge remote-tracking branch 'refs/remotes/origin/master'
Merge changes made on visual studio repo.
2025-01-06 11:13:29 -05:00
Justin Scofield
88198323b3 Refactor ROM handling and update Overworld methods
Updated MessageEditor, RoomEntrance, and Overworld classes to use WriteByte instead of Write for byte values. Refactored ROM class by removing Write and toint16 methods, moving constants, and updating operator[]. Modified Overworld methods to return absl::Status and handle errors. Updated Inventory and OverworldMap methods to use ReadWord instead of toint16.
2025-01-05 21:19:53 -05:00
Justin Scofield
f625fc94b3 Updated GraphicsEditor and Tile16Editor to use std::array instead of std::vector for better performance. 2025-01-05 20:54:19 -05:00
Justin Scofield
02a86c41da Refactored EditorManager to consolidate popup drawing methods into a single DrawPopups method and added a DrawMenuBar method. Replaced DrawYazeMenu with DrawHomepage for displaying a welcome message and options for opening a ROM. Introduced a LoadRom method to handle ROM loading and updated related methods to set the current_rom_ pointer. Added settings_editor_ to the list of active editors. 2025-01-05 20:54:02 -05:00
Justin Scofield
31217e1c5c Refactor flags and add Font Manager to settings editor
Simplified `ExperimentFlags` by removing unused flags and updated
`Controller` to no longer inherit from it. Refactored `FlagsMenu`
to separate flag categories into individual methods for better
organization. Enhanced settings editor with a new "Font Manager"
tab and updated `DrawGeneralSettings` to use the new flag category
methods. Added `DrawFontManager` function for font management.
2025-01-05 11:58:45 -05:00
Justin Scofield
2d9f4be91d Refactor and add default values to various structs
- Removed `FindMatchingCharacter` declaration from `message_data.h`
- Added default values to `DictionaryEntry` and `MessageData` members
- Marked several methods in `DictionaryEntry`, `MessageData`, and `TextElement` as `const`
- Updated `TextElement` constructor to take `const std::string&`
- Added string constants for text descriptions in `TextElement`
- Updated `TextCommands` vector to use new string constants
- Declared new function `FindMatchingCommand`
- Included `<array>` header in `message_editor.h`
- Changed `width_array` in `MessageEditor` to `std::array` with default initialization
- Removed `list_of_texts_` and `all_dictionaries_` vectors from `MessageEditor`
- Added default values to `GameEntity` members
- Initialized `sheets` array in `PseudoVram`
- Initialized `map_parent_` and `all_tiles_types_` arrays in `Overworld`
2025-01-04 20:05:46 -05:00
Justin Scofield
fe0dbd3642 Refactor graphics sheet management with singleton class
Refactor the handling of graphics sheets by introducing a singleton class `GraphicsSheetManager`. This centralizes the management of graphics sheets, replacing direct access through the `Rom` object. Key changes include:

- Updated various methods across multiple classes to use `GraphicsSheetManager::GetInstance()` for accessing and manipulating graphics sheets.
- Introduced standalone functions `LoadLinkGraphics`, `LoadAllGraphicsData`, and `SaveAllGraphicsData` for loading and saving graphics data.
- Refactored the `Rom` class to remove methods and member variables related to graphics sheet management.
- Updated `OverworldEditor` to use `std::array` for `maps_bmp_` and added error handling for `std::bad_alloc` exceptions.
- Improved code modularity and error handling throughout the application.
2025-01-04 20:04:00 -05:00
scawful
698b5a43fa update editors based on namespace changes 2025-01-02 10:16:50 -05:00
scawful
9164fec53f refactor OverworldEditor: replace ConvertSurfaceToPNG with GetPngData for clipboard image copying 2025-01-01 15:53:59 -05:00
scawful
4a250a35cb refactor Tile16Editor: improve LoadTile8 method with asynchronous tile data loading 2025-01-01 15:53:42 -05:00
scawful
d3eca0f950 Make ExperimentFlags a singleton, remove inheritance relationships 2024-12-31 18:13:53 -05:00
scawful
daad7a4731 Improve error handling in LoadBinaryGfx by checking palette application status before rendering 2024-12-31 17:40:41 -05:00
scawful
50e4117230 Add entrance names to common header and update usage in OverworldEditor 2024-12-31 16:40:44 -05:00
scawful
d47e8a8387 Remove ImGui input flag and related code from core and editor components 2024-12-31 16:40:24 -05:00
scawful
6d2de44b94 Refactor Overworld blockset types and update related function signatures 2024-12-31 16:40:01 -05:00
scawful
398ba36811 Remove ImGuiFileDialog integration and replace with FileDialogWrapper in assembly and tile editors 2024-12-31 15:47:51 -05:00
scawful
9745e7005c Remove ImGuiColorTextEdit integration and update includes for TextEditor 2024-12-31 15:25:26 -05:00
scawful
5ff7eaa526 Add yaze_config.h for version management and update version check logic 2024-12-31 12:50:14 -05:00
scawful
33dc1983bc Add Rom dependency injection to OverworldEditor 2024-12-31 11:43:33 -05:00
scawful
79a16bbefe mmmm housekeeping 2024-12-30 19:05:16 -05:00
scawful
19deca88ab Add OverworldEntranceTileTypes and remove EntranceContext boiler plate 2024-12-30 19:04:51 -05:00
scawful
96095969c6 Refactor GfxContext references to use gfx::GfxContext for consistency 2024-12-30 19:04:20 -05:00
scawful
59e59f8a38 Refactor hex string handling: replace UppercaseHex functions with Hex equivalents 2024-12-30 09:48:19 -05:00
scawful
c0bce7fd1c Fix formatting and clean up namespace declarations in editor and GUI files 2024-12-29 16:45:48 -05:00
scawful
7e470f2b33 remove dungeon namespace 2024-12-29 16:14:20 -05:00
scawful
8cf16906e6 remove overworld namespace 2024-12-29 16:12:53 -05:00
scawful
3fc3e2af43 Refactor OverworldEditor toolset to use gui::AddTableColumn 2024-12-29 16:03:40 -05:00
scawful
17659eccab Refactor DungeonEditor::RefreshGraphics for improved readability and consistency 2024-12-29 16:02:47 -05:00
scawful
54c170373b Change Load2BppGraphics to standalone fn, add mutable_data accessor 2024-12-29 09:58:58 -05:00
scawful
a8dcfe3d05 Remove dynamic layout code 2024-12-29 09:58:34 -05:00
scawful
295f512826 Refactor namespace declarations for consistency in command and extension managers 2024-12-28 21:33:53 -05:00
scawful
e05e7c35db remove app namespace 2024-12-28 21:28:51 -05:00
scawful
07726d90a0 Cleanup MessageEditor 2024-12-28 17:47:33 -05:00
scawful
f752fc0d4a Cleanup OverworldEditor 2024-12-28 17:17:50 -05:00
scawful
2deb0050be Refactor EditorContext and system managers for improved clarity and consistency 2024-11-20 09:52:54 -05:00
scawful
21314702e8 Add EditorContext, refactor utils, add system managers 2024-11-19 23:10:23 -05:00
Justin Scofield
0b9f7ee6fa Refactor includes for improved organization and clarity 2024-11-18 18:01:14 -05:00
scawful
ec85a206b1 Refactor color conversion functions for consistent naming and improved readability 2024-11-18 14:12:46 -05:00
scawful
d664762344 Implement dynamic layout support and enhance window management commands in EditorManager 2024-11-18 14:07:22 -05:00
scawful
f630aa88a2 Refactor command manager and editor includes for improved organization and functionality 2024-11-18 14:05:54 -05:00
scawful
731eb456ab Refactor editor includes and update source files for improved organization 2024-11-18 14:05:08 -05:00
scawful
b336d14233 Refactor include paths and remove redundant headers in core and editor modules 2024-11-15 23:38:44 -05:00
scawful
e3ed705336 Refactor tab handling in Dungeon and Graphics editors for improved readability 2024-11-13 09:42:54 -05:00
scawful
c306b0d20c Fix tile16 editing for dungeon map tiles 2024-11-13 09:16:31 -05:00