• Online
  • Nome Do Servidor
  • Versão
  • Web Site
  • Online
  • MU SFX
  • SEASON 3.5
  • Entrar
  • Online
  • MU NEXUS
  • SEASON 1
  • Entrar
  • Online
  • ALFA MU
  • 97D CUSTOM V3
  • Entrar
  • Online
  • SIGMA MU
  • 97D CUSTOM
  • Entrar
  • Online
  • MU THEFENIX
  • 97D
  • Entrar
  • Online
  • Souls Mu
  • Season 18
  • Entrar
  • Online
  • Mu War Field
  • 97D + 3.0
  • Entrar
  • Online
  • Mu Collection
  • Season 8
  • Entrar
  • Online
  • Mu Star
  • Mobile
  • Entrar
  • Online
  • Mu Dragons
  • Season 2
  • Entrar
  • Online
  • Last Mu
  • Season 6
  • Entrar
  • Online
  • Mu Carioca
  • Season 4
  • Entrar
  • Online
  • Mu System
  • Season 2.5
  • Entrar
  • Online
  • Mu Fanatic
  • 97D Exclusivo
  • Entrar
  • Online
  • Lexus Mu
  • Season 6
  • Entrar
  • Online
  • Mu Memphis
  • Season 6
  • Entrar
  • Online
  • Mu Play
  • 97D + 99i
  • Entrar
  • Online
  • Mu Thunder BR
  • Season 2
  • Entrar
  • Online
  • Mu FuryStorm
  • Season 6
  • Entrar
  • Online
  • Mu Fallout
  • Season 4
  • Entrar
  • Online
  • MU PVP
  • Mobile
  • Entrar
    • Online
    • Arcane Mu
    • Season 19
    • Entrar
    • Online
    • Unic Mu
    • 97D + 99i
    • Entrar
    • Online
    • MU XP
    • Season 6.3
    • Entrar
    • Online
    • SEU SERVIDOR AQUI
    • 1.1.1
    • Saiba +
    • Offline
    • SEU SERVIDOR AQUI
    • 1.1.1
    • Saiba +

Como tirar bug do teleporte [Mercury Emulador]

Tutorial um pouco digamos mediano, mas eficaz.

== TUTORIAL ==

1: Abra o Projeto do Mercury Emulador com o Visual Studio.

2: Dê CTRL + F e procure pela seguinte linha:

case InteractionType.teleport: {
bool flag3 = false;

3: Após encontrar a Linha citada anteriormente, apaga ela e substitua a mesma por esse código.

case InteractionType.teleport: {
bool flag3 = false;
bool flag4 = false;
if (this.InteractingUser > 0)
{
RoomUser roomUserByHabbo2 = this.GetRoom().GetRoomUserManager().GetRoomUserByHabbo(this.InteractingUser);
if (roomUserByHabbo2 == null)
{
this.InteractingUser = 0u;
return;
}
if (roomUserByHabbo2.Coordinate == this.Coordinate)
{
roomUserByHabbo2.AllowOverride = false;
if (TeleHandler.IsTeleLinked(this.Id, this.mRoom))
{
flag4 = true;
uint linkedTele = TeleHandler.GetLinkedTele(this.Id, this.mRoom);
uint teleRoomId = TeleHandler.GetTeleRoomId(linkedTele, this.mRoom);
if (teleRoomId == this.RoomId)
{
RoomItem item2 = this.GetRoom().GetRoomItemHandler().GetItem(linkedTele);
if (item2 == null)
{
roomUserByHabbo2.UnlockWalking();
}
else
{
roomUserByHabbo2.SetPos(item2.GetX, item2.GetY, item2.GetZ);
roomUserByHabbo2.SetRot(item2.Rot, false);
item2.ExtraData = "2";
item2.UpdateState(false, true);
item2.InteractingUser2 = this.InteractingUser;
}
}
else
{
if (!roomUserByHabbo2.IsBot && roomUserByHabbo2 != null && roomUserByHabbo2.GetClient() != null && roomUserByHabbo2.GetClient().GetHabbo() != null && roomUserByHabbo2.GetClient().GetMessageHandler() != null)
{
roomUserByHabbo2.GetClient().GetHabbo().IsTeleporting = true;
roomUserByHabbo2.GetClient().GetHabbo().TeleportingRoomID = teleRoomId;
roomUserByHabbo2.GetClient().GetHabbo().TeleporterId = linkedTele;
roomUserByHabbo2.GetClient().GetMessageHandler().PrepareRoomForUser(teleRoomId, "");
}
}
this.InteractingUser = 0u;
}
else
{
roomUserByHabbo2.UnlockWalking();
this.InteractingUser = 0u;
roomUserByHabbo2.CanWalk = false;
roomUserByHabbo2.TeleportEnabled = false;
roomUserByHabbo2.MoveTo(this.SquareInFront);
roomUserByHabbo2.CanWalk = true;
}
}
else
{
if (roomUserByHabbo2.Coordinate == this.SquareInFront)
{
roomUserByHabbo2.AllowOverride = true;
flag3 = true;
if (roomUserByHabbo2.IsWalking && (roomUserByHabbo2.GoalX != this.mX || roomUserByHabbo2.GoalY != this.mY))
{
roomUserByHabbo2.ClearMovement(true);
}
roomUserByHabbo2.SetRot(PathFinding.PathFinder.CalculateRotation(roomUserByHabbo2.X, roomUserByHabbo2.Y, this.mX, this.mY));
roomUserByHabbo2.CanWalk = false;
roomUserByHabbo2.AllowOverride = false;
roomUserByHabbo2.UnlockWalking();
roomUserByHabbo2.TeleportEnabled = true;
roomUserByHabbo2.MoveTo(this.GetX, this.GetY, true);
roomUserByHabbo2.TeleportEnabled = false;
roomUserByHabbo2.UnlockWalking();
}
else
{
this.InteractingUser = 0u;
}
}
}
if (this.InteractingUser2 > 0u)
{
RoomUser roomUserByHabbo3 = this.GetRoom().GetRoomUserManager().GetRoomUserByHabbo(this.InteractingUser2);
if (roomUserByHabbo3 != null)
{
flag3 = true;
roomUserByHabbo3.UnlockWalking();
roomUserByHabbo3.MoveTo(this.SquareInFront);
}
this.InteractingUser2 = 0u;
}
if (flag3)
{
if (this.ExtraData != "1")
{
this.ExtraData = "1";
this.UpdateState(false, true);
}
}
else
{
if (flag4)
{
if (this.ExtraData != "2")
{
this.ExtraData = "2";
this.UpdateState(false, true);
}
}
else
{
if (this.ExtraData != "0")
{
this.ExtraData = "0";
this.UpdateState(false, true);
}
}
}
this.ReqUpdate(1, false);
return;
}

4: Após fazer os passos anteriores, dê debug no seu projeto e salve.

Créditos:
Biel
Server Habbos

0 comments: