Switched to 1d array CollectSyncedData

This commit is contained in:
2026-01-17 19:25:45 +01:00
parent 3642006bb2
commit b68b3d1c25
16 changed files with 216 additions and 78 deletions

View File

@@ -30,32 +30,26 @@ namespace Marro.PacManUdon
protected abstract void UpdateAnimator();
public override void AppendSyncedData(byte[][] data, ref int offset, NetworkEventType eventType)
public override void CollectSyncedData(byte[] data, ref int index, NetworkEventType eventType)
{
if (eventType != NetworkEventType.PacManTurn)
{
return;
}
var position = GetPosition();
data[offset++] = BitConverter.GetBytes(position.x);
data[offset++] = BitConverter.GetBytes(position.y);
var direction = GetDirection();
data[offset++] = BitConverter.GetBytes(direction.x);
data[offset++] = BitConverter.GetBytes(direction.y);
ByteUtils.Append(GetPosition(), data, ref index);
ByteUtils.Append(GetDirection(), data, ref index);
}
public override bool SetSyncedData(byte[] data, ref int offset, NetworkEventType eventType)
public override bool WriteSyncedData(byte[] data, ref int index, NetworkEventType eventType)
{
if (eventType != NetworkEventType.PacManTurn)
{
return true;
}
SetPosition(new Vector2(BitConverter.ToSingle(data, offset), BitConverter.ToSingle(data, offset + 4)));
SetDirection(new Vector2(BitConverter.ToSingle(data, offset + 8), BitConverter.ToSingle(data, offset + 12)));
offset += 16;
SetPosition(ByteUtils.ReadVector2(data, ref index));
SetDirection(ByteUtils.ReadVector2(data, ref index));
return true;
}