Separated time sequence finish
This commit is contained in:
@@ -134,14 +134,14 @@ namespace Marro.PacManUdon
|
||||
|
||||
private void StartAttractMode()
|
||||
{
|
||||
#if RECORDING_DEMO
|
||||
// #if RECORDING_DEMO
|
||||
// recorder.gameObject.SetActive(true);
|
||||
StartTimeSequence(PacManTimeSequence.AttractScreenIntroduction);
|
||||
#else
|
||||
SetGameState(PacManGameState.AttractMode);
|
||||
HideEverything();
|
||||
demo.gameObject.SetActive(true);
|
||||
#endif
|
||||
// #else
|
||||
// SetGameState(PacManGameState.AttractMode);
|
||||
// HideEverything();
|
||||
// demo.gameObject.SetActive(true);
|
||||
// #endif
|
||||
}
|
||||
|
||||
private void InitializeNewGame()
|
||||
@@ -499,6 +499,7 @@ namespace Marro.PacManUdon
|
||||
// I'm not redoing this unless I get instantiatable classes before I wrap up this project.
|
||||
|
||||
bool currentlyInTimeSequence;
|
||||
bool waitingForTimeSequencefinish;
|
||||
PacManTimeSequence currentTimeSequence;
|
||||
bool hasTimeSequenceQueued;
|
||||
private DataList timeSequenceQueue;
|
||||
@@ -589,11 +590,24 @@ namespace Marro.PacManUdon
|
||||
if (timeSequenceProgress >= timeSequenceKeyframeTimes.Length)
|
||||
{
|
||||
currentlyInTimeSequence = false;
|
||||
TimeSequencePrepareForFinish();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void TimeSequencePrepareForFinish()
|
||||
{
|
||||
if (Networking.IsOwner(gameObject))
|
||||
{
|
||||
TimeSequenceExecuteFinish();
|
||||
}
|
||||
else
|
||||
{
|
||||
waitingForTimeSequencefinish = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void TimeSequenceExecuteStep(int sequenceProgress)
|
||||
{
|
||||
// Debug.Log($"{gameObject} Triggered time sequence step for sequence {currentTimeSequence} with progress {sequenceProgress}");
|
||||
@@ -611,9 +625,6 @@ namespace Marro.PacManUdon
|
||||
case PacManTimeSequence.WaitForStart:
|
||||
TimeSequenceStepWaitForStart(sequenceProgress);
|
||||
break;
|
||||
case PacManTimeSequence.WaitForStartTimeout:
|
||||
TimeSequenceStepWaitForStartTimeout(sequenceProgress);
|
||||
break;
|
||||
case PacManTimeSequence.StartNewGame:
|
||||
TimeSequenceStepStartNewGame(sequenceProgress);
|
||||
break;
|
||||
@@ -644,6 +655,66 @@ namespace Marro.PacManUdon
|
||||
case PacManTimeSequence.Intermission3:
|
||||
TimeSequenceStepIntermission3(sequenceProgress);
|
||||
break;
|
||||
case PacManTimeSequence.AttractScreenWaitToRestart:
|
||||
case PacManTimeSequence.WaitForStartTimeout:
|
||||
// These only have a finished state
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void TimeSequenceExecuteFinish()
|
||||
{
|
||||
// Debug.Log($"{gameObject} Triggered time sequence step for sequence {currentTimeSequence} with progress {sequenceProgress}");
|
||||
switch (currentTimeSequence)
|
||||
{
|
||||
default:
|
||||
Debug.LogError($"{gameObject} No time sequence finish known for sequence {currentTimeSequence}");
|
||||
break;
|
||||
case PacManTimeSequence.AttractScreenIntroduction:
|
||||
TimeSequenceFinishedAttractScreenIntroduction();
|
||||
break;
|
||||
case PacManTimeSequence.AttractScreenDemo:
|
||||
TimeSequenceFinishedAttractScreenDemo();
|
||||
break;
|
||||
case PacManTimeSequence.AttractScreenWaitToRestart:
|
||||
TimeSequenceFinishedAttractScreenWaitToRestart();
|
||||
break;
|
||||
case PacManTimeSequence.WaitForStart:
|
||||
TimeSequenceFinishedWaitForStart();
|
||||
break;
|
||||
case PacManTimeSequence.WaitForStartTimeout:
|
||||
TimeSequenceFinishedWaitForStart();
|
||||
break;
|
||||
case PacManTimeSequence.StartNewGame:
|
||||
TimeSequenceFinishedStartNewGame();
|
||||
break;
|
||||
case PacManTimeSequence.BoardClear:
|
||||
TimeSequenceFinishedBoardClear();
|
||||
break;
|
||||
case PacManTimeSequence.StartNewLevel:
|
||||
TimeSequenceFinishedStartNewLevel();
|
||||
break;
|
||||
case PacManTimeSequence.GhostCaught:
|
||||
TimeSequenceFinishedGhostCaught();
|
||||
break;
|
||||
case PacManTimeSequence.PacManCaught:
|
||||
TimeSequenceFinishedPacManCaught();
|
||||
break;
|
||||
case PacManTimeSequence.RestartLevel:
|
||||
TimeSequenceFinishedRestartLevel();
|
||||
break;
|
||||
case PacManTimeSequence.GameOver:
|
||||
TimeSequenceFinishedGameOver();
|
||||
break;
|
||||
case PacManTimeSequence.Intermission1:
|
||||
TimeSequenceFinishedIntermission1();
|
||||
break;
|
||||
case PacManTimeSequence.Intermission2:
|
||||
TimeSequenceFinishedIntermission2();
|
||||
break;
|
||||
case PacManTimeSequence.Intermission3:
|
||||
TimeSequenceFinishedIntermission3();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -659,10 +730,10 @@ namespace Marro.PacManUdon
|
||||
5f, 0.2f, 2f, 0.91667f, 2f, 0.91667f, 2f, 0.91667f, 2f, 0.91667f });
|
||||
case PacManTimeSequence.AttractScreenDemo:
|
||||
return DeltaToAbsolute(new float[] { 0, 0.016f, 0.05f, 0.16f, 0.33f, 1.85f, 54f });
|
||||
case PacManTimeSequence.AttractScreenWaitToRestart:
|
||||
return DeltaToAbsolute(new float[] { 0, 2f });
|
||||
case PacManTimeSequence.WaitForStart:
|
||||
return DeltaToAbsolute(new float[] { 0, 0.016f });
|
||||
case PacManTimeSequence.WaitForStartTimeout:
|
||||
return DeltaToAbsolute(new float[] { 0, 5f });
|
||||
case PacManTimeSequence.StartNewGame:
|
||||
return DeltaToAbsolute(new float[] { 0, 0.016f, 2.2f, 0.032f, 0.032f, 1.92f, 0.032f });
|
||||
case PacManTimeSequence.BoardClear:
|
||||
@@ -672,7 +743,7 @@ namespace Marro.PacManUdon
|
||||
case PacManTimeSequence.GhostCaught:
|
||||
return DeltaToAbsolute(new float[] { 0, 0.91667f });
|
||||
case PacManTimeSequence.PacManCaught:
|
||||
return DeltaToAbsolute(new float[] { 0, 1, 0.35f, 2.40f, 2f });
|
||||
return DeltaToAbsolute(new float[] { 0, 1, 0.35f, 2.40f });
|
||||
case PacManTimeSequence.RestartLevel:
|
||||
return DeltaToAbsolute(new float[] { 0, 0.016f, 0.064f, 0.032f, 1.85f, 0.016f });
|
||||
case PacManTimeSequence.GameOver:
|
||||
|
||||
Reference in New Issue
Block a user