2026/01/08 Update

Hexblade shouldn't get Medium Armor prof.
Weapon Specialization Whip isn't a Warblade bonus feat.
Reorganized packages.2da.
Fixed potential issue with SetCompositeBonusT().
Added materials iprops to material based crafting.
Fixed bug w/ DoTrip().
Added heartbeat script to Monk to properly handle monk sizes.
Cleaned up PRCGetCreatureSize().
Set Shielded Casting to use TagItemProperty().
Archivist now has a Lore check to learn spells from scrolls.
Set Dragonfire Strike to use TagItemProperty().
Setup Forsaker to use TagItemProperty().
Fixed distance mismatch with Necrocarnum Shroud.
Added too much debugging for the unarmed stuff.
Cloudkill now obeys Mastery of Shapes.
This commit is contained in:
Jaysyn904
2026-01-08 20:31:11 -05:00
parent 6ca160ca26
commit 6420e5dbb8
28 changed files with 1707 additions and 1117 deletions

View File

@@ -493,6 +493,29 @@ int PRCGetCreatureSize(object oObject = OBJECT_SELF, int nSizeMask = PRC_SIZEMAS
int nSize = StringToInt(Get2DAString("appearance", "SizeCategory", GetAppearanceType(oObject)));
if (DEBUG) DoDebug("Appearance-based GetCreatureSize, returning size: "+IntToString(nSize));
if (DEBUG) DoDebug("Bioware GetCreatureSize, returning size: "+IntToString(GetCreatureSize(oObject)));
// Check for racial size feats FIRST - these override appearance size
if(GetHasFeat(FEAT_TINY, oObject))
nSize = 3; // PRC Tiny
else if(GetHasFeat(FEAT_SMALL, oObject))
nSize = 4; // PRC Small
else if(GetHasFeat(FEAT_LARGE, oObject))
nSize = 6; // PRC Large
else if(GetHasFeat(FEAT_HUGE, oObject))
nSize = 7; // PRC Huge
else
{
// Map appearance sizes to PRC sizes when no racial feat present
if(nSize == 1) nSize = 3; // Tiny creatures
else if(nSize == 2) nSize = 4; // Small creatures
else if(nSize == 3) nSize = 5; // Medium creatures
else if(nSize == 4) nSize = 6; // Large creatures
else if(nSize == 5) nSize = 7; // Huge creatures
}
if (DEBUG) DoDebug("Has FEAT_LARGE: " + IntToString(GetHasFeat(FEAT_LARGE, oObject)));
if (DEBUG) DoDebug("PRCGetCreatureSize: After racial feats, nSize = " + IntToString(nSize));
//CEP adds other sizes, take them into account too
if(nSize == 20)
nSize = CREATURE_SIZE_DIMINUTIVE;