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
510581ad1f
Refactor Overworld loading to use async tasks
...
Refactored Overworld::LoadSprites to use std::async for concurrent sprite loading, improving efficiency. Modified Overworld::LoadOverworldMaps to wait for all async tasks and check results for errors. Updated Overworld::LoadSpritesFromMap to use mutable_current_graphics() for mutable access to current graphics. Added mutable_current_graphics method to OverworldMap class. Optimized Sprite constructor to take a const reference to avoid unnecessary copying.
2025-01-05 20:57:13 -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
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
scawful
ca702d62e3
refactor overworld: add constants for exits, items, entrances, and map IDs
2025-01-01 19:30:36 -05:00
Justin Scofield
e04fc3d828
housekeeping
2024-12-31 20:43:23 -05:00
scawful
427fd50496
Guard custom overworld loading code with experiment flag
2024-12-31 19:20:32 -05:00
scawful
a54143cbab
Refactor Hyrule Magic compression functions to return std::vector<uint8_t> instead of raw pointers for improved memory management
2024-12-31 18:32:25 -05:00
scawful
308eb4b287
Rename Hyrule Magic compression functions; update deprecation notes
2024-12-31 18:20:18 -05:00
scawful
d3eca0f950
Make ExperimentFlags a singleton, remove inheritance relationships
2024-12-31 18:13:53 -05:00
scawful
5e1e2901ff
Refactor overworld constants
2024-12-31 17:50:19 -05:00
scawful
aece708513
Refactor overworld entity constants for improved naming consistency and readability
2024-12-31 17:40:15 -05:00
scawful
41c31e3193
Refactor overworld constants to improve naming consistency and readability
2024-12-31 17:39:57 -05:00
scawful
0e67413d55
Refactor logging to use logf function and update log file name
2024-12-31 16:54:44 -05:00
scawful
6d2de44b94
Refactor Overworld blockset types and update related function signatures
2024-12-31 16:40:01 -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
8cf16906e6
remove overworld namespace
2024-12-29 16:12:53 -05:00
scawful
e05e7c35db
remove app namespace
2024-12-28 21:28:51 -05:00
scawful
77a6313bb3
Move OverworldEntrance, OverworldExit, OverworldItem to own files
2024-12-28 17:18:19 -05:00
scawful
21314702e8
Add EditorContext, refactor utils, add system managers
2024-11-19 23:10:23 -05:00
scawful
d8821c5809
Refactor Overworld tile assembly logic for clarity and efficiency; streamline address handling and improve expansion checks
2024-11-13 08:52:23 -05:00
scawful
84f30f45d0
Refactor includes in dungeon, music, and overworld files to remove unused headers for clarity
2024-11-13 08:51:54 -05:00
scawful
089dc4017c
Remove unused functions
2024-11-10 21:40:22 -05:00
scawful
a70414d803
Store converted binary graphics data in ScreenEditor and rename save functions for clarity
2024-11-10 17:25:26 -05:00
scawful
996c6c92ee
Add flags for expanded tile16 and tile32 saving
2024-11-10 17:17:12 -05:00
scawful
0035176f86
Add CopyTile8bpp16 function and refactor usage in OverworldMap
2024-11-10 17:16:46 -05:00
scawful
39308bda5a
Update AssembleMap32Tiles and AssembleMap16Tiles for expanded tile handling
2024-11-10 16:58:10 -05:00
scawful
8cccbdfd4c
Add SaveMap16Expanded and SaveMap32Expanded functions based on ZS
2024-11-10 16:49:16 -05:00
scawful
665d58aa97
General cleanup
2024-11-02 00:10:24 -05:00
scawful
d7849c2098
chore: Enable building tests in CMakeLists.txt
2024-08-30 20:17:41 -04:00
scawful
dd340b1f1a
overworld housekeeping
2024-08-29 20:27:44 -04:00
scawful
698055d165
Refactor OverworldEditor and Overworld class
2024-08-29 19:52:38 -04:00
scawful
93d7aa545c
Refactor AssembleMap32Tiles to report errors
2024-08-29 19:10:02 -04:00
scawful
5532623e16
game constants housekeeping
2024-08-29 13:08:36 -04:00
scawful
f3b0723ca4
Refactor OverworldMap constructor to remove unnecessary tiles16 parameter
2024-08-26 10:24:46 -04:00
scawful
971255b636
remove unnecessary sdl2 include from overworld
2024-08-26 07:43:25 -04:00
scawful
6e66512a27
feat: Refactor OverworldMap to use custom_gfx_ids array for custom tileset
2024-08-25 17:26:02 -04:00
scawful
95a5201a97
feat: Add custom overworld map settings UI to OverworldEditor
2024-08-25 17:01:18 -04:00
scawful
0c9faa7ac4
chore: pass flag to overworld map for loading custom data
2024-08-25 16:50:41 -04:00
scawful
57a165bab6
feat: Add custom overworld data loading and tileset setup to OverworldMap constructor
2024-08-25 16:40:37 -04:00
scawful
9da8db75ea
add animated_gfx, subscreen_overlay, custom_tileset to OverworldMap
2024-08-25 16:40:18 -04:00
scawful
dafeff2be7
Move OverworldCustomASM constants to overworld_map.h
2024-08-25 16:39:50 -04:00
scawful
bf94668455
Refactor OverworldEditor to use zelda3::GameEntity
2024-08-24 23:57:19 -04:00
scawful
270bef0973
Refactor OverworldEntity to use uint16_t for map_id and improve code organization
2024-08-22 10:49:12 -04:00
scawful
23640310be
Refactor tile16 blockset data access methods
2024-08-21 21:54:28 -04:00
scawful
ea8a851539
clang tidy cleanups
2024-08-21 00:37:14 -04:00
scawful
7b33313281
big cleanup
2024-08-20 22:10:35 -04:00
scawful
a8ed9b7f92
remove magic numbers, enforce const correctness
2024-08-20 21:31:59 -04:00