Fixes wordfilter permission checks (#670).

This commit is contained in:
Mike 2020-06-07 04:36:15 +02:00
parent f4fd43eb89
commit 6615588b34

View File

@ -1,28 +1,37 @@
package com.eu.habbo.messages.incoming.rooms;
import com.eu.habbo.Emulator;
import com.eu.habbo.habbohotel.modtool.ScripterManager;
import com.eu.habbo.habbohotel.rooms.Room;
import com.eu.habbo.messages.incoming.MessageHandler;
public class RoomWordFilterModifyEvent extends MessageHandler {
@Override
public void handle() throws Exception {
int roomId = this.packet.readInt();
boolean add = this.packet.readBoolean();
final int roomId = this.packet.readInt();
final boolean add = this.packet.readBoolean();
String word = this.packet.readString();
if (word.length() > 25) {
word = word.substring(0, 24);
}
Room room = Emulator.getGameEnvironment().getRoomManager().getRoom(roomId);
// Get current room of user.
final Room room = this.client.getHabbo().getHabboInfo().getCurrentRoom();
if (room == null || room.getId() != roomId) {
return;
}
if (room != null) {
if (add) {
room.addToWordFilter(word);
} else {
room.removeFromWordFilter(word);
}
// Check if owner.
if (!room.isOwner(this.client.getHabbo())) {
ScripterManager.scripterDetected(this.client, String.format("User (%s) tried to change wordfilter for a not owned room.", this.client.getHabbo().getHabboInfo().getUsername()));
return;
}
// Modify word filter.
if (add) {
room.addToWordFilter(word);
} else {
room.removeFromWordFilter(word);
}
}
}