Clear out experimental .35 files
Clear out experimental .35 files
This commit is contained in:
@@ -1,135 +0,0 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Spell Name Elemental Armor
|
||||
//:: Spell FileName XXX_S_ElemenArmo
|
||||
//:://////////////////////////////////////////////
|
||||
//:: In Game Spell desctiption
|
||||
//:://////////////////////////////////////////////
|
||||
Abjuration (see text)
|
||||
Level: Drd 7, Clr 8
|
||||
Components: V, S
|
||||
Casting Time: 1 standard action
|
||||
Range: Personal
|
||||
Target: Caster
|
||||
Duration: 10 rounds/level
|
||||
Saving Throw: None
|
||||
Spell Resistance: No
|
||||
Source: Various (Arilou_skiff)
|
||||
|
||||
The caster enshrouds himself in an elemental armour, the armour can be of
|
||||
either Earth, Fire, Water, or Air variety, each having different effects as
|
||||
described below.
|
||||
|
||||
Air
|
||||
The caster is surrounded by a cloudy, whispy air shield, that provides a +5
|
||||
dodge bonus to AC, and 10 points of electricity and cold resistance.
|
||||
|
||||
Earth
|
||||
The caster is surrounded by a earthly, stone shield, that provides a 10
|
||||
points of acid resistance, and damage reduction 10/+3.
|
||||
|
||||
Fire
|
||||
The caster is surrounded by a flaming hot shield, that provides a 10 points
|
||||
of fire and cold resistance, and any creature striking the caster in melee
|
||||
suffers 2d6 points of fire damage
|
||||
|
||||
Water
|
||||
The caster is surrounded by a watery and wet shield, that provides a 10
|
||||
points of fire and cold resistance, and +2 regeneration.
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell Effects Applied / Notes
|
||||
//:://////////////////////////////////////////////
|
||||
- Might need to change the levels, I had to remove some parts of it.
|
||||
- Might also need to lessen the amount of damage resistance - perhaps one
|
||||
element each, cold for fire, electricity for air, acid for earth.
|
||||
|
||||
Oh, but it seems fine to add to NwN as it is above.
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
#include "SMP_INC_SPELLS"
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
// Spell hook check.
|
||||
if(!SMP_SpellHookCheck(SMP_SPELL_ELEMENTAL_ARMOR)) return;
|
||||
|
||||
//Declare major variables
|
||||
object oCaster = OBJECT_SELF;
|
||||
object oTarget = GetSpellTargetObject();// Should be OBJECT_SELF
|
||||
int nMetaMagic = SMP_GetMetaMagicFeat();
|
||||
int nCasterLevel = SMP_GetCasterLevel();
|
||||
int nSpellId = GetSpellId();
|
||||
|
||||
// Duration - 10 Rounds/level
|
||||
float fDuration = SMP_GetDuration(SMP_ROUNDS, nCasterLevel * 10, nMetaMagic);
|
||||
|
||||
// Get the link of duration effects
|
||||
effect eLink;
|
||||
|
||||
// Check spell
|
||||
if(nSpellId == SMP_SPELL_ELEMENTAL_ARMOR_AIR)
|
||||
{
|
||||
// +5 dodge, 10 cold/electrical resistance.
|
||||
effect eAir1 = EffectACIncrease(5, AC_DODGE_BONUS);
|
||||
effect eAir2 = EffectDamageResistance(DAMAGE_TYPE_COLD, 10);
|
||||
effect eAir3 = EffectDamageResistance(DAMAGE_TYPE_ELECTRICAL, 10);
|
||||
effect eAir4 = EffectVisualEffect(SPELL_PROTECTION_FROM_ELEMENTS);
|
||||
// Link air
|
||||
eLink = EffectLinkEffects(eAir1, eAir2);
|
||||
eLink = EffectLinkEffects(eLink, eAir3);
|
||||
eLink = EffectLinkEffects(eLink, eAir4);
|
||||
}
|
||||
else if(nSpellId == SMP_SPELL_ELEMENTAL_ARMOR_EARTH)
|
||||
{
|
||||
// 10 acid resistance, 10/+3 DR.
|
||||
effect eEarth1 = EffectDamageReduction(10, DAMAGE_POWER_PLUS_THREE);
|
||||
effect eEarth2 = EffectDamageResistance(DAMAGE_TYPE_ACID, 10);
|
||||
effect eEarth3 = EffectVisualEffect(SPELL_PROTECTION_FROM_ELEMENTS);
|
||||
// Link earth
|
||||
eLink = EffectLinkEffects(eEarth1, eEarth2);
|
||||
eLink = EffectLinkEffects(eLink, eEarth3);
|
||||
}
|
||||
else if(nSpellId == SMP_SPELL_ELEMENTAL_ARMOR_FIRE)
|
||||
{
|
||||
// 10 cold/fire resistance, 2d6 fire damage on melee hits.
|
||||
effect eFire1 = EffectDamageShield(0, DAMAGE_BONUS_2d6, DAMAGE_TYPE_FIRE);
|
||||
effect eFire2 = EffectDamageResistance(DAMAGE_TYPE_FIRE, 10);
|
||||
effect eFire3 = EffectDamageResistance(DAMAGE_TYPE_COLD, 10);
|
||||
effect eFire4 = EffectVisualEffect(SPELL_PROTECTION_FROM_ELEMENTS);
|
||||
// Link fire
|
||||
eLink = EffectLinkEffects(eFire1, eFire2);
|
||||
eLink = EffectLinkEffects(eLink, eFire3);
|
||||
eLink = EffectLinkEffects(eLink, eFire4);
|
||||
}
|
||||
// Default to water
|
||||
else // if(nSpellId == SMP_SPELL_ELEMENTAL_ARMOR_WATER)
|
||||
{
|
||||
// 10 cold/fire resistance, +2 regeneration
|
||||
effect eWater1 = EffectRegenerate(2, 6.0);
|
||||
effect eWater2 = EffectDamageResistance(DAMAGE_TYPE_FIRE, 10);
|
||||
effect eWater3 = EffectDamageResistance(DAMAGE_TYPE_COLD, 10);
|
||||
effect eWater4 = EffectVisualEffect(SPELL_PROTECTION_FROM_ELEMENTS);
|
||||
// Link air
|
||||
eLink = EffectLinkEffects(eWater1, eWater2);
|
||||
eLink = EffectLinkEffects(eLink, eWater3);
|
||||
eLink = EffectLinkEffects(eLink, eWater4);
|
||||
}
|
||||
|
||||
// Oh, we add cessate here
|
||||
effect eCessate = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
||||
|
||||
eLink = EffectLinkEffects(eLink, eCessate);
|
||||
|
||||
effect eVis = EffectVisualEffect(VFX_IMP_HEAD_NATURE);
|
||||
|
||||
// We don't remove previous castings except of the same spell.
|
||||
SMP_RemoveSpellEffectsFromTarget(nSpellId, oTarget);
|
||||
|
||||
// Signal event
|
||||
SMP_SignalSpellCastAt(oTarget, SMP_SPELL_ELEMENTAL_ARMOR, FALSE);
|
||||
|
||||
// Apply effects
|
||||
SMP_ApplyDurationAndVFX(oTarget, eVis, eLink, fDuration);
|
||||
}
|
Reference in New Issue
Block a user