37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
#include "x2_inc_itemprop"
|
|
|
|
//This is actually the main function.
|
|
void script(object oItem, object oPC)
|
|
{
|
|
int nValue = GetGoldPieceValue(oItem);
|
|
if (GetItemHasItemProperty(oItem, ITEM_PROPERTY_AC_BONUS)) {SetLocalInt(oItem, "HasProperties", TRUE); return;}
|
|
DestroyObject(oItem);
|
|
object oNew = CreateItemOnObject("it_anc_helm3a", oPC);
|
|
SetLocalInt(oNew, "Prototype", TRUE);
|
|
SetItemCursedFlag(oNew, TRUE);
|
|
SetLocalString(oPC, "LastProperty", "EpicHelmet");
|
|
SetIdentified(oNew, TRUE);
|
|
}
|
|
|
|
void main()
|
|
{
|
|
object oPC = GetPCSpeaker();
|
|
int nSlot = 0;
|
|
object oItem;
|
|
|
|
//Check if the item being crafted is equipped
|
|
while (nSlot < 18)
|
|
{
|
|
oItem = GetItemInSlot(nSlot, oPC);
|
|
if (GetLocalInt(oItem, "Prototype") == TRUE) {script(oItem, oPC); return; }
|
|
nSlot++;
|
|
}
|
|
//If the item is not equipped, search for it in the inventory
|
|
oItem = GetFirstItemInInventory(oPC);
|
|
while (GetIsObjectValid(oItem))
|
|
{
|
|
if (GetLocalInt(oItem, "Prototype") == TRUE) {script(oItem, oPC); return; }
|
|
oItem = GetNextItemInInventory(oPC);
|
|
}
|
|
}
|