Clear out experimental .35 files
Clear out experimental .35 files
This commit is contained in:
@@ -1,140 +0,0 @@
|
||||
/*:://////////////////////////////////////////////
|
||||
//:: Spell Name Teleport
|
||||
//:: Spell FileName PHS_S_Teleport
|
||||
//:://////////////////////////////////////////////
|
||||
//:: In Game Spell desctiption
|
||||
//:://////////////////////////////////////////////
|
||||
Conjuration (Teleportation)
|
||||
Level: Sor/Wiz 5, Travel 5
|
||||
Components: V
|
||||
Casting Time: 1 standard action
|
||||
Range: Personal and touch
|
||||
Target: You and allied creatures within a 5M-radius sphere; see text
|
||||
Duration: Instantaneous
|
||||
Saving Throw: None
|
||||
Spell Resistance: No
|
||||
|
||||
This spell instantly transports you to a designated destination. Interplanar
|
||||
travel is not possible. You can bring along objects as long as their weight
|
||||
doesn<73>t exceed your maximum load. You may also bring one additional willing
|
||||
Medium or smaller creature (carrying gear or objects up to its maximum load)
|
||||
or its equivalent (see below) per three caster levels. A Large creature
|
||||
counts as two Medium creatures, a Huge creature counts as two Large
|
||||
creatures, and so forth. All creatures to be transported must be within 5M
|
||||
of you at the time of casting, and must be in your party to suceed. As with
|
||||
all spells where the range is personal and the target is you, you need not
|
||||
make a saving throw, nor is spell resistance applicable to you.
|
||||
|
||||
You must have some clear idea of the location and layout of the destination.
|
||||
The clearer your mental image, the more likely the teleportation works.
|
||||
Areas of strong physical or magical energy may make teleportation more
|
||||
hazardous or even impossible.
|
||||
|
||||
To see how well the teleportation works, roll d% and consult the Teleport
|
||||
table. Refer to the following information for definitions of the terms on
|
||||
the table.
|
||||
|
||||
Familiarity: <20>Very familiar<61> is a place where you have been very often and
|
||||
where you feel at home. <20>Studied carefully<6C> is a place you know well, either
|
||||
because you can currently see it, you<6F>ve been there often, or you have used
|
||||
other means (such as scrying) to study the place for at least one hour.
|
||||
<20>Seen casually<6C> is a place that you have seen more than once but with which
|
||||
you are not very familiar. <20>Viewed once<63> is a place that you have seen once,
|
||||
possibly using magic.
|
||||
|
||||
<20>False destination<6F> is a place that does not truly exist or if you are
|
||||
teleporting to an otherwise familiar location that no longer exists as such
|
||||
or has been so completely altered as to no longer be familiar to you. When
|
||||
traveling to a false destination, roll 1d20+80 to obtain results on the
|
||||
table, rather than rolling d%, since there is no real destination for you
|
||||
to hope to arrive at or even be off target from.
|
||||
|
||||
On Target: You appear where you want to be.
|
||||
|
||||
Off Target: You appear safely a random distance away from the destination
|
||||
in a random direction. Distance off target can be anywhere in the target
|
||||
area. The direction off target is determined randomly.
|
||||
|
||||
Similar Area: You wind up in an area that<61>s visually or thematically similar
|
||||
to the target area. Generally, you appear in the closest similar place
|
||||
within range. If no such area exists within the spell<6C>s range, the spell
|
||||
simply fails instead.
|
||||
|
||||
Mishap: You and anyone else teleporting with you have gotten <20>scrambled.<2E>
|
||||
You each take 1d10 points of damage, and you reroll on the chart to see
|
||||
where you wind up. For these rerolls, roll 1d20+80. Each time <20>Mishap<61> comes
|
||||
up, the characters take more damage and must reroll.
|
||||
|
||||
Familiarity On Target Off Target Similar Area Mishap
|
||||
Very familiar 01-97 98-99 100 -
|
||||
Studied carefully 01-94 95-97 98-99 100
|
||||
Seen casually 01-88 89-94 95-98 99-100
|
||||
Viewed once 01-76 77-88 89-96 97-100
|
||||
False destination (1d20+80) - - 81-92 93-100
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell Effects Applied / Notes
|
||||
//:://////////////////////////////////////////////
|
||||
Trying to make it as accurate as possible to the spell, and should maybe
|
||||
work as intended to (with mishaps and whatever).
|
||||
|
||||
Need to have a local integer on an area for it to ever be considered
|
||||
"Very familiar", and you must still study it as below.
|
||||
|
||||
You have to study an area for it to be "studied carefully" which is done
|
||||
in a cutscene, so the caster can only cancle it. Note: Any hostile creatures
|
||||
who come during the time auto-cancle it, of course! :-)
|
||||
|
||||
These are set on the caster item under the tags of the area. Locations
|
||||
must be set up each time they enter the area, but might not require any
|
||||
studying.
|
||||
|
||||
There can be up to 5 locations "pre-stored" on the caster item to teleport
|
||||
too.
|
||||
|
||||
Areas can also be named maybe? Maybe that is how to get a false destination...
|
||||
|
||||
Seen once can be included as, perhaps, using On Enter events...
|
||||
|
||||
God, this might turn out to be complicated! Very much so!
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Created By: Jasperre
|
||||
//::////////////////////////////////////////////*/
|
||||
|
||||
#include "PHS_INC_SPELLS"
|
||||
|
||||
// After the people to teleport have been got (and stored in PHS_TELEPORT_ARRAY)
|
||||
// then the familiarity is put in, and it will roll to see what result is put
|
||||
// out (and doing damage, as it will loop on a mishap).
|
||||
int GetRandomResult(int nFamiliarity, object oCaster);
|
||||
|
||||
void main()
|
||||
{
|
||||
// Spell hook check.
|
||||
if(!PHS_SpellHookCheck(PHS_SPELL_TELEPORT)) return;
|
||||
|
||||
// Delcare Major Variables
|
||||
object oCaster = OBJECT_SELF;
|
||||
location lSelf = GetLocation(OBJECT_SELF);
|
||||
int nCasterLevel = PHS_GetCasterLevel();
|
||||
int nSpellID = GetSpellId();
|
||||
// Get the spell target location
|
||||
location lTarget = GetLocalLocation(OBJECT_SELF, "TELEPORT_STORED_LOCATION");
|
||||
|
||||
// Define location and effect to use.
|
||||
effect eGo = EffectVisualEffect(VFX_FNF_TELEPORT_IN);
|
||||
effect eAppear = EffectVisualEffect(VFX_FNF_TELEPORT_OUT);
|
||||
|
||||
// Can we teleport there?
|
||||
if(!PHS_CannotTeleport(oCaster, lTarget)) return;
|
||||
|
||||
// Fire cast spell at event for the specified target
|
||||
PHS_SignalSpellCastAt(oCaster, PHS_SPELL_TELEPORT, FALSE);
|
||||
|
||||
// Apply AOE go visual
|
||||
PHS_ApplyLocationVFX(lSelf, eGo);
|
||||
|
||||
// Move the caster to that location
|
||||
ClearAllActions();
|
||||
DelayCommand(0.1, ActionJumpToLocation(lTarget));
|
||||
DelayCommand(0.2, PHS_ApplyLocationVFX(lTarget, eAppear));
|
||||
}
|
Reference in New Issue
Block a user