void main() { location lTele = GetLocation(GetWaypointByTag("px_teleport_lvl2")); object oPC = GetPCSpeaker(); int nCheck=0; string sString="px_uzgath_devic_"; int nIdx; for (nIdx=1;nIdx<=8;nIdx++) { if(GetLocalInt(GetObjectByTag(sString+IntToString(nIdx)),"Correct") == TRUE) { nCheck=nCheck+1; } } if(nCheck==8) { SpeakString("The device begins to hum loudly"); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectBeam(VFX_BEAM_BLACK,oPC,BODY_NODE_CHEST),OBJECT_SELF,1.0); ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_IMPLOSION),oPC,1.0); AssignCommand(oPC,ActionJumpToLocation(lTele)); SpeakString(GetName(oPC)+" suddenly disappears in a flash of light!",TALKVOLUME_TALK); } else { SpeakString("The device flashes an angry red, a pulsing beam of light striking out towards you!"); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectBeam(VFX_BEAM_EVIL,oPC,BODY_NODE_CHEST),OBJECT_SELF,1.0); if(WillSave(oPC,18,SAVING_THROW_TYPE_CHAOS) == 0) { SpeakString(GetName(oPC)+" seems to change shape..."); ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_SUMMON_EPIC_UNDEAD),oPC,1.0); ApplyEffectToObject(DURATION_TYPE_PERMANENT,EffectPolymorph(POLYMORPH_TYPE_COW,TRUE),oPC,600.0); AssignCommand(oPC,ActionSpeakString("Moooo!")); } else { ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_PWSTUN),oPC,1.0); ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(d20(),DAMAGE_TYPE_NEGATIVE),oPC,0.0); } } }