#include "spawner" #include "prc_x2_itemprop" void ArmImbue(object oItem, int oDamageType) { itemproperty ipAdd; int oDamage; int nRandom = d20(); if (nRandom==1) oDamage = IP_CONST_DAMAGERESIST_25; if (nRandom==2) oDamage = IP_CONST_DAMAGERESIST_25; if (nRandom==3) oDamage = IP_CONST_DAMAGERESIST_25; if (nRandom==4) oDamage = IP_CONST_DAMAGERESIST_25; if (nRandom==5) oDamage = IP_CONST_DAMAGERESIST_30; if (nRandom==6) oDamage = IP_CONST_DAMAGERESIST_30; if (nRandom==7) oDamage = IP_CONST_DAMAGERESIST_30; if (nRandom==8) oDamage = IP_CONST_DAMAGERESIST_30; if (nRandom==9) oDamage = IP_CONST_DAMAGERESIST_35; if (nRandom==10) oDamage = IP_CONST_DAMAGERESIST_35; if (nRandom==11) oDamage = IP_CONST_DAMAGERESIST_35; if (nRandom==12) oDamage = IP_CONST_DAMAGERESIST_35; if (nRandom==13) oDamage = IP_CONST_DAMAGERESIST_40; if (nRandom==14) oDamage = IP_CONST_DAMAGERESIST_40; if (nRandom==15) oDamage = IP_CONST_DAMAGERESIST_40; if (nRandom==16) oDamage = IP_CONST_DAMAGERESIST_40; if (nRandom==17) oDamage = IP_CONST_DAMAGERESIST_45; if (nRandom==18) oDamage = IP_CONST_DAMAGERESIST_45; if (nRandom==19) oDamage = IP_CONST_DAMAGERESIST_45 ; if (nRandom==20) { oDamage = IP_CONST_DAMAGERESIST_50; PCEffect(3.0,VFX_DUR_PROT_EPIC_ARMOR_2, OBJECT_SELF); } ipAdd = ItemPropertyDamageResistance(oDamageType, oDamage); IPSafeAddItemProperty(oItem, ipAdd); } void Imbue(object oItem, int oDamageType) { itemproperty ipAdd; ipAdd = ItemPropertyDamageBonus(oDamageType, IP_CONST_DAMAGEBONUS_1d8); IPSafeAddItemProperty(oItem, ipAdd); } void ImbueWeapon (int oVfx, int oDamageType) { object oTarget; object oItem; 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,oVfx, OBJECT_SELF); DelayCommand(1.0, Imbue(GetFirstItemInInventory(OBJECT_SELF), oDamageType)); DelayCommand(3.0, SetLocked(OBJECT_SELF, FALSE)); } void ImbueArmour (int oVfx, int oDamageType) { 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,oVfx, OBJECT_SELF); DelayCommand(1.0, ArmImbue(GetFirstItemInInventory(OBJECT_SELF), oDamageType)); DelayCommand(3.0, SetLocked(OBJECT_SELF, FALSE)); } //void main (){}