QtCraft API C++ classes QML types Handbook

QcShowcaseGenerator Class

World generator of the showcase world (generator type "showcase", decisions E-220 and E-221): flat ground and the structures of a QcShowcasePlan, labels by chunk and the one-time setup (noon that stands still, no creatures spawning by themselves, the creatures and contents of the areas). More...

Header: #include <worldgen/showcase/QcShowcaseGenerator.h>
Inherits: QcWorldGenerator

Public Functions

QcShowcaseGenerator(std::shared_ptr<const QcContentRegistry> content)
const QcShowcasePlan &plan() const

Reimplemented Public Functions

virtual QcChunkFurnishing furnishingIn(QcChunkPos pos) const override
virtual std::shared_ptr<QcChunk> generate(QcChunkPos pos) const override
virtual bool isNaturalGround(QcBlockId block) const override
virtual QList<QcWorldLabel> labelsIn(QcChunkPos pos) const override
virtual QList<QcBlockPos> pointsOfInterestIn(QcChunkPos pos) const override
virtual QcWorldSetup setup() const override
virtual QcBlockPos spawnPoint() const override
virtual QcStructureSites structureSitesNear(QcBlockPos from, int reach) const override
virtual std::shared_ptr<const QcVillagePlan> villageFor(QcChunkPos pos) const override

Detailed Description

The seed is ignored: the world depends only on the content. Thread-safe like every generator.

Member Function Documentation

[explicit] QcShowcaseGenerator::QcShowcaseGenerator(std::shared_ptr<const QcContentRegistry> content)

Plans the showcase world of content (QcShowcasePlanner).

[override virtual] QcChunkFurnishing QcShowcaseGenerator::furnishingIn(QcChunkPos pos) const

Reimplements: QcWorldGenerator::furnishingIn(QcChunkPos pos) const.

[override virtual] std::shared_ptr<QcChunk> QcShowcaseGenerator::generate(QcChunkPos pos) const

Reimplements: QcWorldGenerator::generate(QcChunkPos pos) const.

[override virtual] bool QcShowcaseGenerator::isNaturalGround(QcBlockId block) const

Reimplements: QcWorldGenerator::isNaturalGround(QcBlockId block) const.

[override virtual] QList<QcWorldLabel> QcShowcaseGenerator::labelsIn(QcChunkPos pos) const

Reimplements: QcWorldGenerator::labelsIn(QcChunkPos pos) const.

const QcShowcasePlan &QcShowcaseGenerator::plan() const

Returns the layout the world is generated from.

[override virtual] QList<QcBlockPos> QcShowcaseGenerator::pointsOfInterestIn(QcChunkPos pos) const

Reimplements: QcWorldGenerator::pointsOfInterestIn(QcChunkPos pos) const.

[override virtual] QcWorldSetup QcShowcaseGenerator::setup() const

Reimplements: QcWorldGenerator::setup() const.

[override virtual] QcBlockPos QcShowcaseGenerator::spawnPoint() const

Reimplements: QcWorldGenerator::spawnPoint() const.

[override virtual] QcStructureSites QcShowcaseGenerator::structureSitesNear(QcBlockPos from, int reach) const

Reimplements: QcWorldGenerator::structureSitesNear(QcBlockPos from, int reach) const.

[override virtual] std::shared_ptr<const QcVillagePlan> QcShowcaseGenerator::villageFor(QcChunkPos pos) const

Reimplements: QcWorldGenerator::villageFor(QcChunkPos pos) const.

Returns the row of the village area whose buildings and road reach into the chunk pos (the rows lie further apart than a chunk).