Presses count until you're really down, not forecast down

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-10-25 22:29:42 +00:00
parent 387f4c201b
commit e6702871ff
3 changed files with 25 additions and 6 deletions

View file

@ -2375,10 +2375,10 @@ def _my_fight(world: dict, player: dict, now: float) -> tuple[dict, dict, float]
fight, start = fight_clock(world, player)
if not fight or now >= start + fight["duration"] or not any(m["id"] == player["id"] for m in fight["members"]):
return "You're not fighting"
member = member_of(fight, player["id"])
if member["result"] in ("down", "left"):
member, t = member_of(fight, player["id"]), fight_time(fight, start, now)
if member.get("out_at") is not None and t >= member["out_at"]: # out by now, not just forecast to be
return "You're out of this fight"
return fight, member, fight_time(fight, start, now)
return fight, member, t
def watch_fight(world: dict, player: dict, now: float) -> None:
@ -6094,6 +6094,7 @@ PATCH_NOTES = [
("new", "DPS meter under the combat log: damage per second and total for each fighter, live. Shows the last fight while resting."),
("new", "Improved raid UI"),
("fix", "Bugfix: Combats started using \"Fight once\" can now be joined."),
("fix", "Your buttons work until you're knocked out. A fight heading for a loss no longer locks you out early with \"You're out of this fight\" while you're still standing."),
]},
{"date": "2026-10-24", "title": "Dungeon loot", "notes": [
("new", "Masterwork patterns: every dungeon boss can drop one of 7 (15% from a mini-boss, 35% from the last boss, "