Fix teleport invisible bug

This commit is contained in:
Jose Flores 2020-08-26 11:24:18 -03:00
parent 860afa0d64
commit ce11bf8849
3 changed files with 7 additions and 7 deletions

View File

@ -2611,7 +2611,7 @@ public class Room implements Comparable<Room>, ISerialize, Runnable {
habbo.getRoomUnit().getCurrentLocation().removeUnit(habbo.getRoomUnit()); habbo.getRoomUnit().getCurrentLocation().removeUnit(habbo.getRoomUnit());
} }
if (sendRemovePacket && habbo.getRoomUnit() != null) { if (sendRemovePacket && habbo.getRoomUnit() != null && !habbo.getRoomUnit().isTeleporting) {
this.sendComposer(new RoomUserRemoveComposer(habbo.getRoomUnit()).compose()); this.sendComposer(new RoomUserRemoveComposer(habbo.getRoomUnit()).compose());
} }

View File

@ -586,11 +586,11 @@ public class RoomManager {
habbo.getClient().sendResponse(new HideDoorbellComposer("")); habbo.getClient().sendResponse(new HideDoorbellComposer(""));
if (habbo.getRoomUnit() != null) { if (habbo.getRoomUnit() != null) {
Room existingRoom = habbo.getRoomUnit().getRoom(); RoomUnit existingRoom = habbo.getRoomUnit();
if (existingRoom != null) { if (existingRoom.getRoom() != null) {
if (habbo.getRoomUnit().getCurrentLocation() != null) if (existingRoom.getCurrentLocation() != null)
habbo.getRoomUnit().getCurrentLocation().removeUnit(habbo.getRoomUnit()); existingRoom.getCurrentLocation().removeUnit(existingRoom);
habbo.getRoomUnit().getRoom().sendComposer(new RoomUserRemoveComposer(habbo.getRoomUnit()).compose()); existingRoom.getRoom().sendComposer(new RoomUserRemoveComposer(existingRoom).compose());
} }
habbo.getRoomUnit().setRoom(null); habbo.getRoomUnit().setRoom(null);
} }

View File

@ -59,7 +59,7 @@ class TeleportActionThree implements Runnable {
this.client.getHabbo().getRoomUnit().setRotation(RoomUserRotation.values()[targetTeleport.getRotation() % 8]); this.client.getHabbo().getRoomUnit().setRotation(RoomUserRotation.values()[targetTeleport.getRotation() % 8]);
if (targetRoom != this.room) { if (targetRoom != this.room) {
this.room.removeHabbo(this.client.getHabbo(), true); this.room.removeHabbo(this.client.getHabbo(), false);
Emulator.getGameEnvironment().getRoomManager().enterRoom(this.client.getHabbo(), targetRoom.getId(), "", Emulator.getConfig().getBoolean("hotel.teleport.locked.allowed"), teleportLocation); Emulator.getGameEnvironment().getRoomManager().enterRoom(this.client.getHabbo(), targetRoom.getId(), "", Emulator.getConfig().getBoolean("hotel.teleport.locked.allowed"), teleportLocation);
} }