public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { #region Params if (Params.Length < 2) { Session.SendWhisper("Comando inválido, use :fazerchat <nomedochat>", 1); return; } string NewChatName = Convert.ToString(Params[1]); #endregion #region Conditions if (Session.GetRoleplay().BannedFromMakingChat) { Session.SendWhisper("Você está permanentemente banido de fazer salas de bate-papo!", 1); return; } if (!Session.GetRoleplay().PhoneApps.Contains("whatsapp")) { Session.SendWhisper("Você precisa do App WhatsApp para fazer isso!", 1); return; } if (WebSocketChatManager.RunningChatRooms.ContainsKey(NewChatName.ToLower())) { Session.SendWhisper("Esse chat (" + NewChatName.ToLower() + ") já existe! Escolha outro nome!", 1); return; } if ((WebSocketChatManager.RunningChatRooms.Values.Where(Runningchat => Runningchat != null).Where(Runningchat => Runningchat.ChatOwner == Session.GetHabbo().Id).ToList().Count > 0) && Session.GetHabbo().VIPRank < 2) { Session.SendWhisper("Você só pode criar um bate-papo por vez!", 1); return; } Regex regexItem = new Regex("^[a-zA-Z0-9]*$"); if (!regexItem.IsMatch(NewChatName)) { Session.SendWhisper("Nome do bate-papo inválido! Remova todos os caracteres especiais!", 1); return; } #endregion #region Execute WebSocketChatRoom NewChatRoom = new WebSocketChatRoom(NewChatName, Session.GetHabbo().Id, new Dictionary <object, object>() { { "password", "" }, { "gang", 0 }, { "locked", false } }, new List <int>() { }, false); if (NewChatRoom.OnUserJoin(Session)) { NewChatRoom.BeginChatJoin(Session); Session.Shout("*Cria um novo bate-papo no WhatsApp com seu " + RoleplayManager.GetPhoneName(Session) + "*", 4); } #endregion }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { #region Variables if (Params.Length < 2) { Session.SendWhisper("Comando inválido! Use :ctrancar <nomedochat>", 1); return; } string ChatName = Convert.ToString(Params[2]); #endregion #region Conditions if (!WebSocketChatManager.RunningChatRooms.ContainsKey(ChatName.ToLower())) { Session.SendWhisper("Este chat '" + ChatName.ToLower() + "' não existe!", 1); return; } WebSocketChatRoom Chat = WebSocketChatManager.RunningChatRooms[ChatName.ToLower()]; if (Chat == null) { Session.SendWhisper("Ocorreu um erro, este bate-papo não existe!", 1); return; } if (Chat.ChatOwner != Session.GetHabbo().Id&& Session.GetHabbo().VIPRank <= 1) { Session.SendWhisper("Você deve ser o proprietário desta conversa para fazer isso!", 1); return; } #endregion #region Execute bool CurrentLocked = Convert.ToBoolean(Chat.ChatValues["locked"]); if (CurrentLocked) { Chat.ChatValues["locked"] = false; Session.SendWhisper("Desbloqueado com sucesso o bate-papo '" + Chat.ChatName + "'", 1); } else { Chat.ChatValues["locked"] = true; Session.SendWhisper("Bloqueou com sucesso o bate-papo '" + Chat.ChatName + "'", 1); } #endregion }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { #region Params if (Params.Length < 2) { Session.SendWhisper("Comando inválido!", 1); return; } string InputtedChatName = Convert.ToString(Params[1]); WebSocketChatRoom NewChatRoom = WebSocketChatManager.GetChatByName(InputtedChatName.ToLower()); #endregion #region Conditions if (Session.GetRoleplay().BannedFromChatting) { Session.SendWhisper("Você está proibido de se juntar a qualquer Grupo do WhatsApp!", 1); return; } if (NewChatRoom == null) { Session.SendWhisper("O bate-papo não existe!", 1); return; } if (!Session.GetRoleplay().PhoneApps.Contains("whatsapp")) { Session.SendWhisper("Você precisa do Aplicativo Whatsapp para fazer isso! Digite :baixar whatsapp.", 1); return; } #endregion #region Execute PlusEnvironment.GetGame().GetWebEventManager().ExecuteWebEvent(Session, "event_chatroom", JsonConvert.SerializeObject(new Dictionary <object, object>() { { "action", "requestjoin" }, { "chatname", NewChatRoom.ChatName }, })); #endregion }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { #region Variables if (Params.Length < 2) { Session.SendWhisper("Comando inválido, use :delchat <nomedochat>", 1); return; } bool BanUserFromMaking = false; bool BanUserFromChatting = false; if (Params.Length >= 3) { if (Convert.ToString(Params[2]).ToLower().StartsWith("sim")) { BanUserFromMaking = true; } } if (Params.Length == 4) { if (Convert.ToString(Params[3]).ToLower().StartsWith("sim")) { BanUserFromChatting = true; } } string ChatName = Convert.ToString(Params[1]); #endregion #region Conditions if (!WebSocketChatManager.RunningChatRooms.ContainsKey(ChatName.ToLower())) { Session.SendWhisper("Este bate-papo '" + ChatName.ToLower() + "' não existe!", 1); return; } WebSocketChatRoom Chat = WebSocketChatManager.RunningChatRooms[ChatName.ToLower()]; if (Chat == null) { Session.SendWhisper("Ocorreu um erro, este bate-papo não existe!", 1); return; } #endregion #region Execute GameClient ChatOwner = null; if (Chat.ChatOwner > 0) { ChatOwner = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(Chat.ChatOwner); using (IQueryAdapter DB = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { if (BanUserFromChatting) { if (ChatOwner == null) { DB.RunQuery("UPDATE rp_stats SET wchat_banned = '1' WHERE id = '" + Chat.ChatOwner + "'"); } else { ChatOwner.GetRoleplay().BannedFromChatting = true; ChatOwner.SendWhisper("Você foi impedido de poder se juntar a uma sala de bate-papo "); } } if (BanUserFromMaking) { if (ChatOwner == null) { DB.RunQuery("UPDATE rp_stats SET wchat_making_banned = '1' WHERE id = '" + Chat.ChatOwner + "'"); } else { ChatOwner.GetRoleplay().BannedFromMakingChat = true; ChatOwner.SendWhisper("Você foi impedido de poder se juntar a uma sala de bate-papo"); } } } } else { if (BanUserFromChatting || BanUserFromMaking) { Session.SendWhisper("Não havia nenhum proprietário para este bate-papo, então não tem ninguém para proibir", 1); } } Session.SendWhisper("Excluiu o bate-papo com sucesso '" + Chat.ChatName + "'. O dono foi notificado!"); if (ChatOwner != null) { ChatOwner.SendWhisper("Seu chat '" + Chat.ChatName + "' foi excluído por um membro da equipe!"); } WebSocketChatManager.DeleteChat(Chat); #endregion }