Added "Removed Files" folder
Added "Removed Files" folder in case we needed to review any of them.
This commit is contained in:
92
_removed files/x2_s1_petrgaze.nss
Normal file
92
_removed files/x2_s1_petrgaze.nss
Normal file
@@ -0,0 +1,92 @@
|
||||
//::///////////////////////////////////////////////
|
||||
//:: Gaze attack for shifter forms
|
||||
//:: x2_s1_petrgaze
|
||||
//:: Copyright (c) 2003 Bioware Corp.
|
||||
//:://////////////////////////////////////////////
|
||||
/*
|
||||
|
||||
Petrification gaze for polymorph type
|
||||
basilisk and medusa
|
||||
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Georg Zoeller
|
||||
//:: Created On: July, 09, 2003
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "x0_i0_spells"
|
||||
#include "x2_inc_shifter"
|
||||
|
||||
void main()
|
||||
{
|
||||
if(GetLocalInt(GetArea(OBJECT_SELF), "NOCAST")==2 && !GetIsDM(OBJECT_SELF))
|
||||
{
|
||||
|
||||
FloatingTextStringOnCreature("All spells fizzle in town.", OBJECT_SELF);
|
||||
|
||||
return;
|
||||
}
|
||||
//--------------------------------------------------------------------------
|
||||
// Enforce artifical use limit on that ability
|
||||
//--------------------------------------------------------------------------
|
||||
//Comment out to make unlimited!
|
||||
if (ShifterDecrementGWildShapeSpellUsesLeft() <1 )
|
||||
{
|
||||
FloatingTextStrRefOnCreature(83576, OBJECT_SELF);
|
||||
return;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Make sure we are not blind
|
||||
//--------------------------------------------------------------------------
|
||||
if( GZCanNotUseGazeAttackCheck(OBJECT_SELF))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Calculate Save DC
|
||||
//--------------------------------------------------------------------------
|
||||
//Here we can adjust how hard the DC is on the Gaze Press the Constant buttn
|
||||
int nDC = ShifterGetSaveDC(OBJECT_SELF,SHIFTER_DC_HARD);
|
||||
|
||||
float fDelay;
|
||||
object oTarget = GetSpellTargetObject();
|
||||
int nHitDice = GetCasterLevel(OBJECT_SELF);
|
||||
int nSpellID = GetSpellId();
|
||||
object oSelf = OBJECT_SELF;
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Loop through all available targets in spellcone
|
||||
//--------------------------------------------------------------------------
|
||||
location lFinalTarget = GetSpellTargetLocation();
|
||||
vector vFinalPosition;
|
||||
if ( lFinalTarget == GetLocation(OBJECT_SELF) )
|
||||
{
|
||||
// Since the target and origin are the same, we have to determine the
|
||||
// direction of the spell from the facing of OBJECT_SELF (which is more
|
||||
// intuitive than defaulting to East everytime).
|
||||
|
||||
// In order to use the direction that OBJECT_SELF is facing, we have to
|
||||
// instead we pick a point slightly in front of OBJECT_SELF as the target.
|
||||
vector lTargetPosition = GetPositionFromLocation(lFinalTarget);
|
||||
vFinalPosition.x = lTargetPosition.x + cos(GetFacing(OBJECT_SELF));
|
||||
vFinalPosition.y = lTargetPosition.y + sin(GetFacing(OBJECT_SELF));
|
||||
lFinalTarget = Location(GetAreaFromLocation(lFinalTarget),vFinalPosition,GetFacingFromLocation(lFinalTarget));
|
||||
}
|
||||
oTarget = GetFirstObjectInShape(SHAPE_SPELLCONE, 10.0, lFinalTarget, TRUE);
|
||||
while(GetIsObjectValid(oTarget))
|
||||
{
|
||||
fDelay = GetDistanceBetween(OBJECT_SELF, oTarget)/20;
|
||||
|
||||
if (spellsIsTarget(oTarget,SPELL_TARGET_STANDARDHOSTILE,OBJECT_SELF) && oTarget != OBJECT_SELF)
|
||||
{
|
||||
DelayCommand(fDelay, DoPetrification(nHitDice, oSelf, oTarget, nSpellID, nDC));
|
||||
//Get next target in spell area
|
||||
}
|
||||
oTarget = GetNextObjectInShape(SHAPE_SPELLCONE, 10.0, lFinalTarget, TRUE);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user