Exalted update

Updated Vow of Poverty. Added Sanctify Ki Strike, Holy Strike, Fist of Heavens, Vow of Abstinence, Vow of Chastity & Gift of Faith.  (@fenac).  Turned off the Taunt & Parry skills.  Re-disabled AC & save bonuses from Tumble & Spellcraft.   Updated min() & max() to PRCmin() & PRCmax() to not conflict with similarly named NUI adjacent functions.  Set Point Blank Shot to 30' per PnP.  Added icon for Chosen of Evil.  Started work on Hidden Talent.  Created Psionics function cheatsheet.  Updated release archive.
This commit is contained in:
Jaysyn904
2025-01-29 22:46:38 -05:00
parent 370b29e917
commit e641b42f84
209 changed files with 1893 additions and 926 deletions

View File

@@ -1145,9 +1145,57 @@ object IPGetTargetedOrEquippedMeleeWeapon()
}
object IPGetTargetedOrEquippedArmor(int bAllowShields = FALSE)
{
object oTarget = PRCGetSpellTargetObject();
// If the target is a valid item
if (GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_ITEM)
{
// Check if the item is armor
if (GetBaseItemType(oTarget) == BASE_ITEM_ARMOR)
{
return oTarget;
}
// Check if the item is a shield and shields are allowed
if (bAllowShields && (GetBaseItemType(oTarget) == BASE_ITEM_LARGESHIELD ||
GetBaseItemType(oTarget) == BASE_ITEM_SMALLSHIELD ||
GetBaseItemType(oTarget) == BASE_ITEM_TOWERSHIELD))
{
return oTarget;
}
return OBJECT_INVALID;
}
// If the target is a creature
if (GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_CREATURE)
{
// Check the equipped armor
object oArmor = GetItemInSlot(INVENTORY_SLOT_CHEST, oTarget);
if (GetIsObjectValid(oArmor) && GetBaseItemType(oArmor) == BASE_ITEM_ARMOR)
{
return oArmor;
}
// Check the equipped shield if shields are allowed
if (bAllowShields)
{
oArmor = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget);
if (GetIsObjectValid(oArmor) && (GetBaseItemType(oArmor) == BASE_ITEM_LARGESHIELD ||
GetBaseItemType(oArmor) == BASE_ITEM_SMALLSHIELD ||
GetBaseItemType(oArmor) == BASE_ITEM_TOWERSHIELD))
{
return oArmor;
}
}
}
// Return invalid object if no valid armor or shield is found
return OBJECT_INVALID;
}
/* object IPGetTargetedOrEquippedArmor(int bAllowShields = FALSE)
{
object oTarget = PRCGetSpellTargetObject();
if(GetIsObjectValid(oTarget) && GetObjectType(oTarget) == OBJECT_TYPE_ITEM)
@@ -1193,7 +1241,7 @@ object IPGetTargetedOrEquippedArmor(int bAllowShields = FALSE)
return OBJECT_INVALID;
}
*/
// ----------------------------------------------------------------------------
// Returns FALSE it the item has no sequencer property
// Returns number of spells that can be stored in any other case
@@ -1578,7 +1626,7 @@ int IPGetWeaponEnhancementBonus(object oWeapon, int nEnhancementBonusType = ITEM
if(GetItemPropertyDurationType(ip) == DURATION_TYPE_PERMANENT || !bIgnoreTemporary)
{
nTemp = GetItemPropertyCostTableValue(ip);
nFound = max(nFound, nTemp);
nFound = PRCMax(nFound, nTemp);
}
}
ip = GetNextItemProperty(oWeapon);