Commit Graph

32 Commits

Author SHA1 Message Date
scawful
25f8a550b6 Fix Overworld sprite drawing system
- Updated the MapPropertiesSystem to improve the layout of the simplified map settings table, increasing column widths for better visibility and usability.
- Adjusted button sizes in the OverworldEditor for Graphics, Palettes, Overlays, and Properties to enhance user interaction.
- Implemented filtering of sprites in the OverworldEditor based on the current world, ensuring only relevant sprites are displayed.
- Refactored sprite drawing logic to utilize global coordinates directly, improving accuracy in sprite rendering.
2025-09-24 18:37:39 -04:00
scawful
12bb5dc3d5 Enhance OverworldEditor with new customization features
- Updated OverworldEditor to include new table columns for CopyMap, MapLock, CustomBG, and Overlay, improving user interaction and customization options.
- Implemented DrawCustomBackgroundColorEditor and DrawOverlayEditor methods for managing custom background colors and overlay settings, respectively.
- Added context menu functionality for map locking and quick access to map properties, enhancing usability.
- Refactored OverworldMap to support new features related to animated graphics and subscreen overlays, ensuring compatibility with ZScreamCustomOverworld v3.
2025-09-24 15:58:46 -04:00
scawful
49b4f6d677 Add ZScreamCustomOverworld ASM v3 and integrate area size support
- Introduced ZScream Custom Overworld ASM to enhance customization of the ALTTP overworld, allowing users to modify various aspects such as palettes, backgrounds, and transitions.
- Updated OverworldEditor to include area size selection for v3 support, enabling users to choose between different area sizes (Small, Large, Wide, Tall).
- Enhanced OverworldMap to load area size information based on the applied ASM version, ensuring compatibility with expanded features.
- Implemented SaveAreaSizes method in Overworld to persist area size settings in the ROM, supporting the new customization capabilities.
- Refactored related classes and methods to accommodate the new area size logic and ensure seamless integration with existing functionalities.
2025-09-24 15:36:29 -04:00
scawful
96c9c5bea6 expand entrance room constants in Zelda3 and enhance OverworldMap class with mosaic handling. 2025-04-12 13:24:48 -04:00
scawful
42cfb3bcb2 Refactor overworld constructors to accept Rom pointers 2025-04-12 11:27:23 -04:00
scawful
a76fbe1c8c Refactor OverworldMap: update ProcessGraphicsBuffer to accept graphics buffer as parameter 2025-04-05 13:46:42 -04: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
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
6d2de44b94 Refactor Overworld blockset types and update related function signatures 2024-12-31 16:40:01 -05:00
scawful
96095969c6 Refactor GfxContext references to use gfx::GfxContext for consistency 2024-12-30 19:04:20 -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
21314702e8 Add EditorContext, refactor utils, add system managers 2024-11-19 23:10: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
f3b0723ca4 Refactor OverworldMap constructor to remove unnecessary tiles16 parameter 2024-08-26 10:24:46 -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
7b33313281 big cleanup 2024-08-20 22:10:35 -04:00
scawful
49611d4944 big cleanup, replace Bytes alias with std::vector<uint8_t> to reduce ambiguity 2024-08-20 12:02:47 -04:00
scawful
c2dfb96773 move OWBlockset and OWMapTiles 2024-08-10 00:22:47 -04:00
scawful
7c708519ac standardize imgui headers as user instead of system 2024-07-30 23:33:12 -04:00
scawful
713196a9ef add mosaic checkbox to overworld editor properties 2024-07-21 19:34:09 -04:00
scawful
4582a18f53 Move GfxContext to editor/utils, update CMakeLists.txt 2024-07-19 23:07:04 -04:00
scawful
f28e26ef28 housekeeping 2024-05-24 20:37:29 -04:00
scawful
cb309743ea Rename world_index_ to main_gfx_id_ 2024-05-24 20:29:18 -04:00
scawful
7e46cf1c64 Rename ROM class to Rom 2024-04-14 14:47:17 -05:00
scawful
b06e22dc0d Add zelda3::overworld namespace 2024-04-14 14:37:53 -05:00