Updated AMS marker feats. Removed arcane & divine marker feats. Updated Dread Necromancer for epic progression. Updated weapon baseitem models. Updated new weapons for crafting & npc equip. Updated prefix. Updated release archive.
62 lines
1.9 KiB
Plaintext
62 lines
1.9 KiB
Plaintext
#include "prc_feat_const"
|
|
|
|
const string BRUTAL_STRIKE_MODE_VAR = "PRC_BRUTAL_STRIKE_MODE";
|
|
|
|
int _prc_inc_hextor_BrutalStrikeFeatCount(object oPC)
|
|
{
|
|
if(GetHasFeat(FEAT_BSTRIKE_12, oPC))
|
|
return 12;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_11, oPC))
|
|
return 11;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_10, oPC))
|
|
return 10;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_9, oPC))
|
|
return 9;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_8, oPC))
|
|
return 8;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_7, oPC))
|
|
return 7;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_6, oPC))
|
|
return 6;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_5, oPC))
|
|
return 5;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_4, oPC))
|
|
return 4;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_3, oPC))
|
|
return 3;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_2, oPC))
|
|
return 2;
|
|
else if (GetHasFeat(FEAT_BSTRIKE_1, oPC))
|
|
return 1;
|
|
|
|
return 0;
|
|
}
|
|
|
|
void _prc_inc_hextor_ApplyBrutalStrike(object oPC, int nBonus)
|
|
{
|
|
object oWeap = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
|
if (!GetIsObjectValid(oWeap))
|
|
{
|
|
oWeap = GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oPC);
|
|
if (!GetIsObjectValid(oWeap))
|
|
{
|
|
oWeap = GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oPC);
|
|
if (!GetIsObjectValid(oWeap))
|
|
oWeap = GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oPC);
|
|
}
|
|
}
|
|
int nDamageType = (!GetIsObjectValid(oWeap)) ? DAMAGE_TYPE_BLUDGEONING : GetItemDamageType(oWeap);
|
|
|
|
effect eBrutalStrike;
|
|
if (GetLocalInt(oPC, BRUTAL_STRIKE_MODE_VAR))
|
|
eBrutalStrike = EffectAttackIncrease(nBonus);
|
|
else
|
|
eBrutalStrike = EffectDamageIncrease(nBonus, nDamageType);
|
|
eBrutalStrike = ExtraordinaryEffect(eBrutalStrike);
|
|
|
|
PRCRemoveEffectsFromSpell(oPC, SPELL_HEXTOR_DAMAGE);
|
|
PRCRemoveEffectsFromSpell(oPC, SPELL_HEXTOR_MODE);
|
|
|
|
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eBrutalStrike, oPC);
|
|
}
|