private void TriggerItem() { if (RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { int furniID = Request.PopWiredInt32(); FloorItems mFloor = AleedaEnvironment.GetCache().GetFloorItems().getItem(furniID); WallItems mWall = AleedaEnvironment.GetCache().GetWallItems().getItem(furniID); if (mFloor == null) { Response.Initialize(85); // "AU" Response.AppendString(mWall.ID + ""); Response.AppendInt32(mWall.SpriteID); Response.AppendString(mWall.Wall); if (mWall.Trigger == 0) { Response.Append(1); Update.UpdateFurniTrigger(furniID, 1); //Set the trigger AleedaEnvironment.GetCache().GetWallItems().getItem(mWall.ID).Trigger = 1; } else { Response.Append(0); Update.UpdateFurniTrigger(furniID, 0); //Set the trigger AleedaEnvironment.GetCache().GetWallItems().getItem(mWall.ID).Trigger = 0; } SendRoom(); } else if (mWall == null) { Response.Initialize(88); // "AX" Response.Append(furniID); Response.AppendChar(2); if (mFloor.Trigger == 0) { Response.Append(1); Update.UpdateFurniTrigger(furniID, 1); //Set the trigger AleedaEnvironment.GetCache().GetFloorItems().getItem(mFloor.ID).Trigger = 1; } else { Response.Append(0); Update.UpdateFurniTrigger(furniID, 0); //Set the trigger AleedaEnvironment.GetCache().GetFloorItems().getItem(mFloor.ID).Trigger = 0; } Response.AppendChar(2); SendRoom(); } } }
private void RotateItem() { if (RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { int FurnitureId = Request.PopWiredInt32(); int FurniX = Request.PopWiredInt32(); int FurniY = Request.PopWiredInt32(); int FurniRot = Request.PopWiredInt32(); //Update furni coords. GetFloorItems().getItem(FurnitureId).X = FurniX; GetFloorItems().getItem(FurnitureId).Y = FurniY; GetFloorItems().getItem(FurnitureId).Rotation = FurniRot; //Do the mysql queries using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE room_items SET x_axis = '" + FurniX + "' WHERE id = '" + FurnitureId + "'"); dbClient.ExecuteQuery("UPDATE room_items SET y_axis = '" + FurniY + "'WHERE id = '" + FurnitureId + "'"); dbClient.ExecuteQuery("UPDATE room_items SET rotation = '" + FurniRot + "' WHERE id = '" + FurnitureId + "'"); } if (Client.GetHabbo().ItemUsingID == FurnitureId && Client.GetHabbo().IsOnItem) { Client.GetHabbo().UserRotation = GetFloorItems().getItem(FurnitureId).Rotation; MoveUser(true); } else { Client.GetHabbo().IsOnItem = false; MoveUser(true); } //Send the updated move/rotate FloorItems mItem = AleedaEnvironment.GetCache().GetFloorItems().getItem(FurnitureId); { Response.Initialize(95); Response.AppendInt32(mItem.ID); Response.AppendInt32(mItem.SpriteID); Response.AppendInt32(mItem.X); Response.AppendInt32(mItem.Y); Response.AppendInt32(mItem.Rotation); Response.AppendString("0.0"); Response.AppendInt32(0); Response.AppendRawInt32WithBreak(mItem.Trigger, 2); Response.AppendInt32(-1); Response.AppendInt32(0); SendRoom(); } } }
private void PlacePet() { PrivateRooms Room = AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Client.GetHabbo().RoomId); if (Room == null || !Client.GetHabbo().HasFuse("fuse_admin") || !Client.GetHabbo().HasFuse("fuse_sysadmin") || !Client.GetHabbo().HasFuse("fuse_mod")) { return; } else if (!Room.petsAllowed) { return; } else if (!RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { return; } int PetId = Request.PopWiredInt32(); int X = Request.PopWiredInt32(); int Y = Request.PopWiredInt32(); //do shit }
private void ApplyDecoration() { if (RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { uint Id = Request.PopWiredUInt32(); PrivateRooms mRoom = GetPrivateRooms().getRoom(Client.GetHabbo().RoomId); foreach (UserInventory mUser in AleedaEnvironment.GetHabboHotel().GetRoomUser().GetItem(Id)) { if (mUser.Name.Contains("wall")) { int value = int.Parse(mUser.Name.Split('_')[2]); mRoom.Wall = value; Response.Initialize(46); // @n Response.AppendString("wallpaper"); Response.Append(value); SendRoom(); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE private_rooms SET wallpaper = '" + mRoom.Wall + "' WHERE id = '" + Client.GetHabbo().RoomId + "'"); } } else if (mUser.Name.Contains("floor")) { int value = int.Parse(mUser.Name.Split('_')[2]); mRoom.Floor = value; Response.Initialize(46); // @n Response.AppendString("floor"); Response.Append(value); SendRoom(); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE private_rooms SET floorpaper = '" + mRoom.Floor + "' WHERE id = '" + Client.GetHabbo().RoomId + "'"); } } else if (mUser.Name.Contains("landscape")) { string value = mUser.Name.Split('_')[2]; mRoom.LandScape = value; Response.Initialize(46); // @n Response.AppendString("landscape"); Response.Append(value); SendRoom(); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE private_rooms SET landscape = '" + mRoom.LandScape + "' WHERE id = '" + Client.GetHabbo().RoomId + "'"); } } } Client.GetHabbo().RemoveItem((int)Id); } }
private void PlaceItem() { string WallPlacementMap = ""; int ID; if (RoomUser.CalculateRights(Client.GetHabbo().RoomId, Client.GetHabbo().ID)) { WallPlacementMap = Request.PopFixedString(); //Gets the map (placement) string if (WallPlacementMap.Contains(":")) { foreach (UserInventory mItem in AleedaEnvironment.GetHabboHotel().GetRoomUser().GetUserInventory(Client.GetHabbo().ID, false, int.Parse(WallPlacementMap.Split(' ')[0]))) { #region Field string WallPlace = ":" + WallPlacementMap.Split(':')[1]; #endregion Dictionary <string, object> KeyWithValue = new Dictionary <string, object>(); KeyWithValue.Add("mID", Client.GetHabbo().RoomId); KeyWithValue.Add("wall_item", WallPlace); KeyWithValue.Add("sprite_id", mItem.SpriteID); KeyWithValue.Add("trigger", 0); KeyWithValue.Add("isWallItem", Convert.ToInt32(true)); doQuery().doInsertQuery("room_items", KeyWithValue); #region SQL using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.AddParamWithValue("id", Client.GetHabbo().RoomId); dbClient.AddParamWithValue("wallitem", WallPlace); ID = dbClient.ReadInt32("SELECT id FROM room_items WHERE mID = @id AND wall_item = @wallitem;"); } #endregion Response.Initialize(83); Response.AppendRawInt32WithBreak(ID, 2); Response.AppendInt32(mItem.SpriteID); Response.AppendString(WallPlace); Response.Append(0); Response.AppendChar(2); Response.AppendChar(2); SendRoom(); //Add the new item into the wall items cache. GetWallItems().newItem(ID); } } else { int mX = int.Parse(WallPlacementMap.Split(' ')[1]); int mY = int.Parse(WallPlacementMap.Split(' ')[2]); int mRotation = int.Parse(WallPlacementMap.Split(' ')[3]); foreach (UserInventory mItem in AleedaEnvironment.GetHabboHotel().GetRoomUser().GetUserInventory(Client.GetHabbo().ID, false, int.Parse(WallPlacementMap.Split(' ')[0]))) { Dictionary <string, object> KeyWithValue = new Dictionary <string, object>(); KeyWithValue.Add("mID", Client.GetHabbo().RoomId); KeyWithValue.Add("x_axis", mX); KeyWithValue.Add("y_axis", mY); KeyWithValue.Add("rotation", mRotation); KeyWithValue.Add("sprite_id", mItem.SpriteID); KeyWithValue.Add("trigger", 0); KeyWithValue.Add("isWallItem", Convert.ToInt32(false)); doQuery().doInsertQuery("room_items", KeyWithValue); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { ID = dbClient.ReadInt32("SELECT id FROM room_items WHERE mID = '" + Client.GetHabbo().RoomId + "' AND x_axis = '" + mX + "' AND y_axis = '" + mY + "'"); } Response.Initialize(93); Response.AppendInt32(ID); Response.AppendInt32(mItem.SpriteID); Response.AppendInt32(mX); Response.AppendInt32(mY); Response.AppendInt32(mRotation); Response.AppendString("0.0"); Response.AppendInt32(1); Response.AppendString("" + 1); Response.AppendInt32(-1); SendRoom(); //Add the new item into the wall items cache. GetFloorItems().newItem(ID); } } //Remove the item from the inventory. Client.GetHabbo().RemoveItem(int.Parse(WallPlacementMap.Split(' ')[0])); } }
public void remove_tags() { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE private_rooms SET tags = '' WHERE id = '" + Session.GetHabbo().RoomId + "'"); //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = ""; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Removed all tags"); Session.GetMessageHandler().SendRoom(msg); } } }
public void remove_tag() { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Tag = command.Substring(Length); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { string CurrentTags = dbClient.ReadString("SELECT tags FROM private_rooms WHERE id = '" + Session.GetHabbo().RoomId + "'"); CurrentTags = CurrentTags.Replace(Tag + ",", ""); dbClient.AddParamWithValue("tag", CurrentTags); dbClient.ExecuteQuery("UPDATE private_rooms SET tags = @tag WHERE id = '" + Session.GetHabbo().RoomId + "'"); //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = CurrentTags; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Removed the tag ( " + Tag + " )"); Session.GetMessageHandler().SendRoom(msg); } } }
public void add_tag() { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Tag = command.Substring(Length); string CurrentTags = ""; int CurrentTagCount = 0; using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { CurrentTags = dbClient.ReadString("SELECT tags FROM private_rooms WHERE id = '" + Session.GetHabbo().RoomId + "'"); foreach (string tag in CurrentTags.Split(',')) { ++CurrentTagCount; } if (CurrentTagCount != 4) { CurrentTags = Tag + "," + CurrentTags; dbClient.AddParamWithValue("tag", CurrentTags); dbClient.ExecuteQuery("UPDATE private_rooms SET tags = @tag WHERE id = '" + Session.GetHabbo().RoomId + "'"); } //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = CurrentTags; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Added more tags!. ( " + Tag + " )"); Session.GetMessageHandler().SendRoom(msg); } } }
public void change_name() { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Message = command.Substring(Length); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.AddParamWithValue("name", Message); dbClient.ExecuteQuery("UPDATE private_rooms SET name = @name WHERE id = '" + Session.GetHabbo().RoomId + "'"); } //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Name = Message; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("The name of the room has been changed! Please reload the room if you want."); Session.GetMessageHandler().SendRoom(msg); } }
public static void CommandHandler(string command, ServerMessage Response, GameClient Session) { try { string[] args = command.Split(' '); switch (args[0]) { case ":send": { GameClient User = AleedaEnvironment.GetHabboHotel().GetClients().GetClientOfHabbo(AleedaEnvironment.GetHabboHotel().GetHabbos().GetHabbo(args[1]).ID); if (User.GetHabbo().HasFuse("fuse_admin") || User.GetHabbo().HasFuse("fuse_sysadmin")) { int mID = OldB64.Decode(args[2].Substring(0, 2)); int mMessageLength = args[0].Length + args[1].Length + 4; string mMessage = command.Substring(mMessageLength); Response.Initialize((uint)mID); Response.Append(mMessage); User.GetConnection().SendMessage(Response); } } break; case ":manip_chat": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin")) { int mMessageLength = args[0].Length + args[1].Length + 2; string mMessage = command.Substring(mMessageLength); GameClient User = AleedaEnvironment.GetHabboHotel().GetClients().GetClientOfHabbo(AleedaEnvironment.GetHabboHotel().GetHabbos().GetHabbo(args[1]).ID); GameClient.ManipulateChat(User.GetHabbo().Username, mMessage); } } break; case ":ha": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin")) { using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { int mLength = args[0].Length + 1; string mMessage = command.Substring(mLength); Response.Initialize(139); // "BK" Response.Append(mMessage); Server.SendHotelMsg(Response); } } } break; case ":reload_bots": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin")) { AleedaEnvironment.GetCache().GetRoomBots().Reload(); } } break; case ":reload_bot": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin")) { AleedaEnvironment.GetCache().GetRoomBots().ReloadBotID(int.Parse(args[1])); } } break; case ":roomalert": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod")) { int mLength = args[0].Length + 1; string mMessage = command.Substring(mLength); ServerMessage msg = new ServerMessage(139); // "BK" msg.Append(mMessage); Session.GetMessageHandler().SendRoom(msg); } } break; case ":change_desc": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Message = command.Substring(Length); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.AddParamWithValue("description", Message); dbClient.ExecuteQuery("UPDATE private_rooms SET description = @description WHERE id = '" + Session.GetHabbo().RoomId + "'"); } //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Description = Message; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("The description has been changed! Please reload the room if you want."); Session.GetMessageHandler().SendRoom(msg); } } break; case ":change_name": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Message = command.Substring(Length); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.AddParamWithValue("name", Message); dbClient.ExecuteQuery("UPDATE private_rooms SET name = @name WHERE id = '" + Session.GetHabbo().RoomId + "'"); } //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Name = Message; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("The name of the room has been changed! Please reload the room if you want."); Session.GetMessageHandler().SendRoom(msg); } } break; case ":add_tag": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Tag = command.Substring(Length); string CurrentTags = ""; int CurrentTagCount = 0; using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { CurrentTags = dbClient.ReadString("SELECT tags FROM private_rooms WHERE id = '" + Session.GetHabbo().RoomId + "'"); foreach (string tag in CurrentTags.Split(',')) { ++CurrentTagCount; } if (CurrentTagCount != 4) { CurrentTags = Tag + "," + CurrentTags; dbClient.AddParamWithValue("tag", CurrentTags); dbClient.ExecuteQuery("UPDATE private_rooms SET tags = @tag WHERE id = '" + Session.GetHabbo().RoomId + "'"); } //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = CurrentTags; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Added more tags!. ( " + Tag + " )"); Session.GetMessageHandler().SendRoom(msg); } } } break; case ":remove_tag": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { int Length = args[0].Length + 1; string Tag = command.Substring(Length); using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { string CurrentTags = dbClient.ReadString("SELECT tags FROM private_rooms WHERE id = '" + Session.GetHabbo().RoomId + "'"); CurrentTags = CurrentTags.Replace(Tag + ",", ""); dbClient.AddParamWithValue("tag", CurrentTags); dbClient.ExecuteQuery("UPDATE private_rooms SET tags = @tag WHERE id = '" + Session.GetHabbo().RoomId + "'"); //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = CurrentTags; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Removed the tag ( " + Tag + " )"); Session.GetMessageHandler().SendRoom(msg); } } } break; case ":remove_tags": { if (Session.GetHabbo().HasFuse("fuse_admin") || Session.GetHabbo().HasFuse("fuse_sysadmin") || Session.GetHabbo().HasFuse("fuse_mod") || RoomUser.CalculateRights(Session.GetHabbo().RoomId, Session.GetHabbo().ID)) { using (DatabaseClient dbClient = AleedaEnvironment.GetDatabase().GetClient()) { dbClient.ExecuteQuery("UPDATE private_rooms SET tags = '' WHERE id = '" + Session.GetHabbo().RoomId + "'"); //Set the variable AleedaEnvironment.GetCache().GetPrivateRooms().getRoom(Session.GetHabbo().RoomId).Tags = ""; ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("Removed all tags"); Session.GetMessageHandler().SendRoom(msg); } } } break; case ":get_coords": { ServerMessage msg = new ServerMessage(139); // "BK" msg.Append("X: " + Session.GetHabbo().X + "\n"); msg.Append("Y: " + Session.GetHabbo().X + "\n"); Session.GetConnection().SendMessage(msg); } break; default: { ServerMessage msg = new ServerMessage(24); // "@X" msg.AppendInt32(Session.GetHabbo().UnitId); msg.AppendString(command); msg.AppendInt32(0); new ClientMessageHandler(Session).SendRoom(msg); } break; } } catch { } }