diff --git a/.gitignore b/.gitignore index 64ca6260..5d50186b 100644 --- a/.gitignore +++ b/.gitignore @@ -163,4 +163,3 @@ nwn/nwnprc/trunk/makefile.temp nwn/nwnprc/trunk/makefile.temp /Release /old_backup -nwn/nwnprc/trunk/2das/prepeps_feat.2da diff --git a/Notes/future spells/sp_mass_regen.nss b/Notes/future spells/sp_mass_regen.nss deleted file mode 100644 index 5b7036c4..00000000 --- a/Notes/future spells/sp_mass_regen.nss +++ /dev/null @@ -1,102 +0,0 @@ -//:://///////////////////////////////////////////// -//:: Regenerate Ring / Circle -//:: sp_regen_ring_circle.nss -//:: Jaysyn - PRC8 2025-08-01 -//:: -//:: Group fast healing aura spells -//:://///////////////////////////////////////////// -#include "prc_inc_spells" - -void main() -{ - if (!X2PreSpellCastCode()) return; - - PRCSetSchool(GetSpellSchool(PRCGetSpellId())); - - object oCaster = OBJECT_SELF; - int nSpellId = PRCGetSpellId(); - int nMetamagic = PRCGetMetaMagicFeat(); - int nCasterLevel = PRCGetCasterLevel(oCaster); - int nDuration = 10 + (nCasterLevel / 2); - int nMaxTargets = nCasterLevel / 2; - float fMaxDistance = 30.0; - int nRegenRate = 1; - - if (nSpellId == 9999) - { - nRegenRate = 3; - } - - if (nMetamagic == METAMAGIC_EXTEND) - { - nDuration *= 2; - } - - location lCaster = GetLocation(oCaster); - object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, fMaxDistance, lCaster, FALSE, OBJECT_TYPE_CREATURE); - int nCount = 0; - - while (GetIsObjectValid(oTarget) && nCount < nMaxTargets) - { - if (!GetIsEnemy(oCaster, oTarget) && - GetRacialType(oTarget) != RACIAL_TYPE_UNDEAD && - GetRacialType(oTarget) != RACIAL_TYPE_CONSTRUCT) - { - int nCurrentHP = GetCurrentHitPoints(oTarget); - int nInitialHP = GetLocalInt(oTarget, "INITIAL_HIT_POINTS"); - - if (nCurrentHP > nInitialHP) - { - nInitialHP = nCurrentHP; - SetLocalInt(oTarget, "INITIAL_HIT_POINTS", nInitialHP); - } - - int nCurrentRegen = GetLocalInt(oTarget, "REGEN_RATE"); - int nExistingDuration = 0; - int bSameSpell = FALSE; - - effect e = GetFirstEffect(oTarget); - while (GetIsEffectValid(e)) - { - if (GetEffectTag(e) == "REGEN_WOUNDS") - { - if (nCurrentRegen == nRegenRate) - { - bSameSpell = TRUE; - nExistingDuration = GetEffectDurationRemaining(e) / 6; - if (nRegenRate >= nCurrentRegen) RemoveEffect(oTarget, e); - else return; - } - else if (nRegenRate >= nCurrentRegen) - { - RemoveEffect(oTarget, e); - } - } - e = GetNextEffect(oTarget); - } - - if (bSameSpell) - { - nDuration += nExistingDuration; - } - - SetLocalInt(oTarget, "REGEN_RATE", nRegenRate); - SetLocalInt(oTarget, "REGEN_WOUNDS_REMAINING", nDuration); - - effect eVis = EffectVisualEffect(1330/* VFX_DUR_BF_IOUN_STONE_GREEN */); - effect eRegen = EffectRunScript("rs_regen_wounds", "rs_regen_wounds", "rs_regen_wounds", 6.0f, IntToString(nRegenRate)); - eRegen = SetEffectSpellId(eRegen, nSpellId); - eRegen = EffectLinkEffects(eVis, eRegen); - eRegen = TagEffect(eRegen, "REGEN_WOUNDS"); - - PRCRemoveEffectsFromSpell(oTarget, nSpellId); - - ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eRegen, oTarget, RoundsToSeconds(nDuration)); - - nCount++; - } - oTarget = MyNextObjectInShape(SHAPE_SPHERE, fMaxDistance, lCaster, FALSE, OBJECT_TYPE_CREATURE); - } - - PRCSetSchool(); -} \ No newline at end of file diff --git a/nwn/nwnprc/DocGen/trunk/Main Manual Files/english/content/manual_content_main.html b/nwn/nwnprc/DocGen/trunk/Main Manual Files/english/content/manual_content_main.html index ed7b5760..eac7ee77 100644 --- a/nwn/nwnprc/DocGen/trunk/Main Manual Files/english/content/manual_content_main.html +++ b/nwn/nwnprc/DocGen/trunk/Main Manual Files/english/content/manual_content_main.html @@ -11,7 +11,7 @@