コード例 #1
0
        public void OnInteract_NotOwner_PushesInteractorIntoPushObject()
        {
            _actionStateMachine.IsActionStateActiveResult = true;

            const ESpeciesType validSpecies = ESpeciesType.Human;

            _pushPoint.OnInteract(_actionStateMachine.gameObject);

            Assert.NotNull((PushObjectActionStateInfo)_actionStateMachine.RequestedInfo);
            Assert.AreEqual(EActionStateMachineTrack.Locomotion, _actionStateMachine.RequestedTrack);
            Assert.AreEqual(EActionStateId.PushObject, _actionStateMachine.RequestedId);
        }
コード例 #2
0
        public void CorrectSpeciesCollides_TriggerMessage()
        {
            const ESpeciesType correctType = ESpeciesType.Human;

            _pushTrigger.TriggeringSpeciesTypes.Add(correctType);
            _species.GetCurrentSpeciesTypeResult = correctType;

            var messageSpy = new UnityTestMessageHandleResponseObject <TriggerMessage>();

            var handle = UnityMessageEventFunctions.RegisterActionWithDispatcher <TriggerMessage>
                             (_pushTrigger.gameObject, messageSpy.OnResponse);

            _pushTrigger.TestCollide(_species.gameObject);

            Assert.IsTrue(messageSpy.ActionCalled);
            Assert.AreSame(_species.gameObject, messageSpy.MessagePayload.TriggeringObject);

            UnityMessageEventFunctions.UnregisterActionWithDispatcher(_pushTrigger.gameObject, handle);
        }