void main()
{
    object oPC = GetLastUsedBy();
    object oKey = GetFirstItemInInventory(OBJECT_SELF);
    string sKeyTag = GetTag(oKey);
    object oAnotherItem = GetNextItemInInventory(OBJECT_SELF);
    object oPedestal = GetObjectByTag("alc3pedestal");

    if ((sKeyTag == "ty_icekey") && (oKey != OBJECT_INVALID)
&& (oAnotherItem == OBJECT_INVALID))
        {
        SetLocalInt(oPedestal, "alc3_trapset", 0);
        }

    else if ((sKeyTag == "NW_IT_GOLD001") && (oAnotherItem ==
OBJECT_INVALID))
        {
            if(GetNumStackedItems(oKey) == 2)
                {
                    SetLocalInt(oPedestal, "alc3_trapset", 0);
                }
              else
                {
                    SetLocalInt(oPedestal, "alc3_trapset", 1);
                }
        }
      else
        {
            SetLocalInt(oPedestal, "alc3_trapset", 1);
        }
}