mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-24 22:14:36 +02:00
Merge pull request #4564 from IvanSavenko/stream_regressions_fix
Fixes for regressions found on stream
This commit is contained in:
commit
6565b1d249
@ -536,7 +536,14 @@ void CGDwelling::serializeJsonOptions(JsonSerializeFormat & handler)
|
|||||||
|
|
||||||
const IOwnableObject * CGDwelling::asOwnable() const
|
const IOwnableObject * CGDwelling::asOwnable() const
|
||||||
{
|
{
|
||||||
return this;
|
switch (ID.toEnum())
|
||||||
|
{
|
||||||
|
case Obj::WAR_MACHINE_FACTORY:
|
||||||
|
case Obj::REFUGEE_CAMP:
|
||||||
|
return nullptr; // can't be owned
|
||||||
|
default:
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ResourceSet CGDwelling::dailyIncome() const
|
ResourceSet CGDwelling::dailyIncome() const
|
||||||
|
@ -1227,6 +1227,21 @@ BoatId CGShipyard::getBoatType() const
|
|||||||
return createdBoat;
|
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
|
void CGDenOfthieves::onHeroVisit (const CGHeroInstance * h) const
|
||||||
{
|
{
|
||||||
cb->showObjectWindow(this, EOpenWindowMode::THIEVES_GUILD, h, false);
|
cb->showObjectWindow(this, EOpenWindowMode::THIEVES_GUILD, h, false);
|
||||||
|
@ -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;
|
friend class ShipyardInstanceConstructor;
|
||||||
|
|
||||||
@ -358,6 +358,10 @@ protected:
|
|||||||
const IObjectInterface * getObject() const override;
|
const IObjectInterface * getObject() const override;
|
||||||
BoatId getBoatType() const override;
|
BoatId getBoatType() const override;
|
||||||
|
|
||||||
|
const IOwnableObject * asOwnable() const final;
|
||||||
|
ResourceSet dailyIncome() const override;
|
||||||
|
std::vector<CreatureID> providedCreatures() const override;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
using CGObjectInstance::CGObjectInstance;
|
using CGObjectInstance::CGObjectInstance;
|
||||||
|
|
||||||
|
@ -280,7 +280,7 @@ SetAvailableCreatures NewTurnProcessor::generateTownGrowth(const CGTownInstance
|
|||||||
|
|
||||||
if (weekType == EWeekType::PLAGUE)
|
if (weekType == EWeekType::PLAGUE)
|
||||||
resultingCreatures = creaturesBefore / 2;
|
resultingCreatures = creaturesBefore / 2;
|
||||||
else if (weekType == EWeekType::DOUBLE_GROWTH)
|
else if (weekType == EWeekType::DOUBLE_GROWTH && vstd::contains(t->creatures.at(k).second, creatureWeek))
|
||||||
resultingCreatures = (creaturesBefore + creatureGrowth) * 2;
|
resultingCreatures = (creaturesBefore + creatureGrowth) * 2;
|
||||||
else
|
else
|
||||||
resultingCreatures = creaturesBefore + creatureGrowth;
|
resultingCreatures = creaturesBefore + creatureGrowth;
|
||||||
|
Loading…
Reference in New Issue
Block a user