void main() { int nUser = GetUserDefinedEventNumber(); if(nUser == 1001) //POLYMORPH { int nCount = 1; object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, OBJECT_SELF, nCount); int nLever1 = GetLocalInt(OBJECT_SELF, "NK_FP_POLYLEVER1"); int nLever2 = GetLocalInt(OBJECT_SELF, "NK_FP_POLYLEVER2"); if ((nLever1==1) && (nLever2==1)) { float fDuration = 300.0; effect eImp = EffectPolymorph(POLYMORPH_TYPE_IMP); effect eVisual = EffectVisualEffect(VFX_IMP_LIGHTNING_M ,FALSE); effect eBeam1 = EffectBeam(VFX_BEAM_LIGHTNING, GetNearestObjectByTag("NK_FP_POLYBRAZIER", OBJECT_SELF, 1), BODY_NODE_CHEST, FALSE); effect eBeam2 = EffectBeam(VFX_BEAM_LIGHTNING, GetNearestObjectByTag("NK_FP_POLYBRAZIER", OBJECT_SELF, 2), BODY_NODE_CHEST, FALSE); SetLocalObject(GetModule(), "NK_FP_POLY_ENEMY", OBJECT_SELF); while (oPC != OBJECT_INVALID) { if (GetLocalInt(oPC, "NK_FP_POLYME") == 1) { DelayCommand(1.5, AssignCommand(OBJECT_SELF, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eImp, oPC, fDuration))); DelayCommand(1.5, AssignCommand(OBJECT_SELF, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual, oPC))); AssignCommand(OBJECT_SELF, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBeam1, oPC, 2.0)); AssignCommand(OBJECT_SELF, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eBeam2, oPC, 2.0)); SetStandardFactionReputation(STANDARD_FACTION_HOSTILE , 100, oPC); CreateItemOnObject("nk_fp_poly", oPC); object oGem = GetItemPossessedBy(oPC, "NK_FP_POLY"); DelayCommand (fDuration+2.0, AssignCommand(OBJECT_SELF, ActionTakeItem(oGem, oPC))); } nCount++; oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, OBJECT_SELF, nCount); } } } }