Exemple #1
0
        protected override void OnRelease(PlayerActor player)
        {
            IState state = player.PlayerController.State;

            if (state is Normal || state is Onbu)
            {
                this._prevInteractionState = true;
                this._prevValidType        = Input.ValidType.Action;
                this._prevAcceptionState   = CommandLabel.AcceptionState.InvokeAcception;
            }
            if (this._prevInteractionState != player.CurrentInteractionState)
            {
                player.SetScheduledInteractionState(this._prevInteractionState);
                player.ReleaseInteraction();
            }
            if (this._prevValidType != Singleton <Input> .Instance.State)
            {
                Singleton <Input> .Instance.ReserveState(this._prevValidType);

                Singleton <Input> .Instance.SetupState();
            }
            if (this._prevAcceptionState == MapUIContainer.CommandLabel.Acception)
            {
                return;
            }
            MapUIContainer.SetCommandLabelAcception(this._prevAcceptionState);
        }
Exemple #2
0
 protected override void OnRelease(PlayerActor player)
 {
     switch (player.PlayerController.State)
     {
     case Normal _:
     case Onbu _:
         this._prevAcceptionState = CommandLabel.AcceptionState.InvokeAcception;
         break;
     }
     player.NavMeshAgent.set_avoidancePriority(this._prevAvoidancePriority);
     if (Object.op_Inequality((Object)player.Partner, (Object)null))
     {
         player.Partner.NavMeshAgent.set_obstacleAvoidanceType((ObstacleAvoidanceType)4);
     }
     if (this._prevAcceptionState == MapUIContainer.CommandLabel.Acception)
     {
         return;
     }
     MapUIContainer.SetCommandLabelAcception(this._prevAcceptionState);
 }
Exemple #3
0
        protected override void OnAwake(PlayerActor player)
        {
            this._prevAcceptionState   = MapUIContainer.CommandLabel.Acception;
            this._prevValidType        = Singleton <Input> .Instance.State;
            this._prevInteractionState = player.CurrentInteractionState;
            if (this._prevAcceptionState != CommandLabel.AcceptionState.None)
            {
                MapUIContainer.SetCommandLabelAcception(CommandLabel.AcceptionState.None);
            }
            if (this._prevValidType != Input.ValidType.None)
            {
                Singleton <Input> .Instance.ReserveState(Input.ValidType.None);

                Singleton <Input> .Instance.SetupState();
            }
            if (!this._prevInteractionState)
            {
                return;
            }
            player.SetScheduledInteractionState(false);
            player.ReleaseInteraction();
        }
Exemple #4
0
        protected override void OnAwake(PlayerActor player)
        {
            this._prevAcceptionState = MapUIContainer.CommandLabel.Acception;
            if (this._prevAcceptionState != CommandLabel.AcceptionState.None)
            {
                MapUIContainer.SetCommandLabelAcception(CommandLabel.AcceptionState.None);
            }
            player.Animation.RefsActAnimInfo = true;
            player.ActivateTransfer();
            player.SetActiveOnEquipedItem(true);
            player.ResetCoolTime();
            if (player.CameraControl.Mode == CameraMode.ActionNotMove || player.CameraControl.Mode == CameraMode.ActionFreeLook)
            {
                player.CameraControl.Mode = CameraMode.Normal;
                player.CameraControl.RecoverShotType();
            }
            this._prevAvoidancePriority = player.NavMeshAgent.get_avoidancePriority();
            player.NavMeshAgent.set_avoidancePriority(99);
            Vector3 destination = this.DesiredPosition(player.Partner);

            this.SetDestination(player, destination);
            player.Partner.NavMeshAgent.set_obstacleAvoidanceType((ObstacleAvoidanceType)0);
        }
 protected override void OnAwake(PlayerActor player)
 {
     this._eventPoint = player.CurrentEventPoint;
     if (Object.op_Equality((Object)this._eventPoint, (Object)null))
     {
         this.ErrorEnd(player, "イベントポイント持っていないのにバルブ扉を開こうとした");
     }
     else
     {
         if (Object.op_Equality((Object)this._eventPoint, (Object)EventPoint.GetTargetPoint()))
         {
             EventPoint.SetTargetID(-1, -1);
         }
         HarborDoorAnimation component = (HarborDoorAnimation)((Component)this._eventPoint).GetComponent <HarborDoorAnimation>();
         if (Object.op_Equality((Object)component, (Object)null))
         {
             this.ErrorEnd(player, "イベントポイントからHarborDoorAnimationが取得できなかった");
         }
         else
         {
             this._prevAcceptionState = MapUIContainer.CommandLabel.Acception;
             if (this._prevAcceptionState != CommandLabel.AcceptionState.None)
             {
                 MapUIContainer.CommandLabel.Acception = CommandLabel.AcceptionState.None;
             }
             this._animData  = component.AnimData;
             player.EventKey = EventType.DoorOpen;
             this._poseInfo  = component.PoseInfo;
             player.SetActiveOnEquipedItem(false);
             player.ChaControl.setAllLayerWeight(0.0f);
             Transform t = component.BasePoint ?? ((Component)this._eventPoint).get_transform();
             player.Animation.RecoveryPoint = component.RecoveryPoint;
             int sex       = (int)player.ChaControl.sex;
             int postureId = this._poseInfo.postureID;
             int poseId    = this._poseInfo.poseID;
             this._info = Singleton <Resources> .Instance.Animation.PlayerActionAnimTable[sex][postureId][poseId];
             ActorAnimInfo actorAnimInfo = new ActorAnimInfo()
             {
                 layer          = this._info.Layer,
                 inEnableBlend  = this._info.MainStateInfo.InStateInfo.EnableFade,
                 inBlendSec     = this._info.MainStateInfo.InStateInfo.FadeSecond,
                 outEnableBlend = this._info.MainStateInfo.OutStateInfo.EnableFade,
                 outBlendSec    = this._info.MainStateInfo.OutStateInfo.FadeSecond,
                 directionType  = this._info.DirectionType,
                 endEnableBlend = this._info.EndEnableBlend,
                 endBlendSec    = this._info.EndBlendRate
             };
             player.Animation.AnimInfo = actorAnimInfo;
             ActorAnimInfo animInfo = actorAnimInfo;
             player.Animation.LoadSEEventKeyTable(postureId, poseId);
             player.Animation.InitializeStates(this._info.MainStateInfo.InStateInfo.StateInfos, this._info.MainStateInfo.OutStateInfo.StateInfos, this._info.MainStateInfo.AssetBundleInfo);
             player.Animation.PlayInAnimation(animInfo.inEnableBlend, animInfo.inBlendSec, this._info.MainStateInfo.FadeOutTime, animInfo.layer);
             ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndAction, 1), (Action <M0>)(_ => player.Animation.PlayOutAnimation(animInfo.outEnableBlend, animInfo.outBlendSec, animInfo.layer)));
             player.DeactivateNavMeshAgent();
             player.IsKinematic = true;
             player.SetStand(t, this._info.MainStateInfo.InStateInfo.EnableFade, this._info.MainStateInfo.InStateInfo.FadeSecond, this._info.DirectionType);
             if (Object.op_Inequality((Object)this._animData, (Object)null))
             {
                 this._animData.AnimEndAction = (Action)(() => this._animData.PlayOpenIdleAnimation(false, 0.0f, 0.0f, 0));
                 this._animData.PlayToOpenAnimation(animInfo.inEnableBlend, animInfo.inBlendSec, this._info.MainStateInfo.FadeOutTime, animInfo.layer);
             }
             ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onComplete, 1), (Action <M0>)(_ =>
             {
                 if (this._animData is AreaOpenLinkedHarborDoorAnimData)
                 {
                     Singleton <Manager.Map> .Instance.SetOpenAreaState((this._animData as AreaOpenLinkedHarborDoorAnimData).AreaOpenID, true);
                 }
                 if (this._eventPoint.GroupID == 1)
                 {
                     switch (this._eventPoint.PointID)
                     {
                     case 2:
                         Manager.Map.ForcedSetTutorialProgress(26);
                         break;
                     }
                 }
                 if (this._prevAcceptionState != MapUIContainer.CommandLabel.Acception)
                 {
                     MapUIContainer.CommandLabel.Acception = this._prevAcceptionState;
                 }
                 player.ActivateNavMeshAgent();
                 player.PlayerController.ChangeState("Normal");
             }));
             player.CameraControl.Mode = CameraMode.ActionFreeLook;
             player.CameraControl.SetShotTypeForce(ShotType.Near);
             player.CameraControl.LoadActionCameraFile(postureId, poseId, (Transform)null);
             player.OldEnabledHoldingHand = ((Behaviour)player.HandsHolder).get_enabled();
             if (player.OldEnabledHoldingHand)
             {
                 ((Behaviour)player.HandsHolder).set_enabled(false);
                 player.HandsHolder.Weight = 0.0f;
                 if (player.HandsHolder.EnabledHolding)
                 {
                     player.HandsHolder.EnabledHolding = false;
                 }
             }
             this._initSuccess = true;
         }
     }
 }