public IEnumerable <Client> GetClients() { foreach (MapPlayer playerOnMap in PlayersOnMap.GetPlayers()) { //Client client = ClientManager.FindClientFromCharID(playerOnMap); if (playerOnMap.Client != null && playerOnMap.Client.IsPlaying() && playerOnMap.Client.Player.MapID == this.MapID) { yield return(playerOnMap.Client); } } }
//private void Update(MapBase o) //{ // Type type = o.GetType(); // while (type != null) { // UpdateForType(type, o); // type = type.BaseType; // } //} //private void UpdateForType(Type type, MapBase source) //{ // FieldInfo[] myObjectFields = type.GetFields( // BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); // foreach (FieldInfo fi in myObjectFields) { // fi.SetValue(this, fi.GetValue(source)); // } //} public void RemakePlayersList() { PlayersOnMap.Clear(); foreach (Client i in ClientManager.GetClients()) { if (i.IsPlaying() && i.Player.MapID == this.MapID) { PlayersOnMap.Add(i.Player.CharID); } } }
public void RemakePlayersList() { PlayersOnMap.Clear(); PlayersOnMap.Add(owner.CharID); }