// Treasure Chest #include "X0_I0_TREASURE" void main() { object oItem = OBJECT_INVALID; // Clear all contents of the chest oItem = GetFirstItemInInventory(); while ( oItem != OBJECT_INVALID ) { //Make sure people don't stuff chest 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(); {int nRandom = d8(1); int nTreasureType = 1; if (nRandom == 1){ GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 2){ GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 3){ GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 4){ GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 5){ GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 6){ GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateBossTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 7){ GenerateHighTreasure(oLastOpener, OBJECT_SELF); GenerateHighTreasure(oLastOpener, OBJECT_SELF); GenerateHighTreasure(oLastOpener, OBJECT_SELF); GenerateHighTreasure(oLastOpener, OBJECT_SELF);} else if (nRandom == 8){ GenerateBossTreasure(oLastOpener, OBJECT_SELF); GenerateBossTreasure(oLastOpener, OBJECT_SELF); GenerateHighTreasure(oLastOpener, OBJECT_SELF); GenerateHighTreasure(oLastOpener, OBJECT_SELF);}} SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",1); ShoutDisturbed(); // Command added to delay the respawn AssignCommand( OBJECT_SELF, DelayCommand (respawntime, SetLocalInt(OBJECT_SELF,"NW_DO_ONCE",0) ) ); }