diff --git a/Source/player.cpp b/Source/player.cpp index be793d26a..b575327e8 100644 --- a/Source/player.cpp +++ b/Source/player.cpp @@ -1326,18 +1326,18 @@ bool DoRangeAttack(int pnum) return false; } -void ShieldDur(int pnum) +void DamageParryItem(int pnum) { if (pnum != MyPlayerId) { return; } if ((DWORD)pnum >= MAX_PLRS) { - app_fatal("ShieldDur: illegal player %i", pnum); + app_fatal("DamageParryItem: illegal player %i", pnum); } auto &player = Players[pnum]; - if (player.InvBody[INVLOC_HAND_LEFT]._itype == ItemType::Shield) { + if (player.InvBody[INVLOC_HAND_LEFT]._itype == ItemType::Shield || player.InvBody[INVLOC_HAND_LEFT]._itype == ItemType::Staff) { if (player.InvBody[INVLOC_HAND_LEFT]._iDurability == DUR_INDESTRUCTIBLE) { return; } @@ -1374,7 +1374,7 @@ bool DoBlock(int pnum) ClearStateVariables(player); if (GenerateRnd(10) == 0) { - ShieldDur(pnum); + DamageParryItem(pnum); } return true; }