- Modem camera transition now has zoom animations.

- Added a CameraAnchor and follower for the winning player in round 2.
- Round 2 now has a more reliable check for when the call ends.
- CameraAnchor can now follow different areas of a player's body.
- CameraTimedSwitcher can now choose to always reactivate when asked.
- Glass shatter effect now only works for hosts.
- CaseVideoSyncPlayer will no longer crash when skipping too fast in round 1.
- Fixed an erroneous camera switcher activation in round 3.
- Made a minor wording change to Eartha Brute's wanted poster.
This commit is contained in:
2026-03-25 04:08:23 -04:00
parent 69bc79ef7a
commit e485d0d992
37 changed files with 2939 additions and 1237 deletions
+71 -11
View File
@@ -44,7 +44,7 @@ MonoBehaviour:
Data:
- Name:
Entry: 12
Data: 3
Data: 4
- Name:
Entry: 7
Data:
@@ -116,16 +116,76 @@ MonoBehaviour:
Data:
- Name: $k
Entry: 1
Data: _Shattered
Data: _Colliders
- Name: $v
Entry: 7
Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Shattered
Data: _Colliders
- Name: <UserType>k__BackingField
Entry: 7
Data: 8|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: UnityEngine.Collider[], UnityEngine.PhysicsModule
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 8
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 9|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 10|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: _Shattered
- Name: $v
Entry: 7
Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Shattered
- Name: <UserType>k__BackingField
Entry: 7
Data: 12|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: System.Boolean, mscorlib
@@ -134,7 +194,7 @@ MonoBehaviour:
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 8
Data: 12
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@@ -149,19 +209,19 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 9|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
Data: 13|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 7
Data: 10|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime
Data: 14|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 11|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
Data: 15|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
- Name:
Entry: 8
Data:
@@ -185,16 +245,16 @@ MonoBehaviour:
Data: _Prepared
- Name: $v
Entry: 7
Data: 12|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Prepared
- Name: <UserType>k__BackingField
Entry: 9
Data: 8
Data: 12
- Name: <SystemType>k__BackingField
Entry: 9
Data: 8
Data: 12
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@@ -209,7 +269,7 @@ MonoBehaviour:
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 13|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
Data: 17|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 0
+19 -1
View File
@@ -7,13 +7,31 @@ using VRC.Udon.Common.Interfaces;
[UdonBehaviourSyncMode(BehaviourSyncMode.Manual)]
public class GlassShatter : UdonSharpBehaviour
{
[SerializeField] AudioManager _AudioManager;
[SerializeField] private AudioManager _AudioManager;
[SerializeField] private Collider[] _Colliders;
[UdonSynced, FieldChangeCallback(nameof(Shattered))] private bool _Shattered = false;
private bool _Prepared = false;
public void HostEnabled()
{
foreach (Collider GlassCollider in _Colliders)
{
GlassCollider.gameObject.SetActive(true);
}
}
public void HostDisabled()
{
foreach (Collider GlassCollider in _Colliders)
{
GlassCollider.gameObject.SetActive(false);
}
}
public void PrepareEnter()
{
if (!Shattered)