PRC8/nwn/nwnprc/trunk/scripts/prc_talontiamat.nss
Jaysyn904 6ec137a24e Updated AMS marker feats
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.
2024-02-11 14:01:05 -05:00

75 lines
2.7 KiB
Plaintext

//::///////////////////////////////////////////////
//:: Talon of Tiamat
//:: prc_talontiamat.nss
//::///////////////////////////////////////////////
/*
Handles the passive bonuses for Talons of Tiamat
*/
//:://////////////////////////////////////////////
//:: Created By: Fox
//:: Created On: Nov 22, 2007
//:://////////////////////////////////////////////
#include "prc_alterations"
void main()
{
object oPC = OBJECT_SELF;
object oSkin = GetPCSkin(oPC);
int nClass = GetLevelByClass(CLASS_TYPE_TALON_OF_TIAMAT, oPC);
//Keen senses: Low light at 4, Darkvision at 8
if(nClass > 3)
IPSafeAddItemProperty(oSkin, ItemPropertyBonusFeat(IP_CONST_FEAT_LOWLIGHT_VISION), 0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
if(nClass > 7)
IPSafeAddItemProperty(oSkin, ItemPropertyDarkvision(), 0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING, FALSE, FALSE);
//Voice of the Dragon
switch(nClass)
{
case 2:
case 3:
case 4:
case 5:
SetCompositeBonus(oSkin, "ToT_Bluff", 2, ITEM_PROPERTY_SKILL_BONUS, SKILL_BLUFF);
SetCompositeBonus(oSkin, "ToT_Intim", 2, ITEM_PROPERTY_SKILL_BONUS, SKILL_INTIMIDATE); break;
case 6:
case 7:
case 8:
case 9:
SetCompositeBonus(oSkin, "ToT_Bluff", 4, ITEM_PROPERTY_SKILL_BONUS, SKILL_BLUFF);
SetCompositeBonus(oSkin, "ToT_Intim", 4, ITEM_PROPERTY_SKILL_BONUS, SKILL_INTIMIDATE); break;
case 10:
SetCompositeBonus(oSkin, "ToT_Bluff", 6, ITEM_PROPERTY_SKILL_BONUS, SKILL_BLUFF);
SetCompositeBonus(oSkin, "ToT_Intim", 6, ITEM_PROPERTY_SKILL_BONUS, SKILL_INTIMIDATE); break;
default: break;
}
//Immunities
if(GetHasFeat(FEAT_TOT_FIRE_IMMUNITY, oPC))
{
IPSafeAddItemProperty(oSkin,
ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_FIRE, IP_CONST_DAMAGEIMMUNITY_100_PERCENT),
0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
}
else if(GetHasFeat(FEAT_TOT_COLD_IMMUNITY, oPC))
{
IPSafeAddItemProperty(oSkin,
ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_COLD, IP_CONST_DAMAGEIMMUNITY_100_PERCENT),
0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
}
else if(GetHasFeat(FEAT_TOT_ACID_IMMUNITY, oPC))
{
IPSafeAddItemProperty(oSkin,
ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ACID, IP_CONST_DAMAGEIMMUNITY_100_PERCENT),
0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
}
else if(GetHasFeat(FEAT_TOT_ELEC_IMMUNITY, oPC))
{
IPSafeAddItemProperty(oSkin,
ItemPropertyDamageImmunity(IP_CONST_DAMAGETYPE_ELECTRICAL, IP_CONST_DAMAGEIMMUNITY_100_PERCENT),
0.0f, X2_IP_ADDPROP_POLICY_KEEP_EXISTING);
}
}