mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-23 22:37:55 +02:00
Added GameSettings to gamestate, potentially allowing to define game
settings per map (or in random map template)
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
#include "../bonuses/Bonus.h"
|
||||
#include "../mapObjects/CGTownInstance.h"
|
||||
#include "../spells/CSpellHandler.h"
|
||||
#include "../GameSettings.h"
|
||||
#include "../IGameSettings.h"
|
||||
#include "../VCMI_Lib.h"
|
||||
|
||||
|
||||
@@ -212,8 +212,9 @@ double DamageCalculator::getAttackSkillFactor() const
|
||||
|
||||
if(attackAdvantage > 0)
|
||||
{
|
||||
const double attackMultiplier = VLC->settings()->getDouble(EGameSettings::COMBAT_ATTACK_POINT_DAMAGE_FACTOR);
|
||||
const double attackMultiplierCap = VLC->settings()->getDouble(EGameSettings::COMBAT_ATTACK_POINT_DAMAGE_FACTOR_CAP);
|
||||
// FIXME: use cb to acquire these settings
|
||||
const double attackMultiplier = VLC->engineSettings()->getDouble(EGameSettings::COMBAT_ATTACK_POINT_DAMAGE_FACTOR);
|
||||
const double attackMultiplierCap = VLC->engineSettings()->getDouble(EGameSettings::COMBAT_ATTACK_POINT_DAMAGE_FACTOR_CAP);
|
||||
const double attackFactor = std::min(attackMultiplier * attackAdvantage, attackMultiplierCap);
|
||||
|
||||
return attackFactor;
|
||||
@@ -312,8 +313,9 @@ double DamageCalculator::getDefenseSkillFactor() const
|
||||
//bonus from attack/defense skills
|
||||
if(defenseAdvantage > 0) //decreasing dmg
|
||||
{
|
||||
const double defenseMultiplier = VLC->settings()->getDouble(EGameSettings::COMBAT_DEFENSE_POINT_DAMAGE_FACTOR);
|
||||
const double defenseMultiplierCap = VLC->settings()->getDouble(EGameSettings::COMBAT_DEFENSE_POINT_DAMAGE_FACTOR_CAP);
|
||||
// FIXME: use cb to acquire these settings
|
||||
const double defenseMultiplier = VLC->engineSettings()->getDouble(EGameSettings::COMBAT_DEFENSE_POINT_DAMAGE_FACTOR);
|
||||
const double defenseMultiplierCap = VLC->engineSettings()->getDouble(EGameSettings::COMBAT_DEFENSE_POINT_DAMAGE_FACTOR_CAP);
|
||||
|
||||
const double dec = std::min(defenseMultiplier * defenseAdvantage, defenseMultiplierCap);
|
||||
return dec;
|
||||
|
||||
Reference in New Issue
Block a user