2026/02/22 Update 2
Fixed broken Vow of Poverty 2da Can no longer take both Favored of the Companions & Servant of the Heavens via Vow of Poverty bonus feats.
This commit is contained in:
@@ -29,4 +29,4 @@
|
|||||||
25 FEAT_VOW_OBED "Vow of Obedience" 3389 **** **** **** **** **** **** 1
|
25 FEAT_VOW_OBED "Vow of Obedience" 3389 **** **** **** **** **** **** 1
|
||||||
26 FEAT_VOW_PURITY "Vow of Purity" 5360 **** **** **** **** **** **** ****
|
26 FEAT_VOW_PURITY "Vow of Purity" 5360 **** **** **** **** **** **** ****
|
||||||
27 FEAT_FAV_COMPANIONS "Favored of the Companions" 25994 **** **** **** **** **** **** ****
|
27 FEAT_FAV_COMPANIONS "Favored of the Companions" 25994 **** **** **** **** **** **** ****
|
||||||
28 **** **** **** **** **** **** **** **** ****
|
28 **** **** **** **** **** **** **** **** **** ****
|
||||||
|
|||||||
@@ -98,7 +98,17 @@ void main()
|
|||||||
if(nBAB>0 && GetBaseAttackBonus(oPC) < nBAB) nAllPreReq = 0;
|
if(nBAB>0 && GetBaseAttackBonus(oPC) < nBAB) nAllPreReq = 0;
|
||||||
if(nLaw>0 && !(GetAlignmentLawChaos(oPC) == ALIGNMENT_LAWFUL)) nAllPreReq = 0;
|
if(nLaw>0 && !(GetAlignmentLawChaos(oPC) == ALIGNMENT_LAWFUL)) nAllPreReq = 0;
|
||||||
|
|
||||||
if (!GetHasFeat(nFeat, oPC) && !GetLocalInt(oPC, "VoPFeat"+IntToString(nFeat)) && nAllPreReq == 1) AddChoice(sName, nFeat, oPC);
|
if (!GetHasFeat(nFeat, oPC) && !GetLocalInt(oPC, "VoPFeat"+IntToString(nFeat)) && nAllPreReq == 1)
|
||||||
|
{
|
||||||
|
// Enforce mutual exclusivity: Favored of the Companions vs Servant of the Heavens
|
||||||
|
if ((nFeat == FEAT_FAV_COMPANIONS && GetHasFeat(FEAT_SERVHEAVEN, oPC)) ||
|
||||||
|
(nFeat == FEAT_SERVHEAVEN && GetHasFeat(FEAT_FAV_COMPANIONS, oPC)))
|
||||||
|
{
|
||||||
|
// Skip adding this choice; the mutually exclusive feat is already possessed
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
AddChoice(sName, nFeat, oPC);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AddChoice("Cancel (you will get no Exalted Feats this level)", 0, oPC);
|
AddChoice("Cancel (you will get no Exalted Feats this level)", 0, oPC);
|
||||||
@@ -156,6 +166,16 @@ void main()
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
int nChoice = GetChoice(oPC);
|
int nChoice = GetChoice(oPC);
|
||||||
|
|
||||||
|
// Favored of the Companions vs Servant of the Heavens: Choose one
|
||||||
|
if ((nChoice == FEAT_FAV_COMPANIONS && GetHasFeat(FEAT_SERVHEAVEN, oPC)) ||
|
||||||
|
(nChoice == FEAT_SERVHEAVEN && GetHasFeat(FEAT_FAV_COMPANIONS, oPC)))
|
||||||
|
{
|
||||||
|
FloatingTextStringOnCreature("You cannot select both Favored of the Companions and Servant of the Heavens.", oPC, FALSE);
|
||||||
|
AllowExit(DYNCONV_EXIT_FORCE_EXIT);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if(nStage == STAGE_SELECT_ABIL)
|
if(nStage == STAGE_SELECT_ABIL)
|
||||||
{
|
{
|
||||||
if (nChoice == 0)
|
if (nChoice == 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user