1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-15 00:05:02 +02:00

CGShipyard, CGShrine serialization

This commit is contained in:
AlexVinS
2016-02-09 09:17:20 +03:00
parent 401ba48257
commit 53dc49e92a
2 changed files with 13 additions and 16 deletions

View File

@ -1660,15 +1660,23 @@ std::string CGShrine::getHoverText(const CGHeroInstance * hero) const
void CGShrine::writeJsonOptions(JsonNode& json) const
{
if(spell != SpellID::NONE)
{
json["spell"].String() = spell.toSpell()->identifier;
}
}
void CGShrine::readJsonOptions(const JsonNode& json)
{
spell = SpellID::NONE;
if(json["spell"].String() != "")
{
auto raw = VLC->modh->identifiers.getIdentifier("core", "spell",json["spell"].String());
if(raw)
spell = SpellID(raw.get());
}
}
void CGSignBottle::initObj()
{
//if no text is set than we pick random from the predefined ones
@ -2017,15 +2025,14 @@ void CGShipyard::onHeroVisit( const CGHeroInstance * h ) const
void CGShipyard::writeJsonOptions(JsonNode& json) const
{
CGObjectInstance::writeOwner(json);
}
void CGShipyard::readJsonOptions(const JsonNode& json)
{
CGObjectInstance::readOwner(json);
}
void CCartographer::onHeroVisit( const CGHeroInstance * h ) const
{
//if player has not bought map of this subtype yet and underground exist for stalagmite cartographer