forked from Jaysyn/PRC8
Updated Release Archive. Fixed Mage-killer prereqs. Removed old LETO & ConvoCC related files. Added organized spell scroll store. Fixed Gloura spellbook. Various TLK fixes. Reorganized Repo. Removed invalid user folders. Added DocGen back in.
54 lines
1.9 KiB
Plaintext
54 lines
1.9 KiB
Plaintext
//::///////////////////////////////////////////////
|
|
//:: OnUnaquireItem eventscript
|
|
//:: prc_onunaquire
|
|
//:://////////////////////////////////////////////
|
|
//Include required for Imbue Arrow functionality.
|
|
#include "prc_inc_spells"
|
|
|
|
void main()
|
|
{
|
|
object oItem = GetModuleItemLost();
|
|
object oPC = GetModuleItemLostBy();
|
|
string sTag = GetTag(oItem);
|
|
|
|
// Do not run for some of the PRC special items
|
|
if(sTag == "PRC_MANIFTOKEN"
|
|
|| sTag == "HideToken"
|
|
|| GetResRef(oItem) == "base_prc_skin")
|
|
return;
|
|
|
|
//if(DEBUG) DoDebug("Running OnUnaquireItem, creature = '" + GetName(oPC) + "' is PC: " + DebugBool2String(GetIsPC(oPC)) + "; Item = '" + GetName(oItem) + "' - '" + GetTag(oItem) + "'");
|
|
|
|
if(GetPRCSwitch(PRC_AUTO_UNIDENTIFY_ON_UNACQUIRE))
|
|
{
|
|
object oNewOwner = GetItemPossessor(oItem);
|
|
if(GetIsObjectValid(oNewOwner))
|
|
{
|
|
if((GetObjectType(oNewOwner) == OBJECT_TYPE_CREATURE
|
|
&& (GetIsFriend(oPC, oNewOwner)
|
|
|| GetIsNeutral(oPC, oNewOwner)))
|
|
|| GetObjectType(oNewOwner) == OBJECT_TYPE_STORE)
|
|
{
|
|
}
|
|
else
|
|
SetIdentified(oItem, FALSE);
|
|
}
|
|
else
|
|
{
|
|
//put on ground?
|
|
SetIdentified(oItem, FALSE);
|
|
}
|
|
}
|
|
|
|
// Remove all temporary item properties when dropped/given away/stolen/sold.
|
|
if(GetIsObjectValid(oItem))//needed for last of stack etc items
|
|
DeletePRCLocalIntsT(oPC,oItem);
|
|
|
|
// Execute scripts hooked to this event for the creature and item triggering it
|
|
ExecuteAllScriptsHookedToEvent(oPC, EVENT_ONUNAQUIREITEM);
|
|
ExecuteAllScriptsHookedToEvent(oItem, EVENT_ITEM_ONUNAQUIREITEM);
|
|
|
|
// Tag-based scripting hook for PRC items
|
|
SetUserDefinedItemEventNumber(X2_ITEM_EVENT_UNACQUIRE);
|
|
ExecuteScript("is_"+sTag, OBJECT_SELF);
|
|
} |