1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00

vcmi: deprecate MAXED_SPELL

It is almost identical to SPECIAL_FIXED_VALUE_ENCHANT.

Replace its usage in JSON and inside deprecated converter
to SPECIAL_FIXED_VALUE_ENCHANT. Remove buggy string inside
getEffectLevel.
This commit is contained in:
Konstantin 2023-01-31 11:30:41 +03:00
parent 00c1a4ef76
commit 7b8aebe4e3
4 changed files with 6 additions and 7 deletions

View File

@ -213,8 +213,9 @@
"specialty" : {
"bonuses" : {
"fortune" : {
"addInfo" : 3,
"subtype" : "spell.fortune",
"type" : "MAXED_SPELL"
"type" : "SPECIAL_FIXED_VALUE_ENCHANT"
}
}
}

View File

@ -611,8 +611,9 @@ std::vector<std::shared_ptr<Bonus>> SpecialtyInfoToBonuses(const SSpecialtyInfo
result.push_back(bonus);
break;
case 7: //maxed mastery for spell
bonus->type = Bonus::MAXED_SPELL;
bonus->type = Bonus::SPECIAL_FIXED_VALUE_ENCHANT;
bonus->subtype = spec.subtype; //spell id
bonus->val = 3; //to match MAXED_BONUS
result.push_back(bonus);
break;
case 8: //peculiar spells - enchantments

View File

@ -285,7 +285,7 @@ public:
BONUS_NAME(SPELL_DAMAGE) /*val = value*/\
BONUS_NAME(SPECIFIC_SPELL_DAMAGE) /*subtype = id of spell, val = value*/\
BONUS_NAME(SPECIAL_BLESS_DAMAGE) /*val = spell (bless), additionalInfo = value per level in percent*/\
BONUS_NAME(MAXED_SPELL) /*val = id*/\
BONUS_NAME(MAXED_SPELL) /*val = id. deprecated in favour of SPECIAL_FIXED_VALUE_ENCHANT*/\
BONUS_NAME(SPECIAL_PECULIAR_ENCHANT) /*blesses and curses with id = val dependent on unit's level, subtype = 0 or 1 for Coronius*/\
BONUS_NAME(SPECIAL_UPGRADE) /*subtype = base, additionalInfo = target */\
BONUS_NAME(DRAGON_NATURE) \

View File

@ -647,10 +647,7 @@ int64_t CGHeroInstance::getSpecificSpellBonus(const spells::Spell * spell, int64
int32_t CGHeroInstance::getEffectLevel(const spells::Spell * spell) const
{
if(hasBonusOfType(Bonus::MAXED_SPELL, spell->getIndex()))
return 3;//todo: recheck specialty from where this bonus is. possible bug
else
return getSpellSchoolLevel(spell);
return getSpellSchoolLevel(spell);
}
int32_t CGHeroInstance::getEffectPower(const spells::Spell * spell) const