42 lines
1.1 KiB
Plaintext
42 lines
1.1 KiB
Plaintext
#include "spawner"
|
|
#include "prc_x2_itemprop"
|
|
void Enhance(object oPC, object oItem)
|
|
{
|
|
int oDamage;
|
|
itemproperty ipAdd;
|
|
oDamage = IPGetWeaponEnhancementBonus(oItem,
|
|
ITEM_PROPERTY_ENHANCEMENT_BONUS);
|
|
++oDamage;
|
|
ipAdd = ItemPropertyEnhancementBonus(oDamage);
|
|
IPSafeAddItemProperty(oItem, ipAdd);
|
|
if (oDamage>=20) {
|
|
SetLocalInt(oItem, "enhancement_max", 1);
|
|
PCEffect(2.0,VFX_FNF_SUMMON_EPIC_UNDEAD, OBJECT_SELF);
|
|
Message(2.0, "*** Fully Upgraded ***", oPC);
|
|
}
|
|
}
|
|
|
|
|
|
void main ()
|
|
{
|
|
object oTarget;
|
|
object oItem;
|
|
object oPC = GetPCSpeaker();
|
|
int oDamage;
|
|
SetLocked(OBJECT_SELF, TRUE);
|
|
oItem = GetFirstItemInInventory(OBJECT_SELF);
|
|
while(GetIsObjectValid(oItem))
|
|
{
|
|
if (GetTag(oItem)=="coin1")
|
|
{DestroyObject(oItem);}
|
|
oItem = GetNextItemInInventory(OBJECT_SELF);
|
|
}
|
|
PCEffect(0.0,VFX_FNF_SUMMON_MONSTER_3, OBJECT_SELF);
|
|
PCEffect(1.0,VFX_DUR_ELEMENTAL_SHIELD, OBJECT_SELF);
|
|
PCEffect(1.5,VFX_FNF_ELECTRIC_EXPLOSION, OBJECT_SELF);
|
|
PCEffect(2.0,VFX_IMP_HARM, OBJECT_SELF);
|
|
DelayCommand(1.0, Enhance(oPC, GetFirstItemInInventory(OBJECT_SELF)));
|
|
DelayCommand(3.0, SetLocked(OBJECT_SELF, FALSE));
|
|
}
|
|
|