protected override void OnAwake(PlayerActor player) { Singleton <Input> .Instance.ReserveState(Input.ValidType.UI); Singleton <Input> .Instance.SetupState(); MapUIContainer.SetVisibleHUDExceptStoryUI(false); MapUIContainer.StorySupportUI.Close(); MapUIContainer.RefreshCommands(0, player.WarpCommandInfos); MapUIContainer.CommandList.CancelEvent = (Action)(() => player.CancelWarp()); MapUIContainer.SetActiveCommandList(true, "ワープ"); }
private void OnStart(PlayerActor player) { Singleton <Manager.Map> .Instance.AccessDeviceID = player.CurrentDevicePoint.ID; MapUIContainer.RefreshCommands(0, player.DeviceCommandInfos); MapUIContainer.CommandList.CancelEvent = (Action)(() => { Singleton <Resources> .Instance.SoundPack.Play(SoundPack.SystemSE.Cancel); Singleton <Manager.Map> .Instance.AccessDeviceID = -1; MapUIContainer.SetActiveCommandList(false); MapUIContainer.SetVisibleHUDExceptStoryUI(true); MapUIContainer.StorySupportUI.Open(); player.Controller.ChangeState("Normal"); player.CurrentDevicePoint = (DevicePoint)null; }); MapUIContainer.SetActiveCommandList(true, "データ端末"); }
protected override void OnAwake(PlayerActor player) { Singleton <Input> .Instance.ReserveState(Input.ValidType.UI); Singleton <Input> .Instance.SetupState(); MapUIContainer.SetVisibleHUDExceptStoryUI(false); MapUIContainer.StorySupportUI.Close(); if (MapUIContainer.OpenOnceTutorial(2, false)) { MapUIContainer.TutorialUI.ClosedEvent = (Action)(() => this.OnStart(player)); } else { this.OnStart(player); } }
protected override void OnAwake(PlayerActor player) { Singleton <Input> .Instance.ReserveState(Input.ValidType.UI); Singleton <Input> .Instance.SetupState(); MapUIContainer.SetVisibleHUDExceptStoryUI(false); MapUIContainer.StorySupportUI.Close(); MapUIContainer.RefreshCommands(0, player.BaseCommandInfos); MapUIContainer.CommandList.CancelEvent = (Action)(() => { MapUIContainer.SetActiveCommandList(false); MapUIContainer.SetVisibleHUDExceptStoryUI(true); MapUIContainer.StorySupportUI.Open(); player.Controller.ChangeState("Normal"); }); MapUIContainer.SetActiveCommandList(true, "拠点"); }
private void StartChange(PlayerActor player) { ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndFadeIn, 1), (Action <M0>)(_ => { this.Refresh(player); ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndFadeOut, 1), (Action <M0>)(__ => { player.CurrentDevicePoint = (DevicePoint)null; MapUIContainer.SetVisibleHUDExceptStoryUI(true); MapUIContainer.StorySupportUI.Open(); player.Controller.ChangeState("Normal"); Singleton <Input> .Instance.ReserveState(Input.ValidType.Action); Singleton <Input> .Instance.SetupState(); player.SetScheduledInteractionState(true); player.ReleaseInteraction(); })); ObservableExtensions.Subscribe <long>((IObservable <M0>)Observable.Timer(TimeSpan.FromMilliseconds(100.0)), (Action <M0>)(__ => ObservableExtensions.Subscribe <Unit>((IObservable <M0>)MapUIContainer.StartFade(FadeCanvas.PanelType.Blackout, (global::FadeType)1, 1f, false), (Action <M0>)(___ => {}), (Action)(() => this._onEndFadeOut.OnNext(Unit.get_Default()))))); })); ObservableExtensions.Subscribe <Unit>((IObservable <M0>)MapUIContainer.StartFade(FadeCanvas.PanelType.Blackout, (global::FadeType)0, 1f, true), (Action <M0>)(_ => {}), (Action)(() => this._onEndFadeIn.OnNext(Unit.get_Default()))); }
private void OnStart(PlayerActor player) { MapUIContainer.RefreshCommands(0, player.CookCommandInfos); MapUIContainer.CommandList.CancelEvent = (Action)(() => { Singleton <Resources> .Instance.SoundPack.Play(SoundPack.SystemSE.Cancel); MapUIContainer.SetActiveCommandList(false); MapUIContainer.SetVisibleHUDExceptStoryUI(true); MapUIContainer.StorySupportUI.Open(); player.Controller.ChangeState("Normal"); player.ReleaseCurrentPoint(); if (Object.op_Inequality((Object)player.PlayerController.CommandArea, (Object)null)) { ((Behaviour)player.PlayerController.CommandArea).set_enabled(true); } MapUIContainer.SetCommandLabelAcception(CommandLabel.AcceptionState.InvokeAcception); player.ActivateNavMeshAgent(); player.IsKinematic = false; }); MapUIContainer.SetActiveCommandList(true, "料理"); }
private void OnStart(PlayerActor player) { MapUIContainer.RefreshCommands(0, player.CoSleepCommandInfos); MapUIContainer.CommandList.CancelEvent = (System.Action)(() => { Singleton <Resources> .Instance.SoundPack.Play(SoundPack.SystemSE.Cancel); player.CancelCommand(); MapUIContainer.SetVisibleHUDExceptStoryUI(true); MapUIContainer.StorySupportUI.Open(); }); MapUIContainer.SetActiveCommandList(true, "睡眠"); this._onEndActionDisposable = ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndAction, 1), (System.Action <M0>)(_ => { Dictionary <int, Dictionary <int, Dictionary <int, PlayState> > > playerActionAnimTable = Singleton <Resources> .Instance.Animation.PlayerActionAnimTable; PoseKeyPair wakeupPoseId = Singleton <Resources> .Instance.PlayerProfile.PoseIDData.WakeupPoseID; PlayState info = playerActionAnimTable[(int)player.ChaControl.sex][wakeupPoseId.postureID][wakeupPoseId.poseID]; player.Animation.StopAllAnimCoroutine(); player.Animation.InitializeStates(info); player.SetStand(player.Animation.RecoveryPoint, info.MainStateInfo.InStateInfo.EnableFade, info.MainStateInfo.InStateInfo.FadeSecond, 0); player.Animation.PlayInAnimation(info.MainStateInfo.InStateInfo.EnableFade, info.MainStateInfo.InStateInfo.FadeSecond, info.MainStateInfo.FadeOutTime, info.Layer); player.CameraControl.Mode = CameraMode.Normal; player.CameraControl.RecoverShotType(); player.CameraControl.EnabledInput = true; })); this._onEndInAnimDisposable = ObservableExtensions.Subscribe <Unit>(Observable.Take <Unit>((IObservable <M0>) this._onEndInAnim, 1), (System.Action <M0>)(_ => { ActorAnimInfo animInfo = player.Animation.AnimInfo; player.SetStand(player.Animation.RecoveryPoint, animInfo.endEnableBlend, animInfo.endBlendSec, animInfo.directionType); player.Animation.RefsActAnimInfo = true; player.Controller.ChangeState("Normal"); player.ReleaseCurrentPoint(); if (Object.op_Inequality((Object)player.PlayerController.CommandArea, (Object)null)) { ((Behaviour)player.PlayerController.CommandArea).set_enabled(true); } MapUIContainer.SetCommandLabelAcception(CommandLabel.AcceptionState.InvokeAcception); player.ActivateNavMeshAgent(); player.IsKinematic = false; })); }
public void OpenModeMenu(SystemMenuUI.MenuMode mode) { switch (mode + 1) { case SystemMenuUI.MenuMode.Status: this._homeMenu.UsageRestriction(); this._homeMenu.IsActiveControl = true; break; case SystemMenuUI.MenuMode.Inventory: this._statusUI.IsActiveControl = true; break; case SystemMenuUI.MenuMode.Map: this._inventoryUI.IsActiveControl = true; break; case SystemMenuUI.MenuMode.Craft: this.Visible = false; Singleton <MapUIContainer> .Instance.MinimapUI.OpenAllMap(-1); Singleton <MapUIContainer> .Instance.MinimapUI.FromHomeMenu = true; int prevMapVisibleMode = Singleton <MapUIContainer> .Instance.MinimapUI.VisibleMode; Singleton <MapUIContainer> .Instance.MinimapUI.VisibleMode = 1; Singleton <MapUIContainer> .Instance.MinimapUI.AllMapClosedAction = (Action)(() => { this.Visible = true; this.OpenModeMenu(SystemMenuUI.MenuMode.Home); Singleton <MapUIContainer> .Instance.MinimapUI.AllMapClosedAction = (Action)null; bool miniMap = Manager.Config.GameData.MiniMap; if (prevMapVisibleMode != 0 || !miniMap) { return; } Singleton <MapUIContainer> .Instance.MinimapUI.OpenMiniMap(); }); Singleton <MapUIContainer> .Instance.MinimapUI.WarpProc = (MiniMapControler.OnWarp)(x => { string prevStateName = Singleton <Manager.Map> .Instance.Player.PlayerController.PrevStateName; Singleton <MapUIContainer> .Instance.MinimapUI.AllMapClosedAction = (Action)(() => {}); Singleton <Manager.Map> .Instance.WarpToBasePoint(x, (Action)(() => { this.IsActiveControl = false; if (prevStateName == "Onbu") { Singleton <Manager.Map> .Instance.Player.Controller.ChangeState("Onbu"); } else { Singleton <Manager.Map> .Instance.Player.Controller.ChangeState("Normal"); } Singleton <Manager.Map> .Instance.Player.Controller.ChangeState("Idle"); GC.Collect(); bool miniMap = Manager.Config.GameData.MiniMap; if (prevMapVisibleMode != 0 || !miniMap) { return; } Singleton <MapUIContainer> .Instance.MinimapUI.OpenMiniMap(); }), (Action)(() => { if (prevStateName == "Onbu") { Singleton <Manager.Map> .Instance.Player.Controller.ChangeState("Onbu"); } else { Singleton <Manager.Map> .Instance.Player.Controller.ChangeState("Normal"); } Singleton <Input> .Instance.ReserveState(Input.ValidType.Action); Singleton <Input> .Instance.SetupState(); Singleton <Manager.Map> .Instance.Player.SetScheduledInteractionState(true); Singleton <Manager.Map> .Instance.Player.ReleaseInteraction(); })); Singleton <MapUIContainer> .Instance.MinimapUI.WarpProc = (MiniMapControler.OnWarp)null; }); break; case SystemMenuUI.MenuMode.Camera: this.Visible = false; MapUIContainer.SetActiveCraftUI(true); MapUIContainer.CraftUI.Observer = this; MapUIContainer.CraftUI.OnClose = (Action)(() => { this.Visible = true; this.OpenModeMenu(SystemMenuUI.MenuMode.Home); MapUIContainer.CraftUI.OnClose = (Action)null; }); break; case SystemMenuUI.MenuMode.Call: Singleton <Manager.Map> .Instance.Player.PlayerController.ChangeState("Photo"); Action onClose1 = this.OnClose; if (onClose1 == null) { break; } onClose1(); break; case SystemMenuUI.MenuMode.Help: Singleton <Manager.Map> .Instance.Player.CallProc(); Action onClose2 = this.OnClose; if (onClose2 == null) { break; } onClose2(); break; case SystemMenuUI.MenuMode.Log: this.Visible = false; MapUIContainer.TutorialUI.ClosedEvent = (Action)(() => { this.Visible = true; MapUIContainer.SetVisibleHUDExceptStoryUI(true); this.OpenModeMenu(SystemMenuUI.MenuMode.Home); }); MapUIContainer.SetVisibleHUDExceptStoryUI(false); MapUIContainer.TutorialUI.SetCondition(-1, true); MapUIContainer.SetActiveTutorialUI(true); break; case SystemMenuUI.MenuMode.Save: this.Visible = false; MapUIContainer.GameLogUI.IsActiveControl = true; MapUIContainer.GameLogUI.OnClosed = (Action)(() => { this.Visible = true; this.OpenModeMenu(SystemMenuUI.MenuMode.Home); MapUIContainer.GameLogUI.OnClosed = (Action)null; }); break; case SystemMenuUI.MenuMode.InventoryEnter: this.Visible = false; if (this._charasEntry == null || this._charasEntry.Length != Manager.Config.GraphicData.CharasEntry.Length) { this._charasEntry = new bool[Manager.Config.GraphicData.CharasEntry.Length]; } for (int index = 0; index < this._charasEntry.Length; ++index) { this._charasEntry[index] = Manager.Config.GraphicData.CharasEntry[index]; } ConfigWindow.UnLoadAction = (Action)(() => { if (!MapScene.EqualsSequence(this._charasEntry, Manager.Config.GraphicData.CharasEntry)) { bool interactable = this._canvasGroup.get_interactable(); this._canvasGroup.set_interactable(true); Singleton <Manager.Map> .Instance.ApplyConfig((Action)null, (Action)(() => { this._canvasGroup.set_interactable(interactable); this.Visible = true; this.OpenModeMenu(SystemMenuUI.MenuMode.Home); })); } else { this.Visible = true; this.OpenModeMenu(SystemMenuUI.MenuMode.Home); } }); ConfigWindow.TitleChangeAction = (Action)(() => { ConfigWindow.UnLoadAction = (Action)null; Singleton <Game> .Instance.Config.timeScaleChange = 1f; Singleton <Game> .Instance.Dialog.TimeScale = 1f; }); Singleton <Game> .Instance.LoadConfig(); break; case SystemMenuUI.MenuMode.Craft | SystemMenuUI.MenuMode.Save: this._inventoryEnterUI.IsActiveControl = true; break; } }
protected override void OnAwake(PlayerActor player) { player.EventKey = AIProject.EventType.Sleep; player.SetActiveOnEquipedItem(false); player.ChaControl.setAllLayerWeight(0.0f); Singleton <Manager.Input> .Instance.ReserveState(Manager.Input.ValidType.UI); Singleton <Manager.Input> .Instance.SetupState(); MapUIContainer.SetVisibleHUDExceptStoryUI(false); MapUIContainer.StorySupportUI.Close(); ObservableExtensions.Subscribe <long>((IObservable <M0>)Observable.Timer(TimeSpan.FromMilliseconds(1000.0)), (System.Action <M0>)(_ => this.OnStart(player))); int eventID = (int)AIProject.Definitions.Action.NameTable[AIProject.EventType.Sleep].Item1; DateActionPointInfo apInfo; player.CurrentPoint.TryGetPlayerDateActionPointInfo(player.ChaControl.sex, AIProject.EventType.Sleep, out apInfo); int poseIda = apInfo.poseIDA; player.PoseID = poseIda; int index = poseIda; Transform t1 = ((Component)player.CurrentPoint).get_transform().FindLoop(apInfo.baseNullNameA)?.get_transform() ?? ((Component)player.CurrentPoint).get_transform(); Transform t2 = ((Component)player.CurrentPoint).get_transform().FindLoop(apInfo.baseNullNameB)?.get_transform() ?? ((Component)player.CurrentPoint).get_transform(); GameObject loop1 = ((Component)player.CurrentPoint).get_transform().FindLoop(apInfo.recoveryNullNameA); player.Animation.RecoveryPoint = loop1?.get_transform(); GameObject loop2 = ((Component)player.CurrentPoint).get_transform().FindLoop(apInfo.recoveryNullNameB); ActorAnimation animation = player.Partner.Animation; Transform transform1 = loop2?.get_transform(); player.Partner.Animation.RecoveryPoint = transform1; Transform transform2 = transform1; animation.RecoveryPoint = transform2; PlayState playState1 = Singleton <Resources> .Instance.Animation.PlayerActionAnimTable[(int)player.ChaControl.sex][eventID][index]; player.Animation.LoadEventKeyTable(eventID, apInfo.poseIDA); player.LoadEventItems(playState1); player.LoadEventParticles(eventID, apInfo.poseIDA); player.Animation.InitializeStates(playState1); Actor partner = player.Partner; partner.Animation.LoadEventKeyTable(eventID, apInfo.poseIDB); PlayState playState2 = Singleton <Resources> .Instance.Animation.AgentActionAnimTable[eventID][apInfo.poseIDB]; partner.LoadEventItems(playState2); partner.LoadEventParticles(eventID, apInfo.poseIDB); partner.Animation.InitializeStates(playState2); ActorAnimInfo actorAnimInfo1 = new ActorAnimInfo() { layer = playState1.Layer, inEnableBlend = playState1.MainStateInfo.InStateInfo.EnableFade, inBlendSec = playState1.MainStateInfo.InStateInfo.FadeSecond, outEnableBlend = playState1.MainStateInfo.OutStateInfo.EnableFade, outBlendSec = playState1.MainStateInfo.OutStateInfo.FadeSecond, directionType = playState1.DirectionType, isLoop = playState1.MainStateInfo.IsLoop }; player.Partner.Animation.AnimInfo = actorAnimInfo1; ActorAnimInfo actorAnimInfo2 = actorAnimInfo1; player.Animation.AnimInfo = actorAnimInfo2; ActorAnimInfo actorAnimInfo3 = actorAnimInfo2; ActorAnimInfo actorAnimInfo4 = new ActorAnimInfo() { layer = playState2.Layer, inEnableBlend = playState2.MainStateInfo.InStateInfo.EnableFade, inBlendSec = playState2.MainStateInfo.InStateInfo.FadeSecond, outEnableBlend = playState2.MainStateInfo.OutStateInfo.EnableFade, outBlendSec = playState2.MainStateInfo.OutStateInfo.FadeSecond, directionType = playState2.DirectionType, isLoop = playState2.MainStateInfo.IsLoop, loopMinTime = playState1.MainStateInfo.LoopMin, loopMaxTime = playState1.MainStateInfo.LoopMax, hasAction = playState1.ActionInfo.hasAction }; partner.Animation.AnimInfo = actorAnimInfo4; ActorAnimInfo actorAnimInfo5 = actorAnimInfo4; player.DeactivateNavMeshAgent(); player.IsKinematic = true; partner.SetActiveOnEquipedItem(false); partner.ChaControl.setAllLayerWeight(0.0f); partner.DeactivateNavMeshAgent(); partner.IsKinematic = true; this._hasAction = playState1.ActionInfo.hasAction; if (this._hasAction) { this._loopStateName = playState1.MainStateInfo.InStateInfo.StateInfos.GetElement <PlayState.Info>(playState1.MainStateInfo.InStateInfo.StateInfos.Length - 1).stateName; this._randomCount = playState1.ActionInfo.randomCount; this._oldNormalizedTime = 0.0f; } player.Animation.PlayInAnimation(actorAnimInfo3.inEnableBlend, actorAnimInfo3.inBlendSec, playState1.MainStateInfo.FadeOutTime, actorAnimInfo3.layer); player.SetStand(t1, playState1.MainStateInfo.InStateInfo.EnableFade, playState1.MainStateInfo.InStateInfo.FadeSecond, playState1.DirectionType); partner.Animation.PlayInAnimation(actorAnimInfo3.inEnableBlend, actorAnimInfo3.inBlendSec, playState2.MainStateInfo.FadeOutTime, actorAnimInfo3.layer); partner.SetStand(t2, actorAnimInfo5.inEnableBlend, actorAnimInfo5.inBlendSec, actorAnimInfo3.layer); ObservableExtensions.Subscribe <long>(Observable.Take <long>(Observable.Skip <long>((IObservable <M0>)Observable.EveryLateUpdate(), 1), 1), (System.Action <M0>)(_ => { if (apInfo.pointID == 501) { ADV.ChangeADVFixedAngleCamera((Actor)player, 5); } else { if (apInfo.pointID != 500) { return; } ADV.ChangeADVFixedAngleCamera(partner, 5); } })); bool enabled = ((Behaviour)player.HandsHolder).get_enabled(); player.OldEnabledHoldingHand = enabled; if (enabled) { ((Behaviour)player.HandsHolder).set_enabled(false); if (player.HandsHolder.EnabledHolding) { player.HandsHolder.EnabledHolding = false; } } player.CameraControl.SetShotTypeForce(ShotType.Near); }
protected override void OnAwake(PlayerActor player) { MapUIContainer.TutorialUI.ClosedEvent += (Action)(() => EventPoint.ChangePrevPlayerMode()); MapUIContainer.SetActiveTutorialUI(true); MapUIContainer.SetVisibleHUDExceptStoryUI(false); }