2026/01/10 Update
Added three starting packages for the Binder class. Updated any PrCs that can advance invokers to allow invocation feats during level up. Updated invoker feats to require Eldritch Blast & DFA Breath where appropriate. Fixed bad constant on Rising Phoenix. Fixed Oozemaster Oozy Touch/Glob bonus feat bug. Vassal of Bahamut's Platinum Armor is now much closer to PnP. Craft (Alchemy) is a class skill for Binders. Moved packages into \Craft2das\ so the PRC8 would continue to build. Updated personal_switch.2da to not stack Power Attack by default. Fixed creature size related screw-up that happened when I was trying to fix unarmed damage for large creatures. +10 Jump bonus for Leaping Dragon Stance was being improperly gated by Blood Claw Master. Fixed duration bug w/ Supress Weapon. Fixed broken loop bug w/ Supress Weapon. Restoration shouldn't be able to remove Crack of Doom user's AB penalty. Epic Vassal's of Bahamut now get their proper allowance. Mirror Images might not spawning in dead anymore. YMMV, Harrowport. Added package TLK worksheet to notes.
This commit is contained in:
@@ -66,6 +66,7 @@ void main()
|
||||
effect eAttacks = SupernaturalEffect(EffectModifyAttacks(nAttacks));
|
||||
effect ePenalty = SupernaturalEffect(EffectAttackDecrease(nPenalty));
|
||||
effect eLink = EffectLinkEffects(eAttacks, ePenalty);
|
||||
eLink = UnyieldingEffect(eLink);
|
||||
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
|
||||
|
||||
if(nAttacks == 1)
|
||||
|
||||
@@ -13,7 +13,32 @@
|
||||
#include "prc_feat_const"
|
||||
#include "prc_class_const"
|
||||
|
||||
void CleanExtraArmors(object oPC)
|
||||
void CleanExtraArmors(object oPC)
|
||||
{
|
||||
// Cleanup routine variables
|
||||
object oChk;
|
||||
int nArmor8 = 0;
|
||||
|
||||
// Clean up any extra +8 armors
|
||||
oChk = GetFirstItemInInventory(oPC);
|
||||
while (GetIsObjectValid(oChk))
|
||||
{
|
||||
if (GetTag(oChk) == "PlatinumArmor8")
|
||||
{
|
||||
nArmor8++;
|
||||
if (nArmor8 > 1) DestroyObject(oChk, 0.0);
|
||||
}
|
||||
else if (GetTag(oChk) == "PlatinumArmor4" || GetTag(oChk) == "PlatinumArmor6")
|
||||
{
|
||||
// Destroy any remaining +4 or +6 armors
|
||||
DestroyObject(oChk, 0.0);
|
||||
}
|
||||
|
||||
oChk = GetNextItemInInventory(oPC);
|
||||
}
|
||||
}
|
||||
|
||||
/* void CleanExtraArmors(object oPC)
|
||||
{
|
||||
// Cleanup routine variables
|
||||
object oChk;
|
||||
@@ -66,6 +91,7 @@ void CleanExtraArmors(object oPC)
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void AddArmorOnhit(object oPC,int iEquip)
|
||||
{
|
||||
@@ -243,6 +269,7 @@ void DWLeftWeap(object oPC, int iEquip)
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void ImperiousAura(object oPC, object oSkin, int iLevel)
|
||||
{
|
||||
if(GetLocalInt(oSkin, "ImperiousAura") == iLevel) return;
|
||||
|
||||
@@ -1,39 +1,52 @@
|
||||
//:: prc_vassal_treas.nss
|
||||
|
||||
#include "prc_class_const"
|
||||
#include "inc_persist_loca"
|
||||
|
||||
void main()
|
||||
{
|
||||
object oPC = OBJECT_SELF;
|
||||
int nVassal = GetLevelByClass(CLASS_TYPE_VASSAL, oPC);
|
||||
|
||||
if(GetPersistantLocalInt(oPC, "VassalLvl") >= nVassal)
|
||||
return;
|
||||
|
||||
// *Level 8
|
||||
if(nVassal == 8)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 80000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 8);
|
||||
}
|
||||
// *Level 5
|
||||
else if(nVassal == 5)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 50000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 5);
|
||||
}
|
||||
// *Level 2
|
||||
else if(nVassal == 2)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 20000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 2);
|
||||
}
|
||||
// *Level 1
|
||||
else if(nVassal == 1)
|
||||
{
|
||||
CreateItemOnObject("Platinumarmor8", oPC, 1);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 1);
|
||||
}
|
||||
void main()
|
||||
{
|
||||
object oPC = OBJECT_SELF;
|
||||
int nVassal = GetLevelByClass(CLASS_TYPE_VASSAL, oPC);
|
||||
|
||||
if(GetPersistantLocalInt(oPC, "VassalLvl") >= nVassal)
|
||||
return;
|
||||
|
||||
// *Level 8
|
||||
if(nVassal == 8)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 80000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 8);
|
||||
}
|
||||
// *Level 5
|
||||
else if(nVassal == 5)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 50000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 5);
|
||||
}
|
||||
// *Level 2
|
||||
else if(nVassal == 2)
|
||||
{
|
||||
// *Shared Trove
|
||||
GiveGoldToCreature(oPC, 20000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 2);
|
||||
}
|
||||
// *Level 1
|
||||
else if(nVassal == 1)
|
||||
{
|
||||
CreateItemOnObject("Platinumarmor8", oPC, 1);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", 1);
|
||||
}
|
||||
// *Epic levels - 30,000 gp every 3 levels (11, 14, 17, 20, 23, etc.)
|
||||
else if(nVassal >= 11)
|
||||
{
|
||||
// Check if this is an epic level that grants trove (every 3 levels)
|
||||
if((nVassal - 11) % 3 == 0)
|
||||
{
|
||||
// *Shared Trove - Epic
|
||||
GiveGoldToCreature(oPC, 30000);
|
||||
SetPersistantLocalInt(oPC, "VassalLvl", nVassal);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user