- ACME Crimenet Computer can now show messages that only the host can see.

- Added a doorway between the spawn room and the control room.
- Video load indicators set to a hidden position by default.
- Renamed "Assorted Textures" folder to "Assorted"; they're not textures.
- Removed superfluous debug statements from CaseVideoSyncPlayer.
This commit is contained in:
2025-12-13 17:06:59 -05:00
parent d7dc38e58a
commit e4178f8b76
41 changed files with 2431 additions and 482 deletions
File diff suppressed because it is too large Load Diff
@@ -1,14 +1,10 @@
using System.Runtime.InteropServices;
using System.Runtime.Remoting;
using TMPro;
using UdonSharp;
using UnityEngine;
using UnityEngine.UIElements;
using VRC.SDK3.Image;
using VRC.SDK3.UdonNetworkCalling;
using VRC.SDKBase;
using VRC.Udon;
using VRC.Udon.Common.Interfaces;
@@ -17,6 +13,7 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
{
[SerializeField] private GameManagerRound1 _GameManager;
[SerializeField] private AudioManager _AudioManager;
[SerializeField] private PermissionsPanel _PermissionsPanel;
[Space]
[SerializeField] private GameObject _ComputerBase;
@@ -35,6 +32,11 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
[SerializeField] private Transform _TranslatedCardAnimator;
[SerializeField] private TextMeshProUGUI _TranslatedTextGUI;
[Space]
[SerializeField] private GameObject _HiddenTextCanvas;
[SerializeField] private TextMeshProUGUI _HiddenTextGUI;
[Space]
[SerializeField] private GameObject[] _Interactables;
@@ -42,6 +44,7 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
[UdonSynced, FieldChangeCallback(nameof(Activate))] private bool _Activate = false;
[UdonSynced, FieldChangeCallback(nameof(UntranslatedText))] private string _UntranslatedText = "";
[UdonSynced, FieldChangeCallback(nameof(TranslatedText))] private string _TranslatedText = "";
[UdonSynced, FieldChangeCallback(nameof(HiddenText))] private string _HiddenText = "";
[UdonSynced, FieldChangeCallback(nameof(ClueImage))] private int _ClueImage = -1;
[UdonSynced, FieldChangeCallback(nameof(ClueImageScale))] private float _ClueImageScale = 1.0f;
@@ -78,6 +81,16 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
RequestSerialization();
}
private void SetHiddenText(string Hidden)
{
_HiddenText = Hidden;
_HiddenTextGUI.text = _HiddenText;
_HiddenTextCanvas.SetActive(_HiddenText != "" && _PermissionsPanel.IsPlayerHost(Networking.LocalPlayer));
RequestSerialization();
}
private void SwooceRightIn()
{
@@ -97,6 +110,7 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
{
Interactable.SetActive(false);
}
_HiddenTextCanvas.SetActive(false);
ClueImageScale = 1.0f;
@@ -204,6 +218,15 @@ public class ACMECrimenetComputer : UdonSharpBehaviour
get => _TranslatedText;
}
public string HiddenText
{
set
{
SetHiddenText(value);
}
get => _HiddenText;
}
public int ClueImage
{
set