protected virtual void ProcessGrabAction(ActiveCollisionPublisher publisher, bool actionState) { if (grabAction?.Value != actionState) { grabAction?.Receive(actionState); } else { publisher?.Publish(); } }
protected virtual void ProcessGrabAction(ActiveCollisionPublisher publisher, bool actionState) { precognitionTimer.enabled = false; if (grabAction.Value != actionState) { grabAction.Receive(actionState); } if (grabAction.Value) { publisher.Publish(); } precognitionTimer.enabled = true; }
public void Process() { UnityEventListenerMock activatedListenerMock = new UnityEventListenerMock(); UnityEventListenerMock deactivatedListenerMock = new UnityEventListenerMock(); UnityEventListenerMock changedListenerMock = new UnityEventListenerMock(); action.Activated.AddListener(activatedListenerMock.Listen); action.Deactivated.AddListener(deactivatedListenerMock.Listen); action.ValueChanged.AddListener(changedListenerMock.Listen); subject.Action = action; Assert.IsFalse(activatedListenerMock.Received); Assert.IsFalse(deactivatedListenerMock.Received); Assert.IsFalse(changedListenerMock.Received); action.Receive(true); Assert.IsTrue(activatedListenerMock.Received); Assert.IsFalse(deactivatedListenerMock.Received); Assert.IsTrue(changedListenerMock.Received); activatedListenerMock.Reset(); deactivatedListenerMock.Reset(); changedListenerMock.Reset(); Assert.IsFalse(activatedListenerMock.Received); Assert.IsFalse(deactivatedListenerMock.Received); Assert.IsFalse(changedListenerMock.Received); subject.Process(); Assert.IsTrue(activatedListenerMock.Received); Assert.IsFalse(deactivatedListenerMock.Received); Assert.IsTrue(changedListenerMock.Received); activatedListenerMock.Reset(); deactivatedListenerMock.Reset(); changedListenerMock.Reset(); action.Receive(false); Assert.IsFalse(activatedListenerMock.Received); Assert.IsTrue(deactivatedListenerMock.Received); Assert.IsTrue(changedListenerMock.Received); activatedListenerMock.Reset(); deactivatedListenerMock.Reset(); changedListenerMock.Reset(); subject.Process(); Assert.IsFalse(activatedListenerMock.Received); Assert.IsTrue(deactivatedListenerMock.Received); Assert.IsTrue(changedListenerMock.Received); }
public void GrabActivated() { grabAction.Receive(true); }