feat(editor): add --gen-dock-pack composite

Seventh themed mesh pack after camp / blacksmith / village /
temple / graveyard / garden. Harbor / dockyard scene
emitting a 7-primitive port-side layout:

  • dock — the pier itself
  • crate-stack — cargo waiting to be loaded
  • barrel — sailor stash
  • canopy — shade for the dockmaster's station
  • bench — passenger waiting area
  • signpost — port marker
  • hitching-post — for tying up small boats / mounts

Together these form a recognizable harbor / dockside
pickup-and-drop area when arranged in a zone.

Composite-pack catalogue: camp + blacksmith + village +
temple + graveyard + garden + dock = 7 themed mesh packs.
This commit is contained in:
Kelsi 2026-05-09 13:06:37 -07:00
parent 074f299c8b
commit bdeb93bedd
3 changed files with 22 additions and 1 deletions

View file

@ -6906,6 +6906,24 @@ int handleGenBlacksmithPack(int& i, int /*argc*/, char** argv) {
});
}
int handleGenDockPack(int& i, int /*argc*/, char** argv) {
// Harbor / dockyard scene: dock (the pier itself), crate-
// stack (cargo waiting to be loaded), barrel (sailor stash),
// canopy (shade for the dockmaster's station), bench (waiting
// area for passengers), signpost (port marker), hitching-post
// (for tying up small boats / mounts arriving with goods).
std::string outDir = argv[++i];
return emitMeshPack(outDir, "dock pack", {
{"--gen-mesh-dock", handleDock, "dock"},
{"--gen-mesh-crate-stack", handleCrateStack, "crates"},
{"--gen-mesh-barrel", handleBarrel, "barrel"},
{"--gen-mesh-canopy", handleCanopy, "canopy"},
{"--gen-mesh-bench", handleBench, "bench"},
{"--gen-mesh-signpost", handleSignpost, "signpost"},
{"--gen-mesh-hitching-post", handleHitchingPost, "hitching"},
});
}
int handleGenGardenPack(int& i, int /*argc*/, char** argv) {
// Garden / courtyard scene: pergola (vine-arbor frame),
// fountain (centerpiece), stone-bench (seating), shrine
@ -7062,6 +7080,7 @@ constexpr MeshEntry kMeshTable[] = {
{"--gen-temple-pack", 1, handleGenTemplePack},
{"--gen-graveyard-pack", 1, handleGenGraveyardPack},
{"--gen-garden-pack", 1, handleGenGardenPack},
{"--gen-dock-pack", 1, handleGenDockPack},
{"--gen-mesh-table", 1, handleTable},
{"--gen-mesh-lamppost", 1, handleLamppost},
{"--gen-mesh-bed", 1, handleBed},