- Skee-ball now keeps track of used balls and no longer double-counts balls.
- TriggerToggle now accepts a list of GameObjects to toggle. - Skee-ball disables only scoreboxes to prevent balls from being dropped early.
This commit is contained in:
@@ -50,19 +50,19 @@ MonoBehaviour:
|
||||
Data:
|
||||
- Name: $k
|
||||
Entry: 1
|
||||
Data: _ToggledObject
|
||||
Data: _ToggledObjects
|
||||
- Name: $v
|
||||
Entry: 7
|
||||
Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
|
||||
- Name: <Name>k__BackingField
|
||||
Entry: 1
|
||||
Data: _ToggledObject
|
||||
Data: _ToggledObjects
|
||||
- Name: <UserType>k__BackingField
|
||||
Entry: 7
|
||||
Data: 3|System.RuntimeType, mscorlib
|
||||
- Name:
|
||||
Entry: 1
|
||||
Data: UnityEngine.GameObject, UnityEngine.CoreModule
|
||||
Data: UnityEngine.GameObject[], UnityEngine.CoreModule
|
||||
- Name:
|
||||
Entry: 8
|
||||
Data:
|
||||
|
||||
@@ -8,7 +8,7 @@ using VRC.Udon;
|
||||
[UdonBehaviourSyncMode(BehaviourSyncMode.None)]
|
||||
public class TriggerToggle : UdonSharpBehaviour
|
||||
{
|
||||
[SerializeField] private GameObject _ToggledObject = null;
|
||||
[SerializeField] private GameObject[] _ToggledObjects;
|
||||
|
||||
[Tooltip("When true, object is active when player is inside trigger volume. If false, object is inactive when inside trigger volume.")]
|
||||
[SerializeField] private bool _ActiveOnTrigger = true;
|
||||
@@ -24,18 +24,21 @@ public class TriggerToggle : UdonSharpBehaviour
|
||||
{
|
||||
if (_EnterDelay > 0.01f)
|
||||
{
|
||||
SendCustomEventDelayedSeconds(nameof(EnableToggledObject), _EnterDelay);
|
||||
SendCustomEventDelayedSeconds(nameof(EnableToggledObjects), _EnterDelay);
|
||||
}
|
||||
else
|
||||
{
|
||||
EnableToggledObject();
|
||||
EnableToggledObjects();
|
||||
}
|
||||
}
|
||||
base.OnPlayerTriggerEnter(Player);
|
||||
}
|
||||
public void EnableToggledObject()
|
||||
public void EnableToggledObjects()
|
||||
{
|
||||
_ToggledObject.SetActive(_ActiveOnTrigger);
|
||||
foreach (GameObject Object in _ToggledObjects)
|
||||
{
|
||||
Object.SetActive(_ActiveOnTrigger);
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnPlayerTriggerExit(VRCPlayerApi Player)
|
||||
@@ -44,17 +47,20 @@ public class TriggerToggle : UdonSharpBehaviour
|
||||
{
|
||||
if (_ExitDelay > 0.01f)
|
||||
{
|
||||
SendCustomEventDelayedSeconds(nameof(DisableToggledObject), _ExitDelay);
|
||||
SendCustomEventDelayedSeconds(nameof(DisableToggledObjects), _ExitDelay);
|
||||
}
|
||||
else
|
||||
{
|
||||
DisableToggledObject();
|
||||
DisableToggledObjects();
|
||||
}
|
||||
}
|
||||
base.OnPlayerTriggerExit(Player);
|
||||
}
|
||||
public void DisableToggledObject()
|
||||
public void DisableToggledObjects()
|
||||
{
|
||||
_ToggledObject.SetActive(!_ActiveOnTrigger);
|
||||
foreach (GameObject Object in _ToggledObjects)
|
||||
{
|
||||
Object.SetActive(!_ActiveOnTrigger);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user