Kelsidavis-WoWee/tools/editor/cli_stable_slots_catalog.hpp

13 lines
235 B
C++
Raw Normal View History

feat(editor): add WSTC (Hunter Stable Slot) open catalog format Open replacement for the hardcoded hunter pet stable slot progression. Defines each stable slot's display order in the stable UI, the character level at which the slot becomes available, the gold cost to unlock, and whether it's a premium / donator-only slot. In WoW 3.3.5a hunters get 5 stable slots total: the active pet plus 4 stabled (slots 1-4 unlocking at hunter levels 10/20/30/40 with escalating gold costs 0/10s/50s/2g/10g). Cataclysm raised the cap to 5 stabled slots, and server-custom expansions go higher with donator-only "premium" slots that bypass the level gate. This catalog parameterizes the entire progression instead of editing engine source. Consumed directly by the StableMaster service in WBKD entries. unlockedSlotCount(characterLevel) is the engine helper used by the stable master frame to decide how many slot tabs to render. Three preset emitters: --gen-stc (5 canonical slots matching WoW 3.3.5a), --gen-stc-cata (6 Cata-style slots with slot 5 unlocking at lvl 60 for 25g), --gen-stc-premium (4 server-custom donator slots with no level/gold gate). The info renderer pretty-prints copperCost as "free" / "10s 0c" / "2g 0s 0c" — matches how server admins think about pricing. Validation enforces id+name presence, no duplicate ids; warns on: - minLevelToUnlock > 80 (unreachable at WotLK cap) - Premium slot with non-zero copperCost (donor slots are typically free; the gate is donor status, not gold) - duplicate displayOrder (stable UI position collision — only the first slot would render) Wired through the cross-format table; WSTC appears in all 18 cross-format utilities. Format count 92 -> 93; CLI flag count 1069 -> 1074.
2026-05-09 23:58:49 -07:00
#pragma once
namespace wowee {
namespace editor {
namespace cli {
bool handleStableSlotsCatalog(int& i, int argc, char** argv,
int& outRc);
} // namespace cli
} // namespace editor
} // namespace wowee