/* s_genloot - generate loot */ #include "X_O2_CONINCLUDE" void main() { int bDestroyed = (GetCurrentHitPoints() <= 0); if (GetIsRefillReady()) { int iTreasureTable = GetTreasureTable(); object oLastOpener = GetLastOpener(); if (iTreasureTable != TREASURE_BOSS) { GenerateTreasure(iTreasureTable, oLastOpener, OBJECT_SELF); } else { object oMember = GetFirstFactionMember(oLastOpener, TRUE); while (GetIsObjectValid(oMember) == TRUE) { GenerateTreasure(TREASURE_BOSS, oMember, OBJECT_SELF); oMember = GetNextFactionMember(oLastOpener, TRUE); } } ShoutDisturbed(); if (!bDestroyed) { SetLocalInt(OBJECT_SELF, GT_REFILL_NOT_READY, TRUE); if (GetIsRefillable()) DelayCommand(GetRefillDelay(), SetLocalInt(OBJECT_SELF, GT_REFILL_NOT_READY, FALSE)); } } if (bDestroyed && GetIsRespawnable()) { SetLocalFloat(OBJECT_SELF, "RESPAWN_DELAY", GetRespawnDelay()); ExecuteScript("s_respawnself", OBJECT_SELF); } }