// Treasure Chest #include "NW_O2_CONINCLUDE" 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(); GenerateLowTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); {int nRandom = d8(1); int nTreasureType = 1; if (nRandom == 1){ CreateItemOnObject("NW_IT_GOLD001", OBJECT_SELF, 3105); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 2){ CreateItemOnObject("NW_IT_GOLD001", OBJECT_SELF, 1427); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 3){ CreateItemOnObject("NW_IT_GOLD001", OBJECT_SELF, 1486); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 4){ CreateItemOnObject("NW_ARMHE007", OBJECT_SELF, 1); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 5){ CreateItemOnObject("NW_ARMHE010", OBJECT_SELF, 1); GenerateLowTreasure(oLastOpener, OBJECT_SELF); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 6){ CreateItemOnObject("NW_WBWMLN004", OBJECT_SELF, 1); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 7){ CreateItemOnObject("NW_WMGST004", OBJECT_SELF, 1); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); GenerateLowTreasure(oLastOpener, OBJECT_SELF); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);} else if (nRandom == 8){ CreateItemOnObject("NW_WDBMSW008", OBJECT_SELF, 1); GenerateHighTreasure(oLastOpener, OBJECT_SELF); GenerateMediumTreasure(oLastOpener, OBJECT_SELF); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateGem(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType); CreateJewel(OBJECT_SELF, OBJECT_SELF, nTreasureType);}} 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) ) ); }