90 lines
2.1 KiB
Plaintext
90 lines
2.1 KiB
Plaintext
|
//::////////////////////////////////////////////////////////////////////////////
|
|||
|
/*//
|
|||
|
|
|||
|
Level 1a: Latrene 3
|
|||
|
onEnter script
|
|||
|
ra_lvl01a_onentr.nss
|
|||
|
|
|||
|
Wandering Monsters: None
|
|||
|
|
|||
|
Detections: Faint evil from the whole place; slightly more to the south east.
|
|||
|
|
|||
|
Continuous Effects: The stench of this level requires all characters to make
|
|||
|
a Fortitude save (DC 10) upon entering the level and every 30 minutes
|
|||
|
thereafter or all rolls are at –2 morale penalty due to the distraction
|
|||
|
caused by the overpowering smell.
|
|||
|
|
|||
|
*///
|
|||
|
//::////////////////////////////////////////////////////////////////////////////
|
|||
|
|
|||
|
#include "spawn_functions"
|
|||
|
#include "tgdc_explore_inc"
|
|||
|
|
|||
|
void StenchMessage(object oPC = OBJECT_SELF)
|
|||
|
{
|
|||
|
//:: Only fire for (real) PCs.
|
|||
|
if ( !GetIsPC(oPC) || GetIsDMPossessed(oPC) )
|
|||
|
return;
|
|||
|
|
|||
|
//:: Have text appear over the PC's head.
|
|||
|
FloatingTextStringOnCreature("The smell of this cesspool is making you physically ill.", oPC, FALSE);
|
|||
|
}
|
|||
|
|
|||
|
void main()
|
|||
|
{
|
|||
|
//:: Get the entering object (usually a PC)
|
|||
|
object oPC = GetEnteringObject();
|
|||
|
|
|||
|
//:: Only fire once per PC.
|
|||
|
if (!GetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF)) )
|
|||
|
{
|
|||
|
StenchMessage(oPC);
|
|||
|
|
|||
|
SetLocalInt(oPC, "DO_ONCE__" + GetTag(OBJECT_SELF), TRUE);
|
|||
|
}
|
|||
|
|
|||
|
/*
|
|||
|
Spawn_OnAreaEnter() can take three arguments - the name of the heartbeat
|
|||
|
script to execute, the heartbeat duration, and a delay for the first
|
|||
|
heartbeat. They default to spawn_sample_hb, 6.0, and 0.0 respectively; as
|
|||
|
if it were called like: Spawn_OnAreaEnter( "spawn_sample_hb", 6.0, 0.0 );
|
|||
|
*/
|
|||
|
|
|||
|
if ( GetIsAreaAboveGround( OBJECT_SELF ) && ! GetIsAreaNatural( OBJECT_SELF ) )
|
|||
|
{
|
|||
|
//:: Indoors - no delay on the first HB
|
|||
|
Spawn_OnAreaEnter( "spawn_sample_hb", 6.0, 0.0 );
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
//:: Outdoors or underground - do a 3 second delay on the first HB
|
|||
|
Spawn_OnAreaEnter( "spawn_sample_hb", 6.0, 3.0 );
|
|||
|
}
|
|||
|
|
|||
|
//:: Records that the PC has entered Rappan Athuk at least once.
|
|||
|
SetLocalInt(oPC, "bEnteredDungeon", 1);
|
|||
|
SetLocalInt(oPC, "bEnteredLevelOne", 1);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|