Updated AMS marker feats

Updated AMS marker feats.  Removed arcane & divine marker feats.  Updated Dread Necromancer for epic progression. Updated weapon baseitem models.  Updated new weapons for crafting & npc equip.
 Updated prefix.  Updated release archive.
This commit is contained in:
Jaysyn904
2024-02-11 14:01:05 -05:00
parent 618cd42b82
commit 6ec137a24e
24762 changed files with 1528530 additions and 0 deletions

View File

@@ -0,0 +1,120 @@
//::///////////////////////////////////////////////
//:: Name Last Judgment
//:: FileName sp_lst_jdgmnt.nss
//:://////////////////////////////////////////////
/**@file Last Judgment
Necromancy [Death, Good]
Level: Clr 8, Sor/Wiz 8, Wrath 8
Components: V, Celestial
Casting Time: 1 round
Range: Close (25 ft. + 5 ft./2 levels)
Target: One evil humanoid, monstrous humanoid, or
giant/2 levels
Duration: Instantaneous
Saving Throw: Will partial
Spell Resistance: Yes
Reciting a list of the targets' evil deeds, you call
down the judgment of the heavens upon their heads.
Creatures that fail their saving throw are struck
dead and bodily transported to the appropriate Lower
Planes to suffer their eternal punishment. Creatures
that succeed nevertheless take 3d6 points of
temporary Wisdom damage as guilt for their misdeeds
overwhelms their minds.
This spell affects only humanoids, monstrous
humanoids, and giants of evil alignment.
A true resurrection or miracle spell can restore life
to a creature slain by this spell normally. A
resurrection spell works only if the creature's body
can be recovered from the Lower Planes before the
resurrection is cast.
Author: Tenjac
Created: 7/6/06
*/
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
#include "prc_inc_spells"
#include "prc_inc_template"
#include "prc_add_spell_dc"
void main()
{
if(!X2PreSpellCastCode()) return;
PRCSetSchool(SPELL_SCHOOL_NECROMANCY);
object oPC = OBJECT_SELF;
int nCasterLvl = PRCGetCasterLevel(oPC);
int nToBeAffected = nCasterLvl / 2;
int nDC;
location lLoc = PRCGetSpellTargetLocation();
//Must be Celestial
if(GetAlignmentGoodEvil(oPC) == ALIGNMENT_GOOD)
{
if((MyPRCGetRacialType(oPC) == RACIAL_TYPE_OUTSIDER) || (GetHasTemplate(TEMPLATE_CELESTIAL)) || (GetHasTemplate(TEMPLATE_HALF_CELESTIAL)))
{
object oTarget = MyFirstObjectInShape(SHAPE_SPHERE, 7.62, lLoc, FALSE, OBJECT_TYPE_CREATURE);
while(GetIsObjectValid(oTarget))
{
if(nToBeAffected > 0)
{
int nType = MyPRCGetRacialType(oTarget);
if(nType != RACIAL_TYPE_UNDEAD &&
nType != RACIAL_TYPE_CONSTRUCT &&
nType != RACIAL_TYPE_ELEMENTAL &&
nType != RACIAL_TYPE_VERMIN &&
nType != RACIAL_TYPE_OOZE &&
nType != RACIAL_TYPE_ANIMAL &&
nType != RACIAL_TYPE_ABERRATION &&
nType != RACIAL_TYPE_BEAST)
{
if(GetAlignmentGoodEvil(oTarget) == ALIGNMENT_EVIL)
{
//decrement the counter
nToBeAffected--;
if(!PRCDoResistSpell(oPC, oTarget, nCasterLvl + SPGetPenetr()))
{
nDC = PRCGetSaveDC(oTarget, oPC);
if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_DEATH))
{
SPApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDeath(), oTarget);
//Any module specific code for moving the body to another plane would go here
}
else
{
if(!GetHasMettle(oTarget, SAVING_THROW_WILL))
{
//made save, apply ability damage
ApplyAbilityDamage(oTarget, ABILITY_WISDOM, d6(3), DURATION_TYPE_TEMPORARY, TRUE, -1.0f);
}
}
}
}
}
}
oTarget = MyNextObjectInShape(SHAPE_SPHERE, 7.62, lLoc, FALSE, OBJECT_TYPE_CREATURE);
}
}
else SendMessageToPC(oPC, "You do not meet the casting requirements for this spell.");
}
//SPGoodShift(oPC);
PRCSetSchool();
}