Shargast_PRC8/_module/Chapter 1/nss/trash_wellbarrow.nss
Jaysyn904 66a0a3e043 Initial commit
Initial commit.
2024-08-03 14:13:18 -04:00

65 lines
1.7 KiB
Plaintext

//put onHeartbeat of your own trashcan,
//make the trashcan usable and has inventory.
//This will check the area for remains,
//pick out all the inventory in the remains, and
//transfer it to its own inventory.
//Created by semajack
//ne questions or tips send to semajack@hotmail.com
void TrashObject(object oTrash, string sResref, int iStack)
{
object oItem;
if(GetHasInventory(oTrash) == TRUE)
{
oItem = GetFirstItemInInventory(oTrash);
while(GetIsObjectValid(oItem))
{
iStack = GetItemStackSize(oItem);
sResref = GetResRef(oItem);
CreateItemOnObject(sResref,OBJECT_SELF,iStack);
DestroyObject(oItem);
oItem = GetNextItemInInventory(oTrash);
}
//DestroyObject(oTrash);
}
else
{
iStack = GetItemStackSize(oTrash);
sResref = GetResRef(oTrash);
CreateItemOnObject(sResref,OBJECT_SELF,iStack);
DestroyObject(oTrash);
}
}
void main()
{
int oGo = GetLocalInt(OBJECT_SELF,"go");
object oArea = GetArea(OBJECT_SELF);
object oTrash = GetFirstObjectInArea(oArea);
//object oItem = GetFirstItemInInventory(oTrash);
string sResref;
int iStack;
if(oGo == 30)
{
SetLocalInt(OBJECT_SELF,"go",0);
while(GetIsObjectValid(oTrash))
{
if(GetObjectType(oTrash) == OBJECT_TYPE_PLACEABLE && GetTag(oTrash) == "BodyBag")
{
TrashObject(oTrash, sResref, iStack);
}
else
{
//if(GetObjectType(oTrash) == OBJECT_TYPE_ITEM)
//TrashObject(oTrash, sResref, iStack);
}
oTrash = GetNextObjectInArea(oArea);
}
}
else
{
++oGo;
SetLocalInt(OBJECT_SELF,"go",oGo);
}
}