forked from Jaysyn/PRC8
Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
58 lines
1.6 KiB
Plaintext
58 lines
1.6 KiB
Plaintext
#include "prc_alterations"
|
|
#include "inc_utility"
|
|
|
|
|
|
// * Applies the Arcane Duelist's AC bonus as a CompositeBonus on object's skin.
|
|
void ApparentDefense(object oPC, object oSkin)
|
|
{
|
|
if(GetLocalInt(oSkin, "ADDef") == GetAbilityModifier(ABILITY_CHARISMA, oPC)) return;
|
|
|
|
SetCompositeBonus(oSkin, "ADDef", GetAbilityModifier(ABILITY_CHARISMA, oPC), ITEM_PROPERTY_AC_BONUS);
|
|
}
|
|
|
|
|
|
// * Removes the Arcane Duelist's Enchant Chosen Weapon bonus
|
|
void RemoveEnchantCW(object oPC, object oWeap)
|
|
{
|
|
if (GetLocalInt(oWeap, "ADEnchant"))
|
|
{
|
|
SetCompositeBonusT(oWeap, "ADEnchant", 0, ITEM_PROPERTY_ENHANCEMENT_BONUS);
|
|
}
|
|
}
|
|
|
|
// * Applies the Arcane Duelist's Enchant Chosen Weapon bonus
|
|
void EnchantCW(object oPC, object oWeap)
|
|
{
|
|
int iBonus = 0;
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_ARCANE_DUELIST, oPC) >= 1)
|
|
iBonus += 1;
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_ARCANE_DUELIST, oPC) >= 4)
|
|
iBonus += 1;
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_ARCANE_DUELIST, oPC) >= 6)
|
|
iBonus += 1;
|
|
|
|
if (GetLevelByClass(CLASS_TYPE_ARCANE_DUELIST, oPC) >= 8)
|
|
iBonus += 1;
|
|
|
|
//SendMessageToPC(oPC, "Enchant Chosen Weapon has been run");
|
|
DelayCommand(0.1,SetCompositeBonusT(oWeap, "ADEnchant", iBonus, ITEM_PROPERTY_ENHANCEMENT_BONUS));
|
|
}
|
|
|
|
void main()
|
|
{
|
|
object oPC = OBJECT_SELF;
|
|
object oSkin = GetPCSkin(oPC);
|
|
object oWeap = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
|
|
|
|
if (GetHasFeat(FEAT_AD_APPARENT_DEFENSE, oPC)) ApparentDefense(oPC, oSkin);
|
|
|
|
if (GetLocalInt(oWeap,"CHOSEN_WEAPON") == 2)
|
|
EnchantCW(oPC, oWeap);
|
|
|
|
if (GetLocalInt(oPC,"ONEQUIP") == 1)
|
|
RemoveEnchantCW(oPC, GetItemLastUnequipped());
|
|
}
|