public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet) { Room Room = Session.GetHabbo().CurrentRoom; if (Room == null) { return; } if (((Room.WhoCanBan == 0 && !Room.CheckRights(Session, true) && Room.Group == null) || (Room.WhoCanBan == 1 && !Room.CheckRights(Session)) && Room.Group == null) || (Room.Group != null && !Room.CheckRights(Session, false, true))) { return; } int UserId = Packet.PopInt(); int RoomId = Packet.PopInt(); string R = Packet.PopString(); RoomUser User = Room.GetRoomUserManager().GetRoomUserByHabbo(Convert.ToInt32(UserId)); if (User == null || User.IsBot) { return; } if (Room.OwnerId == UserId) { return; } if (User.GetClient().GetHabbo().GetPermissions().HasRight("mod_tool")) { return; } long Time = 0; if (R.ToLower().Contains("hour")) { Time = 3600; } else if (R.ToLower().Contains("day")) { Time = 86400; } else if (R.ToLower().Contains("perm")) { Time = 78892200; } Room.AddBan(UserId, Time); Room.GetRoomUserManager().RemoveUserFromRoom(User.GetClient(), true, true); NeonEnvironment.GetGame().GetAchievementManager().ProgressAchievement(Session, "ACH_SelfModBanSeen", 1); }
public void Parse(GameClient Session, ClientPacket Packet) { if (Session.GetHabbo() == null) { return; } Room room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (room == null || (room.RoomData.BanFuse != 1 || !room.CheckRights(Session)) && !room.CheckRights(Session, true)) { return; } int pId = Packet.PopInt(); int num = Packet.PopInt(); string str = Packet.PopString(); RoomUser roomUserByHabbo = room.GetRoomUserManager().GetRoomUserByHabboId(pId); int Time; if (str.Equals("RWUAM_BAN_USER_HOUR")) { Time = 3600; } else if (str.Equals("RWUAM_BAN_USER_DAY")) { Time = 86400; } else { if (!str.Equals("RWUAM_BAN_USER_PERM")) { return; } Time = 429496729; } if (roomUserByHabbo == null || roomUserByHabbo.IsBot || (room.CheckRights(roomUserByHabbo.GetClient(), true) || roomUserByHabbo.GetClient().GetHabbo().HasFuse("fuse_mod") || roomUserByHabbo.GetClient().GetHabbo().HasFuse("fuse_no_kick"))) { return; } room.AddBan(pId, Time); room.GetRoomUserManager().RemoveUserFromRoom(roomUserByHabbo.GetClient(), true, true); }
public void ApplySanction(GameClient Session, int ReportedUser) { if (ReportedUser == 0) { return; } Habbo UserReport = ButterflyEnvironment.GetHabboById(ReportedUser); if (UserReport == null) { return; } Session.GetHabbo().GetMessenger().DestroyFriendship(UserReport.Id); ServerPacket Response = new ServerPacket(ServerPacketHeader.IgnoreStatusMessageComposer); Response.WriteInteger(1); Response.WriteString(UserReport.Username); Session.SendPacket(Response); Room room = ButterflyEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (room == null || (room.RoomData.BanFuse != 1 || !room.CheckRights(Session)) && !room.CheckRights(Session, true)) { return; } RoomUser roomUserByHabbo = room.GetRoomUserManager().GetRoomUserByHabboId(UserReport.Id); if (roomUserByHabbo == null || roomUserByHabbo.IsBot || (room.CheckRights(roomUserByHabbo.GetClient(), true) || roomUserByHabbo.GetClient().GetHabbo().HasFuse("fuse_mod") || roomUserByHabbo.GetClient().GetHabbo().HasFuse("fuse_no_kick"))) { return; } room.AddBan(UserReport.Id, 429496729); room.GetRoomUserManager().RemoveUserFromRoom(roomUserByHabbo.GetClient(), true, true); }