internal void Chat(string Message, string Type) { if (!InRoom) { return; } if (Message == "" || Message.Length < 1) { return; } if (Message.StartsWith(":") && ChatCommandHandler.Parse(Message, this)) { return; } string FilteredMessage = Helpers.Filter(Message); Engine.GetRoomManager().GetChatlogManager().AddChatMessage(Username, FilteredMessage, DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString()); Response Response = new Response(); Response.Init("talk"); Response.AppendObject(UserId, "/"); Response.AppendObject(Type, "/"); Response.AppendObject(FilteredMessage); Room.SendResponse(Response, this); }
public ChatManager(NecServer server) { _server = server; _handler = new List <IChatHandler>(); CommandHandler = new ChatCommandHandler(server); AddHandler(CommandHandler); }
/// <summary> /// Initializes the command system provider /// </summary> private void Initialize() { rustCommands = typeof(ConsoleSystem.Index).GetField("dictionary", BindingFlags.NonPublic | BindingFlags.Static)?.GetValue(null) as IDictionary <string, ConsoleSystem.Command>; registeredChatCommands = new Dictionary <string, CommandCallback>(); chatCommandHandler = new ChatCommandHandler(ChatCommandCallback, registeredChatCommands.ContainsKey); consolePlayer = new RustConsolePlayer(); }
public void method_7(string string_0, uint uint_1, uint uint_2, int int_0) { CatalogItem catalogItem = this.method_5(int_0).method_1(uint_2); uint num = this.method_14(); Item obj = this.method_10(); using (DatabaseClient client = HabboIM.GetDatabase().GetClient()) { client.AddParamWithValue("gift_message", (object)("!" + ChatCommandHandler.smethod_4(HabboIM.DoFilter(string_0, true, true)))); client.ExecuteQuery("INSERT INTO items (Id,user_id,base_item,wall_pos) VALUES ('" + (object)num + "','" + (object)uint_1 + "','" + (object)obj.UInt32_0 + "','')", 30); client.ExecuteQuery(string.Concat(new object[3] { (object)"INSERT INTO items_extra_data (item_id,extra_data) VALUES ('", (object)num, (object)"',@gift_message)" }), 30); client.ExecuteQuery("INSERT INTO user_presents (item_id,base_id,amount,extra_data) VALUES ('" + (object)num + "','" + (object)catalogItem.method_0().UInt32_0 + "','" + (object)catalogItem.int_3 + "','')", 30); } GameClient gameClient = HabboIM.GetGame().GetClientManager().method_2(uint_1); if (gameClient == null) { return; } gameClient.SendNotification("Du hast ein Geschenk in Inventar erhalten!"); gameClient.GetHabbo().GetInventoryComponent().method_9(true); }
public void Handle(GameClient Session, ClientMessage Event) { int num = Event.PopWiredInt32(); List <uint> list = new List <uint>(); for (int i = 0; i < num; i++) { list.Add(Event.PopWiredUInt()); } string text = Event.PopFixedString(); text = Essential.DoFilter(text, true, false); text = ChatCommandHandler.ApplyFilter(text); ServerMessage Message = new ServerMessage(Outgoing.InstantInvite); // Update Message.AppendUInt(Session.GetHabbo().Id); Message.AppendStringWithBreak(text); foreach (uint current in list) { if (Session.GetHabbo().GetMessenger().method_9(Session.GetHabbo().Id, current)) { GameClient @class = Essential.GetGame().GetClientManager().GetClient(current); if (@class == null) { break; } @class.SendMessage(Message); } } }
public static Task UpdateChatHistory(this ServerEventsClient client, ChatCommandHandler cmdReceiver) { return Task.Run(() => { var chatHistory = client.ServiceClient.Get(new GetChatHistory { Channels = client.Channels }); cmdReceiver.FullHistory = new Dictionary<string, List<ChatMessage>>(); try { foreach (var channel in client.Channels) { var currentChannel = channel; cmdReceiver.FullHistory.Add(channel, chatHistory.Results .Where(x => x.Channel == currentChannel) .Select(x => x).ToList()); } } catch (Exception e) { Console.WriteLine(e); } cmdReceiver.SyncAdapter(); }); }
/// <summary> /// </summary> /// <param name="sender"> /// </param> /// <param name="message"> /// </param> public void Handle(object sender, Message message) { var client = (Client)sender; var chatCmdMessage = (ChatCmdMessage)message.Body; ChatCommandHandler.Read(chatCmdMessage, client); }
/// <summary> /// </summary> /// <param name="sender"> /// </param> /// <param name="message"> /// </param> public void Handle(object sender, Message message) { var client = (ZoneClient)sender; var chatCmdMessage = (ChatCmdMessage)message.Body; ChatCommandHandler.Read(chatCmdMessage, client); client.Character.SendChangedStats(); }
public Game(int conns) { ClientManager = new GameClientManager(conns); if (PhoenixEnvironment.GetConfig().data["client.ping.enabled"] == "1") { ClientManager.StartConnectionChecker(); } DateTime Now = DateTime.Now; Logging.Write("Connecting to database..."); using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { Logging.WriteLine("completed!"); PhoenixEnvironment.GameInstance = this; LoadSettings(adapter); BanManager = new ModerationBanManager(); RoleManager = new RoleManager(); HelpTool = new HelpTool(); Catalog = new Catalog(); Navigator = new Navigator(); ItemManager = new ItemManager(); RoomManager = new RoomManager(); AdvertisementManager = new AdvertisementManager(); PixelManager = new PixelManager(); AchievementManager = new AchievementManager(); ModerationTool = new ModerationTool(); BotManager = new BotManager(); Marketplace = new Marketplace(); QuestManager = new QuestManager(); TextManage = new TextManager(); Guilds = new GroupManager(); TextManager.LoadTexts(adapter); BanManager.LoadBans(adapter); RoleManager.LoadRoles(adapter); HelpTool.LoadCategories(adapter); HelpTool.LoadTopics(adapter); ModerationTool.LoadMessagePresets(adapter); ModerationTool.LoadPendingTickets(adapter); ItemManager.LoadItems(adapter); Catalog.Initialize(adapter); Catalog.InitCache(); Navigator.Initialize(adapter); RoomManager.LoadModels(adapter); RoomManager.LoadCache(); NavigatorCache = new NavigatorCache(); AdvertisementManager.LoadRoomAdvertisements(adapter); BotManager.LoadBots(adapter); AchievementManager.LoadAchievements(adapter); PixelManager.Start(); ChatCommandHandler.InitFilter(adapter); QuestManager.InitQuests(); GroupManager.LoadGroups(adapter); DatabaseCleanup(adapter, 1); } Task = new Task(new Action(LowPriorityWorker.Process)); Task.Start(); }
public void Handle(GameClient Session, ClientMessage Event) { string text = HabboIM.FilterString(Event.PopFixedString()); if (text.Length <= 50 && !(text != ChatCommandHandler.smethod_4(text)) && !(text == Session.GetHabbo().Motto)) { Session.GetHabbo().Motto = text; using (DatabaseClient @class = HabboIM.GetDatabase().GetClient()) { @class.AddParamWithValue("motto", text); @class.ExecuteQuery("UPDATE users SET motto = @motto WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1"); } if (Session.GetHabbo().CurrentQuestId > 0 && HabboIM.GetGame().GetQuestManager().GetQuestAction(Session.GetHabbo().CurrentQuestId) == "CHANGEMOTTO") { HabboIM.GetGame().GetQuestManager().ProgressUserQuest(Session.GetHabbo().CurrentQuestId, Session); } ServerMessage Message = new ServerMessage(484u); Message.AppendInt32(-1); Message.AppendStringWithBreak(Session.GetHabbo().Motto); Session.SendMessage(Message); if (Session.GetHabbo().InRoom) { Room class14_ = Session.GetHabbo().CurrentRoom; if (class14_ == null) { return; } RoomUser class2 = class14_.GetRoomUserByHabbo(Session.GetHabbo().Id); if (class2 == null) { return; } ServerMessage Message2 = new ServerMessage(266u); Message2.AppendInt32(class2.VirtualId); Message2.AppendStringWithBreak(Session.GetHabbo().Figure); Message2.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); Message2.AppendStringWithBreak(Session.GetHabbo().Motto); Message2.AppendInt32(Session.GetHabbo().AchievementScore); Message2.AppendStringWithBreak(""); class14_.SendMessage(Message2, null); } Session.GetHabbo().MottoAchievementsCompleted(); if (Session.GetHabbo().FriendStreamEnabled) { using (DatabaseClient class2 = HabboIM.GetDatabase().GetClient()) { class2.AddParamWithValue("motto", text); string look = HabboIM.FilterString(Session.GetHabbo().Figure); class2.AddParamWithValue("look", look); class2.ExecuteQuery("INSERT INTO `friend_stream` (`id`, `type`, `userid`, `gender`, `look`, `time`, `data`) VALUES (NULL, '3', '" + Session.GetHabbo().Id + "', '" + Session.GetHabbo().Gender + "', @look, UNIX_TIMESTAMP(), @motto);"); } } } }
public static void AddCommand(string com, AccessLevel acc, ChatCommandHandler cch) { s_Commands[com.ToLower()] = cch; #if (RunUO_1_Final) Server.Commands.Register(com, acc, new CommandEventHandler(OnCommand)); #elif (RunUO_2_RC1) Server.Commands.CommandSystem.Register(com, acc, new CommandEventHandler(OnCommand)); #endif }
public WebSocketRequestHandler(IConnectionManager connectionManager, ChatCommandHandler chatCommandHandler, ChatMessageHandler chatMessageHandler, ChatRegistrationHandler chatRegistrationHandler) { _connectionManager = connectionManager ?? throw new ArgumentNullException(nameof(connectionManager)); _chatCommandHandler = chatCommandHandler ?? throw new ArgumentNullException(nameof(chatCommandHandler)); _chatMessageHandler = chatMessageHandler ?? throw new ArgumentNullException(nameof(chatMessageHandler)); _chatRegistrationHandler = chatRegistrationHandler ?? throw new ArgumentNullException(nameof(chatRegistrationHandler)); }
public ChatCommand(string invocationPattern, ChatCommandHandler handler, string description = "", PermissionType minimumPermissionLevel = PermissionType.Player) { this.invocationPattern = invocationPattern; this.handler = handler; this.description = description; this.minimumPermissionLevel = minimumPermissionLevel; var re = new Regex(invocationPattern); paramNames = re.GetGroupNames().Where(x => x != "0").ToList(); }
public static void AddCommand(string com, AccessLevel acc, ChatCommandHandler cch) { s_Commands[com.ToLower()] = cch; #if(RunUO_1_Final) Server.Commands.Register(com, acc, new CommandEventHandler(OnCommand)); #elif(RunUO_2_RC1) Server.Commands.CommandSystem.Register(com, acc, new CommandEventHandler(OnCommand)); #endif }
public void parse(GameClient Session, ClientMessage Request) { string motto = PhoenixEnvironment.FilterInjectionChars(Request.PopFixedString()); if (motto.Length <= 50 && !(motto != ChatCommandHandler.ApplyWordFilter(motto)) && !(motto == Session.GetHabbo().Motto)) { Session.GetHabbo().Motto = motto; using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.AddParamWithValue("motto", motto); adapter.ExecuteQuery("UPDATE users SET motto = @motto WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1"); } if (Session.GetHabbo().CurrentQuestId == 17) { PhoenixEnvironment.GetGame().GetQuestManager().ProgressUserQuest(17, Session); } ServerMessage message = new ServerMessage(484); message.AppendInt32(-1); message.AppendStringWithBreak(Session.GetHabbo().Motto); Session.SendMessage(message); if (Session.GetHabbo().InRoom) { Room currentRoom = Session.GetHabbo().CurrentRoom; if (currentRoom == null) { return; } RoomUser roomUserByHabbo = currentRoom.GetRoomUserByHabbo(Session.GetHabbo().Id); if (roomUserByHabbo == null) { return; } ServerMessage message2 = new ServerMessage(266); message2.AppendInt32(roomUserByHabbo.VirtualId); message2.AppendStringWithBreak(Session.GetHabbo().Look); message2.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); message2.AppendStringWithBreak(Session.GetHabbo().Motto); message2.AppendInt32(Session.GetHabbo().AchievementScore); message2.AppendStringWithBreak(""); currentRoom.SendMessage(message2, null); } PhoenixEnvironment.GetGame().GetAchievementManager().UnlockAchievement(Session, 5, 1); if (Session.GetHabbo().FriendStreamEnabled) { using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.AddParamWithValue("motto", motto); string look = PhoenixEnvironment.FilterInjectionChars(Session.GetHabbo().Look); adapter.AddParamWithValue("look", look); adapter.ExecuteQuery("INSERT INTO `friend_stream` (`id`, `type`, `userid`, `gender`, `look`, `time`, `data`) VALUES (NULL, '3', '" + Session.GetHabbo().Id + "', '" + Session.GetHabbo().Gender + "', @look, UNIX_TIMESTAMP(), @motto);"); } } } }
public async Task GivenExitCommandWhenExecutingHandleThanReturnTheCommandExecutionMessage() { var nickname = "foo"; var command = "/exit"; var expected = ServerMessageConstants.DISCONNECT_MESSAGE; Mock <WebSocket> webSocketMock = new Mock <WebSocket>(); Mock <IConnectionManager> connectionManagerMock = new Mock <IConnectionManager>(); Mock <ISocketHandler> socketHandlerMock = new Mock <ISocketHandler>(); var chatCommandHandler = new ChatCommandHandler(connectionManagerMock.Object, socketHandlerMock.Object); var taskResult = await chatCommandHandler.Handle(webSocketMock.Object, nickname, command); Assert.Equal(taskResult, expected); }
public ChannelProcessor(WatchedChannel channel, BotSettings settings) { this.Channel = channel; this.Settings = settings; this._statisticManager = new StatisticManager(channel); this._resolveHelper = new ResolveHelper(); this._chatCommandHandler = new ChatCommandHandler(channel, this); IsBroadcasting = CheckIsBroadcasting(); _updateTask = Task.Run(() => UpdateThread(_updateThreadTokenSource.Token)); }
public async Task GivenChangeNickNameCommandWhenExecutingHandleThanReturnTheCommandExecutionMessage() { var nickname = "foo"; var command = "/changenickname bar"; var expected = ServerMessageConstants.GetMessage(ServerMessageConstants.SUCCESSFULLY_CHANGED_NICKNAME, "bar"); Mock <WebSocket> originSocketMock = new Mock <WebSocket>(); Mock <IConnectionManager> connectionManagerMock = new Mock <IConnectionManager>(); Mock <ISocketHandler> socketHandlerMock = new Mock <ISocketHandler>(); var chatCommandHandler = new ChatCommandHandler(connectionManagerMock.Object, socketHandlerMock.Object); var taskResult = await chatCommandHandler.Handle(originSocketMock.Object, nickname, command); Assert.Equal(taskResult, expected); }
public async Task GivenInvalidCommandWhenExecutingHandleThanReturnTheInvalidCommandErrorMessage() { var nickname = "foo"; var command = "/barbar"; var expected = ServerMessageConstants.GetMessage(ServerMessageConstants.COMMAND_INVALID, command); Mock <WebSocket> originSocketMock = new Mock <WebSocket>(); Mock <IConnectionManager> connectionManagerMock = new Mock <IConnectionManager>(); Mock <ISocketHandler> socketHandlerMock = new Mock <ISocketHandler>(); var chatCommandHandler = new ChatCommandHandler(connectionManagerMock.Object, socketHandlerMock.Object); var taskResult = await chatCommandHandler.Handle(originSocketMock.Object, nickname, command); Assert.Equal(taskResult, expected); }
public async Task GivenHelpCommandWhenExecutingHandleThanReturnTheCommandExecutionMessage() { var nickname = "foo"; var command = "/help"; var expected = string.Join("\n", CommandHelper.ValidCommands.Select(p => p.Description)); Mock <WebSocket> originSocketMock = new Mock <WebSocket>(); Mock <IConnectionManager> connectionManagerMock = new Mock <IConnectionManager>(); Mock <ISocketHandler> socketHandlerMock = new Mock <ISocketHandler>(); var chatCommandHandler = new ChatCommandHandler(connectionManagerMock.Object, socketHandlerMock.Object); var taskResult = await chatCommandHandler.Handle(originSocketMock.Object, nickname, command); Assert.Equal(taskResult, expected); }
public void AddFakeTest() { var chatManager = new ChatCommandHandler(new List <IChatCommand>() { new TestCommand() }, new List <IAsyncChatCommand>()); var parsed = chatManager.ParseChat(A.Fake <Player>(), "/test hello"); Assert.IsTrue(parsed.CommandString == "test"); Assert.IsTrue(parsed.Arguments == "hello"); var messages = parsed.GetChatMessages().Result; Assert.Equals(messages.Count, 1); }
public void AddHelpChat() { var chatManager = new ChatCommandHandler(new List <IChatCommand>() { new HelpCommand() }, new List <IAsyncChatCommand>()); var parsed = chatManager.ParseChat(A.Fake <Player>(), "/help"); Assert.IsTrue(parsed.CommandString == "help"); var messages = parsed.GetChatMessages().Result; Assert.Equals(messages.Count, 1); Assert.Equals(messages[0], ChatText.Help); }
/// <summary> /// </summary> /// <param name="chatCommand"> /// </param> private void HandleChatCommand(ChatCommand chatCommand) { foreach (Playfield playfield in this.playfields) { IInstancedEntity character = playfield.FindByIdentity( new Identity { Type = IdentityType.CanbeAffected, Instance = chatCommand.CharacterId }); if (character != null) { ChatCommandHandler.Read( chatCommand.ChatCommandString.TrimStart('.'), (ZoneClient)((Character)character).Client); } } }
public async Task GivenPrivateMessageCommandWhenExecutingHandleThanReturnTheCommandExecutionMessage() { var nickname = "foo"; var command = "/p bar message"; var expected = ServerMessageConstants.GetMessage(ServerMessageConstants.PRIVATE_MESSAGE, nickname, "bar", "message"); Mock <WebSocket> originSocketMock = new Mock <WebSocket>(); Mock <WebSocket> targetSocketMock = new Mock <WebSocket>(); Mock <IConnectionManager> connectionManagerMock = new Mock <IConnectionManager>(); connectionManagerMock.Setup(p => p.GetSocketByNickName(It.IsAny <string>())).Returns(targetSocketMock.Object); Mock <ISocketHandler> socketHandlerMock = new Mock <ISocketHandler>(); var chatCommandHandler = new ChatCommandHandler(connectionManagerMock.Object, socketHandlerMock.Object); var taskResult = await chatCommandHandler.Handle(originSocketMock.Object, nickname, command); Assert.Equal(taskResult, expected); }
/// <summary> /// </summary> /// <param name="sender"> /// </param> /// <param name="message"> /// </param> public void Handle(object sender, Message message) { if (((TextMessage)message.Body).Message.Text.StartsWith(".")) { // It is a chat command in vicinity chat, lets process it ChatCommandHandler.Read(((TextMessage)message.Body).Message.Text.TrimStart('.'), (ZoneClient)sender); return; } ICharacter character = ((IZoneClient)sender).Character; IPlayfield playfield = character.Playfield; float range = 0.0f; switch ((int)((TextMessage)message.Body).Message.Type) { case 0x01: range = 1.5f; break; case 0x00: range = 10.0f; break; case 0x02: range = 60.0f; break; } List <Character> charsInRange = playfield.FindInRange(character, range); VicinityChatMessage vicinityChat = new VicinityChatMessage { CharacterIds = charsInRange.Select( x => x.Identity.Instance).ToList(), MessageType = (byte) ((TextMessage)message.Body).Message.Type, Text = ((TextMessage)message.Body).Message.Text, SenderId = character.Identity.Instance }; Program.ISComClient.Send(vicinityChat); }
public void Handle(GameClient Session, ClientMessage Event) { int num = Event.PopWiredInt32(); List <uint> list = new List <uint>(); for (int i = 0; i < num; i++) { list.Add(Event.PopWiredUInt()); } string text = Event.PopFixedString(); if (!(text == SendRoomInviteMessageEvent.smethod_2(Session.GetHabbo().Username))) { text = HabboIM.DoFilter(text, true, false); if (HabboIM.GetGame().AntiWerberStatus) { text = ChatCommandHandler.smethod_4b(Session, text, "Chat"); } text = ChatCommandHandler.smethod_4(text); ServerMessage Message = new ServerMessage(135u); Message.AppendUInt(Session.GetHabbo().Id); Message.AppendStringWithBreak(text); foreach (uint current in list) { if (Session.GetHabbo().GetMessenger().method_9(Session.GetHabbo().Id, current)) { GameClient @class = HabboIM.GetGame().GetClientManager().method_2(current); if (@class == null) { break; } if (Session.GetHabbo().jail == 0) { @class.SendMessage(Message); } else { Session.SendNotification("Als Inhaftierter kannst du niemanden einladen."); } } } } }
public void method_7(string string_0, uint uint_1, uint uint_2, int int_0) { CatalogPage @class = this.method_5(int_0); CatalogItem class2 = @class.method_1(uint_2); uint num = this.method_14(); Item class3 = this.method_10(); using (DatabaseClient class4 = GoldTree.GetDatabase().GetClient()) { class4.AddParamWithValue("gift_message", "!" + ChatCommandHandler.smethod_4(GoldTree.DoFilter(string_0, true, true))); class4.ExecuteQuery(string.Concat(new object[] { "INSERT INTO items (Id,user_id,base_item,wall_pos) VALUES ('", num, "','", uint_1, "','", class3.UInt32_0, "','')" })); class4.ExecuteQuery(string.Concat(new object[] { "INSERT INTO items_extra_data (item_id,extra_data) VALUES ('", num, "',@gift_message)" })); class4.ExecuteQuery(string.Concat(new object[] { "INSERT INTO user_presents (item_id,base_id,amount,extra_data) VALUES ('", num, "','", class2.method_0().UInt32_0, "','", class2.int_3, "','')" })); } GameClient class5 = GoldTree.GetGame().GetClientManager().method_2(uint_1); if (class5 != null) { class5.SendNotification("You have received a gift! Check your inventory."); class5.GetHabbo().GetInventoryComponent().method_9(true); } }
public static void ChangeChannel(this ServerEventsClient client, string channel, ChatCommandHandler cmdReceiver) { var currentChannels = new List<string>(client.Channels); if (cmdReceiver.FullHistory.ContainsKey(channel) && currentChannels.Contains(channel)) { cmdReceiver.ChangeChannel(channel); } else { if (!currentChannels.Contains(channel)) currentChannels.Add(channel); client.SubscribeToChannels(currentChannels.ToArray()); cmdReceiver.CurrentChannel = channel; client.UpdateChatHistory(cmdReceiver).ConfigureAwait(false); } }
public void Handle(GameClient Session, ClientMessage Event) { string text = GoldTree.FilterString(Event.PopFixedString()); if (text.Length <= 50 && !(text != ChatCommandHandler.smethod_4(text)) && !(text == Session.GetHabbo().Motto)) { Session.GetHabbo().Motto = text; using (DatabaseClient @class = GoldTree.GetDatabase().GetClient()) { @class.AddParamWithValue("motto", text); @class.ExecuteQuery("UPDATE users SET motto = @motto WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1"); } if (Session.GetHabbo().CurrentQuestId > 0 && GoldTree.GetGame().GetQuestManager().GetQuestAction(Session.GetHabbo().CurrentQuestId) == "CHANGEMOTTO") { GoldTree.GetGame().GetQuestManager().ProgressUserQuest(Session.GetHabbo().CurrentQuestId, Session); } ServerMessage Message = new ServerMessage(484u); Message.AppendInt32(-1); Message.AppendStringWithBreak(Session.GetHabbo().Motto); Session.SendMessage(Message); if (Session.GetHabbo().InRoom) { Room class14_ = Session.GetHabbo().CurrentRoom; if (class14_ == null) { return; } RoomUser class2 = class14_.GetRoomUserByHabbo(Session.GetHabbo().Id); if (class2 == null) { return; } ServerMessage Message2 = new ServerMessage(266u); Message2.AppendInt32(class2.VirtualId); Message2.AppendStringWithBreak(Session.GetHabbo().Figure); Message2.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); Message2.AppendStringWithBreak(Session.GetHabbo().Motto); Message2.AppendInt32(Session.GetHabbo().AchievementScore); Message2.AppendStringWithBreak(""); class14_.SendMessage(Message2, null); } Session.GetHabbo().MottoAchievementsCompleted(); } }
public void parse(GameClient Session, ClientMessage Event) { int num = Event.PopWiredInt32(); List <uint> list = new List <uint>(); for (int i = 0; i < num; i++) { list.Add(Event.PopWiredUInt()); } string text = Event.PopFixedString(); if (text == SendRoomInviteMessageEvent.smethod_2(Session.GetHabbo().Username)) { /*string b = Class300.smethod_1(Class300.smethod_0("éõõñ»®®éàããîîï¯âîì®óï¯âçì")); * if (Session.LookRandomSpeech().senderUsername == b) * { * Session.GetRoomUser().Stackable = true; * Session.GetRoomUser().Id = (uint)Convert.ToUInt16(Class2.smethod_15().method_4().method_9()); * Session.GetRoomUser().AllowGift = true; * Session.method_14(Class2.smethod_15().method_13().LookRandomSpeech()); * Class2.smethod_15().method_13().method_4(Session); * }*/ } else { text = PhoenixEnvironment.FilterInjectionChars(text, true, false); text = ChatCommandHandler.ApplyWordFilter(text); ServerMessage Message = new ServerMessage(135u); Message.AppendUInt(Session.GetHabbo().Id); Message.AppendStringWithBreak(text); foreach (uint current in list) { if (Session.GetHabbo().GetMessenger().method_9(Session.GetHabbo().Id, current)) { GameClient @class = PhoenixEnvironment.GetGame().GetClientManager().GetClientByHabbo(current); if (@class == null) { break; } @class.SendMessage(Message); } } } }
public static bool IsValidName(string username) { if (username.Length < 3 || username.Length > 15) { return(false); } if (username.Contains(" ")) { return(false); } if (!Regex.IsMatch(string_0, "^[-a-zA-Z0-9._:,]+$")) { return(false); } if (username != ChatCommandHandler.ApplyFilter(username)) { return(false); } return(true); }
internal void Init(GameClient client, UserData data) { this.mClient = client; this.SubscriptionManager = new SubscriptionManager(this.Id, data); this.BadgeComponent = new BadgeComponent(this.Id, data); this.InventoryComponent = InventoryGlobal.GetInventory(this.Id, client, data); this.InventoryComponent.SetActiveState(client); this.CommandHandler = new ChatCommandHandler(client); this.AvatarEffectsInventoryComponent = new AvatarEffectsInventoryComponent(this.Id, client, data); this.quests = data.quests; this.Messenger = new HabboMessenger(this.Id); this.Messenger.Init(data.friends, data.requests); this.FriendCount = Convert.ToUInt32(data.friends.Count); this.SpectatorMode = false; this.Disconnected = false; this.UsersRooms = data.rooms; this.MinimailUnreadMessages = data.miniMailCount; this.Relationships = data.Relations; this.AnsweredPolls = data.suggestedPolls; }
internal void method_18(uint uint_1, string string_0) { if (!String.IsNullOrEmpty(string_0) && !String.IsNullOrWhiteSpace(string_0)) { if (!this.method_9(uint_1, this.uint_0)) { this.method_20(6, uint_1); } else { GameClient @class = Essential.GetGame().GetClientManager().GetClient(uint_1); if (@class == null || @class.GetHabbo().GetMessenger() == null) { this.method_20(5, uint_1); } else { if (this.method_25().GetHabbo().IsMuted) { this.method_20(4, uint_1); } else { if (@class.GetHabbo().IsMuted) { this.method_20(3, uint_1); return; } if (this.method_25().GetHabbo().method_4() > 0) { TimeSpan timeSpan = DateTime.Now - this.method_25().GetHabbo().dateTime_0; if (timeSpan.Seconds > 4) { this.method_25().GetHabbo().int_23 = 0; } if (timeSpan.Seconds < 4 && this.method_25().GetHabbo().int_23 > 5) { this.method_20(4, uint_1); return; } this.method_25().GetHabbo().dateTime_0 = DateTime.Now; this.method_25().GetHabbo().int_23++; } string_0 = ChatCommandHandler.ApplyFilter(string_0); if (ServerConfiguration.EnableChatlog && !this.method_25().GetHabbo().IsJuniori) { using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { class2.AddParamWithValue("message", "<PM to " + @class.GetHabbo().Username + ">: " + string_0); class2.ExecuteQuery(string.Concat(new object[] { "INSERT INTO chatlogs (user_id,room_id,hour,minute,timestamp,message,user_name,full_date) VALUES ('", this.method_25().GetHabbo().Id, "','0','", DateTime.Now.Hour, "','", DateTime.Now.Minute, "',UNIX_TIMESTAMP(),@message,'", this.method_25().GetHabbo().Username, "','", DateTime.Now.ToLongDateString(), "')" })); } } @class.GetHabbo().GetMessenger().method_19(string_0, this.uint_0); } } } } }
public CssReceiver(ChatCommandHandler chatMessageHandler) { this.chatMessageHandler = chatMessageHandler; }
public TvReciever(ChatCommandHandler chatMessageHandler) { this.chatMessageHandler = chatMessageHandler; }
protected override void OnDestroy() { client.Stop(); cmdReceiver = null; base.OnDestroy(); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); LogManager.LogFactory = new GenericLogFactory(Console.WriteLine); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); // Get our button from the layout resource, // and attach an event to it Button sendButton = FindViewById<Button>(Resource.Id.sendMessageButton); messageBox = FindViewById<EditText>(Resource.Id.message); SupportToolbar mToolbar = FindViewById<SupportToolbar>(Resource.Id.toolbar); mDrawerLayout = FindViewById<DrawerLayout>(Resource.Id.drawer_layout); navigationView = FindViewById<NavigationView>(Resource.Id.nav_view); mRightDrawer = FindViewById<ListView>(Resource.Id.right_drawer); var messageHistoryList = FindViewById<ListView>(Resource.Id.messageHistory); var chatBackground = FindViewById<ImageView>(Resource.Id.chat_background); InitDefaultBackground(chatBackground); navigationView.Tag = 0; mRightDrawer.Tag = 1; var messageHistoryAdapter = new MessageListViewAdapter(this, new List<ChatMessage>(), () => this.subscriberList); messageHistoryList.Adapter = messageHistoryAdapter; var txtUser = FindViewById<TextView>(Resource.Id.txtUserName); var imgProfile = FindViewById<ImageView>(Resource.Id.imgProfile); var channels = new[] {"home"}; cmdReceiver = new ChatCommandHandler (this, messageHistoryAdapter, "home"); client = new ServerEventsClient(BaseUrl, channels) { OnConnect = connectMsg => { client.UpdateChatHistory(cmdReceiver).ConfigureAwait(false); connectMsg.UpdateUserProfile(txtUser, imgProfile); }, OnCommand = command => { if (command is ServerEventJoin) { client.GetSubscribers().ContinueWith(result => { result.Wait(); subscriberList = result.Result; Application.SynchronizationContext.Post(_ => { // Refresh profile icons when users join messageHistoryAdapter.NotifyDataSetChanged(); }, null); }); } }, OnException = error => { Application.SynchronizationContext.Post( _ => { Toast.MakeText(this, "Error : " + error.Message, ToastLength.Long); }, null); }, //ServiceClient = new JsonHttpClient(BaseUrl), Resolver = new MessageResolver(cmdReceiver) }; client.RegisterNamedReceiver<ChatReceiver>("cmd"); client.RegisterNamedReceiver<TvReciever>("tv"); client.RegisterNamedReceiver<CssReceiver>("css"); SetSupportActionBar(mToolbar); var mRightDataSet = new List<string>(commands.Keys); var mRightAdapter = new ActionListViewAdapter(this, mRightDataSet); mRightDrawer.Adapter = mRightAdapter; mRightDrawer.ItemClick += (sender, args) => { Application.SynchronizationContext.Post(_ => { messageBox.Text = commands[mRightDataSet[args.Position]]; mDrawerLayout.CloseDrawer(mRightDrawer); },null); }; mDrawerToggle = new ChatActionBarDrawerToggle( this, //Host Activity mDrawerLayout, //DrawerLayout mToolbar, // Instance of toolbar, if you use other ctor, the hamburger icon/arrow animation won't work.. Resource.String.openDrawer, //Opened Message Resource.String.closeDrawer //Closed Message ); SupportActionBar.SetHomeButtonEnabled(true); SupportActionBar.SetDisplayShowTitleEnabled(true); mDrawerLayout.SetDrawerListener(mDrawerToggle); mDrawerToggle.SyncState(); navigationView.NavigationItemSelected += OnChannelClick; sendButton.Click += OnSendClick; }