mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-05-06 00:53:52 +00:00
- Zone manifest gains audio fields: musicTrack, ambienceDay, ambienceNight, musicVolume, ambienceVolume - Serialized to/from zone.json under "audio" key - Info panel: collapsable "Zone Audio" section with text inputs for music/ambience paths and volume sliders - Preset selector: Elwynn Forest, Durotar, Darkshore, Dungeon, None - ZoneManifest stored persistently on EditorApp so audio settings survive between exports (was recreated each save) - Custom zones can now specify their own background music and ambient soundscapes via zone.json
32 lines
856 B
C++
32 lines
856 B
C++
#pragma once
|
|
|
|
#include <string>
|
|
#include <vector>
|
|
#include <cstdint>
|
|
|
|
namespace wowee {
|
|
namespace editor {
|
|
|
|
struct ZoneManifest {
|
|
std::string mapName;
|
|
std::string displayName;
|
|
uint32_t mapId = 9000; // Custom map IDs start high to avoid conflicts
|
|
std::vector<std::pair<int, int>> tiles; // (tileX, tileY) pairs
|
|
std::string biome;
|
|
float baseHeight = 100.0f;
|
|
bool hasCreatures = false;
|
|
std::string description;
|
|
|
|
// Audio configuration
|
|
std::string musicTrack; // Background music file path
|
|
std::string ambienceDay; // Daytime ambient sound
|
|
std::string ambienceNight; // Nighttime ambient sound
|
|
float musicVolume = 0.7f;
|
|
float ambienceVolume = 0.5f;
|
|
|
|
bool save(const std::string& path) const;
|
|
bool load(const std::string& path);
|
|
};
|
|
|
|
} // namespace editor
|
|
} // namespace wowee
|