浏览代码

vcmi: use global bonuses for sight radius and mana

We do not need to hardcode constants for there. We can just
use default bonuses.
Konstantin 2 年之前
父节点
当前提交
6b987275eb
共有 2 个文件被更改,包括 16 次插入3 次删除
  1. 14 1
      config/defaultMods.json
  2. 2 2
      lib/mapObjects/CGHeroInstance.cpp

+ 14 - 1
config/defaultMods.json

@@ -44,5 +44,18 @@
 		"STACK_ARTIFACTS": false,
 		"STACK_ARTIFACTS": false,
 		"COMMANDERS": false,
 		"COMMANDERS": false,
 		"MITHRIL": false //so far unused
 		"MITHRIL": false //so far unused
-	}
+	},
+	"heroBaseBonuses":
+	[
+		{
+			"type" : "MANA_REGENERATION", //default mana regeneration
+			"val" : 1,
+			"valueType" : "BASE_NUMBER"
+		},
+		{
+			"type" : "SIGHT_RADIUS", //default sight radius
+			"val" : 5,
+			"valueType" : "BASE_NUMBER"
+		}
+	]
 }
 }

+ 2 - 2
lib/mapObjects/CGHeroInstance.cpp

@@ -895,7 +895,7 @@ int3 CGHeroInstance::getSightCenter() const
 
 
 int CGHeroInstance::getSightRadius() const
 int CGHeroInstance::getSightRadius() const
 {
 {
-	return 5 + valOfBonuses(Bonus::SIGHT_RADIUS); // scouting gives SIGHT_RADIUS bonus
+	return valOfBonuses(Bonus::SIGHT_RADIUS); // scouting gives SIGHT_RADIUS bonus
 }
 }
 
 
 si32 CGHeroInstance::manaRegain() const
 si32 CGHeroInstance::manaRegain() const
@@ -903,7 +903,7 @@ si32 CGHeroInstance::manaRegain() const
 	if (hasBonusOfType(Bonus::FULL_MANA_REGENERATION))
 	if (hasBonusOfType(Bonus::FULL_MANA_REGENERATION))
 		return manaLimit();
 		return manaLimit();
 
 
-	return 1 + valOfBonuses(Bonus::SECONDARY_SKILL_PREMY, SecondarySkill::MYSTICISM) + valOfBonuses(Bonus::MANA_REGENERATION); //1 + Mysticism level
+	return valOfBonuses(Bonus::SECONDARY_SKILL_PREMY, SecondarySkill::MYSTICISM) + valOfBonuses(Bonus::MANA_REGENERATION); //1 + Mysticism level
 }
 }
 
 
 si32 CGHeroInstance::getManaNewTurn() const
 si32 CGHeroInstance::getManaNewTurn() const