public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (!Room.CheckRights(Session, true)) { Session.SendWhisper("Oops, only the room owner can run this command!"); return; } foreach (RoomUser User in Room.GetRoomUserManager().GetUserList().ToList()) { if (User == null || User.IsPet || !User.IsBot) continue; RoomUser BotUser = null; if (!Room.GetRoomUserManager().TryGetBot(User.BotData.Id, out BotUser)) return; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `bots` SET `room_id` = '0' WHERE `id` = @id LIMIT 1"); dbClient.AddParameter("id", User.BotData.Id); dbClient.RunQuery(); } Session.GetHabbo().GetInventoryComponent().TryAddBot(new Bot(Convert.ToInt32(BotUser.BotData.Id), Convert.ToInt32(BotUser.BotData.ownerID), BotUser.BotData.Name, BotUser.BotData.Motto, BotUser.BotData.Look, BotUser.BotData.Gender)); Session.SendMessage(new BotInventoryComposer(Session.GetHabbo().GetInventoryComponent().GetBots())); Room.GetRoomUserManager().RemoveBot(BotUser.VirtualId, false); } Session.SendWhisper("Success, removed all bots."); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser ThisUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (ThisUser == null) return; List<RoomUser> Users = Room.GetRoomUserManager().GetRoomUsers(); foreach (RoomUser U in Users.ToList()) { if (U == null || Session.GetHabbo().Id == U.UserId) continue; U.SetRot(Rotation.Calculate(U.X, U.Y, ThisUser.X, ThisUser.Y), false); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; List<RoomUser> Users = Room.GetRoomUserManager().GetRoomUsers(); foreach (RoomUser U in Users.ToList()) { if (U == null || Session.GetHabbo().Id == U.UserId) continue; U.MoveTo(User.X, User.Y, true); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; if (Params.Length == 1) { Session.SendWhisper("Oops, you forgot to enter a bubble ID!"); return; } int Bubble = 0; if (!int.TryParse(Params[1].ToString(), out Bubble)) { Session.SendWhisper("Please enter a valid number."); return; } ChatStyle Style = null; if (!PlusEnvironment.GetGame().GetChatManager().GetChatStyles().TryGetStyle(Bubble, out Style) || (Style.RequiredRight.Length > 0 && !Session.GetHabbo().GetPermissions().HasRight(Style.RequiredRight))) { Session.SendWhisper("Oops, you cannot use this bubble due to a rank requirement, sorry!"); return; } User.LastBubble = Bubble; Session.GetHabbo().CustomBubbleId = Bubble; Session.SendWhisper("Bubble set to: " + Bubble); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null || User.GetClient() == null) return; string[] headParts; string[] figureParts = Session.GetHabbo().Look.Split('.'); foreach (string Part in figureParts) { if (Part.StartsWith("hd")) { headParts = Part.Split('-'); if (!headParts[1].Equals("99999")) headParts[1] = "99999"; else return; Session.GetHabbo().Look = Session.GetHabbo().Look.Replace(Part, "hd-" + headParts[1] + "-" + headParts[2]); break; } } Session.GetHabbo().Look = PlusEnvironment.GetGame().GetAntiMutant().RunLook(Session.GetHabbo().Look); using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.RunQuery("UPDATE `users` SET `look` = '" + Session.GetHabbo().Look + "' WHERE `id` = '" + Session.GetHabbo().Id + "' LIMIT 1"); } Session.SendMessage(new UserChangeComposer(User, true)); Session.GetHabbo().CurrentRoom.SendMessage(new UserChangeComposer(User, false)); return; }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter a dance ID. (1-4)"); return; } int DanceId = Convert.ToInt32(Params[1]); if (DanceId < 0 || DanceId > 4) { Session.SendWhisper("Please enter a dance ID. (1-4)"); return; } List<RoomUser> Users = Room.GetRoomUserManager().GetRoomUsers(); if (Users.Count > 0) { foreach (RoomUser U in Users.ToList()) { if (U == null) continue; if (U.CarryItemID > 0) U.CarryItemID = 0; U.DanceId = DanceId; Room.SendMessage(new DanceComposer(U, DanceId)); } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please provide a reason for muting the room to show to the users."); return; } if (!Room.RoomMuted) Room.RoomMuted = true; string Msg = CommandManager.MergeParams(Params, 1); List<RoomUser> RoomUsers = Room.GetRoomUserManager().GetRoomUsers(); if (RoomUsers.Count > 0) { foreach (RoomUser User in RoomUsers) { if (User == null || User.GetClient() == null || User.GetClient().GetHabbo() == null || User.GetClient().GetHabbo().Username == Session.GetHabbo().Username) continue; User.GetClient().SendWhisper("This room has been muted because: " + Msg); } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser ThisUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (ThisUser == null) return; Session.SendNotification("X: " + ThisUser.X + "\n - Y: " + ThisUser.Y + "\n - Z: " + ThisUser.Z + "\n - Rot: " + ThisUser.RotBody + ", sqState: " + Room.GetGameMap().GameMap[ThisUser.X, ThisUser.Y].ToString() + "\n\n - RoomID: " + Session.GetHabbo().CurrentRoomId); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; User.AllowOverride = !User.AllowOverride; Session.SendWhisper("Override mode updated."); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; User.TeleportEnabled = !User.TeleportEnabled; Room.GetGameMap().GenerateMaps(); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please provide a reason to the users for this room kick."); 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("You have been kicked by a moderator: " + Message); Room.GetRoomUserManager().RemoveUserFromRoom(RoomUser.GetClient(), true, false); } Session.SendWhisper("Successfully kicked all users from the room."); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; if (!Room.GetGameMap().ValidTile(User.X + 2, User.Y + 2) && !Room.GetGameMap().ValidTile(User.X + 1, User.Y + 1)) { Session.SendWhisper("Oops, cannot lay down here - try elsewhere!"); return; } if (User.Statusses.ContainsKey("sit") || User.isSitting || User.RidingHorse || User.IsWalking) return; if (Session.GetHabbo().Effects().CurrentEffect > 0) Session.GetHabbo().Effects().ApplyEffect(0); if (!User.Statusses.ContainsKey("lay")) { if ((User.RotBody % 2) == 0) { if (User == null) return; try { User.Statusses.Add("lay", "1.0 null"); User.Z -= 0.35; User.isLying = true; User.UpdateNeeded = true; } catch { } } else { User.RotBody--;// User.Statusses.Add("lay", "1.0 null"); User.Z -= 0.35; User.isLying = true; User.UpdateNeeded = true; } } else { User.Z += 0.35; User.Statusses.Remove("lay"); User.Statusses.Remove("1.0"); User.isLying = false; User.UpdateNeeded = true; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; User.SuperFastWalking = !User.SuperFastWalking; if (User.FastWalking) User.FastWalking = false; Session.SendWhisper("Walking mode updated."); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; User.moonwalkEnabled = !User.moonwalkEnabled; if (User.moonwalkEnabled) Session.SendWhisper("Moonwalk enabled!"); else Session.SendWhisper("Moonwalk disabled!"); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { List<RoomUser> Users = Room.GetRoomUserManager().GetRoomUsers(); if (Users.Count > 0) { foreach (RoomUser U in Users.ToList()) { if (U == null) continue; U.ApplyEffect(108); } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Oops, you forgot to choose a target user!"); return; } RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Params[1]); if (User == null) return; if (User.Statusses.ContainsKey("lie") || User.isLying || User.RidingHorse || User.IsWalking) return; if (!User.Statusses.ContainsKey("sit")) { if ((User.RotBody % 2) == 0) { if (User == null) return; try { User.Statusses.Add("sit", "1.0"); User.Z -= 0.35; User.isSitting = true; User.UpdateNeeded = true; } catch { } } else { User.RotBody--; User.Statusses.Add("sit", "1.0"); User.Z -= 0.35; User.isSitting = true; User.UpdateNeeded = true; } } else if (User.isSitting == true) { User.Z += 0.35; User.Statusses.Remove("sit"); User.Statusses.Remove("1.0"); User.isSitting = false; User.UpdateNeeded = true; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter the username of the user you wish to mimic."); return; } GameClient TargetClient = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]); if (TargetClient == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online."); return; } if (!TargetClient.GetHabbo().AllowMimic) { Session.SendWhisper("Oops, you cannot mimic this user - sorry!"); return; } RoomUser TargetUser = Session.GetHabbo().CurrentRoom.GetRoomUserManager().GetRoomUserByHabbo(TargetClient.GetHabbo().Id); if (TargetUser == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online or in this room."); return; } Session.GetHabbo().Gender = TargetUser.GetClient().GetHabbo().Gender; Session.GetHabbo().Look = TargetUser.GetClient().GetHabbo().Look; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `users` SET `gender` = @gender, `look` = @look WHERE `id` = @id LIMIT 1"); dbClient.AddParameter("gender", Session.GetHabbo().Gender); dbClient.AddParameter("look", Session.GetHabbo().Look); dbClient.AddParameter("id", Session.GetHabbo().Id); dbClient.RunQuery(); } RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User != null) { Session.SendMessage(new UserChangeComposer(User, true)); Room.SendMessage(new UserChangeComposer(User, false)); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (User == null) return; if (User.Statusses.ContainsKey("lie") || User.isLying || User.RidingHorse || User.IsWalking) return; if (!User.Statusses.ContainsKey("sit")) { if ((User.RotBody % 2) == 0) { if (User == null) return; try { User.Statusses.Add("sit", "1.0"); User.Z -= 0.35; User.isSitting = true; User.UpdateNeeded = true; } catch { } } else { User.RotBody--; User.Statusses.Add("sit", "1.0"); User.Z -= 0.35; User.isSitting = true; User.UpdateNeeded = true; } } else if (User.isSitting == true) { User.Z += 0.35; User.Statusses.Remove("sit"); User.Statusses.Remove("1.0"); User.isSitting = false; User.UpdateNeeded = true; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter an effect ID."); return; } int EnableId = 0; if (int.TryParse(Params[1], out EnableId)) { if (EnableId == 102 || EnableId == 178) { Session.Disconnect(); return; } if (!Session.GetHabbo().GetPermissions().HasCommand("command_override_massenable") && Room.OwnerId != Session.GetHabbo().Id) { Session.SendWhisper("You can only use this command in your own room."); return; } List<RoomUser> Users = Room.GetRoomUserManager().GetRoomUsers(); if (Users.Count > 0) { foreach (RoomUser U in Users.ToList()) { if (U == null || U.RidingHorse) continue; U.ApplyEffect(EnableId); } } } else { Session.SendWhisper("Please enter an effect ID."); return; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Username); if (User == null) return; if (User.isSitting) { User.Statusses.Remove("sit"); User.Z += 0.35; User.isSitting = false; User.UpdateNeeded = true; } else if (User.isLying) { User.Statusses.Remove("lay"); User.Z += 0.35; User.isLying = false; User.UpdateNeeded = true; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (!Room.RoomMuted) { Session.SendWhisper("This room isn't muted."); return; } Room.RoomMuted = false; List<RoomUser> RoomUsers = Room.GetRoomUserManager().GetRoomUsers(); if (RoomUsers.Count > 0) { foreach (RoomUser User in RoomUsers) { if (User == null || User.GetClient() == null || User.GetClient().GetHabbo() == null || User.GetClient().GetHabbo().Username == Session.GetHabbo().Username) continue; User.GetClient().SendWhisper("This room has been un-muted ."); } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { RoomUser ThisUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (ThisUser == null) return; if (Params.Length == 1) Session.SendWhisper("You must enter a username and the message you wish to force them to say."); else { string Message = CommandManager.MergeParams(Params, 2); RoomUser TargetUser = Session.GetHabbo().CurrentRoom.GetRoomUserManager().GetRoomUserByHabbo(Params[1]); if (TargetUser != null) { if (TargetUser.GetClient() != null && TargetUser.GetClient().GetHabbo() != null) if (!TargetUser.GetClient().GetHabbo().GetPermissions().HasRight("mod_make_say_any")) Room.SendMessage(new ChatComposer(TargetUser.VirtualId, Message, 0, TargetUser.LastBubble)); else Session.SendWhisper("You cannot use makesay on this user."); } else Session.SendWhisper("This user could not be found in the room"); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter the name of the badge you'd like to give to the room."); return; } foreach (RoomUser User in Room.GetRoomUserManager().GetUserList().ToList()) { if (User == null || User.GetClient() == null || User.GetClient().GetHabbo() == null) continue; if (!User.GetClient().GetHabbo().GetBadgeComponent().HasBadge(Params[1])) { User.GetClient().GetHabbo().GetBadgeComponent().GiveBadge(Params[1], true, User.GetClient()); User.GetClient().SendNotification("You have just been given a badge!"); } else User.GetClient().SendWhisper(Session.GetHabbo().Username + " tried to give you a badge, but you already have it!"); } Session.SendWhisper("You have successfully given every user in this room the " + Params[2] + " badge!"); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter a message you'd like to send to the room."); return; } if(!Session.GetHabbo().GetPermissions().HasRight("mod_alert") && Room.OwnerId != Session.GetHabbo().Id) { Session.SendWhisper("You can only Room Alert in your own room!"); return; } string Message = CommandManager.MergeParams(Params, 1); foreach (RoomUser RoomUser in Room.GetRoomUserManager().GetRoomUsers()) { if (RoomUser == null || RoomUser.GetClient() == null || Session.GetHabbo().Id == RoomUser.UserId) continue; RoomUser.GetClient().SendNotification(Session.GetHabbo().Username + " alerted the room with the following message:\n\n" + Message); } Session.SendWhisper("Message successfully sent to the room."); }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter the username of the user you wish to pull."); return; } if (!Room.PullEnabled && !Session.GetHabbo().GetPermissions().HasRight("room_override_custom_config")) { Session.SendWhisper("Oops, it appears that the room owner has disabled the ability to use the pull command in here."); return; } GameClient TargetClient = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]); if (TargetClient == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online."); return; } RoomUser TargetUser = Room.GetRoomUserManager().GetRoomUserByHabbo(TargetClient.GetHabbo().Id); if (TargetUser == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online or in this room."); return; } if (TargetClient.GetHabbo().Username == Session.GetHabbo().Username) { Session.SendWhisper("Come on, surely you don't want to push yourself!"); return; } if (TargetUser.TeleportEnabled) { Session.SendWhisper("Oops, you cannot push a user whilst they have their teleport mode enabled."); return; } RoomUser ThisUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (ThisUser == null) return; if (ThisUser.SetX - 1 == Room.GetGameMap().Model.DoorX) { Session.SendWhisper("Please don't pull that user out of the room :(!"); return; } string PushDirection = "down"; if (TargetClient.GetHabbo().CurrentRoomId == Session.GetHabbo().CurrentRoomId && (Math.Abs(ThisUser.X - TargetUser.X) < 3 && Math.Abs(ThisUser.Y - TargetUser.Y) < 3)) { Room.SendMessage(new ChatComposer(ThisUser.VirtualId, "*pulls " + Params[1] + " to them*", 0, ThisUser.LastBubble)); if (ThisUser.RotBody == 0) PushDirection = "up"; if (ThisUser.RotBody == 2) PushDirection = "right"; if (ThisUser.RotBody == 4) PushDirection = "down"; if (ThisUser.RotBody == 6) PushDirection = "left"; if (PushDirection == "up") TargetUser.MoveTo(ThisUser.X, ThisUser.Y - 1); if (PushDirection == "right") TargetUser.MoveTo(ThisUser.X + 1, ThisUser.Y); if (PushDirection == "down") TargetUser.MoveTo(ThisUser.X, ThisUser.Y + 1); if (PushDirection == "left") TargetUser.MoveTo(ThisUser.X - 1, ThisUser.Y); return; } else { Session.SendWhisper("That user is not close enough to you to be pulled, try getting closer!"); return; } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Oops, you must choose a room option to disable."); return; } if (!Room.CheckRights(Session, true)) { Session.SendWhisper("Oops, only the room owner or staff can use this command."); return; } string Option = Params[1]; switch (Option) { case "list": { StringBuilder List = new StringBuilder(""); List.AppendLine("Room Command List"); List.AppendLine("-------------------------"); List.AppendLine("Pet Morphs: " + (Room.PetMorphsAllowed == true ? "enabled" : "disabled")); List.AppendLine("Pull: " + (Room.PullEnabled == true ? "enabled" : "disabled")); List.AppendLine("Push: " + (Room.PushEnabled == true ? "enabled" : "disabled")); List.AppendLine("Super Pull: " + (Room.SPullEnabled == true ? "enabled" : "disabled")); List.AppendLine("Super Push: " + (Room.SPushEnabled == true ? "enabled" : "disabled")); List.AppendLine("Respect: " + (Room.RespectNotificationsEnabled == true ? "enabled" : "disabled")); List.AppendLine("Enables: " + (Room.EnablesEnabled == true ? "enabled" : "disabled")); Session.SendNotification(List.ToString()); break; } case "push": { Room.PushEnabled = !Room.PushEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `push_enabled` = @PushEnabled WHERE `id` = '" + Room.Id +"' LIMIT 1"); dbClient.AddParameter("PushEnabled", PlusEnvironment.BoolToEnum(Room.PushEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Push mode is now " + (Room.PushEnabled == true ? "enabled!" : "disabled!")); break; } case "spush": { Room.SPushEnabled = !Room.SPushEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `spush_enabled` = @PushEnabled WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("PushEnabled", PlusEnvironment.BoolToEnum(Room.SPushEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Super Push mode is now " + (Room.SPushEnabled == true ? "enabled!" : "disabled!")); break; } case "spull": { Room.SPullEnabled = !Room.SPullEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `spull_enabled` = @PullEnabled WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("PullEnabled", PlusEnvironment.BoolToEnum(Room.SPullEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Super Pull mode is now " + (Room.SPullEnabled == true ? "enabled!" : "disabled!")); break; } case "pull": { Room.PullEnabled = !Room.PullEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `pull_enabled` = @PullEnabled WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("PullEnabled", PlusEnvironment.BoolToEnum(Room.PullEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Pull mode is now " + (Room.PullEnabled == true ? "enabled!" : "disabled!")); break; } case "enable": case "enables": { Room.EnablesEnabled = !Room.EnablesEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `enables_enabled` = @EnablesEnabled WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("EnablesEnabled", PlusEnvironment.BoolToEnum(Room.EnablesEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Enables mode set to " + (Room.EnablesEnabled == true ? "enabled!" : "disabled!")); break; } case "respect": { Room.RespectNotificationsEnabled = !Room.RespectNotificationsEnabled; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `respect_notifications_enabled` = @RespectNotificationsEnabled WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("RespectNotificationsEnabled", PlusEnvironment.BoolToEnum(Room.RespectNotificationsEnabled)); dbClient.RunQuery(); } Session.SendWhisper("Respect notifications mode set to " + (Room.RespectNotificationsEnabled == true ? "enabled!" : "disabled!")); break; } case "pets": case "morphs": { Room.PetMorphsAllowed = !Room.PetMorphsAllowed; using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.SetQuery("UPDATE `rooms` SET `pet_morphs_allowed` = @PetMorphsAllowed WHERE `id` = '" + Room.Id + "' LIMIT 1"); dbClient.AddParameter("PetMorphsAllowed", PlusEnvironment.BoolToEnum(Room.PetMorphsAllowed)); dbClient.RunQuery(); } Session.SendWhisper("Human pet morphs notifications mode set to " + (Room.PetMorphsAllowed == true ? "enabled!" : "disabled!")); if (!Room.PetMorphsAllowed) { foreach (RoomUser User in Room.GetRoomUserManager().GetRoomUsers()) { if (User == null || User.GetClient() == null || User.GetClient().GetHabbo() == null) continue; User.GetClient().SendWhisper("The room owner has disabled the ability to use a pet morph in this room."); if (User.GetClient().GetHabbo().PetId > 0) { //Tell the user what is going on. User.GetClient().SendWhisper("Oops, the room owner has just disabled pet-morphs, un-morphing you."); //Change the users Pet Id. User.GetClient().GetHabbo().PetId = 0; //Quickly remove the old user instance. Room.SendMessage(new UserRemoveComposer(User.VirtualId)); //Add the new one, they won't even notice a thing!!11 8-) Room.SendMessage(new UsersComposer(User)); } } } break; } } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (Params.Length == 1) { Session.SendWhisper("Please enter the username of the user you wish to push."); return; } if (!Room.SPushEnabled && !Room.CheckRights(Session, true) && !Session.GetHabbo().GetPermissions().HasRight("room_override_custom_config")) { Session.SendWhisper("Oops, it appears that the room owner has disabled the ability to use the push command in here."); return; } GameClient TargetClient = PlusEnvironment.GetGame().GetClientManager().GetClientByUsername(Params[1]); if (TargetClient == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online."); return; } RoomUser TargetUser = Room.GetRoomUserManager().GetRoomUserByHabbo(TargetClient.GetHabbo().Id); if (TargetUser == null) { Session.SendWhisper("An error occoured whilst finding that user, maybe they're not online or in this room."); return; } if (TargetClient.GetHabbo().Username == Session.GetHabbo().Username) { Session.SendWhisper("Come on, surely you don't want to push yourself!"); return; } if (TargetUser.TeleportEnabled) { Session.SendWhisper("Oops, you cannot push a user whilst they have their teleport mode enabled."); return; } RoomUser ThisUser = Room.GetRoomUserManager().GetRoomUserByHabbo(Session.GetHabbo().Id); if (ThisUser == null) return; if (!((Math.Abs(TargetUser.X - ThisUser.X) >= 2) || (Math.Abs(TargetUser.Y - ThisUser.Y) >= 2))) { if (TargetUser.SetX - 1 == Room.GetGameMap().Model.DoorX || TargetUser.SetY - 1 == Room.GetGameMap().Model.DoorY) { Session.SendWhisper("Please don't push that user out of the room :(!"); return; } if (TargetUser.SetX - 2 == Room.GetGameMap().Model.DoorX || TargetUser.SetY - 2 == Room.GetGameMap().Model.DoorY) { Session.SendWhisper("Please don't push that user out of the room :(!"); return; } if (TargetUser.SetX - 3 == Room.GetGameMap().Model.DoorX || TargetUser.SetY - 3 == Room.GetGameMap().Model.DoorY) { Session.SendWhisper("Please don't push that user out of the room :(!"); return; } if (TargetUser.RotBody == 4) { TargetUser.MoveTo(TargetUser.X, TargetUser.Y + 3); } if (ThisUser.RotBody == 0) { TargetUser.MoveTo(TargetUser.X, TargetUser.Y - 3); } if (ThisUser.RotBody == 6) { TargetUser.MoveTo(TargetUser.X - 3, TargetUser.Y); } if (ThisUser.RotBody == 2) { TargetUser.MoveTo(TargetUser.X + 3, TargetUser.Y); } if (ThisUser.RotBody == 3) { TargetUser.MoveTo(TargetUser.X + 3, TargetUser.Y); TargetUser.MoveTo(TargetUser.X, TargetUser.Y + 3); } if (ThisUser.RotBody == 1) { TargetUser.MoveTo(TargetUser.X + 3, TargetUser.Y); TargetUser.MoveTo(TargetUser.X, TargetUser.Y - 3); } if (ThisUser.RotBody == 7) { TargetUser.MoveTo(TargetUser.X - 3, TargetUser.Y); TargetUser.MoveTo(TargetUser.X, TargetUser.Y - 3); } if (ThisUser.RotBody == 5) { TargetUser.MoveTo(TargetUser.X - 3, TargetUser.Y); TargetUser.MoveTo(TargetUser.X, TargetUser.Y + 3); } Room.SendMessage(new ChatComposer(ThisUser.VirtualId, "*super pushes " + Params[1] + "*", 0, ThisUser.LastBubble)); } else { Session.SendWhisper("Oops, " + Params[1] + " is not close enough!"); } }
public void Execute(GameClients.GameClient Session, Rooms.Room Room, string[] Params) { if (!Room.CheckRights(Session, true)) { Session.SendWhisper("Oops, only the room owner can run this command!"); return; } if (Room.GetRoomUserManager().GetPets().Count > 0) { foreach (RoomUser Pet in Room.GetRoomUserManager().GetUserList().ToList()) { if (Pet == null) continue; if (Pet.RidingHorse) { RoomUser UserRiding = Room.GetRoomUserManager().GetRoomUserByVirtualId(Pet.HorseID); if (UserRiding != null) { UserRiding.RidingHorse = false; UserRiding.ApplyEffect(-1); UserRiding.MoveTo(new Point(UserRiding.X + 1, UserRiding.Y + 1)); } else Pet.RidingHorse = false; } Pet.PetData.RoomId = 0; Pet.PetData.PlacedInRoom = false; Pet pet = Pet.PetData; if (pet != null) { using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().GetQueryReactor()) { dbClient.RunQuery("UPDATE `bots` SET `room_id` = '0', `x` = '0', `Y` = '0', `Z` = '0' WHERE `id` = '" + pet.PetId + "' LIMIT 1"); dbClient.RunQuery("UPDATE `bots_petdata` SET `experience` = '" + pet.experience + "', `energy` = '" + pet.Energy + "', `nutrition` = '" + pet.Nutrition + "', `respect` = '" + pet.Respect + "' WHERE `id` = '" + pet.PetId + "' LIMIT 1"); } } if (pet.OwnerId != Session.GetHabbo().Id) { GameClient Target = PlusEnvironment.GetGame().GetClientManager().GetClientByUserID(pet.OwnerId); if (Target != null) { Target.GetHabbo().GetInventoryComponent().TryAddPet(Pet.PetData); Room.GetRoomUserManager().RemoveBot(Pet.VirtualId, false); Target.SendMessage(new PetInventoryComposer(Target.GetHabbo().GetInventoryComponent().GetPets())); return; } } Session.GetHabbo().GetInventoryComponent().TryAddPet(Pet.PetData); Room.GetRoomUserManager().RemoveBot(Pet.VirtualId, false); Session.SendMessage(new PetInventoryComposer(Session.GetHabbo().GetInventoryComponent().GetPets())); } Session.SendWhisper("Success, removed all pets."); } else { Session.SendWhisper("Oops, there isn't any pets in here!?"); } }