Further file organization
Further file organization
This commit is contained in:
70
nwn/nwnprc/trunk/spells/sp_telecircle.nss
Normal file
70
nwn/nwnprc/trunk/spells/sp_telecircle.nss
Normal file
@@ -0,0 +1,70 @@
|
||||
//:://////////////////////////////////////////////
|
||||
//:: Spell: Teleportation Circle
|
||||
//:: sp_telecircle
|
||||
//:://////////////////////////////////////////////
|
||||
/** @file
|
||||
|
||||
Teleportation Circle
|
||||
|
||||
Conjuration (Teleportation)
|
||||
Level: Sor/Wiz 9
|
||||
Components: V
|
||||
Casting Time: 10 minutes
|
||||
Range: 0 ft.
|
||||
Effect: 5-ft.-radius circle that teleports those who activate it
|
||||
Duration: 10 min./level
|
||||
Saving Throw: None
|
||||
Spell Resistance: Yes
|
||||
|
||||
You create a circle on the floor or other horizontal surface that teleports, as greater teleport,
|
||||
any creature who stands on it to a designated spot. Once you designate the destination for the
|
||||
circle, you can<61>t change it. The spell fails if you attempt to set the circle to teleport
|
||||
creatures into a solid object, to a place with which you are not familiar and have no clear
|
||||
description, or to another plane.
|
||||
|
||||
The circle itself is subtle and nearly impossible to notice. If you intend to keep creatures from
|
||||
activating it accidentally, you need to mark the circle in some way.
|
||||
|
||||
Teleportation circle can be made permanent with a permanency spell. A permanent teleportation circle
|
||||
that is disabled becomes inactive for 10 minutes, then can be triggered again as normal.
|
||||
|
||||
Note: Magic traps such as teleportation circle are hard to detect and disable. A rogue (only) can
|
||||
use the Search skill to find the circle and Disable Device to thwart it. The DC in each case is
|
||||
25 + spell level, or 34 in the case of teleportation circle.
|
||||
|
||||
Material Component: Amber dust to cover the area of the circle (cost 1,000 gp).
|
||||
|
||||
@author Ornedan
|
||||
@date Created - 24.06.2005
|
||||
*/
|
||||
//:://////////////////////////////////////////////
|
||||
//:://////////////////////////////////////////////
|
||||
|
||||
#include "prc_alterations"
|
||||
#include "spinc_telecircle"
|
||||
|
||||
const int ERROR_CODE_5_Fix = 1;
|
||||
|
||||
const int SPELLID_VISIBLE = 2878;
|
||||
const int SPELLID_HIDDEN = 2879;
|
||||
|
||||
//PRC_TELECIRCLE_TRIG_VISIBLE_ORIG
|
||||
//PRC_TELECIRCLE_TRIG_HIDDEN_ORIG
|
||||
|
||||
|
||||
void main()
|
||||
{
|
||||
// Set the spell school
|
||||
PRCSetSchool(SPELL_SCHOOL_CONJURATION);
|
||||
// Spellhook
|
||||
if(!X2PreSpellCastCode()) return;
|
||||
|
||||
object oCaster = OBJECT_SELF;
|
||||
int nCasterLvl = PRCGetCasterLevel();
|
||||
int bVisible = PRCGetSpellId() == SPELLID_VISIBLE;
|
||||
int bExtended = CheckMetaMagic(PRCGetMetaMagicFeat(), METAMAGIC_EXTEND);
|
||||
|
||||
TeleportationCircle(oCaster, nCasterLvl, bVisible, bExtended);
|
||||
|
||||
PRCSetSchool();
|
||||
}
|
Reference in New Issue
Block a user