2025/05/25 Update
Updated all ToB maneuvers with saves to respect Blade Meditation. Added HasBladeMeditationForDiscipline() Expanded Witchborn Binder for epic progression. Fixed a few bugs around Vile Martial strike. Echo Spell shouldn't target self or items. Muckdweller should have a -6 STR. Added new Vile Martial feats to GetVileFeats(). Grappling something now removes invisibility. Started on Power Attack NUI. Starmantle shouldn't stack. Factotum & Shadow Thief of Amn require UMD checks for scroll casting.
This commit is contained in:
1193
nwn/nwnprc/trunk/include/nw_inc_nui.nss
Normal file
1193
nwn/nwnprc/trunk/include/nw_inc_nui.nss
Normal file
File diff suppressed because it is too large
Load Diff
@@ -169,22 +169,22 @@ const int FEAT_VILE_MARTIAL_ELVEN_THINBLADE = 24814;
|
||||
const int FEAT_VILE_MARTIAL_ELVEN_COURTBLADE = 24815;
|
||||
|
||||
//:: Sanctify Martial Strike Expansion
|
||||
const int FEAT_SANCTIFY_MARTIAL_EAGLE_CLAW = 24850;
|
||||
const int FEAT_SANCTIFY_MARTIAL_LIGHT_LANCE = 24851;
|
||||
const int FEAT_SANCTIFY_MARTIAL_HEAVY_PICK = 24852;
|
||||
const int FEAT_SANCTIFY_MARTIAL_LIGHT_PICK = 24853;
|
||||
const int FEAT_SANCTIFY_MARTIAL_SAI = 24854;
|
||||
const int FEAT_SANCTIFY_MARTIAL_NUNCHAKU = 24855;
|
||||
const int FEAT_SANCTIFY_MARTIAL_FALCHION = 24856;
|
||||
const int FEAT_SANCTIFY_MARTIAL_SAP = 24857;
|
||||
const int FEAT_SANCTIFY_MARTIAL_KATAR = 24858;
|
||||
const int FEAT_SANCTIFY_MARTIAL_HEAVY_MACE = 24859;
|
||||
const int FEAT_SANCTIFY_MARTIAL_MAUL = 24860;
|
||||
const int FEAT_SANCTIFY_MARTIAL_DBL_SCIMITAR = 24861;
|
||||
const int FEAT_SANCTIFY_MARTIAL_GOAD = 24862;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_LIGHTBLADE = 24863;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_THINBLADE = 24864;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_COURTBLADE = 24865;
|
||||
const int FEAT_SANCTIFY_MARTIAL_EAGLE_CLAW = 24850;
|
||||
const int FEAT_SANCTIFY_MARTIAL_LIGHT_LANCE = 24851;
|
||||
const int FEAT_SANCTIFY_MARTIAL_HEAVY_PICK = 24852;
|
||||
const int FEAT_SANCTIFY_MARTIAL_LIGHT_PICK = 24853;
|
||||
const int FEAT_SANCTIFY_MARTIAL_SAI = 24854;
|
||||
const int FEAT_SANCTIFY_MARTIAL_NUNCHAKU = 24855;
|
||||
const int FEAT_SANCTIFY_MARTIAL_FALCHION = 24856;
|
||||
const int FEAT_SANCTIFY_MARTIAL_SAP = 24857;
|
||||
const int FEAT_SANCTIFY_MARTIAL_KATAR = 24858;
|
||||
const int FEAT_SANCTIFY_MARTIAL_HEAVY_MACE = 24859;
|
||||
const int FEAT_SANCTIFY_MARTIAL_MAUL = 24860;
|
||||
const int FEAT_SANCTIFY_MARTIAL_DBL_SCIMITAR = 24861;
|
||||
const int FEAT_SANCTIFY_MARTIAL_GOAD = 24862;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_LIGHTBLADE = 24863;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_THINBLADE = 24864;
|
||||
const int FEAT_SANCTIFY_MARTIAL_ELVEN_COURTBLADE = 24865;
|
||||
|
||||
//:: Web Enhancement Feats
|
||||
const int FEAT_CHARMING_THE_ARROW = 25997;
|
||||
|
@@ -1506,8 +1506,8 @@ struct WeaponFeat GetAllFeatsOfWeaponType(int iWeaponType)
|
||||
sFeat.OverwhelmingCritical = FEAT_EPIC_OVERWHELMING_CRITICAL_LIGHTMACE;
|
||||
sFeat.DevastatingCritical = FEAT_EPIC_DEVASTATING_CRITICAL_LIGHTMACE;
|
||||
sFeat.WeaponOfChoice = FEAT_WEAPON_OF_CHOICE_LIGHTMACE;
|
||||
sFeat.SanctifyMartialStrike = FEAT_VILE_MARTIAL_LIGHTMACE;
|
||||
sFeat.VileMartialStrike = FEAT_SANCTIFY_MARTIAL_LIGHTMACE;
|
||||
sFeat.SanctifyMartialStrike = FEAT_SANCTIFY_MARTIAL_LIGHTMACE;
|
||||
sFeat.VileMartialStrike = FEAT_VILE_MARTIAL_LIGHTMACE;
|
||||
break;
|
||||
}
|
||||
case BASE_ITEM_LONGBOW: {
|
||||
|
@@ -1355,7 +1355,8 @@ const int IP_CONST_FEAT_VILE_MARTIAL_SICKLE = 24794;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_DWARVENAXE = 24795;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_WHIP = 24796;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_TRIDENT = 24797;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_MINDBLADE = 24898;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_MINDBLADE = 24798;
|
||||
|
||||
//:: New Weapons
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_EAGLE_CLAW = 26500;
|
||||
const int IP_CONST_FEAT_VILE_MARTIAL_LIGHT_LANCE = 26501;
|
||||
|
@@ -1,5 +1,8 @@
|
||||
//const int FOOBAR = -1; // Comment or uncomment whenever the compiler croaks on an error code 5.
|
||||
|
||||
//:: NUI Spell constants
|
||||
const int SPELL_NUI_POWER_ATTACK = 2691;
|
||||
|
||||
//spell
|
||||
const int SPELL_MAJOR_MAGIC_MISSILE = 2247;
|
||||
const int SPELL_GREAT_WALL_OF_DISPEL = 2096;
|
||||
|
@@ -228,8 +228,10 @@ int GetSanctifyMartialStrikeFeatItemProperty(int nFeatNumber)
|
||||
int GetVileMartialStrikeFeatItemProperty(int nFeatNumber)
|
||||
{
|
||||
int nItemProperty;
|
||||
nItemProperty = GetFeatItemProperty(nFeatNumber, IP_CONST_FEAT_VILE_MARTIAL_CLUB, IP_CONST_FEAT_VILE_MARTIAL_MINDBLADE);
|
||||
nItemProperty = GetFeatItemProperty(nFeatNumber, IP_CONST_FEAT_VILE_MARTIAL_CLUB, IP_CONST_FEAT_VILE_MARTIAL_TRIDENT);
|
||||
if(nItemProperty != -1) return nItemProperty;
|
||||
nItemProperty = GetFeatItemProperty(nFeatNumber, IP_CONST_FEAT_VILE_MARTIAL_MINDBLADE, IP_CONST_FEAT_VILE_MARTIAL_MINDBLADE);
|
||||
if(nItemProperty != -1) return nItemProperty;
|
||||
nItemProperty = GetFeatItemProperty(nFeatNumber, IP_CONST_FEAT_VILE_MARTIAL_EAGLE_CLAW, IP_CONST_FEAT_VILE_MARTIAL_ELVEN_COURTBLADE);
|
||||
if(nItemProperty != -1) return nItemProperty;
|
||||
return -1;
|
||||
|
@@ -341,6 +341,16 @@ int BladeMeditationFeat(object oInitiator);
|
||||
*/
|
||||
int BladeMeditationDamage(object oInitiator, int nMoveId);
|
||||
|
||||
|
||||
/**
|
||||
* Returns 1 if Blade Meditation & Discipline match
|
||||
* @param oInitiator Person to check
|
||||
* @param nDiscipline Discipline to match
|
||||
*
|
||||
* @return 1 or 0
|
||||
*/
|
||||
int HasBladeMeditationForDiscipline(object oInitiator, int nDiscipline);
|
||||
|
||||
//////////////////////////////////////////////////
|
||||
/* Includes */
|
||||
//////////////////////////////////////////////////
|
||||
@@ -1266,4 +1276,18 @@ int BladeMeditationDamage(object oInitiator, int nMoveId)
|
||||
return 1;
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int HasBladeMeditationForDiscipline(object oInitiator, int nDiscipline)
|
||||
{
|
||||
if (!GetIsObjectValid(oInitiator))
|
||||
return FALSE;
|
||||
|
||||
int nFeatDiscipline = BladeMeditationFeat(oInitiator);
|
||||
|
||||
// If the discipline for Blade Meditation matches the one we're checking, return true
|
||||
if (nFeatDiscipline == nDiscipline)
|
||||
return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
Reference in New Issue
Block a user