public bool IsPartnerContact() { if (null != PreventEnroll && PreventEnroll.Value) { var partnerEncounters = Encounters .Where(x => x.EncounterTypeId == new Guid("B262FDA4-877F-11E7-BB31-BE2E44B68B34") || x.EncounterTypeId == new Guid("B262FDA4-877F-11E7-BB31-BE2E44B69B34")) .ToList(); return(partnerEncounters.Count > 0); } return(false); }
public bool IsPos() { var finalResultEnocunters = Encounters.Where(x => x.EncounterTypeId == new Guid("b262f4ee-852f-11e7-bb31-be2e44b06b34")).ToList(); var obs = new List <ObsFinalTestResult>(); foreach (var f in finalResultEnocunters) { obs.AddRange(f.ObsFinalTestResults); } if (obs.Count > 0) { return(obs.Any(x => x.FinalResult == new Guid("B25EFD8A-852F-11E7-BB31-BE2E44B06B34"))); } return(false); }
public void CheckQueue() { if (Queue.Count == 0) { return; } bool message = false; List <Mobile> copy = new List <Mobile>(Queue.Keys); for (int i = 0; i < copy.Count; i++) { Mobile m = copy[i]; if (m.Map != Map.TerMur || m.NetState == null) { RemoveFromQueue(m); if (i == 0) { message = true; } continue; } foreach (ShadowguardEncounter inst in Encounters.Where(inst => inst.PartyLeader == m)) { if (i == 0) { message = true; } RemoveFromQueue(m); continue; } if (Queue.Count > 0) { message = true; Timer.DelayCall(TimeSpan.FromMinutes(2), () => { EncounterType type = Queue[m]; ShadowguardInstance instance = GetAvailableInstance(type); if (instance != null && instance.TryBeginEncounter(m, true, type)) { RemoveFromQueue(m); } }); } break; } if (message && Queue.Count > 0) { ColUtility.For(Queue.Keys, (i, mob) => { Party p = Party.Get(mob); if (p != null) { p.Members.ForEach(info => info.Mobile.SendLocalizedMessage(1156190, i + 1 > 1 ? i.ToString() : "next")); } //A Shadowguard encounter has opened. You are currently ~1_NUM~ in the //queue. If you are next, you may proceed to the entry stone to join. else { mob.SendLocalizedMessage(1156190, i + 1 > 1 ? i.ToString() : "next"); } }); } }