GamerComponent.cs 861 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. namespace Model
  4. {
  5. public class GamerComponent : Component
  6. {
  7. private readonly Dictionary<long, Gamer> idGamers = new Dictionary<long, Gamer>();
  8. public void Add(Gamer gamer)
  9. {
  10. if (this.idGamers.Count > 1)
  11. {
  12. gamer.Team = 1;
  13. }
  14. this.idGamers.Add(gamer.Id, gamer);
  15. }
  16. public Gamer Get(long id)
  17. {
  18. this.idGamers.TryGetValue(id, out Gamer gamer);
  19. return gamer;
  20. }
  21. public void Remove(long id)
  22. {
  23. this.idGamers.Remove(id);
  24. }
  25. public int Count
  26. {
  27. get
  28. {
  29. return this.idGamers.Count;
  30. }
  31. }
  32. public Gamer[] GetAll()
  33. {
  34. return this.idGamers.Values.ToArray();
  35. }
  36. public override void Dispose()
  37. {
  38. if (this.Id == 0)
  39. {
  40. return;
  41. }
  42. base.Dispose();
  43. foreach (Gamer gamer in this.idGamers.Values)
  44. {
  45. gamer.Dispose();
  46. }
  47. }
  48. }
  49. }