2025/09/06 Update

Fixed VFX for Prismatic Sphere.
Fixed Bonded Summoner's familiar past 10th class lvl.
Removed old goad item.
Capped Inscribe Rune CL at 20th.
Updated Psychic Rogue's power list.
Fixed goad's icon size in baseitems.2da
Added WotC Mind's Eye Web Enhancement PDFs to notes.
Added PnP Animal Companion notes.
This commit is contained in:
Jaysyn904
2025-09-13 15:19:27 -04:00
parent b4b80734d5
commit 7ce076815d
52 changed files with 4793 additions and 1587 deletions

View File

@@ -24,6 +24,7 @@
#include "x0_i0_position"
#include "X0_INC_HENAI"
#include "x3_inc_skin"
#include "prc_racial_const"
/*
@@ -638,7 +639,7 @@ int HorseGetMountTail(object oHorse);
// FILE: x3_inc_horse FUNCTION: HorseGetMountFailureMessage()
// This is a companion function to HorseGetCanBeMounted. If you need a text
// message that explains why the horse cannot be mounted.
string HorseGetMountFailureMessage(object oTarget,object oRider=OBJECT_INVALID);
string HorseGetMountFailureMessage(object oHorse,object oRider=OBJECT_INVALID);
// FILE: x3_inc_horse FUNCTION: HorseAddHorseMenu()
@@ -1050,6 +1051,8 @@ void HORSE_SupportOriginalSpeed(object oRider)
} // check to see if matches conditions
eSearch=GetNextEffect(oRider);
} // cycle through effects
} // HORSE_SupportOriginalSpeed()
@@ -2733,47 +2736,6 @@ object HorseSummonPaladinMount(int bPHBDuration=FALSE)
return oMount;
} // HorseSummonPaladinMount()
object HorseSummonPhantomSteed(int nCasterLvl, int nDuration)
{ // PURPOSE: Summon Phantom Steed
object oSummoner=OBJECT_SELF;
object oMount;
location lLoc;
int nDespawnTime;
int nCurrentTime;
int nMountNum=1;
string sResRef=HORSE_PALADIN_PREFIX;
effect eVFX;
oMount=HorseGetPaladinMount(oSummoner);
if (!GetIsObjectValid(oMount) && GetObjectType(oSummoner) == OBJECT_TYPE_CREATURE)
{ // okay to summon - only one mount at a time
if ((GetIsPC(oSummoner) || GetIsDM(oSummoner))&&!GetHasFeat(FEAT_HORSE_MENU,oSummoner)) HorseAddHorseMenu(oSummoner);
if (nCasterLvl < 11) nMountNum = 2;
else if (nCasterLvl > 10 && nCasterLvl < 15) nMountNum = 3;
else if (nCasterLvl > 14 && nCasterLvl < 25) nMountNum = 4;
else if (nCasterLvl > 24 && nCasterLvl < 30) nMountNum = 5;
else if (nCasterLvl > 29 && nCasterLvl < 35) nMountNum = 6;
else if (nCasterLvl > 34 && nCasterLvl < 40) nMountNum = 7;
else if (nCasterLvl > 39) nMountNum = 8;
lLoc=HORSE_SupportGetMountLocation(oSummoner,oSummoner);
oMount=HorseCreateHorse(sResRef+IntToString(nMountNum),lLoc,oSummoner);
if (!GetIsObjectValid(oMount)) oMount=HorseCreateHorse(sResRef+IntToString(nMountNum),GetLocation(oSummoner),oSummoner);
if (GetIsObjectValid(oMount))
{ // oMount created
eVFX=EffectVisualEffect(VFX_DUR_CUTSCENE_INVISIBILITY);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eVFX,oMount,3.0);
eVFX=EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_2);
if (nMountNum>3) eVFX=EffectVisualEffect(VFX_FNF_SUMMON_MONSTER_3);
ApplyEffectAtLocation(DURATION_TYPE_INSTANT,eVFX,GetLocation(oMount));
nCurrentTime=HORSE_SupportAbsoluteMinute();
nDespawnTime=(nDuration*60)+nCurrentTime;
SetLocalInt(oSummoner,"nX3_PALADIN_UNSUMMON",nDespawnTime);
if (GetLocalInt(GetModule(),"X3_ENABLE_MOUNT_DB")&&GetIsPC(oSummoner)) SetLocalInt(oSummoner,"bX3_STORE_MOUNT_INFO",TRUE);
SetLocalObject(oSummoner,"oX3PaladinMount",oMount);
} // oMount created
} // okay to summon - only one paladin mount at a time
else { oMount=OBJECT_INVALID; }
return oMount;
} // HorseSummonPaladinMount()
void HorseUnsummonPaladinMount()
{ // PURPOSE: Unsummon Paladin Mount