[Rules] Add Rule to allow Headshots on non-Humanoid body types. (#2329)

* [Rules] Add Rule to allow Headshots on non-Humanoid body types.

* Formatting.
This commit is contained in:
Kinglykrab
2022-07-29 18:38:30 -04:00
committed by GitHub
parent 4002d6a083
commit cadd29e5d1
2 changed files with 8 additions and 2 deletions
+7 -2
View File
@@ -2154,8 +2154,13 @@ void Mob::InstillDoubt(Mob *who) {
int Mob::TryHeadShot(Mob *defender, EQ::skills::SkillType skillInUse)
{
// Only works on YOUR target.
if (defender && defender->GetBodyType() == BT_Humanoid && !defender->IsClient() &&
skillInUse == EQ::skills::SkillArchery && GetTarget() == defender) {
if (
defender &&
!defender->IsClient() &&
skillInUse == EQ::skills::SkillArchery &&
GetTarget() == defender &&
(defender->GetBodyType() == BT_Humanoid || !RuleB(Combat, HeadshotOnlyHumanoids))
) {
uint32 HeadShot_Dmg = aabonuses.HeadShot[SBIndex::FINISHING_EFFECT_DMG] + spellbonuses.HeadShot[SBIndex::FINISHING_EFFECT_DMG] + itembonuses.HeadShot[SBIndex::FINISHING_EFFECT_DMG];
uint8 HeadShot_Level = 0; // Get Highest Headshot Level
HeadShot_Level = std::max({aabonuses.HSLevel[SBIndex::FINISHING_EFFECT_LEVEL_MAX], spellbonuses.HSLevel[SBIndex::FINISHING_EFFECT_LEVEL_MAX], itembonuses.HSLevel[SBIndex::FINISHING_EFFECT_LEVEL_MAX]});