Teleport should now work without touching spawnTile

This commit is contained in:
Deathmax 2011-07-03 09:37:48 +08:00
parent 9bb89dd1a0
commit e680e39bb0
2 changed files with 12 additions and 18 deletions

View file

@ -152,10 +152,6 @@ namespace TShockAPI
InitSpawn = false;
Teleporting = true;
TeleportCoords = new Vector2(tileX, tileY);
var spnx = Main.spawnTileX;
var spnY = Main.spawnTileY;
Main.spawnTileX = tileX;
Main.spawnTileY = tileY;
SendData(PacketTypes.WorldInfo);
@ -193,8 +189,6 @@ namespace TShockAPI
}
}
Main.spawnTileX = spnx;
Main.spawnTileY = spnY;
Teleporting = false;
SendData(PacketTypes.WorldInfo);

View file

@ -440,7 +440,7 @@ namespace TShockAPI
private void OnSendData(SendDataEventArgs e)
{
//TODO - Clean this code up
/*switch (e.MsgID)
switch (e.MsgID)
{
case PacketTypes.WorldInfo:
if (e.remoteClient >= 0 && Players[e.remoteClient] != null && Players[e.remoteClient].Teleporting)
@ -449,20 +449,20 @@ namespace TShockAPI
var writer = new BinaryWriter(stream);
stream.Position = 4;
writer.Write(BitConverter.GetBytes(7), 0, 1);
writer.Write((int)Main.time);
writer.Write(Main.dayTime);
writer.Write(BitConverter.GetBytes((int)Main.time));
writer.Write(BitConverter.GetBytes(Main.dayTime));
writer.Write((byte)Main.moonPhase);
writer.Write(Main.bloodMoon);
writer.Write(Main.maxTilesX);
writer.Write(Main.maxTilesY);
writer.Write((int)Players[e.remoteClient].TeleportCoords.X);
writer.Write((int)Players[e.remoteClient].TeleportCoords.Y);
writer.Write((int)Main.worldSurface);
writer.Write((int)Main.rockLayer);
writer.Write(Main.worldID);
writer.Write(BitConverter.GetBytes(Main.maxTilesX));
writer.Write(BitConverter.GetBytes(Main.maxTilesY));
writer.Write(BitConverter.GetBytes((int)Players[e.remoteClient].TeleportCoords.X));
writer.Write(BitConverter.GetBytes((int)Players[e.remoteClient].TeleportCoords.Y));
writer.Write(BitConverter.GetBytes((int)Main.worldSurface));
writer.Write(BitConverter.GetBytes((int)Main.rockLayer));
writer.Write(BitConverter.GetBytes(Main.worldID));
writer.Write((byte)(0 + (WorldGen.shadowOrbSmashed ? 1 : 0) + (NPC.downedBoss1 ? 2 : 0) + (NPC.downedBoss2 ? 4 : 0) + (NPC.downedBoss3 ? 8 : 0)));
writer.Write(Encoding.ASCII.GetBytes(Main.worldName));
var length = (int)(stream.Length - 5);
var length = (int)(stream.Length - 4);
stream.Position = 0;
writer.Write(length);
NetMessage.buffer[e.remoteClient].writeBuffer = stream.GetBuffer();
@ -478,7 +478,7 @@ namespace TShockAPI
break;
default:
break;
}*/
}
}
private void OnGreetPlayer(int who, HandledEventArgs e)