Fixed new damage statistics code
This commit is contained in:
parent
4d518cf9c8
commit
6fd213799e
3 changed files with 14 additions and 7 deletions
|
@ -917,7 +917,6 @@ attack::attack(game_display& gui, const gamemap& map,
|
|||
DBG_NG << "getting attack statistics\n";
|
||||
statistics::attack_context attack_stats(a_->second, d_->second, a_stats_->chance_to_hit, d_stats_->chance_to_hit);
|
||||
|
||||
#ifdef MABOUL_STATS
|
||||
{
|
||||
// Calculate stats for battle
|
||||
combatant attacker(bc_->get_attacker_stats());
|
||||
|
@ -928,7 +927,6 @@ attack::attack(game_display& gui, const gamemap& map,
|
|||
|
||||
attack_stats.attack_excepted_damage(attacker_inflict,defender_inflict);
|
||||
}
|
||||
#endif
|
||||
|
||||
orig_attacks_ = a_stats_->num_blows;
|
||||
orig_defends_ = d_stats_->num_blows;
|
||||
|
|
|
@ -261,19 +261,19 @@ void statistics_dialog::make_damage_line(std::vector<std::string>& items,
|
|||
std::stringstream str;
|
||||
str << header << COLUMN_SEPARATOR
|
||||
<< damage << " / "
|
||||
<< (expected / (double)statistics::stats::desimal_shift)
|
||||
<< (expected/100 / (double)statistics::stats::desimal_shift * 100.0)
|
||||
<< COLUMN_SEPARATOR
|
||||
<< ((dsa > 0) ? "+" : "")
|
||||
<< ((expected == 0) ? 0
|
||||
: statistics::stats::desimal_shift * dsa / expected)
|
||||
: 100 * dsa / expected)
|
||||
<< "%" << COLUMN_SEPARATOR
|
||||
<< COLUMN_SEPARATOR
|
||||
<< turn_damage << " / "
|
||||
<< (turn_expected / (double)statistics::stats::desimal_shift)
|
||||
<< (turn_expected/100 / (double)statistics::stats::desimal_shift * 100.0)
|
||||
<< COLUMN_SEPARATOR
|
||||
<< ((dst > 0) ? "+" : "")
|
||||
<< ((turn_expected == 0) ? 0
|
||||
: statistics::stats::desimal_shift * dst / turn_expected)
|
||||
: 100 * dst / turn_expected)
|
||||
<< "%";
|
||||
items.push_back(str.str());
|
||||
|
||||
|
|
|
@ -207,6 +207,11 @@ static void merge_stats(stats& a, const stats& b)
|
|||
a.turn_damage_taken += b.turn_damage_taken;
|
||||
a.turn_expected_damage_inflicted += b.turn_expected_damage_inflicted;
|
||||
a.turn_expected_damage_taken += b.turn_expected_damage_taken;
|
||||
|
||||
a.new_expected_damage_inflicted += b.new_expected_damage_inflicted;
|
||||
a.new_expected_damage_taken += b.new_expected_damage_taken;
|
||||
a.new_turn_expected_damage_inflicted += b.new_turn_expected_damage_inflicted;
|
||||
a.new_turn_expected_damage_taken += b.new_turn_expected_damage_taken;
|
||||
}
|
||||
|
||||
namespace statistics
|
||||
|
@ -216,7 +221,9 @@ stats::stats() : recruit_cost(0), recall_cost(0),
|
|||
damage_inflicted(0), damage_taken(0),
|
||||
turn_damage_inflicted(0), turn_damage_taken(0),
|
||||
expected_damage_inflicted(0), expected_damage_taken(0),
|
||||
turn_expected_damage_inflicted(0), turn_expected_damage_taken(0)
|
||||
turn_expected_damage_inflicted(0), turn_expected_damage_taken(0),
|
||||
new_expected_damage_inflicted(0), new_expected_damage_taken(0),
|
||||
new_turn_expected_damage_inflicted(0), new_turn_expected_damage_taken(0)
|
||||
{}
|
||||
|
||||
stats::stats(const config& cfg)
|
||||
|
@ -598,6 +605,8 @@ void reset_turn_stats(int side)
|
|||
s.turn_damage_taken = 0;
|
||||
s.turn_expected_damage_inflicted = 0;
|
||||
s.turn_expected_damage_taken = 0;
|
||||
s.new_turn_expected_damage_inflicted = 0;
|
||||
s.new_turn_expected_damage_taken = 0;
|
||||
}
|
||||
|
||||
stats calculate_stats(int category, int side)
|
||||
|
|
Loading…
Add table
Reference in a new issue