2025/05/03 Bugfixes
Added Exotic weapon profs to fighter bonus feats. Fixed possession bug in inc_persist_loc.nss. Added Fochlucan Lyrist to divine classes in prc_inc_castlvl.nss Cleaned up Owl's Insight.
This commit is contained in:
parent
36120f5dd6
commit
5d82529b9d
File diff suppressed because it is too large
Load Diff
@ -251,10 +251,9 @@ object GetHideToken(object oPC, int bAMS = FALSE)
|
|||||||
return oToken;
|
return oToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void SetPersistantLocalString(object oPC, string sName, string sValue)
|
void SetPersistantLocalString(object oPC, string sName, string sValue)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_SetString(oPC, sName, sValue);
|
SQLocalsPlayer_SetString(oPC, sName, sValue);
|
||||||
}
|
}
|
||||||
@ -264,9 +263,21 @@ void SetPersistantLocalString(object oPC, string sName, string sValue)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetPersistantLocalInt(object oPC, string sName, int nValue)
|
/* void SetPersistantLocalString(object oPC, string sName, string sValue)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC))
|
||||||
|
{
|
||||||
|
SQLocalsPlayer_SetString(oPC, sName, sValue);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
SetLocalString(oPC, sName, sValue);
|
||||||
|
}
|
||||||
|
} */
|
||||||
|
|
||||||
|
void SetPersistantLocalInt(object oPC, string sName, int nValue)
|
||||||
|
{
|
||||||
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_SetInt(oPC, sName, nValue);
|
SQLocalsPlayer_SetInt(oPC, sName, nValue);
|
||||||
}
|
}
|
||||||
@ -278,7 +289,7 @@ void SetPersistantLocalInt(object oPC, string sName, int nValue)
|
|||||||
|
|
||||||
void SetPersistantLocalFloat(object oPC, string sName, float fValue)
|
void SetPersistantLocalFloat(object oPC, string sName, float fValue)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_SetFloat(oPC, sName, fValue);
|
SQLocalsPlayer_SetFloat(oPC, sName, fValue);
|
||||||
}
|
}
|
||||||
@ -290,7 +301,7 @@ void SetPersistantLocalFloat(object oPC, string sName, float fValue)
|
|||||||
|
|
||||||
void SetPersistantLocalLocation(object oPC, string sName, location lValue)
|
void SetPersistantLocalLocation(object oPC, string sName, location lValue)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_SetLocation(oPC, sName, lValue);
|
SQLocalsPlayer_SetLocation(oPC, sName, lValue);
|
||||||
}
|
}
|
||||||
@ -302,7 +313,7 @@ void SetPersistantLocalLocation(object oPC, string sName, location lValue)
|
|||||||
|
|
||||||
void SetPersistantLocalObject(object oPC, string sName, object oValue)
|
void SetPersistantLocalObject(object oPC, string sName, object oValue)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_SetObject(oPC, sName, oValue);
|
SQLocalsPlayer_SetObject(oPC, sName, oValue);
|
||||||
}
|
}
|
||||||
@ -314,7 +325,7 @@ void SetPersistantLocalObject(object oPC, string sName, object oValue)
|
|||||||
|
|
||||||
string GetPersistantLocalString(object oPC, string sName)
|
string GetPersistantLocalString(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
return SQLocalsPlayer_GetString(oPC, sName);
|
return SQLocalsPlayer_GetString(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -323,7 +334,7 @@ string GetPersistantLocalString(object oPC, string sName)
|
|||||||
|
|
||||||
int GetPersistantLocalInt(object oPC, string sName)
|
int GetPersistantLocalInt(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
return SQLocalsPlayer_GetInt(oPC, sName);
|
return SQLocalsPlayer_GetInt(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -332,7 +343,7 @@ int GetPersistantLocalInt(object oPC, string sName)
|
|||||||
|
|
||||||
float GetPersistantLocalFloat(object oPC, string sName)
|
float GetPersistantLocalFloat(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
return SQLocalsPlayer_GetFloat(oPC, sName);
|
return SQLocalsPlayer_GetFloat(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -341,7 +352,7 @@ float GetPersistantLocalFloat(object oPC, string sName)
|
|||||||
|
|
||||||
location GetPersistantLocalLocation(object oPC, string sName)
|
location GetPersistantLocalLocation(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
return SQLocalsPlayer_GetLocation(oPC, sName);
|
return SQLocalsPlayer_GetLocation(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -350,7 +361,7 @@ location GetPersistantLocalLocation(object oPC, string sName)
|
|||||||
|
|
||||||
object GetPersistantLocalObject(object oPC, string sName)
|
object GetPersistantLocalObject(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
// Additional check since the OID returned may be invalid, but not actually OBJECT_INVALID
|
// Additional check since the OID returned may be invalid, but not actually OBJECT_INVALID
|
||||||
object oReturn = SQLocalsPlayer_GetObject(oPC, sName);
|
object oReturn = SQLocalsPlayer_GetObject(oPC, sName);
|
||||||
@ -362,7 +373,7 @@ object GetPersistantLocalObject(object oPC, string sName)
|
|||||||
|
|
||||||
void DeletePersistantLocalString(object oPC, string sName)
|
void DeletePersistantLocalString(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_DeleteString(oPC, sName);
|
SQLocalsPlayer_DeleteString(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -374,7 +385,7 @@ void DeletePersistantLocalString(object oPC, string sName)
|
|||||||
|
|
||||||
void DeletePersistantLocalInt(object oPC, string sName)
|
void DeletePersistantLocalInt(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_DeleteInt(oPC, sName);
|
SQLocalsPlayer_DeleteInt(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -386,7 +397,7 @@ void DeletePersistantLocalInt(object oPC, string sName)
|
|||||||
|
|
||||||
void DeletePersistantLocalFloat(object oPC, string sName)
|
void DeletePersistantLocalFloat(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_DeleteFloat(oPC, sName);
|
SQLocalsPlayer_DeleteFloat(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -398,7 +409,7 @@ void DeletePersistantLocalFloat(object oPC, string sName)
|
|||||||
|
|
||||||
void DeletePersistantLocalLocation(object oPC, string sName)
|
void DeletePersistantLocalLocation(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_DeleteLocation(oPC, sName);
|
SQLocalsPlayer_DeleteLocation(oPC, sName);
|
||||||
}
|
}
|
||||||
@ -410,7 +421,7 @@ void DeletePersistantLocalLocation(object oPC, string sName)
|
|||||||
|
|
||||||
void DeletePersistantLocalObject(object oPC, string sName)
|
void DeletePersistantLocalObject(object oPC, string sName)
|
||||||
{
|
{
|
||||||
if(GetIsPC(oPC))
|
if(GetIsPC(oPC) == TRUE && GetMaster(oPC) == OBJECT_INVALID && !GetIsDMPossessed(oPC))
|
||||||
{
|
{
|
||||||
SQLocalsPlayer_DeleteObject(oPC, sName);
|
SQLocalsPlayer_DeleteObject(oPC, sName);
|
||||||
}
|
}
|
||||||
|
@ -3799,6 +3799,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_ARCHIVIST, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_ARCHIVIST, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_ARCHIVIST, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_ARCHIVIST, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_ARCHIVIST, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -3903,6 +3906,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_BLACKGUARD, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_BLACKGUARD, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_BLACKGUARD, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
/* if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_BLACKGUARD, oCaster))
|
/* if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_BLACKGUARD, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -4008,7 +4014,10 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_BLIGHTER, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_BLIGHTER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_BLIGHTER, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
/* if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_BLIGHTER, oCaster))
|
/* if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_BLIGHTER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster); */
|
||||||
@ -4116,7 +4125,10 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_CLERIC, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_CLERIC, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_CLERIC, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_CLERIC, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_CLERIC, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
@ -4227,6 +4239,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_DRUID, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_DRUID, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_DRUID, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_DRUID, oCaster))
|
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_DRUID, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
||||||
@ -4334,6 +4349,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_FAVOURED_SOUL, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_FAVOURED_SOUL, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_FAVOURED_SOUL, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_FAVOURED_SOUL, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_FAVOURED_SOUL, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -4438,6 +4456,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_HEALER, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_HEALER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_HEALER, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
// if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_HEALER, oCaster))
|
// if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_HEALER, oCaster))
|
||||||
// nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
// nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -4547,6 +4568,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
|
|
||||||
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_JUSTICEWW, oCaster))
|
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_JUSTICEWW, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster); */
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_JUSTICEWW, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_JUSTICEWW, oCaster))
|
if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_JUSTICEWW, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster);
|
||||||
@ -4650,6 +4674,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
|
|
||||||
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_KNIGHT_CHALICE, oCaster))
|
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_KNIGHT_CHALICE, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_KNIGHT_CHALICE, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
/* if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_KNIGHT_CHALICE, oCaster))
|
/* if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_KNIGHT_CHALICE, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
||||||
@ -4752,6 +4779,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_KNIGHT_MIDDLECIRCLE, oCaster))
|
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_KNIGHT_MIDDLECIRCLE, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_KNIGHT_MIDDLECIRCLE, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_KNIGHT_MIDDLECIRCLE, oCaster))
|
if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_KNIGHT_MIDDLECIRCLE, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster);
|
||||||
|
|
||||||
@ -4849,6 +4879,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
|
|
||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_NENTYAR_HUNTER, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_NENTYAR_HUNTER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_NENTYAR_HUNTER, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_NENTYAR_HUNTER, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_NENTYAR_HUNTER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
@ -4960,9 +4993,12 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_OCULAR, oCaster))
|
if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_OCULAR, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster); */
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_OCULAR, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_OCULAR, oCaster))
|
/* if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_OCULAR, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_HIEROPHANT_SPELLCASTING_OCULAR, oCaster))
|
if(GetHasFeat(FEAT_HIEROPHANT_SPELLCASTING_OCULAR, oCaster))
|
||||||
@ -5155,6 +5191,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_RANGER, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_RANGER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_RANGER, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_RANGER, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_RANGER, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -5254,7 +5293,10 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_CONTEMPLATIVE, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_OASHAMAN, oCaster))
|
if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_OASHAMAN, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_OASHAMAN, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_OASHAMAN, oCaster))
|
if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_OASHAMAN, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
@ -5464,6 +5506,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
// if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_SOHEI, oCaster))
|
// if(GetHasFeat(FEAT_ELDISCIPLE_SPELLCASTING_SOHEI, oCaster))
|
||||||
// nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
// nDivine += GetLevelByClass(CLASS_TYPE_ELDRITCH_DISCIPLE, oCaster);
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_SOHEI, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
// if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_SOHEI, oCaster))
|
// if(GetHasFeat(FEAT_FORESTMASTER_SPELLCASTING_SOHEI, oCaster))
|
||||||
// nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
// nDivine += GetLevelByClass(CLASS_TYPE_FORESTMASTER, oCaster);
|
||||||
|
|
||||||
@ -5574,6 +5619,9 @@ int GetDivinePRCLevels(object oCaster, int nCastingClass = CLASS_TYPE_INVALID)
|
|||||||
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_SOL, oCaster))
|
/* if(GetHasFeat(FEAT_FISTRAZIEL_SPELLCASTING_SOL, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_FISTRAZIEL, oCaster); */
|
||||||
|
|
||||||
|
if(GetHasFeat(FEAT_FOCHLUCAN_LYRIST_SPELLCASTING_SOL, oCaster))
|
||||||
|
nDivine += GetLevelByClass(CLASS_TYPE_FOCHLUCAN_LYRIST, oCaster);
|
||||||
|
|
||||||
/* if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_SOL, oCaster))
|
/* if(GetHasFeat(FEAT_HEARTWARDER_SPELLCASTING_SOL, oCaster))
|
||||||
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
nDivine += GetLevelByClass(CLASS_TYPE_HEARTWARDER, oCaster); */
|
||||||
|
|
||||||
|
@ -21,12 +21,11 @@ int DoSpell(object oCaster, object oTarget, int nCasterLevel, int nEvent)
|
|||||||
{
|
{
|
||||||
effect eVis = EffectVisualEffect(VFX_IMP_BONUS_WISDOM);
|
effect eVis = EffectVisualEffect(VFX_IMP_BONUS_WISDOM);
|
||||||
int nMetaMagic = PRCGetMetaMagicFeat();
|
int nMetaMagic = PRCGetMetaMagicFeat();
|
||||||
int CasterLvl = PRCGetCasterLevel(OBJECT_SELF);
|
|
||||||
int nDuration = nCasterLevel;
|
int nDuration = nCasterLevel;
|
||||||
if (CheckMetaMagic(nMetaMagic, METAMAGIC_EXTEND))
|
if (CheckMetaMagic(nMetaMagic, METAMAGIC_EXTEND))
|
||||||
nDuration *= 2; //Duration is +100%
|
nDuration *= 2; //Duration is +100%
|
||||||
effect eLink = EffectLinkEffects(EffectAbilityIncrease(ABILITY_WISDOM, nCasterLevel / 2), EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE));
|
effect eLink = EffectLinkEffects(EffectAbilityIncrease(ABILITY_WISDOM, PRCMax(12, nCasterLevel / 2)), EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE));
|
||||||
SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, 438, FALSE));
|
SignalEvent(oTarget, EventSpellCastAt(oCaster, 438, FALSE));
|
||||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, HoursToSeconds(nDuration),TRUE,-1,nCasterLevel);
|
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, HoursToSeconds(nDuration),TRUE,-1,nCasterLevel);
|
||||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user