63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
#include "spawner"
|
|
#include "prc_x2_itemprop"
|
|
|
|
void Skill (object oItem)
|
|
{
|
|
itemproperty ipAdd;
|
|
int oDamage;
|
|
int nRandom = d20();
|
|
|
|
if (nRandom==1) oDamage = 5;
|
|
if (nRandom==2) oDamage = 5;
|
|
if (nRandom==3) oDamage = 5;
|
|
if (nRandom==4) oDamage = 5;
|
|
if (nRandom==5) oDamage = 7;
|
|
if (nRandom==6) oDamage = 7;
|
|
if (nRandom==7) oDamage = 7;
|
|
if (nRandom==8) oDamage = 9;
|
|
if (nRandom==9) oDamage = 9;
|
|
if (nRandom==10) oDamage = 9;
|
|
if (nRandom==11) oDamage = 11;
|
|
if (nRandom==12) oDamage = 11;
|
|
if (nRandom==13) oDamage = 11;
|
|
if (nRandom==14) oDamage = 13;
|
|
if (nRandom==15) oDamage = 13;
|
|
if (nRandom==16) oDamage = 13;
|
|
if (nRandom==17) oDamage = 15;
|
|
if (nRandom==18) oDamage = 15;
|
|
if (nRandom==19) oDamage = 15;
|
|
if (nRandom==20)
|
|
{
|
|
oDamage = 16;
|
|
PCEffect(3.0,VFX_DUR_PROT_EPIC_ARMOR_2, OBJECT_SELF);
|
|
}
|
|
|
|
ipAdd = ItemPropertySkillBonus(SKILL_HEAL, oDamage);
|
|
IPSafeAddItemProperty(oItem, ipAdd);
|
|
|
|
}
|
|
void main ()
|
|
{
|
|
object oTarget;
|
|
object oItem;
|
|
|
|
int oDamage;
|
|
SetLocked(OBJECT_SELF, TRUE);
|
|
oItem = GetFirstItemInInventory(OBJECT_SELF);
|
|
while(GetIsObjectValid(oItem))
|
|
{
|
|
if (GetTag(oItem)=="pearl")
|
|
{DestroyObject(oItem);}
|
|
oItem = GetNextItemInInventory(OBJECT_SELF);
|
|
}
|
|
CastPC(0.0,SPELL_SHAPECHANGE, OBJECT_SELF);
|
|
PCEffect(1.0,VFX_IMP_DOMINATE_S, OBJECT_SELF);
|
|
PCEffect(1.5,VFX_IMP_IMPROVE_ABILITY_SCORE, OBJECT_SELF);
|
|
PCEffect(2.0,VFX_FNF_DISPEL_DISJUNCTION, OBJECT_SELF);
|
|
DelayCommand(1.0, Skill(GetFirstItemInInventory(OBJECT_SELF)));
|
|
DelayCommand(3.0, SetLocked(OBJECT_SELF, FALSE));
|
|
}
|
|
|
|
|
|
|