Revert teleport
This commit is contained in:
parent
4a6bacfe98
commit
e95ea38d35
2 changed files with 16 additions and 8 deletions
|
|
@ -152,6 +152,10 @@ namespace TShockAPI
|
||||||
InitSpawn = false;
|
InitSpawn = false;
|
||||||
Teleporting = true;
|
Teleporting = true;
|
||||||
TeleportCoords = new Vector2(tileX, tileY);
|
TeleportCoords = new Vector2(tileX, tileY);
|
||||||
|
var spnx = Main.spawnTileX;
|
||||||
|
var spnY = Main.spawnTileY;
|
||||||
|
Main.spawnTileX = tileX;
|
||||||
|
Main.spawnTileY = tileY;
|
||||||
|
|
||||||
SendData(PacketTypes.WorldInfo);
|
SendData(PacketTypes.WorldInfo);
|
||||||
|
|
||||||
|
|
@ -189,6 +193,8 @@ namespace TShockAPI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Main.spawnTileX = spnx;
|
||||||
|
Main.spawnTileY = spnY;
|
||||||
Teleporting = false;
|
Teleporting = false;
|
||||||
SendData(PacketTypes.WorldInfo);
|
SendData(PacketTypes.WorldInfo);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -440,19 +440,19 @@ namespace TShockAPI
|
||||||
private void OnSendData(SendDataEventArgs e)
|
private void OnSendData(SendDataEventArgs e)
|
||||||
{
|
{
|
||||||
//TODO - Clean this code up
|
//TODO - Clean this code up
|
||||||
switch (e.MsgID)
|
/*switch (e.MsgID)
|
||||||
{
|
{
|
||||||
case PacketTypes.WorldInfo:
|
case PacketTypes.WorldInfo:
|
||||||
if (e.remoteClient >= 0 && Players[e.remoteClient] != null && Players[e.remoteClient].Teleporting)
|
if (e.remoteClient >= 0 && Players[e.remoteClient] != null && Players[e.remoteClient].Teleporting)
|
||||||
{
|
{
|
||||||
var stream = new MemoryStream();
|
var stream = new MemoryStream(messageBuffer.writeBufferMax);
|
||||||
var writer = new BinaryWriter(stream);
|
var writer = new BinaryWriter(stream);
|
||||||
stream.Position = 4;
|
stream.Position = 4;
|
||||||
writer.Write(BitConverter.GetBytes(7), 0, 1);
|
writer.Write(BitConverter.GetBytes(7), 0, 1);
|
||||||
|
writer.Write((int)Main.time);
|
||||||
writer.Write(Main.dayTime);
|
writer.Write(Main.dayTime);
|
||||||
writer.Write((byte)Main.moonPhase);
|
writer.Write((byte)Main.moonPhase);
|
||||||
writer.Write(Main.bloodMoon);
|
writer.Write(Main.bloodMoon);
|
||||||
writer.Write((int)Main.time);
|
|
||||||
writer.Write(Main.maxTilesX);
|
writer.Write(Main.maxTilesX);
|
||||||
writer.Write(Main.maxTilesY);
|
writer.Write(Main.maxTilesY);
|
||||||
writer.Write((int)Players[e.remoteClient].TeleportCoords.X);
|
writer.Write((int)Players[e.remoteClient].TeleportCoords.X);
|
||||||
|
|
@ -460,23 +460,25 @@ namespace TShockAPI
|
||||||
writer.Write((int)Main.worldSurface);
|
writer.Write((int)Main.worldSurface);
|
||||||
writer.Write((int)Main.rockLayer);
|
writer.Write((int)Main.rockLayer);
|
||||||
writer.Write(Main.worldID);
|
writer.Write(Main.worldID);
|
||||||
writer.Write(0 + (WorldGen.shadowOrbSmashed ? 1 : 0) + (NPC.downedBoss1 ? 2 : 0) + (NPC.downedBoss2 ? 4 : 0) + (NPC.downedBoss3 ? 8 : 0));
|
writer.Write((byte)(0 + (WorldGen.shadowOrbSmashed ? 1 : 0) + (NPC.downedBoss1 ? 2 : 0) + (NPC.downedBoss2 ? 4 : 0) + (NPC.downedBoss3 ? 8 : 0)));
|
||||||
writer.Write(Main.worldName);
|
writer.Write(Encoding.ASCII.GetBytes(Main.worldName));
|
||||||
var length = (int)(stream.Position - 5);
|
var length = (int)(stream.Length - 5);
|
||||||
stream.Position = 0;
|
stream.Position = 0;
|
||||||
writer.Write(length);
|
writer.Write(length);
|
||||||
|
NetMessage.buffer[e.remoteClient].writeBuffer = stream.GetBuffer();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
NetMessage.buffer[e.remoteClient].spamCount++;
|
NetMessage.buffer[e.remoteClient].spamCount++;
|
||||||
Netplay.serverSock[e.remoteClient].networkStream.BeginWrite(stream.GetBuffer(), 0, (int)stream.Length, new AsyncCallback(Netplay.serverSock[e.remoteClient].ServerWriteCallBack), Netplay.serverSock[e.remoteClient].networkStream);
|
Netplay.serverSock[e.remoteClient].networkStream.BeginWrite(NetMessage.buffer[e.remoteClient].writeBuffer, 0, (int)stream.Length, new AsyncCallback(Netplay.serverSock[e.remoteClient].ServerWriteCallBack), Netplay.serverSock[e.remoteClient].networkStream);
|
||||||
}
|
}
|
||||||
catch { }
|
catch { }
|
||||||
|
NetMessage.buffer[e.remoteClient].writeLocked = false;
|
||||||
e.Handled = true;
|
e.Handled = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnGreetPlayer(int who, HandledEventArgs e)
|
private void OnGreetPlayer(int who, HandledEventArgs e)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue