public List <string> GetMapItems() { List <string> packets = new List <string>(); Sessions.Where(s => s.Character != null && !s.Character.InvisibleGm).ToList().ForEach(s => { s.Character.Mates.Where(m => m.IsTeamMember).ToList().ForEach(m => packets.Add(m.GenerateIn())); }); // TODO: Parallelize getting of items of mapinstance Portals.ForEach(s => packets.Add(s.GenerateGp())); ScriptedInstances.Where(s => s.Type == ScriptedInstanceType.TimeSpace).ToList().ForEach(s => packets.Add(s.GenerateWp())); Monsters.ForEach(s => { packets.Add(s.GenerateIn()); if (s.IsBoss) { packets.Add(s.GenerateBoss()); } }); Npcs.ForEach(s => packets.Add(s.GenerateIn())); packets.AddRange(GenerateNPCShopOnMap()); Parallel.ForEach(DroppedList.GetAllItems(), session => packets.Add(session.GenerateIn())); Buttons.ForEach(s => packets.Add(s.GenerateIn())); packets.AddRange(GenerateUserShops()); packets.AddRange(GeneratePlayerShopOnMap()); return(packets); }
public List <string> GetMapItems() { List <string> packets = new List <string>(); Portals.ForEach(s => packets.Add(s.GenerateGp())); ScriptedInstances.Where(s => s.Type == ScriptedInstanceType.TimeSpace).ToList().ForEach(s => packets.Add(s.GenerateWp())); Monsters.ForEach(s => { packets.Add(s.GenerateIn()); if (s.IsBoss) { packets.Add(s.GenerateBoss()); } }); Npcs.ForEach(s => { packets.Add(s.GenerateIn()); }); packets.AddRange(GenerateNpcShopOnMap()); Parallel.ForEach(DroppedList.Select(s => s.Value), session => { packets.Add(session.GenerateIn()); }); Buttons.ForEach(s => { packets.Add(s.GenerateIn()); }); packets.AddRange(GenerateUserShops()); packets.AddRange(GeneratePlayerShopOnMap()); return(packets); }
public List <string> GetMapItems() { List <string> packets = new List <string>(); Sessions.Where(s => s.Character?.InvisibleGm == false).ToList().ForEach(s => s.Character.Mates.Where(m => m.IsTeamMember).ToList().ForEach(m => packets.Add(m.GenerateIn()))); Portals.ForEach(s => packets.Add(s.GenerateGp())); ScriptedInstances.Where(s => s.Type == ScriptedInstanceType.TimeSpace).ToList().ForEach(s => packets.Add(s.GenerateWp())); Monsters.ForEach(s => { packets.Add(s.GenerateIn()); if (s.IsBoss) { packets.Add(s.GenerateBoss()); } }); Npcs.ForEach(s => packets.Add(s.GenerateIn())); packets.AddRange(GenerateNPCShopOnMap()); DroppedList.ForEach(s => packets.Add(s.GenerateIn())); Buttons.ForEach(s => packets.Add(s.GenerateIn())); packets.AddRange(GenerateUserShops()); packets.AddRange(GeneratePlayerShopOnMap()); return(packets); }