2026/04/25 Update
White Raven Hammer now has the correct description. Fixed Skulk non-detection DC for scrying. (Scrying is still broken) Removed heal VFX from scrying. Updated PRC8 version number. Added scry DC variable to Claritangent Hand. Glitterdust now obeys Mastery of Shaping. Recitation now follows PnP. Recitation's TLK entry was corrected. Sleet Storm now obeys Mastery of Shaping.
This commit is contained in:
@@ -16010,7 +16010,7 @@
|
||||
16006 Crusader_TacticsOfTheWolf 16837222 im_TacticsWolf N P 0 0x01 0x09 tob_CRU_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830197 0 **** **** **** 8203 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16007 Crusader_WarLeadersCharge 16837223 im_WarLeaderChrg N L 0 0x02 0x0a tob_CRU_generic **** **** **** **** **** **** 6 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830198 0 **** **** **** 8204 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16008 Crusader_WarMastersCharge 16837224 im_WarMasterChrg N L 0 0x02 0x0a tob_CRU_generic **** **** **** **** **** **** 9 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830200 0 **** **** **** 8205 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16009 Crusader_WhiteRavenHammer 16837225 im_WRHammer N T 0 0x02 0x0a tob_CRU_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830120 0 **** **** **** 8206 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16009 Crusader_WhiteRavenHammer 16837225 im_WRHammer N T 0 0x02 0x0a tob_CRU_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16832219 0 **** **** **** 8206 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16010 Crusader_WhiteRavenStrike 16837226 im_WRStrike N T 0 0x02 0x0a tob_CRU_generic **** **** **** **** **** **** 4 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830118 0 **** **** **** 8207 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16011 Crusader_WhiteRavenTactics 16837227 im_WRTactics N S 0 0x04 0x0a tob_CRU_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830116 0 **** **** **** 8208 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16012 Swordsage_BlisteringFlourish 16837228 im_BlistFlrsh V P 0 0x02 0x3E tob_SWD_generic **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 11 **** 2 16829788 0 **** **** **** 8209 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
@@ -16221,7 +16221,7 @@
|
||||
16217 Swordsage_TacticsOfTheWolf 16837433 im_TacticsWolf N P 0 0x01 0x09 tob_SWD_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830197 0 **** **** **** 8411 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16218 Swordsage_WarLeadersCharge 16837434 im_WarLeaderChrg N L 0 0x02 0x0a tob_SWD_generic **** **** **** **** **** **** 6 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830198 0 **** **** **** 8412 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16219 Swordsage_WarMastersCharge 16837435 im_WarMasterChrg N L 0 0x02 0x0a tob_SWD_generic **** **** **** **** **** **** 9 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830200 0 **** **** **** 8413 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16220 Swordsage_WhiteRavenHammer 16837436 im_WRHammer N T 0 0x02 0x0a tob_SWD_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830120 0 **** **** **** 8414 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16220 Swordsage_WhiteRavenHammer 16837436 im_WRHammer N T 0 0x02 0x0a tob_SWD_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16832219 0 **** **** **** 8414 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16221 Swordsage_WhiteRavenStrike 16837437 im_WRStrike N T 0 0x02 0x0a tob_SWD_generic **** **** **** **** **** **** 4 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830118 0 **** **** **** 8415 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16222 Swordsage_WhiteRavenTactics 16837438 im_WRTactics N S 0 0x04 0x0a tob_SWD_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830116 0 **** **** **** 8416 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
16223 Warblade_BlisteringFlourish 16837439 im_BlistFlrsh V P 0 0x02 0x3E tob_WAR_generic **** **** **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 11 **** 2 16829788 0 **** **** **** 8417 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
@@ -17510,7 +17510,7 @@
|
||||
17506 TacticsOfTheWolf 16830195 im_TacticsWolf N P 0 0x01 0x09 tob_wtrn_tctwlf **** **** **** **** **** **** 3 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830197 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17507 WarLeadersCharge 16830197 im_WarLeaderChrg N L 0 0x02 0x0a tob_wtrn_warldrc **** **** **** **** **** **** 6 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830198 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17508 WarMastersCharge 16830199 im_WarMasterChrg N L 0 0x02 0x0a tob_wtrn_warmtrc **** **** **** **** **** **** 9 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830200 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17509 WhiteRavenHammer 16832218 im_WRHammer N T 0 0x02 0x0a tob_wtrn_wtrvnhr **** **** **** **** **** **** 8 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830120 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17509 WhiteRavenHammer 16832218 im_WRHammer N T 0 0x02 0x0a tob_wtrn_wtrvnhr **** **** **** **** **** **** 8 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16832219 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17510 WhiteRavenStrike 16830117 im_WRStrike N T 0 0x02 0x0a tob_wtrn_whtrvns **** **** **** **** **** **** 4 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830118 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17511 WhiteRavenTactics 16830115 im_WRTactics N S 0 0x04 0x0a tob_wtrn_whtrvnt **** **** **** **** **** **** 3 0 **** **** **** **** **** **** **** attack 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 9 **** 2 16830116 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17512 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
@@ -17654,7 +17654,7 @@
|
||||
17650 Warblade_TacticsOfTheWolf 16837644 im_TacticsWolf N P 0 0x01 0x09 tob_WAR_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830197 0 **** **** **** 8619 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17651 Warblade_WarLeadersCharge 16837645 im_WarLeaderChrg N L 0 0x02 0x0a tob_WAR_generic **** **** **** **** **** **** 6 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830198 0 **** **** **** 8620 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17652 Warblade_WarMastersCharge 16837646 im_WarMasterChrg N L 0 0x02 0x0a tob_WAR_generic **** **** **** **** **** **** 9 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830200 0 **** **** **** 8621 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17653 Warblade_WhiteRavenHammer 16837647 im_WRHammer N T 0 0x02 0x0a tob_WAR_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830120 0 **** **** **** 8622 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17653 Warblade_WhiteRavenHammer 16837647 im_WRHammer N T 0 0x02 0x0a tob_WAR_generic **** **** **** **** **** **** 8 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16832219 0 **** **** **** 8622 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17654 Warblade_WhiteRavenStrike 16837648 im_WRStrike N T 0 0x02 0x0a tob_WAR_generic **** **** **** **** **** **** 4 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830118 0 **** **** **** 8623 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17655 Warblade_WhiteRavenTactics 16837649 im_WRTactics N S 0 0x04 0x0a tob_WAR_generic **** **** **** **** **** **** 3 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 9 **** 2 16830116 0 **** **** **** 8624 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
17656 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
|
||||
|
||||
@@ -159,17 +159,17 @@ void ScryMain(object oPC, object oTarget)
|
||||
FloatingTextStringOnCreature(GetName(oTarget) + " has been Obscured.", oPC, FALSE);
|
||||
return;
|
||||
}
|
||||
if(GetHasSpellEffect(SPELL_NONDETECTION, oTarget) || GetLevelByClass(CLASS_TYPE_WILD_MAGE, oTarget) >= 6 || GetLevelByClass(CLASS_TYPE_UNSEEN_SEER, oTarget) >= 5 || GetHasSpellEffect(MELD_ENIGMA_HELM, oTarget) || GetRacialType(oTarget) == RACIAL_TYPE_SKULK)
|
||||
{
|
||||
// Caster level check or the Divination fails.
|
||||
int nTarget = PRCGetCasterLevel(oTarget) + 11;
|
||||
if (GetRacialType(oTarget) == RACIAL_TYPE_SKULK && 20 > nTarget) nTarget = 20;
|
||||
if(nTarget > nCasterLevel + d20())
|
||||
{
|
||||
FloatingTextStringOnCreature(GetName(oTarget) + " has Nondetection active.", oPC, FALSE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(GetHasSpellEffect(SPELL_NONDETECTION, oTarget) || GetLevelByClass(CLASS_TYPE_WILD_MAGE, oTarget) >= 6 || GetLevelByClass(CLASS_TYPE_UNSEEN_SEER, oTarget) >= 5 || GetHasSpellEffect(MELD_ENIGMA_HELM, oTarget) || GetRacialType(oTarget) == RACIAL_TYPE_SKULK)
|
||||
{
|
||||
// Caster level check or the Divination fails.
|
||||
int nTarget = PRCGetCasterLevel(oTarget) + 11;
|
||||
if (GetRacialType(oTarget) == RACIAL_TYPE_SKULK) nTarget = 20;
|
||||
if(nTarget > nCasterLevel + d20())
|
||||
{
|
||||
FloatingTextStringOnCreature(GetName(oTarget) + " has Nondetection active.", oPC, FALSE);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(GetHasSpellEffect(POWER_ESCAPE_DETECTION, oTarget))
|
||||
{
|
||||
// Caster level check or the Divination fails.
|
||||
@@ -335,7 +335,7 @@ void DoScryEnd(object oPC, object oCopy)
|
||||
);
|
||||
|
||||
//effect eGlow = EffectVisualEffect(VFX_DUR_ETHEREAL_VISAGE, FALSE);
|
||||
effect eLight = EffectVisualEffect(VFX_IMP_HEALING_X , FALSE);
|
||||
effect eLight; // = EffectVisualEffect(VFX_IMP_HEALING_X , FALSE);
|
||||
|
||||
// Remove Immortality from the PC if necessary
|
||||
if(!GetLocalInt(oPC, ALREADY_IMMORTAL_LOCAL_NAME))
|
||||
@@ -356,6 +356,7 @@ void DoScryEnd(object oPC, object oCopy)
|
||||
PRCRemoveSpellEffects(SPELL_SEQUESTER , oPC, oPC);
|
||||
PRCRemoveSpellEffects(SPELL_PNP_SCRY_FAMILIAR, oPC, oPC);
|
||||
PRCRemoveSpellEffects(SPELL_CLAIRAUDIENCE_AND_CLAIRVOYANCE, oPC, oPC);
|
||||
PRCRemoveSpellEffects(POWER_CLAIRTANGENT_HAND, oPC, oPC);
|
||||
|
||||
// Remove the local signifying that the PC is a projection
|
||||
DeleteLocalInt(oPC, "Scry_Active");
|
||||
@@ -593,4 +594,6 @@ void CleanCopy(object oImage)
|
||||
|
||||
}
|
||||
TakeGoldFromCreature(GetGold(oImage), oImage, TRUE);
|
||||
}
|
||||
}
|
||||
|
||||
//void main (){}
|
||||
@@ -76,7 +76,7 @@
|
||||
|
||||
/* This variable MUST be updated with every new version of the PRC!!! */
|
||||
|
||||
const string PRC_VERSION = "PRC8 4.88";
|
||||
const string PRC_VERSION = "PRC8 4.89";
|
||||
|
||||
/* This variable MUST be updated every time 'assemble_spellbooks.bat' is run!!! */
|
||||
|
||||
|
||||
@@ -120,16 +120,9 @@ void ApplyScryEffects(object oManifester)
|
||||
}}
|
||||
}
|
||||
|
||||
|
||||
void main()
|
||||
{
|
||||
/*
|
||||
Spellcast Hook Code
|
||||
Added 2004-11-02 by Stratovarius
|
||||
If you want to make changes to all powers,
|
||||
check psi_spellhook to find out more
|
||||
|
||||
*/
|
||||
|
||||
if (!PsiPrePowerCastCode())
|
||||
{
|
||||
// If code within the PrePowerCastHook (i.e. UMD) reports FALSE, do not run this spell
|
||||
@@ -153,7 +146,8 @@ void main()
|
||||
|
||||
SetLocalInt(oManifester, "ScryCasterLevel", manif.nManifesterLevel);
|
||||
SetLocalInt(oManifester, "ScrySpellId", manif.nSpellID);
|
||||
SetLocalFloat(oManifester, "ScryDuration", fDur);
|
||||
SetLocalFloat(oManifester, "ScryDuration", fDur);
|
||||
SetLocalInt(oManifester, "ScrySpellDC", GetManifesterDC(oManifester));
|
||||
|
||||
StartDynamicConversation("prc_scry_conv", oManifester, DYNCONV_EXIT_NOT_ALLOWED, FALSE, TRUE, oManifester);
|
||||
|
||||
|
||||
@@ -27,32 +27,37 @@ void main()
|
||||
{
|
||||
if(spellsIsTarget(oTarget, SPELL_TARGET_STANDARDHOSTILE, OBJECT_SELF))
|
||||
{
|
||||
PRCSignalSpellEvent(oTarget);
|
||||
// Mastery of shapes check
|
||||
if(!CheckMasteryOfShapes(OBJECT_SELF, oTarget))
|
||||
{
|
||||
PRCSignalSpellEvent(oTarget);
|
||||
|
||||
// Apply impact vfx.
|
||||
DelayCommand(0.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,
|
||||
EffectVisualEffect(VFX_IMP_SPARKS), oTarget));
|
||||
// Apply impact vfx.
|
||||
DelayCommand(0.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,
|
||||
EffectVisualEffect(VFX_IMP_SPARKS), oTarget));
|
||||
|
||||
// Creatures take the hide penalty whether they save or not.
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHidePenalty, oTarget, fDuration,TRUE,-1,nCasterLvl);
|
||||
// Creatures take the hide penalty whether they save or not.
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHidePenalty, oTarget, fDuration,TRUE,-1,nCasterLvl);
|
||||
|
||||
// Creatures that are invisible become visible whether they save or not. We do
|
||||
// this by looping through all the creature's effects looking for invisibility
|
||||
// effects and removing them.
|
||||
effect eTarget = GetFirstEffect(oTarget);
|
||||
while (GetIsEffectValid(eTarget))
|
||||
{
|
||||
int nType = GetEffectType(eTarget);
|
||||
if (EFFECT_TYPE_INVISIBILITY == nType || EFFECT_TYPE_IMPROVEDINVISIBILITY == nType)
|
||||
RemoveEffect (oTarget, eTarget);
|
||||
// Creatures that are invisible become visible whether they save or not. We do
|
||||
// this by looping through all the creature's effects looking for invisibility
|
||||
// effects and removing them.
|
||||
effect eTarget = GetFirstEffect(oTarget);
|
||||
while (GetIsEffectValid(eTarget))
|
||||
{
|
||||
int nType = GetEffectType(eTarget);
|
||||
if (EFFECT_TYPE_INVISIBILITY == nType || EFFECT_TYPE_IMPROVEDINVISIBILITY == nType)
|
||||
RemoveEffect (oTarget, eTarget);
|
||||
|
||||
eTarget = GetNextEffect(oTarget);
|
||||
}
|
||||
eTarget = GetNextEffect(oTarget);
|
||||
}
|
||||
|
||||
// Let the creature make a will save, if it fails it's blinded.
|
||||
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, PRCGetSaveDC(oTarget,OBJECT_SELF)))
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBlindness, oTarget, fDuration,TRUE,-1,nCasterLvl);
|
||||
}
|
||||
// Let the creature make a will save, if it fails it's blinded.
|
||||
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, PRCGetSaveDC(oTarget,OBJECT_SELF)))
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBlindness, oTarget, fDuration,TRUE,-1,nCasterLvl);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
oTarget = MyNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_LARGE, lTarget);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,90 @@
|
||||
#include "prc_inc_spells"
|
||||
/*
|
||||
Recitation Impact Script
|
||||
|
||||
Spell Compendium version:
|
||||
- Conjuration (Creation)
|
||||
- Level: Cleric 4, Purification 3
|
||||
- Target: All allies within 60-ft. radius burst
|
||||
- Duration: 1 round/level
|
||||
- Allies gain +2 luck bonus to AC, attack rolls, saving throws
|
||||
- +3 luck bonus if they worship same deity as caster
|
||||
*/
|
||||
#include "prc_inc_spells"
|
||||
#include "prc_sp_func"
|
||||
#include "prc_inc_combat"
|
||||
|
||||
//Implements the spell impact
|
||||
int DoSpell(object oCaster, object oTarget, int nCasterLevel, int nEvent)
|
||||
{
|
||||
int nMetaMagic = PRCGetMetaMagicFeat();
|
||||
float fDuration = RoundsToSeconds(nCasterLevel);
|
||||
|
||||
// Apply metamagic
|
||||
if(nMetaMagic & METAMAGIC_EXTEND)
|
||||
fDuration *= 2.0;
|
||||
|
||||
// Get caster's deity for comparison
|
||||
string sCasterDeity = GetDeity(oCaster);
|
||||
|
||||
// Check if target is an ally
|
||||
if(spellsIsTarget(oTarget, SPELL_TARGET_ALLALLIES, oCaster))
|
||||
{
|
||||
// Determine bonus amount based on deity
|
||||
int nBonus = 2;
|
||||
if(GetDeity(oTarget) == sCasterDeity && sCasterDeity != "")
|
||||
nBonus = 3;
|
||||
|
||||
// Create luck bonus effects
|
||||
effect eAC = EffectACIncrease(nBonus, AC_DODGE_BONUS, AC_VS_DAMAGE_TYPE_ALL);
|
||||
eAC = EffectLinkEffects(eAC, EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MINOR));
|
||||
|
||||
effect eAttack = EffectAttackIncrease(nBonus);
|
||||
effect eSave = EffectSavingThrowIncrease(SAVING_THROW_ALL, nBonus);
|
||||
|
||||
// Link all effects together
|
||||
effect eLink = EffectLinkEffects(eAC, eAttack);
|
||||
eLink = EffectLinkEffects(eLink, eSave);
|
||||
|
||||
// Apply the effects
|
||||
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, fDuration, TRUE);
|
||||
|
||||
// Apply visual effect
|
||||
SPApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_IMP_HEAD_HOLY), oTarget);
|
||||
}
|
||||
|
||||
return TRUE; // Return TRUE for area spells
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
object oCaster = OBJECT_SELF;
|
||||
int nCasterLevel = PRCGetCasterLevel(oCaster);
|
||||
int nSpellID = PRCGetSpellId();
|
||||
|
||||
PRCSetSchool(GetSpellSchool(nSpellID));
|
||||
if (!X2PreSpellCastCode()) return;
|
||||
|
||||
// Get spell target location for area effect
|
||||
location lTarget = GetSpellTargetLocation();
|
||||
|
||||
// Apply area of effect - 60ft radius (RADIUS_SIZE_COLOSSAL)
|
||||
effect eImpact = EffectVisualEffect(VFX_FNF_LOS_HOLY_30);
|
||||
ApplyEffectAtLocation(DURATION_TYPE_INSTANT, eImpact, lTarget);
|
||||
|
||||
// Get all creatures in 60ft radius
|
||||
object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_COLOSSAL, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
||||
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
DoSpell(oCaster, oTarget, nCasterLevel, 0);
|
||||
oTarget = MyNextObjectInShape(SHAPE_SPHERE, RADIUS_SIZE_COLOSSAL, lTarget, TRUE, OBJECT_TYPE_CREATURE);
|
||||
}
|
||||
|
||||
PRCSetSchool();
|
||||
}
|
||||
|
||||
void main()
|
||||
|
||||
/* void main()
|
||||
{
|
||||
// If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell
|
||||
if (!X2PreSpellCastCode()) return;
|
||||
@@ -70,3 +154,4 @@ void main()
|
||||
|
||||
PRCSetSchool();
|
||||
}
|
||||
*/
|
||||
@@ -5,26 +5,26 @@
|
||||
/**@file Sleet Storm
|
||||
|
||||
Conjuration (Creation) [Cold]
|
||||
Level: Drd 3, Sor/Wiz 3
|
||||
Components: V, S, M/DF
|
||||
Casting Time: 1 standard action
|
||||
Range: Long (400 ft. + 40 ft./level)
|
||||
Area: Cylinder (40-ft. radius, 20 ft. high)
|
||||
Duration: 1 round/level
|
||||
Saving Throw: None
|
||||
Level: Drd 3, Sor/Wiz 3
|
||||
Components: V, S, M/DF
|
||||
Casting Time: 1 standard action
|
||||
Range: Long (400 ft. + 40 ft./level)
|
||||
Area: Cylinder (40-ft. radius, 20 ft. high)
|
||||
Duration: 1 round/level
|
||||
Saving Throw: None
|
||||
Spell Resistance: No
|
||||
|
||||
Driving sleet blocks all sight (even darkvision)
|
||||
Driving sleet blocks all sight (even darkvision)
|
||||
within it and causes the ground in the area to be
|
||||
icy. A creature can walk within or through the
|
||||
area of sleet at half normal speed with a DC 10
|
||||
Balance check. Failure means it can<EFBFBD>t move in that
|
||||
round, while failure by 5 or more means it falls
|
||||
icy. A creature can walk within or through the
|
||||
area of sleet at half normal speed with a DC 10
|
||||
Balance check. Failure means it can't move in that
|
||||
round, while failure by 5 or more means it falls
|
||||
(see the Balance skill for details).
|
||||
|
||||
The sleet extinguishes torches and small fires.
|
||||
|
||||
Arcane Material Component: A pinch of dust and a
|
||||
Arcane Material Component: A pinch of dust and a
|
||||
few drops of water.
|
||||
|
||||
Author: Tenjac
|
||||
@@ -42,6 +42,13 @@ void main()
|
||||
object oPC = GetAreaOfEffectCreator();
|
||||
object oTarget = GetEnteringObject();
|
||||
int nCasterLvl = PRCGetCasterLevel(oPC);
|
||||
|
||||
if(CheckMasteryOfShapes(oPC, oTarget))
|
||||
{
|
||||
PRCSetSchool();
|
||||
return;
|
||||
}
|
||||
|
||||
effect eLink = EffectLinkEffects(EffectBlindness(), EffectMovementSpeedDecrease(50));
|
||||
|
||||
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oTarget, 0.0f, TRUE, SPELL_SLEET_STORM, nCasterLvl);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Name Sleet Storm Heartbeat
|
||||
//:: FileName sp_sleet_stormC.nss
|
||||
//:://////////////////////////////////////////////
|
||||
@@ -18,7 +18,7 @@ Driving sleet blocks all sight (even darkvision)
|
||||
within it and causes the ground in the area to be
|
||||
icy. A creature can walk within or through the
|
||||
area of sleet at half normal speed with a DC 10
|
||||
Balance check. Failure means it can<EFBFBD>t move in that
|
||||
Balance check. Failure means it can’t move in that
|
||||
round, while failure by 5 or more means it falls
|
||||
(see the Balance skill for details).
|
||||
|
||||
@@ -46,6 +46,13 @@ void main()
|
||||
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
if(CheckMasteryOfShapes(GetAreaOfEffectCreator(), oTarget))
|
||||
{
|
||||
// Target is protected by Mastery of Shaping.
|
||||
oTarget = GetNextInPersistentObject(OBJECT_SELF, OBJECT_TYPE_CREATURE);
|
||||
continue;
|
||||
}
|
||||
|
||||
int nFail = BalanceCheckFailure(oTarget);
|
||||
|
||||
//Can't move
|
||||
@@ -60,23 +67,23 @@ void main()
|
||||
PRCSetSchool();
|
||||
}
|
||||
|
||||
int BalanceCheckFailure(object oTarget)
|
||||
{
|
||||
int nResult = 0;
|
||||
int nRoll = GetAbilityModifier(ABILITY_DEXTERITY, oTarget) + d20(1);
|
||||
int nTumble = GetSkillRank(SKILL_TUMBLE, oTarget);
|
||||
|
||||
//if 5 or more ranks of Tumble, +2 bonus
|
||||
if(nTumble > 4) nRoll += 2;
|
||||
|
||||
//All fails
|
||||
if(nRoll < 10)
|
||||
{
|
||||
//if failed by 5 or more
|
||||
if((10 - nRoll) < 6) nResult = 2;
|
||||
|
||||
//otherwise it failed by less than 5
|
||||
else nResult = 1;
|
||||
}
|
||||
return nResult;
|
||||
}
|
||||
int BalanceCheckFailure(object oTarget)
|
||||
{
|
||||
int nResult = 0;
|
||||
int nRoll = GetSkillRank(SKILL_BALANCE, oTarget) + d20(1);
|
||||
int nTumble = GetSkillRank(SKILL_TUMBLE, oTarget);
|
||||
|
||||
//if 5 or more ranks of Tumble, +2 bonus
|
||||
if(nTumble > 4) nRoll += 2;
|
||||
|
||||
//All fails
|
||||
if(nRoll < 10)
|
||||
{
|
||||
//if failed by 5 or more
|
||||
if((10 - nRoll) < 6) nResult = 2;
|
||||
|
||||
//otherwise it failed by less than 5
|
||||
else nResult = 1;
|
||||
}
|
||||
return nResult;
|
||||
}
|
||||
|
||||
Binary file not shown.
@@ -38480,17 +38480,17 @@ This spell imbues the caster with the might of his deity, giving him a +8 Streng
|
||||
<entry id="53070" lang="en" sex="m">Recitation</entry>
|
||||
<entry id="53071" lang="en" sex="m">Caster Level(s): Cleric 4
|
||||
Innate Level: 4
|
||||
School: Conjuration
|
||||
School: Conjuration (Creation)
|
||||
Descriptor(s):
|
||||
Component(s): Verbal, Somatic
|
||||
Range: Personal
|
||||
Area of Effect / Target: Colossal, centered on you
|
||||
Area of Effect / Target: 60 ft., centered on you
|
||||
Duration: 1 Round / Level
|
||||
Additional Counter Spells:
|
||||
Save: None
|
||||
Spell Resistance: Yes (for detrimental effects)
|
||||
Spell Resistance: Yes
|
||||
|
||||
You recite holy scriptures of your deity. All allies (including you) in the area receive a +2 bonus to attack rolls, saving throws, and skill checks. All enemies receive a -2 penalty to attack rolls, saving throws, and skill checks. Creatures who are neither friendly or hostile are unaffected..</entry>
|
||||
You recite holy scriptures of your deity. The spell affects all allies (including you) within the spell's area at the moment you cast it. Your allies gain a +2 luck bonus to AC, on attack rolls, and on saving throws, or a +3 luck bonus if they worship the same deity as you. </entry>
|
||||
<entry id="53072" lang="en" sex="m">Forceblast</entry>
|
||||
<entry id="53073" lang="en" sex="m">Caster Level(s): Wizard / Sorcerer 3
|
||||
Innate Level: 3
|
||||
@@ -76270,7 +76270,7 @@ Throwing Axes</entry>
|
||||
<entry id="211717" lang="en" sex="m">Warblade (Default)</entry>
|
||||
<entry id="211718" lang="en" sex="m">(STARTING PACKAGE)
|
||||
|
||||
The default package focuses on improving strength and proficiency with the longsword..
|
||||
The default package focuses on improving strength and proficiency with the longsword.
|
||||
|
||||
Equipment:
|
||||
Torch
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user