public SP_ScoreBoard(Room Room) { newPacket(30032); addBlock(1); addBlock((Room.mode == (int)RoomMode.Explosive || Room.mode == (int)RoomMode.HeroMode ? Room.DerbRounds : 0)); addBlock((Room.mode == (int)RoomMode.Explosive || Room.mode == (int)RoomMode.HeroMode ? Room.NIURounds : 0)); RoomMode mode = (RoomMode)Room.mode; Log.WriteInfo(">---ScoreBrd-29 mode: " + mode); switch (mode) { case RoomMode.HeroMode: { addBlock(Room.derbHeroKill); addBlock(Room.niuHeroKill); Log.WriteInfo(">---ScoreBrd-60 derbHeroKill: " + Room.derbHeroKill + " niuHeroKill: " + Room.niuHeroKill); //>--- break; } case RoomMode.FFA: { addBlock(Room.ffakillpoints); addBlock(Room.highestkills); break; } case RoomMode.FourVersusFour: case RoomMode.TDM: case RoomMode.Conquest: case RoomMode.TotalWar: case RoomMode.BGExplosive: { addBlock(Room.KillsDerbaranLeft); addBlock(Room.KillsNIULeft); Log.WriteInfo(">---ScoreBrd-60 KillsDerbaranLeft: " + Room.KillsDerbaranLeft + " KillsNIULeft: " + Room.KillsNIULeft); //>--- break; } default: { addBlock(0); addBlock(0); break; } } // 30032 1 0 0 3 4 8 0 0 0 0 0 0 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 3 0 0 0 0 0 0 4 0 0 0 0 0 0 5 0 0 0 0 0 0 6 0 0 0 0 0 0 7 0 0 0 0 0 0 addBlock(Room.users.Count); Log.WriteInfo(">---ScoreBrd-87 users.Count: " + Room.users.Count); foreach (User RoomUser in Room.users.Values) { //5 0 0 0 0 0 0 //0 2 0 0 2 0 0 0 <-- AI //0 1 0 0 1 0 0 0 <-- AI addBlock(RoomUser.roomslot); addBlock(RoomUser.rKills); addBlock(RoomUser.rDeaths); addBlock(RoomUser.rFlags); addBlock(RoomUser.rPoints); addBlock(1); // Assist in chapter 1 } }
public List <IChatRoom> GetSessionChatRooms(string sessionId, RoomMode chatRoomMode) { return(ChatRooms.Where(i => i.ChatRoomMode == chatRoomMode && i.CurrentUsers.Any(j => j.SessionID == sessionId)).ToList()); }
public void GetOrCreateChatRoom(string nickName, string chatRoomId, string chatRoomName = "", RoomMode roomMode = RoomMode.Public) { long userId = 0; if (FrameworkSettings.CurrentUser != null) { userId = FrameworkSettings.CurrentUser.ID; } var chatUser = new ChatUser(Session.SessionID, nickName, userId); IChatRoom chatRoom = null; if (chatRoomId != "" && chatRoomId != "0" && chatRoomId != "null") { chatRoom = ChatManager.GetChatRoomByID(new Guid(chatRoomId)); if (chatRoom != null && chatRoom.ChatRoomMode != roomMode) { chatRoom = null; } } if (chatRoom == null) { if (chatRoomName == "") { if (roomMode == RoomMode.Public) { chatRoomName = _chatRoomName; } else if (roomMode == RoomMode.Private) { if (nickName != "") { chatRoomName = nickName; } else { chatRoomName = Session.SessionID; } } } chatRoom = ChatManager.GetOrCreateChatRoom(roomMode, chatRoomName, chatUser); } else { var foundUserInChatRoom = chatRoom.GetUserInChatRoom(chatUser); if (foundUserInChatRoom == null) { var foundUserWithNickName = chatRoom.CurrentUsers.FirstOrDefault(i => i.NickName == chatUser.NickName); /*if(foundUserWithNickName != null && FrameworkSettings.CurrentUser!= null && foundUserWithNickName.LoggedInUserID == FrameworkSettings.CurrentUser?.ID) * { * chatRoom.RemoveUser(foundUserWithNickName); * foundUserWithNickName = null; * }*/ if (foundUserWithNickName == null) { chatRoom.JoinChatRoom(chatUser); } else { chatRoom = null; } } else if (!foundUserInChatRoom.IsActive) { chatRoom.RemoveUser(foundUserInChatRoom); var chatRooms = ChatManager.GetChatRooms(roomMode).ToList(); foreach (var room in chatRooms) { room.RemoveUser(foundUserInChatRoom); if (room.CurrentUsers.Count == 0) { ChatManager.DeleteChatRoom(room.ChatRoomID); } } chatRoom = null; } } WriteJSON(StringHelper.ObjectToJson(chatRoom)); }