Skip to content

Commit

Permalink
It's specifically unarmed state you can't block in.
Browse files Browse the repository at this point in the history
  • Loading branch information
ratkosrb committed Aug 28, 2024
1 parent 91527cf commit 707c9c9
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions src/game/Objects/Unit.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2720,13 +2720,16 @@ float Unit::GetUnitBlockChance() const

if (Player const* pPlayer = ToPlayer())
{
// This is not reproducable on classic, but it's possible they allowed behavior from tbc to stay.
// If anyone finds video proof from vanilla of blocking while shield is sheathed we can revert.
// Test results from classic:
// Sheath State Unarmed - Can't Block
// Sheath State Melee - Can Block
// Sheath State Ranged - Can Block
// Parry and Dodge don't have any sheath state restrictions.
// https://warcraft.wiki.gg/wiki/Patch_2.1.0_(undocumented_changes)
// "You can now block attacks while your shield is in the sheathed position."
// "Previously, Warriors, Shamans and Paladins were vulnerable while using"
// "instant-cast abilities that caused their shield to momentarily appear on their back."
if (pPlayer->GetSheath() != SHEATH_STATE_MELEE)
if (pPlayer->GetSheath() == SHEATH_STATE_UNARMED)
return 0.0f;

if (pPlayer->CanBlock() && pPlayer->CanUseEquippedWeapon(OFF_ATTACK))
Expand Down

0 comments on commit 707c9c9

Please sign in to comment.