Expanded sync
This commit is contained in:
@@ -31,6 +31,7 @@ namespace Marro.PacManUdon
|
||||
|
||||
byte[] collisionMap;
|
||||
byte[] pelletMap;
|
||||
int[] pelletIndices;
|
||||
|
||||
const int mazeWidth = 32;
|
||||
const int mazeHeight = 32;
|
||||
@@ -53,8 +54,7 @@ namespace Marro.PacManUdon
|
||||
powerPelletBlinkToggleInterval = PacManConstants.GetPowerPelletBlinkToggleInterval();
|
||||
|
||||
collisionMap = PacManConstants.GetMazeCollisionInfo();
|
||||
|
||||
SubscribeToEvent(NetworkEventType.SyncPellets);
|
||||
pelletIndices = PacManConstants.GetMazePelletIndices();
|
||||
|
||||
Reset();
|
||||
}
|
||||
@@ -214,10 +214,11 @@ namespace Marro.PacManUdon
|
||||
|
||||
private void SetPelletsCollectedFromSync()
|
||||
{
|
||||
for (int i = 0; i < pellets.Length; i++)
|
||||
for (byte i = 0; i < pellets.Length; i++)
|
||||
{
|
||||
var active = (syncedPelletsCollected[i/8] & (byte)(1 << i%8)) == 0;
|
||||
pellets[i].gameObject.SetActive(active);
|
||||
pelletMap[pelletIndices[i]] = i;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
@@ -267,11 +268,6 @@ namespace Marro.PacManUdon
|
||||
|
||||
public override void CollectSyncedData(byte[] data, ref int index, NetworkEventType eventType)
|
||||
{
|
||||
if (eventType != NetworkEventType.SyncPellets)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
data.Append((byte)PelletCollectedCount, ref index);
|
||||
data.Append(syncedPelletsCollected, ref index);
|
||||
|
||||
@@ -280,11 +276,6 @@ namespace Marro.PacManUdon
|
||||
|
||||
public override bool WriteSyncedData(byte[] data, ref int index, NetworkEventType eventType)
|
||||
{
|
||||
if (eventType != NetworkEventType.SyncPellets)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
PelletCollectedCount = data.ReadByte(ref index);
|
||||
Array.Copy(data, index, syncedPelletsCollected, 0, syncedPelletsCollected.Length);
|
||||
index += syncedPelletsCollected.Length;
|
||||
|
||||
Reference in New Issue
Block a user