Added pen & paper & rafhot's expanded creature abilities
Added pen & paper & rafhot's expanded creature abilities
This commit is contained in:
86
_module/_removed files/nw_s1_barbrage.nss
Normal file
86
_module/_removed files/nw_s1_barbrage.nss
Normal file
@@ -0,0 +1,86 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Barbarian Rage
|
||||
//:: NW_S1_BarbRage
|
||||
//:: Copyright (c) 2001 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
The Str and Con of the Barbarian increases,
|
||||
Will Save are +2, AC -2.
|
||||
Greater Rage starts at level 15.
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Preston Watamaniuk
|
||||
//:: Created On: Aug 13, 2001
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "x2_i0_spells"
|
||||
|
||||
void main()
|
||||
{
|
||||
if(!GetHasFeatEffect(FEAT_BARBARIAN_RAGE))
|
||||
{
|
||||
//Declare major variables
|
||||
int nLevel = GetLevelByClass(CLASS_TYPE_BARBARIAN);
|
||||
int nIncrease;
|
||||
int nSave;
|
||||
effect eDmg;
|
||||
effect eAtk;
|
||||
effect eHP;
|
||||
eDmg = SupernaturalEffect(eDmg);
|
||||
if (nLevel < 15)
|
||||
{
|
||||
nIncrease = 4;
|
||||
nSave = 2;
|
||||
//Added to compensate for +12 Cap
|
||||
eDmg = EffectDamageIncrease(DAMAGE_BONUS_4, DAMAGE_TYPE_BLUDGEONING);
|
||||
|
||||
eAtk = EffectAttackIncrease(2);
|
||||
eAtk = SupernaturalEffect(eAtk);
|
||||
eHP = EffectTemporaryHitpoints(nLevel * 3);
|
||||
eHP = SupernaturalEffect(eHP);
|
||||
}
|
||||
else
|
||||
{
|
||||
nIncrease = 6;
|
||||
nSave = 3;
|
||||
//Added to compensate for +12 Cap
|
||||
eDmg = EffectDamageIncrease(DAMAGE_BONUS_6, DAMAGE_TYPE_BLUDGEONING);
|
||||
eAtk = EffectAttackIncrease(4);
|
||||
eAtk = SupernaturalEffect(eAtk);
|
||||
eHP = EffectTemporaryHitpoints(nLevel * 4);
|
||||
eHP = SupernaturalEffect(eHP);
|
||||
}
|
||||
PlayVoiceChat(VOICE_CHAT_BATTLECRY1);
|
||||
//Determine the duration by getting the con modifier after being modified
|
||||
int nCon = 3 + GetAbilityModifier(ABILITY_CONSTITUTION) + nIncrease;
|
||||
effect eStr = EffectAbilityIncrease(ABILITY_CONSTITUTION, nIncrease);
|
||||
effect eCon = EffectAbilityIncrease(ABILITY_STRENGTH, nIncrease);
|
||||
effect eSave = EffectSavingThrowIncrease(SAVING_THROW_WILL, nSave);
|
||||
effect eAC = EffectACDecrease(2, AC_DODGE_BONUS);
|
||||
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
|
||||
|
||||
effect eLink = EffectLinkEffects(eCon, eStr);
|
||||
eLink = EffectLinkEffects(eLink, eSave);
|
||||
eLink = EffectLinkEffects(eLink, eAC);
|
||||
eLink = EffectLinkEffects(eLink, eDur);
|
||||
SignalEvent(OBJECT_SELF, EventSpellCastAt(OBJECT_SELF, SPELLABILITY_BARBARIAN_RAGE, FALSE));
|
||||
//Make effect extraordinary
|
||||
eLink = ExtraordinaryEffect(eLink);
|
||||
effect eVis = EffectVisualEffect(VFX_IMP_IMPROVE_ABILITY_SCORE); //Change to the Rage VFX
|
||||
|
||||
if (nCon > 0)
|
||||
{
|
||||
//Apply the VFX impact and effects
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, OBJECT_SELF, RoundsToSeconds(nCon));
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, OBJECT_SELF) ;
|
||||
//This part was added by Guile to offset +12 Cap.
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eAtk, OBJECT_SELF, RoundsToSeconds(nCon));
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eDmg, OBJECT_SELF, RoundsToSeconds(nCon));
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eHP, OBJECT_SELF, RoundsToSeconds(nCon));
|
||||
|
||||
// 2003-07-08, Georg: Rage Epic Feat Handling
|
||||
CheckAndApplyEpicRageFeats(nCon);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user