feat(combat): opt out attacking players
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
type: User Story
|
||||
title: "US-002: Relinquish protection when attacking"
|
||||
description: Remove Leaf protection when an opted-in player attacks another player.
|
||||
status: backlog
|
||||
status: done
|
||||
---
|
||||
|
||||
# US-002: Relinquish protection when attacking
|
||||
@@ -11,17 +11,17 @@ As a **player facing PvP**, I want Leaf protection to belong only to non-aggress
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
- [ ] When an opted-in player damages another player, Leaf automatically changes the attacker's saved choice to opted out.
|
||||
- [ ] Automatic opt-out immediately removes Leaf-managed Resistance and the attacker's leaf prefix.
|
||||
- [ ] The attacker receives a clear chat message explaining that attacking another player disabled Leaf and that they may opt in again when permitted.
|
||||
- [ ] Receiving player-caused damage without retaliating does not change the protected player's choice or Resistance.
|
||||
- [ ] Retaliatory damage counts as attacking, including Thorns damage attributable to the protected player.
|
||||
- [ ] Direct melee attacks and player-fired projectiles are attributed to the attacking player.
|
||||
- [ ] Harmful splash or lingering potion damage is attributed to the player who threw the potion.
|
||||
- [ ] Damage caused by a tamed animal is attributed to its player owner when Spigot exposes that ownership.
|
||||
- [ ] TNT, fire, and other indirect damage trigger opt-out only when Spigot exposes a reliable responsible player; ambiguous environmental damage does not opt out an innocent player.
|
||||
- [ ] PvP-triggered opt-out applies even when an administrator has locked the player's preference.
|
||||
- [ ] A single attack produces no duplicate state changes or duplicate notifications.
|
||||
- [x] When an opted-in player damages another player, Leaf automatically changes the attacker's saved choice to opted out.
|
||||
- [x] Automatic opt-out immediately removes Leaf-managed Resistance and the attacker's leaf prefix.
|
||||
- [x] The attacker receives a clear chat message explaining that attacking another player disabled Leaf and that they may opt in again when permitted.
|
||||
- [x] Receiving player-caused damage without retaliating does not change the protected player's choice or Resistance.
|
||||
- [x] Retaliatory damage counts as attacking, including Thorns damage attributable to the protected player.
|
||||
- [x] Direct melee attacks and player-fired projectiles are attributed to the attacking player.
|
||||
- [x] Harmful splash or lingering potion damage is attributed to the player who threw the potion.
|
||||
- [x] Damage caused by a tamed animal is attributed to its player owner when Spigot exposes that ownership.
|
||||
- [x] TNT, fire, and other indirect damage trigger opt-out only when Spigot exposes a reliable responsible player; ambiguous environmental damage does not opt out an innocent player.
|
||||
- [x] PvP-triggered opt-out applies even when an administrator has locked the player's preference.
|
||||
- [x] A single attack produces no duplicate state changes or duplicate notifications.
|
||||
|
||||
## Related
|
||||
|
||||
|
||||
Reference in New Issue
Block a user