Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReceiveBytes()

static void Terraria.NetMessage.ReceiveBytes ( byte[] bytes,
int streamLength,
int i = 256 )
inlinestatic

Definition at line 2461 of file NetMessage.cs.

2462 {
2463 lock (buffer[i])
2464 {
2465 try
2466 {
2467 Buffer.BlockCopy(bytes, 0, buffer[i].readBuffer, buffer[i].totalData, streamLength);
2468 buffer[i].totalData += streamLength;
2469 buffer[i].checkBytes = true;
2470 }
2471 catch
2472 {
2473 if (Main.netMode == 1)
2474 {
2475 Main.menuMode = 15;
2476 Main.statusText = Language.GetTextValue("Error.BadHeaderBufferOverflow");
2477 Netplay.Disconnect = true;
2478 }
2479 else
2480 {
2481 Netplay.Clients[i].PendingTermination = true;
2482 }
2483 }
2484 }
2485 }
static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count)
Definition Buffer.cs:102
static string GetTextValue(string key)
Definition Language.cs:15
static MessageBuffer[] buffer
Definition NetMessage.cs:61

References System.Buffer.BlockCopy(), Terraria.NetMessage.buffer, System.bytes, Terraria.Netplay.Clients, Terraria.Localization.Language.GetTextValue(), and Terraria.Main.netMode.

Referenced by Terraria.RemoteServer.ClientReadCallBack(), and Terraria.RemoteClient.ServerReadCallBack().