Pacman syncs really well now

This commit is contained in:
2026-01-16 20:36:21 +01:00
parent c41491e55e
commit 154c642cce
15 changed files with 1099 additions and 593 deletions

View File

@@ -3,8 +3,6 @@ using UnityEngine;
namespace Marro.PacManUdon
{
enum PacManGhostType
{
Caught,
@@ -48,7 +46,6 @@ namespace Marro.PacManUdon
private Vector3 startPosition;
private Quaternion startRotation;
private Vector3 startScale;
private Vector2 homePosition;
private Vector2 idlePosition1;
@@ -81,7 +78,7 @@ namespace Marro.PacManUdon
private bool housePelletCounterActive;
private bool turnAroundSoon;
public void Initialize(PacMan pacMan, Ghost blinky, Vector2 homePosition, Vector2 idlePosition1, Vector2 idlePosition2, Vector2 cornerPosition)
public void Initialize(PacMan pacMan, Ghost blinky, Transform startTransform, Vector2 homePosition, Vector2 idlePosition1, Vector2 idlePosition2, Vector2 cornerPosition)
{
ghostManager = transform.parent.GetComponent<GhostManager>();
animator = GetComponent<Animator>();
@@ -96,21 +93,16 @@ namespace Marro.PacManUdon
scoreBonusDisplay = transform.Find("ScoreBonusDisplay").gameObject.GetComponent<ScoreBonusDisplay>();
scoreBonusDisplay.Initialize();
startPosition = transform.localPosition;
startRotation = transform.localRotation;
startScale = transform.localScale;
startPosition = startTransform.localPosition;
startRotation = startTransform.localRotation;
frozenState = PacManGhostFrozenState.Frozen;
// Debug.Log($"{gameObject} Begin localScale = {initialScale}");
}
public void Reset()
{
// Debug.Log($"{gameObject} Reset!");
transform.localPosition = startPosition;
transform.localRotation = startRotation;
transform.localScale = startScale;
// Debug.Log($"{gameObject} Reset localScale = {transform.localScale}");
transform.SetLocalPositionAndRotation(startPosition, startRotation);
if (startState == PacManGhostStartState.Outside)
{