119 lines
5.7 KiB
Plaintext
119 lines
5.7 KiB
Plaintext
#include "NW_O2_CONINCLUDE"
|
|
void main()
|
|
{
|
|
object oItem = OBJECT_INVALID;
|
|
// Clear all contents of the <span class="highlight">chest</span>
|
|
oItem = GetFirstItemInInventory();
|
|
while ( oItem != OBJECT_INVALID )
|
|
{
|
|
//Make sure people don't stuff <span class="highlight">chest</span> with plot items and break it
|
|
SetPlotFlag(oItem, FALSE);
|
|
DestroyObject( oItem, 0.0 );
|
|
oItem = GetNextItemInInventory();
|
|
}
|
|
// Set respawntime float to the number of seconds.
|
|
float respawntime = 600.00;
|
|
if (GetLocalInt(OBJECT_SELF,"NW_DO_ONCE") != 0)
|
|
{
|
|
return;
|
|
}
|
|
object oLastOpener = GetLastOpener();
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",1);
|
|
ShoutDisturbed();
|
|
// Command added to delay the <span class="highlight">respawn</span>
|
|
AssignCommand( OBJECT_SELF, DelayCommand (respawntime, SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",0) ) );
|
|
AdjustAlignment(GetLastOpenedBy(), ALIGNMENT_EVIL, 1);
|
|
int nRandom = d20(1);
|
|
if (nRandom == 1){
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"skeleton001", lSpawn,TRUE);}
|
|
else if (nRandom == 2){
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"zombie002", lSpawn,TRUE);}
|
|
else if (nRandom == 4){
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"ghoul001", lSpawn,TRUE);}
|
|
else if (nRandom == 6){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"wight001", lSpawn,TRUE);}
|
|
else if (nRandom == 8){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"skelmage001", lSpawn,TRUE);}
|
|
else if (nRandom == 10){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"zombwarr003", lSpawn,TRUE);}
|
|
else if (nRandom == 12){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"ghast001", lSpawn,TRUE);}
|
|
else if (nRandom == 14){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"wraith001", lSpawn,TRUE);}
|
|
else if (nRandom == 16){
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"skelwarr002", lSpawn,TRUE);}
|
|
else if (nRandom == 17){
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"skelwarr002", lSpawn,TRUE);}
|
|
else if (nRandom == 18){
|
|
GenerateLowTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateMediumTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"wraith001", lSpawn,TRUE);}
|
|
else if (nRandom == 20){
|
|
GenerateHighTreasure(oLastOpener, OBJECT_SELF);
|
|
GenerateHighTreasure(oLastOpener, OBJECT_SELF);
|
|
object oArea = GetArea (GetLastOpenedBy());
|
|
vector vPosition = GetPosition (GetLastOpenedBy());
|
|
float fOrientation = GetFacing (GetLastOpenedBy());
|
|
location lSpawn = Location ( oArea, vPosition, fOrientation);
|
|
CreateObject (OBJECT_TYPE_CREATURE,"ghoulboss001", lSpawn,TRUE);}
|
|
}
|