Arcturus-Community/src/main/java/com/eu/habbo/messages/incoming/rooms/HandleDoorbellEvent.java

35 lines
1.6 KiB
Java
Raw Normal View History

2018-07-06 15:30:00 +02:00
package com.eu.habbo.messages.incoming.rooms;
import com.eu.habbo.Emulator;
import com.eu.habbo.habbohotel.users.Habbo;
import com.eu.habbo.messages.incoming.MessageHandler;
import com.eu.habbo.messages.outgoing.hotelview.HotelViewComposer;
import com.eu.habbo.messages.outgoing.rooms.HideDoorbellComposer;
import com.eu.habbo.messages.outgoing.rooms.RoomAccessDeniedComposer;
2019-05-26 20:14:53 +02:00
public class HandleDoorbellEvent extends MessageHandler {
2018-07-06 15:30:00 +02:00
@Override
2019-05-26 20:14:53 +02:00
public void handle() throws Exception {
if (this.client.getHabbo().getHabboInfo().getCurrentRoom() != null && this.client.getHabbo().getHabboInfo().getCurrentRoom().hasRights(this.client.getHabbo())) {
2018-07-06 15:30:00 +02:00
String username = this.packet.readString();
boolean accepted = this.packet.readBoolean();
Habbo habbo = Emulator.getGameServer().getGameClientManager().getHabbo(username);
2019-05-26 20:14:53 +02:00
if (habbo != null && habbo.getHabboInfo().getRoomQueueId() == this.client.getHabbo().getHabboInfo().getCurrentRoom().getId()) {
2018-07-06 15:30:00 +02:00
this.client.getHabbo().getHabboInfo().getCurrentRoom().removeFromQueue(habbo);
2019-05-26 20:14:53 +02:00
if (accepted) {
2018-07-06 15:30:00 +02:00
habbo.getClient().sendResponse(new HideDoorbellComposer(""));
Emulator.getGameEnvironment().getRoomManager().enterRoom(habbo, this.client.getHabbo().getHabboInfo().getCurrentRoom().getId(), "", true);
2019-05-26 20:14:53 +02:00
} else {
2018-07-06 15:30:00 +02:00
habbo.getClient().sendResponse(new RoomAccessDeniedComposer(""));
habbo.getClient().sendResponse(new HotelViewComposer());
}
habbo.getHabboInfo().setRoomQueueId(0);
}
}
}
}