diff --git a/Assets/Scripts/CollisionManager.asset b/Assets/Scripts/CollisionManager.asset index 3c19f05..f237e02 100644 --- a/Assets/Scripts/CollisionManager.asset +++ b/Assets/Scripts/CollisionManager.asset @@ -43,7 +43,7 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 17 + Data: 18 - Name: Entry: 7 Data: @@ -109,25 +109,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: gameManager - Name: $v Entry: 7 Data: 6|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: gameManager - Name: k__BackingField Entry: 7 Data: 7|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int32, mscorlib + Data: Marro.PacManUdon.GameManager, Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 7 + Data: 4 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -163,19 +163,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: gameManager + Data: bonusFruit - Name: $v Entry: 7 Data: 9|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: gameManager + Data: bonusFruit - Name: k__BackingField Entry: 7 Data: 10|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.GameManager, Assembly-CSharp + Data: Marro.PacManUdon.BonusFruit, Assembly-CSharp - Name: Entry: 8 Data: @@ -217,25 +217,31 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: bonusFruit + Data: pellets - Name: $v Entry: 7 Data: 12|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: bonusFruit + Data: pellets - Name: k__BackingField Entry: 7 Data: 13|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.BonusFruit, Assembly-CSharp + Data: Marro.PacManUdon.Pellet[], Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField - Entry: 9 - Data: 4 + Entry: 7 + Data: 14|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Component[], UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -250,7 +256,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 14|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 15|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -271,31 +277,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pellets + Data: powerPellets - Name: $v Entry: 7 - Data: 15|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pellets + Data: powerPellets - Name: k__BackingField - Entry: 7 - Data: 16|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.Pellet[], Assembly-CSharp - - Name: - Entry: 8 - Data: - - Name: k__BackingField Entry: 7 Data: 17|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Component[], UnityEngine.CoreModule + Data: UnityEngine.Animator[], UnityEngine.AnimationModule - Name: Entry: 8 Data: + - Name: k__BackingField + Entry: 9 + Data: 17 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -331,25 +331,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: powerPellets + Data: ghosts - Name: $v Entry: 7 Data: 19|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: powerPellets + Data: ghosts - Name: k__BackingField Entry: 7 Data: 20|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Animator[], UnityEngine.AnimationModule + Data: Marro.PacManUdon.Ghost[], Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 20 + Data: 14 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -385,25 +385,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: ghosts + Data: collisionMap - Name: $v Entry: 7 Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: ghosts + Data: collisionMap - Name: k__BackingField Entry: 7 Data: 23|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.Ghost[], Assembly-CSharp + Data: System.Byte[], mscorlib - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 17 + Data: 23 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -439,19 +439,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: powerPelletBlinkEnabled + Data: pelletIndices - Name: $v Entry: 7 Data: 25|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: powerPelletBlinkEnabled + Data: pelletIndices - Name: k__BackingField Entry: 7 Data: 26|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Boolean, mscorlib + Data: System.Int32[], mscorlib - Name: Entry: 8 Data: @@ -493,19 +493,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: powerPelletBlinkToggleInterval + Data: powerPelletBlinkEnabled - Name: $v Entry: 7 Data: 28|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: powerPelletBlinkToggleInterval + Data: powerPelletBlinkEnabled - Name: k__BackingField Entry: 7 Data: 29|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Single, mscorlib + Data: System.Boolean, mscorlib - Name: Entry: 8 Data: @@ -547,19 +547,73 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: powerPelletBlinkProgress + Data: powerPelletBlinkToggleInterval - Name: $v Entry: 7 Data: 31|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: powerPelletBlinkToggleInterval + - Name: k__BackingField + Entry: 7 + Data: 32|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Single, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 32 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 33|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 0 + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: powerPelletBlinkProgress + - Name: $v + Entry: 7 + Data: 34|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: powerPelletBlinkProgress - Name: k__BackingField Entry: 9 - Data: 29 + Data: 32 - Name: k__BackingField Entry: 9 - Data: 29 + Data: 32 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -574,7 +628,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 32|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 35|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -598,70 +652,16 @@ MonoBehaviour: Data: powerPelletBlinkCurrentlyVisible - Name: $v Entry: 7 - Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: powerPelletBlinkCurrentlyVisible - Name: k__BackingField Entry: 9 - Data: 26 + Data: 29 - Name: k__BackingField Entry: 9 - Data: 26 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: false - - Name: _fieldAttributes - Entry: 7 - Data: 34|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: - Entry: 8 - Data: - - Name: - Entry: 8 - Data: - - Name: - Entry: 7 - Data: - - Name: $k - Entry: 1 - Data: syncedPelletsCollected - - Name: $v - Entry: 7 - Data: 35|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: syncedPelletsCollected - - Name: k__BackingField - Entry: 7 - Data: 36|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Byte[], mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 36 + Data: 29 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -697,19 +697,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: collisionMap + Data: pelletMap - Name: $v Entry: 7 Data: 38|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: collisionMap + Data: pelletMap - Name: k__BackingField Entry: 9 - Data: 36 + Data: 23 - Name: k__BackingField Entry: 9 - Data: 36 + Data: 23 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -745,19 +745,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pelletMap + Data: syncedPelletsCollected - Name: $v Entry: 7 Data: 40|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pelletMap + Data: syncedPelletsCollected - Name: k__BackingField Entry: 9 - Data: 36 + Data: 23 - Name: k__BackingField Entry: 9 - Data: 36 + Data: 23 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -793,19 +793,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: ghostPositions + Data: pelletCollectedCount - Name: $v Entry: 7 Data: 42|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: ghostPositions + Data: pelletCollectedCount - Name: k__BackingField Entry: 7 Data: 43|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int32[], mscorlib + Data: System.Byte, mscorlib - Name: Entry: 8 Data: @@ -847,19 +847,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pacManPosition + Data: ghostPositions - Name: $v Entry: 7 Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pacManPosition + Data: ghostPositions - Name: k__BackingField Entry: 9 - Data: 7 + Data: 26 - Name: k__BackingField Entry: 9 - Data: 7 + Data: 26 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -895,19 +895,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: frozen + Data: pacManPosition - Name: $v Entry: 7 Data: 47|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: frozen + Data: pacManPosition - Name: k__BackingField - Entry: 9 - Data: 26 + Entry: 7 + Data: 48|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 26 + Data: 48 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -922,7 +928,55 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 48|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 49|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 0 + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: frozen + - Name: $v + Entry: 7 + Data: 50|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: frozen + - Name: k__BackingField + Entry: 9 + Data: 29 + - Name: k__BackingField + Entry: 9 + Data: 29 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 51|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 diff --git a/Assets/Scripts/CollisionManager.cs b/Assets/Scripts/CollisionManager.cs index 66504eb..94f55e5 100644 --- a/Assets/Scripts/CollisionManager.cs +++ b/Assets/Scripts/CollisionManager.cs @@ -13,28 +13,27 @@ namespace Marro.PacManUdon public class CollisionManager : SyncedObject { public int PelletCount => pellets.Length; - public int PelletCollectedCount { get; private set; } private GameManager gameManager; private BonusFruit bonusFruit; + private Pellet[] pellets; + private Animator[] powerPellets; + private Ghost[] ghosts; - Pellet[] pellets; - Animator[] powerPellets; - Ghost[] ghosts; + private byte[] collisionMap; + private int[] pelletIndices; - bool powerPelletBlinkEnabled; - float powerPelletBlinkToggleInterval; - float powerPelletBlinkProgress; - bool powerPelletBlinkCurrentlyVisible; + private const int mazeWidth = 32; + private const int mazeHeight = 32; - byte[] syncedPelletsCollected; + private bool powerPelletBlinkEnabled; + private float powerPelletBlinkToggleInterval; + private float powerPelletBlinkProgress; + private bool powerPelletBlinkCurrentlyVisible; - byte[] collisionMap; - byte[] pelletMap; - int[] pelletIndices; - - const int mazeWidth = 32; - const int mazeHeight = 32; + private byte[] pelletMap; + private byte[] syncedPelletsCollected; + private byte pelletCollectedCount; private int[] ghostPositions = new int[4]; private int pacManPosition; @@ -188,11 +187,11 @@ namespace Marro.PacManUdon var index = pellet.transform.GetSiblingIndex(); syncedPelletsCollected[index / 8] |= (byte)(1 << index % 8); - PelletCollectedCount++; + pelletCollectedCount++; var pelletType = pellet.isPowerPellet ? EatResult.PowerPellet : EatResult.Pellet; - gameManager.GotPellet(pellet, pellet.isPowerPellet, PelletCollectedCount, PelletCount - PelletCollectedCount); + gameManager.GotPellet(pellet, pellet.isPowerPellet, pelletCollectedCount, PelletCount - pelletCollectedCount); return pelletType; } @@ -205,7 +204,7 @@ namespace Marro.PacManUdon } syncedPelletsCollected = new byte[pellets.Length/8 + 1]; - PelletCollectedCount = 0; + pelletCollectedCount = 0; pelletMap = PacManConstants.GetMazePelletMap(); @@ -268,7 +267,7 @@ namespace Marro.PacManUdon public override void CollectSyncedData(byte[] data, ref int index, NetworkEventType eventType) { - data.Append((byte)PelletCollectedCount, ref index); + data.Append((byte)pelletCollectedCount, ref index); data.Append(syncedPelletsCollected, ref index); data.Append(frozen, ref index); @@ -276,7 +275,7 @@ namespace Marro.PacManUdon public override bool WriteSyncedData(byte[] data, ref int index, NetworkEventType eventType) { - PelletCollectedCount = data.ReadByte(ref index); + pelletCollectedCount = data.ReadByte(ref index); Array.Copy(data, index, syncedPelletsCollected, 0, syncedPelletsCollected.Length); index += syncedPelletsCollected.Length; SetPelletsCollectedFromSync();