From f484859620b73ab4219fe201df35268eb375622d Mon Sep 17 00:00:00 2001 From: Paweł Redman Date: Thu, 14 Dec 2017 23:42:02 +0100 Subject: Terser combat messages. --- src/game/units.cpp | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src/game') diff --git a/src/game/units.cpp b/src/game/units.cpp index 201b7be..0f992f9 100644 --- a/src/game/units.cpp +++ b/src/game/units.cpp @@ -209,16 +209,18 @@ void unit_t::try_attack(unit_t *target) return; } - ss << " (" << text::get((hit_roll == 20 ? text::UNIT_CRITICAL_HIT : text::UNIT_HIT)) << ")"; - game->interface->print(ss.str()); - dmg_roll = game->roll(&cs.damage_roll); - ss.str(std::string()); - ss << name << " " << text::get(text::UNIT_DAMAGE) << " " << target->name << ": "; - ss << dmg_roll - cs.damage_roll.bonus << " + " << cs.damage_roll.bonus << " = " << dmg_roll; - game->interface->print(ss.str()); + if (hit_roll < 20) { + ss << ", " << text::get(text::UNIT_DAMAGE) << ": "; + ss << dmg_roll - cs.damage_roll.bonus << " + " << cs.damage_roll.bonus << " = " << dmg_roll; + } else { + ss << " (" << text::get(text::UNIT_CRITICAL_HIT) << ")" << ", " << text::get(text::UNIT_DAMAGE) << ": "; + ss << "(" << dmg_roll - cs.damage_roll.bonus << " + " << cs.damage_roll.bonus << ") x 2 = " << dmg_roll * 2; + dmg_roll *= 2; + } + game->interface->print(ss.str()); target->damage(dmg_roll, this); } -- cgit