yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
lyra_terrain_source.h
Go to the documentation of this file.
1#ifndef YAZE_ZELDA3_OVERWORLD_LYRA_TERRAIN_SOURCE_H_
2#define YAZE_ZELDA3_OVERWORLD_LYRA_TERRAIN_SOURCE_H_
3
4#include "absl/status/status.h"
5#include "absl/status/statusor.h"
8
9namespace yaze::gfx {
10class Bitmap;
11class SnesPalette;
12} // namespace yaze::gfx
13namespace yaze::zelda3 {
14class Overworld;
15
16// Resolve the native Loom render profile without changing the active map or ROM.
17// The optional atlas is used only by the editor; build verification stays headless.
18absl::Status BindLyraTerrainSource(Overworld& overworld,
19 core::LyraTerrainProfile* profile,
20 gfx::Bitmap* atlas = nullptr);
21
22// Exact selector/state key and resolved native pixels/palette used by both
23// editor previews and build verification. This path creates no GPU textures.
24std::string LyraMapAssetKey(const core::LyraMapProperties& properties,
25 int state);
26// Apply project-owned BG colors to an already resolved palette copy. Never
27// changes native groups, ROM storage, or the upper 128 OBJ colors.
29 const core::LyraMapProperties& properties, gfx::SnesPalette& palette);
34absl::StatusOr<LyraNativeMapAssets> ResolveLyraMapAssets(
35 Overworld& overworld, const core::LyraMapProperties& properties, int state);
36
37// Describe a result from the fresh native resolver without loading or changing
38// assets. Native-only describes inspection, never an authored runtime/catalog
39// assignment. Retains the legacy binding and identifies resolved components.
40absl::StatusOr<std::string> DescribeLyraNativeMapAssets(
41 const core::LyraMapProperties& properties, int state,
42 const LyraNativeMapAssets& assets);
43} // namespace yaze::zelda3
44
45#endif
Represents a single Overworld map screen.
Contains classes for handling graphical data.
Zelda 3 specific classes and functions.
absl::StatusOr< std::string > DescribeLyraNativeMapAssets(const core::LyraMapProperties &p, int state, const LyraNativeMapAssets &assets)
std::string LyraMapAssetKey(const core::LyraMapProperties &p, int state)
absl::StatusOr< LyraNativeMapAssets > ResolveLyraMapAssets(Overworld &overworld, const core::LyraMapProperties &p, int state)
absl::Status ApplyLyraBackgroundPaletteOverride(const core::LyraMapProperties &properties, gfx::SnesPalette &palette)
absl::Status BindLyraTerrainSource(Overworld &overworld, core::LyraTerrainProfile *profile, gfx::Bitmap *atlas)