- Lightning round now cancels buzz-in period when there's no answer or buzz-in.

- Moved seat trigger for player pedestals to be permanently on the floor.
- Shifted cards and buzzers on the round 1 podium to fit the new design.
- Further improved round 1 podium lightmaps.
This commit is contained in:
2025-10-05 19:45:53 -04:00
parent 02bf062e4f
commit ea4d29c8c7
23 changed files with 230 additions and 133 deletions
@@ -664,9 +664,13 @@ public class GameManagerRound1 : GameManagerBase
{
if (_BuzzedInPlayer <= 0)
{
EndBuzzInPeriod();
_AudioManager.SendCustomNetworkEvent(NetworkEventTarget.All, "PlaySFX", SFXEventType.Round1Incorrect);
}
WaitForBuzzInsWithoutLastPlayer();
else
{
WaitForBuzzInsWithoutLastPlayer();
}
}
@@ -1301,8 +1305,6 @@ public class GameManagerRound1 : GameManagerBase
public void TiebreakerIncorrectResponse()
{
int PodiumIndex = _BuzzedInPlayer - 1;
_BuzzedInPlayer = -1;
_BuzzInAllowed = true;
@@ -1402,6 +1404,8 @@ public class GameManagerRound1 : GameManagerBase
{
_BuzzInAllowed = true;
ResetBuzzers();
RequestSerialization();
}
private void EnableBuzzInPeriodForPlayer(int PlayerNumber)
@@ -1417,12 +1421,13 @@ public class GameManagerRound1 : GameManagerBase
}
}
_BuzzInAllowed = true;
RequestSerialization();
}
private void WaitForBuzzInsWithoutLastPlayer()
{
_BuzzInAllowed = true;
int PodiumIndex = _BuzzedInPlayer - 1;
_BuzzedInPlayer = -1;
RequestSerialization();
@@ -1451,6 +1456,8 @@ public class GameManagerRound1 : GameManagerBase
{
_BuzzInAllowed = false;
ResetBuzzers();
RequestSerialization();
}
private void ResetBuzzers()
+7 -3
View File
@@ -5,7 +5,6 @@ using TMPro;
using VRC.SDKBase;
using VRC.SDK3.UdonNetworkCalling;
using VRC.Udon.Common.Interfaces;
using System.Runtime.CompilerServices;
using UnityEngine.UI;
@@ -59,6 +58,8 @@ public class PlayerPodium : UdonSharpBehaviour
private int _FlashingScoreboardCounter = 0;
private const int MAX_FLASH_COUNTER = 8;
private const float MIN_AVATAR_EYE_HEIGHT = 0.745f;
private const float FLASHING_SCOREBOARD_PERIOD = 0.15f;
void Start()
@@ -281,7 +282,7 @@ public class PlayerPodium : UdonSharpBehaviour
break;
}
SendCustomEventDelayedSeconds(nameof(TickFlashingScoreboard), 0.15f);
SendCustomEventDelayedSeconds(nameof(TickFlashingScoreboard), FLASHING_SCOREBOARD_PERIOD);
}
else {
ResetScoreboardColours();
@@ -382,7 +383,10 @@ public class PlayerPodium : UdonSharpBehaviour
_PedestalHeight = value;
_Pedestal.transform.localPosition = new Vector3(
_Pedestal.transform.localPosition.x,
-_PedestalHeight,
-Mathf.Clamp(
_PedestalHeight,
MIN_AVATAR_EYE_HEIGHT,
Networking.LocalPlayer.GetAvatarEyeHeightMaximumAsMeters()),
_Pedestal.transform.localPosition.z
);
}
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: BoneFollower
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 52ecc8a73071e8e40928c3609699fcf4,
serializedUdonProgramAsset: {fileID: 11400000, guid: ccbda9bf23e2f714c9226283c77a92e5,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: InteractToggle
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 873dfce61b1514e429c92e0d2fded7de,
serializedUdonProgramAsset: {fileID: 11400000, guid: 405e38d3dfb2f514daeed0e28fbb4864,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: PlayerModSetter
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: e81558796a212ab4d88e305e2010f24b,
serializedUdonProgramAsset: {fileID: 11400000, guid: f938e6c4ff027a74da405a1f9353fd2b,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: GlobalToggleObject
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 2fe8ced6184000f49bca526cd2c5891c,
serializedUdonProgramAsset: {fileID: 11400000, guid: c49c9265a3ef24642a6a4465d0a78872,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: MasterToggleObject
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: a2d01d9f36ac6df49831be249e48ecc4,
serializedUdonProgramAsset: {fileID: 11400000, guid: 04024a76ab1924042ba521e11cb76d91,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: TrackingDataFollower
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 1b89d4552983c0448a7389decec3b555,
serializedUdonProgramAsset: {fileID: 11400000, guid: 17f8fbbe6cc186d4f8dbb057b01a4ec2,
type: 2}
udonAssembly:
assemblyError:
@@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: WorldAudioSettings
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 994b559b0f158b4499f8937980ed8694,
serializedUdonProgramAsset: {fileID: 11400000, guid: 128d924a3066b7546b2d1c73e61006ab,
type: 2}
udonAssembly:
assemblyError: