From c2f046b9a5315edbf0c436d970cfa42b27ef5dd6 Mon Sep 17 00:00:00 2001 From: Supremist Date: Thu, 12 Mar 2026 00:15:04 +0200 Subject: Check Twin Takedown vs Double slice --- actions.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'actions.py') diff --git a/actions.py b/actions.py index 9710faa..c1c9f30 100644 --- a/actions.py +++ b/actions.py @@ -14,6 +14,7 @@ class Attack: strike_type="melee" previous_attacks: int = 0 distance: int = 0 + sneak: bool = False def bonus(self): return self.attacker.attack_bonus(self.weapon, self.strike_type) + self.map() @@ -30,10 +31,24 @@ class Attack: def damage_bonus(self): return self.attacker.attack_damage_bonus(self.weapon, self.strike_type) + def __str__(self): + res = "" + if self.sneak: + res += "Sneak " + ac = self.target.ac() + bonus = self.bonus() + res += f"{self.strike_type} attack{self.previous_attacks+1} " + res += f"{bonus:+} vs AC {ac}: {10+bonus-ac:+}; " + res += Roll.short_str(self.roll()) + res += f" Dmg: {self.strike().expected()}" + return res + def damage(self, check=Roll.Success): persistant_damage_factor = 3 + 1/3 wp = self.weapon dmg_bonus = self.damage_bonus() + if self.sneak: + dmg_bonus += self.attacker.sneak_attack() if wp.backstabber: dmg_bonus += 1 if wp.potency >= 3: -- cgit v1.2.3