// Aplies given effect to oPC with iDuration void vamp_effect(object oPC, effect eEffect, int iDuration) { ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eEffect, oPC,RoundsToSeconds(iDuration)); } void vamp_init_effects(object oPC, int iDuration) { //Effects to vampire while he is on alter form. vamp_effect(oPC,EffectAbilityIncrease(ABILITY_STRENGTH,6),iDuration); vamp_effect(oPC,EffectAbilityIncrease(ABILITY_DEXTERITY,4),iDuration); vamp_effect(oPC,EffectAbilityIncrease(ABILITY_INTELLIGENCE,2),iDuration); vamp_effect(oPC,EffectAbilityIncrease(ABILITY_WISDOM,2),iDuration); vamp_effect(oPC,EffectAbilityIncrease(ABILITY_CHARISMA,4),iDuration); vamp_effect(oPC,EffectDamageReduction(15, DAMAGE_POWER_PLUS_ONE, 0),iDuration); vamp_effect(oPC,EffectDamageResistance(DAMAGE_TYPE_COLD, 20,0),iDuration); vamp_effect(oPC,EffectDamageResistance(DAMAGE_TYPE_ELECTRICAL, 20,0),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_MIND_SPELLS),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_CRITICAL_HIT),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_SNEAK_ATTACK),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_NEGATIVE_LEVEL),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_DISEASE),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_POISON),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_DEATH),iDuration); vamp_effect(oPC,EffectImmunity(IMMUNITY_TYPE_ABILITY_DECREASE),iDuration); vamp_effect(oPC,EffectTurnResistanceIncrease(4),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_HIDE, 8),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_LISTEN, 8),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_MOVE_SILENTLY, 8),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_SEARCH, 8),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_SPOT, 8),iDuration); vamp_effect(oPC,EffectSkillIncrease(SKILL_TAUNT, 8),iDuration); vamp_effect(oPC,EffectVisualEffect(VFX_DUR_DARKVISION),iDuration); } void vamp_form_wolf(object oPC) { //Polymorping vampire to wolf. effect ePolymorphWolf = EffectPolymorph(POLYMORPH_TYPE_WOLF); effect ePolymorphVFX = EffectVisualEffect(VFX_IMP_POLYMORPH); effect eLink = EffectLinkEffects(ePolymorphWolf, ePolymorphVFX); int iDuration = 12; ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPC,RoundsToSeconds(iDuration)); vamp_init_effects(oPC, iDuration); } void vamp_form_direwolf(object oPC) { //Polymorping vampire to direwolf. effect ePolymorphDireWolf =EffectPolymorph(POLYMORPH_TYPE_DIRE_WOLF); int iDuration = 12; effect ePolymorphVFX = EffectVisualEffect(VFX_IMP_POLYMORPH); effect eLink = EffectLinkEffects(ePolymorphDireWolf, ePolymorphVFX); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPC,RoundsToSeconds(iDuration)); vamp_init_effects(oPC, iDuration); }