Remove packet byte wrangling from OrderManager.

This commit is contained in:
Paul Chote
2021-08-26 20:01:16 +01:00
committed by teinarss
parent 52b597d5d2
commit e389c00a11
6 changed files with 229 additions and 162 deletions

View File

@@ -29,11 +29,10 @@ namespace OpenRA.Network
static bool IsGameStart(byte[] data)
{
if (data.Length > 4 && (data[4] == (byte)OrderType.Disconnect || data[4] == (byte)OrderType.SyncHash))
if (!OrderIO.TryParseOrderPacket(data, out var frame, out var orders))
return false;
var frame = BitConverter.ToInt32(data, 0);
return frame == 0 && data.ToOrderList(null).Any(o => o.OrderString == "StartGame");
return frame == 0 && orders.GetOrders(null).Any(o => o.OrderString == "StartGame");
}
public ReplayRecorder(Func<string> chooseFilename)