Beispiel #1
0
        public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params)
        {
            if (Session.GetHabbo().VIPRank < 2 && Room.OwnerId != Session.GetHabbo().Id)
            {
                House House;
                if (Room.TryGetHouse(out House))
                {
                    if (House.OwnerId != Session.GetHabbo().Id)
                    {
                        Session.SendWhisper("Somente o proprietário do apartamento pode usar esse comando!", 1);
                        return;
                    }
                }
                else
                {
                    Session.SendWhisper("Desculpe, este quarto não é uma casa!", 1);
                    return;
                }
            }

            Room.GetRoomItemHandler().RemoveItems(Session);

            using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor())
            {
                dbClient.SetQuery("UPDATE `items` SET `room_id` = '0', `user_id` = @UserId WHERE `room_id` = @RoomId");
                dbClient.AddParameter("RoomId", Room.Id);
                dbClient.AddParameter("UserId", Session.GetHabbo().Id);
                dbClient.RunQuery();
            }

            List <Item> Items = Room.GetRoomItemHandler().GetWallAndFloor.ToList();

            if (Items.Count > 0)
            {
                Session.SendWhisper("Ainda há mais itens nesta sala, remova-os manualmente!", 1);
            }

            Session.SendMessage(new FurniListUpdateComposer());
        }
Beispiel #2
0
        public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params)
        {
            House House;

            if (!Room.TryGetHouse(out House))
            {
                Session.SendWhisper("Você não está nem dentro de uma casa!", 1);
                return;
            }

            if (House.OwnerId != Session.GetHabbo().Id&& !Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
            {
                Session.SendWhisper("Você não é o dono da casa!", 1);
                return;
            }

            if (Params.Length == 1)
            {
                Session.SendWhisper("Por favor, forneça um motivo expulsar os usuários da sala.", 1);
                return;
            }

            string Message = CommandManager.MergeParams(Params, 1);

            foreach (RoomUser RoomUser in Room.GetRoomUserManager().GetUserList().ToList())
            {
                if (RoomUser == null || RoomUser.IsBot || RoomUser.GetClient() == null || RoomUser.GetClient().GetHabbo() == null || RoomUser.GetClient().GetHabbo().GetPermissions().HasRight("mod_tool") || RoomUser.GetClient().GetHabbo().Id == Session.GetHabbo().Id)
                {
                    continue;
                }

                RoomUser.GetClient().SendNotification("Você foi expulso da casa por: " + Message);

                RoomData roomData = PlusEnvironment.GetGame().GetRoomManager().GenerateRoomData(House.Sign.RoomId);
                RoleplayManager.SendUser(Session, roomData.Id);
            }

            Session.SendWhisper("Expulsou com sucesso a todos os usuários da sua casa.", 1);
        }
Beispiel #3
0
        public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params)
        {
            House House;

            if (!Room.TryGetHouse(out House))
            {
                Session.SendWhisper("Você não está dentro de uma casa!", 1);
                return;
            }

            if (House.OwnerId != Session.GetHabbo().Id&& !Session.GetHabbo().GetPermissions().HasRight("mod_tool"))
            {
                Session.SendWhisper("Você não é o dono da casa!", 1);
                return;
            }

            if (Params.Length == 1)
            {
                Session.SendWhisper("Digite o nome do usuário que deseja expulsar da sala.", 1);
                return;
            }

            GameClient TargetClient = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]);

            if (TargetClient == null || TargetClient.GetRoomUser() == null)
            {
                Session.SendWhisper("Ocorreu um erro ao encontrar esse usuário, talvez ele não esteja online.", 1);
                return;
            }

            if (TargetClient.GetRoomUser().RoomId != Room.RoomId)
            {
                Session.SendWhisper("Este usuário não está em sua casa!", 1);
                return;
            }

            if (TargetClient.GetHabbo().Username == Session.GetHabbo().Username)
            {
                Session.SendWhisper("Você não pode se expulsar da casa!", 1);
                return;
            }

            Room TargetRoom;

            if (!PlusEnvironment.GetGame().GetRoomManager().TryGetRoom(TargetClient.GetHabbo().CurrentRoomId, out TargetRoom))
            {
                return;
            }

            if (Params.Length > 2)
            {
                TargetClient.SendNotification("Você foi expulso da casa pelo seguinte motivo: " + CommandManager.MergeParams(Params, 2));
            }
            else
            {
                TargetClient.SendNotification("Você foi expulso da casa.");
            }

            if (TargetClient.GetRoomUser() != null)
            {
                if (TargetClient.GetRoomUser().RoomId == House.Sign.RoomId)
                {
                    return;
                }
            }

            RoomData roomData = PlusEnvironment.GetGame().GetRoomManager().GenerateRoomData(House.Sign.RoomId);

            RoleplayManager.SendUser(TargetClient, roomData.Id);
        }