foreach (ConnectedUser User in ConnectedUsers) { ConnectedUser OldUser = (ConnectedUser)ConnectedUsers[User.Index]; if (OldUser.IP == ip) { OldUser.Hits++; OldUser.TimeOut = DefaultTimeOut; } else { ConnectedUser NewUser = new ConnectedUser(); NewUser.Index = LastUserID; NewUser.IP = ip; NewUser.GamerTag = DefaultGamerTag; NewUser.Hits = 0; NewUser.TimeOut = DefaultTimeOut; ConnectedUsers.Add(NewUser); LastUserID++; } if (OldUser.TimeOut <= 0) { ConnectedUsers.Remove(OldUser); } else { ConnectedUsers[User.Index] = OldUser; } }