void DeMagnitizePC(object oPC) { effect eEffect = GetFirstEffect(oPC); while (GetIsEffectValid(eEffect) == TRUE) { RemoveEffect(oPC, eEffect); eEffect = GetNextEffect(oPC); } } void main() { object oPC = GetEnteringObject(); BlackScreen(oPC); DelayCommand(1.0, FadeFromBlack(oPC, FADE_SPEED_MEDIUM)); DeMagnitizePC(oPC); object oContainer = GetObjectByTag("splshchst"); //NEW CONTAINER - object oArea = OBJECT_INVALID; object oItem = GetFirstObjectInArea(oArea); while (GetIsObjectValid(oItem) == TRUE) { if (GetObjectType(oItem) == OBJECT_TYPE_ITEM) { CopyItem(oItem, oContainer); SetPlotFlag(oItem, FALSE); DestroyObject(oItem, 0.1); } oItem = GetNextObjectInArea(oArea); } //if this is the main PC - who has had the dream if (GetLocalInt(oPC, "nPCNumber") == 1) { object oGear = GetItemInSlot(INVENTORY_SLOT_ARMS, oPC); object oGear2; //object oContainer = GetObjectByTag("q2a_pc_equip");//OLD CONTAINER - IN PC START ROOM int nGold = 0; if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_BELT, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_BOLTS, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_BOOTS, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_CHEST, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_CLOAK, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_HEAD, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_LEFTRING, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_NECK, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_ARROWS, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_BOLTS, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetItemInSlot(INVENTORY_SLOT_BULLETS, oPC); if(GetIsObjectValid(oGear)) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); } oGear = GetFirstItemInInventory(oPC); while (oGear != OBJECT_INVALID) { nGold = nGold + GetGoldPieceValue(oGear); oGear2 = CopyItem(oGear, oContainer); SetPlotFlag(oGear, FALSE); DestroyObject(oGear); oGear = GetNextItemInInventory(oPC); } //Get Rid of Gold TakeGoldFromCreature(GetGold(oPC), oPC, TRUE); //Do the following only the first time the area is entered if (GetLocalInt(OBJECT_SELF, "nSaved") == 1) return; SetLocalInt(OBJECT_SELF, "nSaved", 1); // DoSinglePlayerAutoSave(); } }