1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-28 08:48:48 +02:00

Implement IOwnableObject interface for shipyard

This commit is contained in:
Ivan Savenko 2024-09-04 19:46:36 +00:00
parent 7a0726bcff
commit dae9e1e316
2 changed files with 20 additions and 1 deletions

View File

@ -1227,6 +1227,21 @@ BoatId CGShipyard::getBoatType() const
return createdBoat;
}
const IOwnableObject * CGShipyard::asOwnable() const
{
return this;
}
ResourceSet CGShipyard::dailyIncome() const
{
return {};
}
std::vector<CreatureID> CGShipyard::providedCreatures() const
{
return {};
}
void CGDenOfthieves::onHeroVisit (const CGHeroInstance * h) const
{
cb->showObjectWindow(this, EOpenWindowMode::THIEVES_GUILD, h, false);

View File

@ -346,7 +346,7 @@ public:
}
};
class DLL_LINKAGE CGShipyard : public CGObjectInstance, public IShipyard
class DLL_LINKAGE CGShipyard : public CGObjectInstance, public IShipyard, public IOwnableObject
{
friend class ShipyardInstanceConstructor;
@ -358,6 +358,10 @@ protected:
const IObjectInterface * getObject() const override;
BoatId getBoatType() const override;
const IOwnableObject * asOwnable() const final;
ResourceSet dailyIncome() const override;
std::vector<CreatureID> providedCreatures() const override;
public:
using CGObjectInstance::CGObjectInstance;