void main() { object oPC= GetLastUsedBy(); object immortal = GetNearestObjectByTag("immortal2"); if (immortal != OBJECT_INVALID){ ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(1000, DAMAGE_TYPE_MAGICAL, DAMAGE_POWER_PLUS_FIVE), oPC); return;} object crown = GetItemPossessedBy(oPC, "ImmortalCrown2"); if (crown == OBJECT_INVALID){ ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(1000, DAMAGE_TYPE_MAGICAL, DAMAGE_POWER_PLUS_FIVE), oPC); return;} AssignCommand(oPC, DestroyObject(crown)); object area1 = GetArea(oPC); object party = GetFirstFactionMember(oPC); while (party != OBJECT_INVALID){ object area2 = GetArea(party); if (area1==area2){ ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectHeal(200), party); ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectVisualEffect(VFX_DUR_PARALYZED), party); location sage = GetLocation(GetWaypointByTag("sage1")); AssignCommand(party, JumpToLocation(sage)); string immortalname; immortalname = ">>> ID: " + GetPCPlayerName( party ) + "; Name: "+ GetName( party ) + "; CD Key:" + GetPCPublicCDKey( party ); SetCampaignInt("PoA", "immortalname", 2, party); } party = GetNextFactionMember(oPC); } object oWarn = GetFirstPC(); while ((oWarn != OBJECT_INVALID)) { int state = GetCampaignInt("PoA", "immortalname", oWarn); if (oWarn != oPC && state != 2){ location lVis = GetLocation(oWarn); DelayCommand(4.0, SendMessageToPC(oWarn, "The Immortal Crown Has Been Destroyed!!!!!!!!.")); ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_FNF_TIME_STOP), lVis, 5.0); DelayCommand(5.0, SendMessageToPC(oWarn, "Suddenly, You feel The Life Energy Being Sucked From You!!!!!.")); ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(1000, DAMAGE_TYPE_MAGICAL, DAMAGE_POWER_PLUS_FIVE), oWarn); ApplyEffectAtLocation(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_FNF_IMPLOSION), lVis, 5.0); } oWarn = GetNextPC(); } }