Fixed a few more sync issues, particularly involving resets.

This commit is contained in:
2025-07-17 00:49:32 -04:00
parent cf2da70229
commit 47be4c1ba2
17 changed files with 458 additions and 196 deletions
@@ -33,12 +33,6 @@ public class GameManagerRound2 : GameManagerBase
{
_StageIndex = 0;
LocationBoardReset();
// Make sure we have the correct interface up after the last function.
HostCardBetweenRoundsInterface Interface =
(HostCardBetweenRoundsInterface)GetHostCardInterface(RoundSegmentType.BetweenSegments);
base.InitialiseGameMode();
}
@@ -78,6 +72,12 @@ public class GameManagerRound2 : GameManagerBase
_LocationBoard.RandomiseMaterials();
_LocationBoard.RandomiseLocations();
LocationBoardReset();
// Make sure we have the correct interface up after the last function.
HostCardBetweenRoundsInterface Interface =
(HostCardBetweenRoundsInterface)GetHostCardInterface(RoundSegmentType.BetweenSegments);
_LocationBoard.RequestSerialization();
}
else
@@ -3,8 +3,6 @@ using UdonSharp;
using UnityEngine;
using VRC.SDK3.Data;
using VRC.SDK3.UdonNetworkCalling;
using VRC.SDKBase;
using VRC.Udon.Common;
using VRC.Udon.Common.Interfaces;
@@ -62,8 +60,13 @@ public class GameManagerRound3 : GameManagerBase
_FailureCounter = 0;
_Timer = TIMER_LENGTH;
// We'll need to reset the markers here, too.
for (int i = 0; i < _Markers.Length; i++)
{
_Markers[i].Initialise();
}
_Markers[0].SetPickupable(true);
GetCurrentMap().RandomiseCountries();
RequestSerialization();
base.InitialiseGameMode();
@@ -78,8 +81,6 @@ public class GameManagerRound3 : GameManagerBase
{
CurrentlyActiveMap = (ContinentMap)(int)_ContinentData["Continent"].Number;
RequestSerialization();
SendCustomEventDelayedSeconds(nameof(GenerateRandomMapLocations), 1.0f);
}
else
{
@@ -88,11 +89,6 @@ public class GameManagerRound3 : GameManagerBase
EnableInteraction("Display Briefing");
}
public void GenerateRandomMapLocations()
{
FloorMap Map = GetCurrentMap();
Map.RandomiseCountries();
}
private void ActivateMap()
{
@@ -101,14 +97,14 @@ public class GameManagerRound3 : GameManagerBase
FloorMap Map = _Maps[i];
if (Map != null)
{
Map.gameObject.SetActive(false);
Map.Activate = false;
}
}
FloorMap CurrentMap = _Maps[(int)CurrentlyActiveMap];
if (CurrentMap != null)
{
CurrentMap.gameObject.SetActive(true);
CurrentMap.Activate = true;
}
}