public void AddOrUpdateRoom(int no,Room.ROOM_STATUS status,int cur,int max,bool isLocked,int map,string curMapAlias,int roomGoal,int roomTimelimit,int RoomWeaponOption,int RoomPing,int RoomScore1,int RoomScore2,int countryFilter,bool breakInto,int type,string title,bool dropItem,bool wanted,int squad,int squadCounter) { if (!dicRoom.ContainsKey(no)) { dicRoom.Add(no,new Room(isLocked,no,title,(Room.ROOM_TYPE)type,status,cur,max,map,curMapAlias,roomGoal,roomTimelimit,RoomWeaponOption,RoomPing,RoomScore1,RoomScore2,countryFilter,breakInto,wanted,dropItem,squad,squadCounter)); } else { dicRoom[no].Status = status; dicRoom[no].CurPlayer = cur; dicRoom[no].MaxPlayer = max; dicRoom[no].Locked = isLocked; dicRoom[no].map = map; dicRoom[no].CurMapAlias = curMapAlias; dicRoom[no].goal = roomGoal; dicRoom[no].timelimit = roomTimelimit; dicRoom[no].weaponOption = RoomWeaponOption; dicRoom[no].ping = RoomPing; dicRoom[no].score1 = RoomScore1; dicRoom[no].score2 = RoomScore2; dicRoom[no].CountryFilter = countryFilter; dicRoom[no].isBreakInto = breakInto; dicRoom[no].Type = (Room.ROOM_TYPE)type; dicRoom[no].isWanted = wanted; dicRoom[no].isDropItem = dropItem; dicRoom[no].Squad = squad; dicRoom[no].Title = title; dicRoom[no].SquadCounter = squadCounter; } }
public List <KeyValuePair <int,Room> > ToSortedList(Room.COLUMN sortedBy,bool ascending,Room.ROOM_TYPE type,Room.ROOM_STATUS status) { List <KeyValuePair <int,Room> > list = new List <KeyValuePair <int,Room> >(); if (BuildOption.Instance.Props.refreshRoomsManually) { foreach (KeyValuePair <int,Room> item in dicDumbRoom) { if ((type == Room.ROOM_TYPE.NONE || type == item.Value.Type) && (status == Room.ROOM_STATUS.NONE || status == item.Value.Status)) { list.Add(item); } } } else { foreach (KeyValuePair <int,Room> item2 in dicRoom) { if ((type == Room.ROOM_TYPE.NONE || type == item2.Value.Type) && (status == Room.ROOM_STATUS.NONE || status == item2.Value.Status)) { list.Add(item2); } } } list.Sort((KeyValuePair <int,Room> firstPair,KeyValuePair <int,Room> nextPair) => firstPair.Value.Compare(nextPair.Value,sortedBy,ascending)); return(list); }