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.
108 lines
2.4 KiB
Plaintext
108 lines
2.4 KiB
Plaintext
#include "prc_alterations"
|
|
#include "prc_feat_const"
|
|
|
|
/// +2 on Intimidate and Persuade /////////
|
|
void Evilbrand(object oPC ,object oSkin ,int iLevel)
|
|
{
|
|
|
|
if(GetLocalInt(oSkin, "EvilbrandPe") == iLevel) return;
|
|
SetCompositeBonus(oSkin, "EvilbrandPe", iLevel, ITEM_PROPERTY_SKILL_BONUS,SKILL_PERSUADE);
|
|
SetCompositeBonus(oSkin, "EvilbrandI", iLevel, ITEM_PROPERTY_SKILL_BONUS,SKILL_INTIMIDATE);
|
|
}
|
|
|
|
void EB_app(object oPC,int iEquip,object oItem )
|
|
{
|
|
|
|
object oPC = OBJECT_SELF;
|
|
object oSkin = GetPCSkin(oPC);
|
|
|
|
if (iEquip!=1)
|
|
{
|
|
|
|
if (GetBaseItemType(oItem)!=BASE_ITEM_INVALID)
|
|
{
|
|
Evilbrand(oPC, oSkin, 0);
|
|
DeleteLocalInt(oSkin,"Evilbrand");
|
|
}
|
|
else
|
|
{
|
|
Evilbrand(oPC, oSkin, 2);
|
|
SetLocalInt(oSkin,"Evilbrand",1);
|
|
}
|
|
|
|
}
|
|
else if (iEquip==1)
|
|
{
|
|
|
|
if (GetBaseItemType(oItem)!= BASE_ITEM_INVALID) return;
|
|
Evilbrand(oPC, oSkin, 2);
|
|
SetLocalInt(oSkin,"Evilbrand",1);
|
|
}
|
|
|
|
}
|
|
|
|
void main()
|
|
{
|
|
object oPC = OBJECT_SELF;
|
|
object oSkin = GetPCSkin(oPC);
|
|
|
|
//Check which feats the PC has
|
|
int bEBHand;
|
|
int bEBHead;
|
|
int bEBChest;
|
|
int bEBNeck;
|
|
int bEBArm;
|
|
if (GetHasFeat(FEAT_EB_HAND, oPC) > 0)
|
|
{
|
|
bEBHand = 1;
|
|
}
|
|
if (GetHasFeat(FEAT_EB_HEAD, oPC) > 0)
|
|
{
|
|
bEBHead = 1;
|
|
}
|
|
if (GetHasFeat(FEAT_EB_CHEST, oPC) > 0)
|
|
{
|
|
bEBChest = 1;
|
|
}
|
|
if (GetHasFeat(FEAT_EB_NECK, oPC) > 0)
|
|
{
|
|
bEBNeck = 1;
|
|
}
|
|
if (GetHasFeat(FEAT_EB_ARM, oPC) > 0)
|
|
{
|
|
bEBArm = 1;
|
|
}
|
|
|
|
//Define the objects
|
|
object oHand = GetItemInSlot(INVENTORY_SLOT_ARMS, oPC);
|
|
object oHead = GetItemInSlot(INVENTORY_SLOT_HEAD, oPC);
|
|
object oChest = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC);
|
|
object oNeck = GetItemInSlot(INVENTORY_SLOT_CLOAK, oPC);
|
|
object oArm = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPC);
|
|
|
|
//Check alignment and check what bonus applies
|
|
if(GetAlignmentGoodEvil(oPC) == ALIGNMENT_EVIL)
|
|
{
|
|
if(bEBHand > 0)
|
|
EB_app(oPC, GetLocalInt(oPC,"ONEQUIP"),oHand);
|
|
|
|
|
|
if(bEBHead > 0)
|
|
EB_app(oPC, GetLocalInt(oPC,"ONEQUIP"),oHead);
|
|
|
|
if(bEBChest > 0)
|
|
EB_app(oPC, GetLocalInt(oPC,"ONEQUIP"),oChest);
|
|
|
|
if(bEBNeck > 0)
|
|
EB_app(oPC, GetLocalInt(oPC,"ONEQUIP"),oNeck);
|
|
|
|
if(bEBArm > 0)
|
|
EB_app(oPC, GetLocalInt(oPC,"ONEQUIP"),oArm);
|
|
|
|
}
|
|
else
|
|
Evilbrand(oPC, oSkin,0);
|
|
|
|
}
|
|
|