// Token: 0x060014CF RID: 5327 RVA: 0x00024520 File Offset: 0x00023520 protected internal override void BuildGraph() { State state = new State("initial"); State state2 = new State("safehouse"); State state3 = new State("store"); State state4 = new State("freeroam"); State state5 = new State("lobby"); State state6 = new State("recover"); State state7 = new State("reset"); State state8 = new State("event"); State state9 = new State("done"); ResetProps item = new ResetProps(); CloseOnReceive <OnEnterStore> activity = new CloseOnReceive <OnEnterStore>(Ports.Gameplay); CloseOnReceive <OnReturnToPreviousState> activity2 = new CloseOnReceive <OnReturnToPreviousState>(Ports.Gameplay); CloseOnReceive <OnEnterFreeroam> activity3 = new CloseOnReceive <OnEnterFreeroam>(Ports.Gameplay); EnableGadget item2 = new EnableGadget("Overlay", EnableGadget.HudToggle.Enable); EnableGadget item3 = new EnableGadget("Overlay", EnableGadget.HudToggle.Dispose); EnableGadget item4 = new EnableGadget("PowerupBuffBar", EnableGadget.HudToggle.Dispose); EnableGadget item5 = new EnableGadget("PowerupBuffBar", EnableGadget.HudToggle.Enable); EnableLoadingScreen item6 = new EnableLoadingScreen(false); state.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Audio, 2215583664u)); state.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_AI, 1667320711u)); state.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Frontend, 1039281932u)); state.Transitions.Add(new Transition("freeroam", activity3)); state.ExitActivity.Activities.Add(item5); state.ExitActivity.Activities.Add(item2); state2.EnterActivity.Activities.Add(item4); state2.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Audio, 2215583664u)); state2.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_AI, 1667320711u)); state2.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Frontend, 1039281932u)); state2.Transitions.Add(new Transition("store", activity)); state2.Transitions.Add(new Transition("freeroam", activity3)); state2.ExitActivity.Activities.Add(item5); ClearAllBuff item7 = new ClearAllBuff(); state3.EnterActivity.Activities.Add(item7); state3.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Audio, 1950424019u)); state3.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Frontend, 2145842197u)); state3.Transitions.Add(new ReturnTransition(activity2)); ResetLobby item8 = new ResetLobby(); CloseOnReceive <OnEnterSafeHouse> activity4 = new CloseOnReceive <OnEnterSafeHouse>(Ports.Gameplay); RefreshEvents item9 = new RefreshEvents(); GetAndTriggerAvailableLevelGifts item10 = new GetAndTriggerAvailableLevelGifts(); ResetHeat item11 = new ResetHeat(); EnablePointsOfInterest item12 = new EnablePointsOfInterest(3312964337u, true); ConnectToRoaming item13 = new ConnectToRoaming(); LockLocalVehicle item14 = new LockLocalVehicle(false); AssignPowerupConfiguration item15 = new AssignPowerupConfiguration(PowerupConfiguration.kPowerupConfigFreeRoam); RechargeAllPowerups item16 = new RechargeAllPowerups(); EnterEngagableTriggered activity5 = new EnterEngagableTriggered(this.manager, Ports.Gameplay); EnterEventTriggered enterEventTriggered = new EnterEventTriggered(Ports.Gameplay); enterEventTriggered.EventSessionId = new OutArgument <long>(this.eventSessionId); enterEventTriggered.EventKey = new OutArgument <uint>(this.eventKey); enterEventTriggered.ConnectionSupport = new OutArgument <ConnectionSupport>(this.connectionSupport); ExitEngagableTriggered activity6 = new ExitEngagableTriggered(this.manager, Ports.Gameplay); Loop loop = new Loop(); TeleportToTriggered teleportToTriggered = new TeleportToTriggered(Ports.Gameplay); teleportToTriggered.Position = new OutArgument <Vector3>(this.teleportPosition); teleportToTriggered.Direction = new OutArgument <Vector3>(this.teleportDirection); EnableLoadingScreen item17 = new EnableLoadingScreen(true); TeleportTo teleportTo = new TeleportTo(); teleportTo.Position = new InArgument <Vector3>(this.teleportPosition); teleportTo.Direction = new InArgument <Vector3>(this.teleportDirection); WaitForLoading item18 = new WaitForLoading(0f); loop.Activities.Add(teleportToTriggered); loop.Activities.Add(item17); loop.Activities.Add(teleportTo); loop.Activities.Add(item18); loop.Activities.Add(item6); DisconnectFromRoaming item19 = new DisconnectFromRoaming(); EnablePointsOfInterest item20 = new EnablePointsOfInterest(3312964337u, false); RunAsyncEvent runAsyncEvent = new RunAsyncEvent(this.manager); runAsyncEvent.EventKey = new InArgument <uint>(Hash.Hash32("events/treasure_hunt_001")); AssignPursuitEscalation item21 = new AssignPursuitEscalation(4085894198u); EnterLobbyTriggered enterLobbyTriggered = new EnterLobbyTriggered(Ports.Gameplay); enterLobbyTriggered.EventKey = new OutArgument <uint>(this.eventKey); state4.EnterActivity.Activities.Add(item8); state4.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Audio, 2781049312u)); state4.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_AI, 2681735821u)); state4.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Frontend, 3615492632u)); state4.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_WorldMap, "worldmap_freeroam")); state4.EnterActivity.Activities.Add(item); state4.EnterActivity.Activities.Add(item9); state4.EnterActivity.Activities.Add(item10); state4.EnterActivity.Activities.Add(item11); state4.EnterActivity.Activities.Add(item12); state4.EnterActivity.Activities.Add(item13); state4.EnterActivity.Activities.Add(item15); state4.EnterActivity.Activities.Add(item16); state4.EnterActivity.Activities.Add(item21); state4.EnterActivity.Activities.Add(item14); state4.EnterActivity.Activities.Add(item18); state4.EnterActivity.Activities.Add(item6); state4.Transitions.Add(new Transition(activity5)); state4.Transitions.Add(new Transition("event", enterEventTriggered)); state4.Transitions.Add(new Transition(activity6)); state4.Transitions.Add(new Transition("safehouse", activity4)); state4.Transitions.Add(new Transition("store", activity)); state4.Transitions.Add(new Transition("reset", runAsyncEvent)); state4.Transitions.Add(new Transition("lobby", enterLobbyTriggered)); state4.Transitions.Add(new Transition(loop)); state4.ExitActivity.Activities.Add(item19); state4.ExitActivity.Activities.Add(item20); state4.ExitActivity.Activities.Add(item16); state7.Transitions.Add(new Transition("freeroam")); LoadEventVault loadEventVault = new LoadEventVault(); loadEventVault.EventKey = new InArgument <uint>(this.eventKey); StartStreamingAtEvent startStreamingAtEvent = new StartStreamingAtEvent(); startStreamingAtEvent.EventKey = new InArgument <uint>(this.eventKey); AcceptInvite item22 = new AcceptInvite(); CloseOnReceive <OnLobbyCancelled> activity7 = new CloseOnReceive <OnLobbyCancelled>(Ports.Gameplay); CloseOnReceive <OnLobbyFailed> activity8 = new CloseOnReceive <OnLobbyFailed>(Ports.Gameplay); CloseOnReceive <OnLobbyExited> activity9 = new CloseOnReceive <OnLobbyExited>(Ports.Gameplay); IsStuckInLobby activity10 = new IsStuckInLobby(0.25f); LobbyTick activity11 = new LobbyTick(0.25f); LockLocalVehicle item23 = new LockLocalVehicle(true); state5.EnterActivity.Activities.Add(item22); state5.EnterActivity.Activities.Add(item23); state5.EnterActivity.Activities.Add(item6); state5.EnterActivity.Activities.Add(new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Frontend, 701743214u)); state5.EnterActivity.Activities.Add(loadEventVault); state5.EnterActivity.Activities.Add(startStreamingAtEvent); state5.Transitions.Add(new Transition("event", enterEventTriggered)); state5.Transitions.Add(new Transition("freeroam", activity7)); state5.Transitions.Add(new Transition("freeroam", activity8)); state5.Transitions.Add(new Transition("freeroam", activity9)); state5.Transitions.Add(new Transition("freeroam", activity10)); state5.Transitions.Add(new Transition(activity11)); state5.ExitActivity.Activities.Add(item17); RunEvent runEvent = new RunEvent(this.manager); runEvent.EventSessionId = new InArgument <long>(this.eventSessionId); runEvent.EventKey = new InArgument <uint>(this.eventKey); runEvent.ConnectionSupport = new InArgument <ConnectionSupport>(this.connectionSupport); state8.EnterActivity.Activities.Add(item); state8.Transitions.Add(new Transition("recover", runEvent)); CloseOnExitPath activity12 = new CloseOnExitPath(ExitPath.ExitToLobby, false); CloseOnExitPath activity13 = new CloseOnExitPath(ExitPath.ExitToFreeroam, true); state6.Transitions.Add(new Transition("lobby", activity12)); state6.Transitions.Add(new Transition("freeroam", activity13)); state9.EnterActivity.Activities.Add(item3); base.InitialState = "initial"; base.DoneState = "done"; base.States.Add(state); base.States.Add(state2); base.States.Add(state3); base.States.Add(state4); base.States.Add(state5); base.States.Add(state6); base.States.Add(state7); base.States.Add(state8); base.States.Add(state9); }
// Token: 0x06001400 RID: 5120 RVA: 0x0001EF78 File Offset: 0x0001DF78 protected override WorkflowElement CreateBody() { StateGraph stateGraph = new StateGraph(string.Format("OpponentPursuitSubgraph: {0}", base.Entrant.Opponent.OpponentName)); State state = new State("initial"); State state2 = new State("inpursuit"); State state3 = new State("busted"); State state4 = new State("spectate"); State state5 = new State("respawn"); State state6 = new State("ghost"); State state7 = new State("post"); State item = new State("done"); LaunchPursuitByEventHeat item2 = new LaunchPursuitByEventHeat(base.Event); new GameCore.Activities.Entrant.Components.CloseOnReceive <OnPursuitEngaged>(base.InstancedEvent, base.Entrant, Ports.Gameplay); GameCore.Activities.Entrant.Components.CloseOnReceive <OnPursuitBusted> activity = new GameCore.Activities.Entrant.Components.CloseOnReceive <OnPursuitBusted>(base.InstancedEvent, base.Entrant, Ports.Gameplay); EntrantFinished activity2 = new EntrantFinished(base.InstancedEvent, base.Entrant, -1); if (base.Entrant.Opponent is LocalHumanOpponent) { state.EnterActivity.Activities.Add(item2); state.Transitions.Add(new Transition("inpursuit")); } else { state.Transitions.Add(new Transition("inpursuit")); } ReinitiatePursuit item3 = new ReinitiatePursuit(); RadialBustMeterLogic activity3 = new RadialBustMeterLogic(base.InstancedEvent, base.Entrant); if (base.Entrant.Opponent is LocalHumanOpponent) { state2.EnterActivity.Activities.Add(item3); state2.Transitions.Add(new Transition("busted", activity)); state2.Transitions.Add(new Transition("post", activity2)); state2.Transitions.Add(new Transition(activity3)); } else { state2.Transitions.Add(new Transition("busted", activity)); state2.Transitions.Add(new Transition("post", activity2)); } Timer activity4 = new Timer(new InArgument <float>(new InArgumentHandler <float>(base.Event.EventDef.SpectateTime))); SetSignal item4 = new SetSignal("TeamEscape.AllBusted"); UnSetSignal item5 = new UnSetSignal("TeamEscape.AllBusted"); RespawnFlasher flasher = new RespawnFlasher(base.Event.EventDef.SpectateTime() * 1000f); SetOpponentStatus item6 = new SetOpponentStatus(base.InstancedEvent, base.Entrant, OpponentStatus.kOpponent_NotSpectatable, true); SetOpponentStatus item7 = new SetOpponentStatus(base.InstancedEvent, base.Entrant, OpponentStatus.kOpponent_NotSpectatable, false); EntrantHighlight item8 = new EntrantHighlight(base.InstancedEvent, base.Entrant, EntrantHighlight.kHighlight_Red); DisplayFlasher item9 = new DisplayFlasher(base.InstancedEvent, base.Entrant, this.localBustedFlasher, true); HideFlasher item10 = new HideFlasher(base.InstancedEvent, base.Entrant, this.localBustedFlasher); DisplayFlasher item11 = new DisplayFlasher(base.InstancedEvent, base.Entrant, new FormattedFlasher(2571601381u, base.Entrant.Opponent.ToString())); GameCore.Activities.Entrant.Components.EnableGadget item12 = new GameCore.Activities.Entrant.Components.EnableGadget(base.InstancedEvent, base.Entrant, "TeamEscapePursuitBarGadget", GameCore.Activities.Entrant.Components.EnableGadget.GadgetToggle.Disable); HideAllGadgetsButThese item13 = new HideAllGadgetsButThese(base.InstancedEvent, base.Entrant, new string[] { "FlasherGadget", "Chat", "MultiplayerPursuitHUD", "Options" }); SetCamera item14 = new SetCamera(base.InstancedEvent, base.Entrant, "CDActionSpectate"); WaitForLoading item15 = new WaitForLoading(0.25f); GetSpectateTargetPosition getSpectateTargetPosition = new GetSpectateTargetPosition(base.InstancedEvent); getSpectateTargetPosition.SpectateTargetPersonaId = new OutArgument <long>(this.spectateTargetPersonaId); getSpectateTargetPosition.Position = new OutArgument <Vector3>(this.warpPosition); getSpectateTargetPosition.Direction = new OutArgument <Vector3>(this.warpDirection); getSpectateTargetPosition.Mps = new OutArgument <float>(this.warpMps); OverrideVehicleControl item16 = new OverrideVehicleControl(base.Entrant.Opponent.Vehicle, OverrideVehicleControl.Control.Stop); DisplayFlasher item17 = new DisplayFlasher(base.InstancedEvent, base.Entrant, flasher); HideFlasher item18 = new HideFlasher(base.InstancedEvent, base.Entrant, flasher); SendRespawnMessage item19 = new SendRespawnMessage(base.InstancedEvent, base.Entrant, new InArgument <long>(this.spectateTargetPersonaId)); WaitForRespawnMessage activity5 = new WaitForRespawnMessage(base.InstancedEvent, base.Entrant, Ports.Gameplay, new OutArgument <long>(this.spectateTargetPersonaId)); WaitForAvailableStrike activity6 = new WaitForAvailableStrike(base.InstancedEvent, base.Entrant, Ports.Gameplay); FinishEntrant activity7 = new FinishEntrant(base.InstancedEvent, base.Entrant, FinishReason.Busted); EntrantBustedAudio item20 = new EntrantBustedAudio(base.InstancedEvent, base.Entrant); state3.EnterActivity.Activities.Add(item4); state3.EnterActivity.Activities.Add(item8); state3.EnterActivity.Activities.Add(item6); state3.EnterActivity.Activities.Add(item20); state3.Transitions.Add(new Transition("spectate", activity6)); state3.Transitions.Add(new Transition(activity7)); state3.Transitions.Add(new Transition("post", activity2)); state3.ExitActivity.Activities.Add(item5); ChangeBlackBoard item21 = new ChangeBlackBoard(BlackBoardChannel.kBlackBoard_Audio, 3285804633u); CacheBlackBoard cacheBlackBoard = new CacheBlackBoard(BlackBoardChannel.kBlackBoard_Audio); cacheBlackBoard.BlackboardKey = new OutArgument <uint>(this.cachedAudioBlackBoard); UncacheBlackBoard uncacheBlackBoard = new UncacheBlackBoard(BlackBoardChannel.kBlackBoard_Audio); uncacheBlackBoard.BlackboardKey = new InArgument <uint>(this.cachedAudioBlackBoard); if (base.Entrant.Opponent is LocalHumanOpponent) { state4.EnterActivity.Activities.Add(item4); state4.EnterActivity.Activities.Add(item16); state4.EnterActivity.Activities.Add(item12); state4.EnterActivity.Activities.Add(item9); state4.EnterActivity.Activities.Add(item13); state4.EnterActivity.Activities.Add(item14); state4.EnterActivity.Activities.Add(item15); state4.EnterActivity.Activities.Add(item10); state4.EnterActivity.Activities.Add(item17); state4.EnterActivity.Activities.Add(cacheBlackBoard); state4.EnterActivity.Activities.Add(item21); state4.Transitions.Add(new Transition("ghost", activity4)); state4.Transitions.Add(new Transition("post", activity2)); state4.ExitActivity.Activities.Add(getSpectateTargetPosition); state4.ExitActivity.Activities.Add(item19); state4.ExitActivity.Activities.Add(item18); state4.ExitActivity.Activities.Add(item5); state4.ExitActivity.Activities.Add(uncacheBlackBoard); } else { state4.EnterActivity.Activities.Add(item4); state4.EnterActivity.Activities.Add(item16); state4.EnterActivity.Activities.Add(item11); state4.Transitions.Add(new Transition("ghost", activity5)); state4.Transitions.Add(new Transition("post", activity2)); state4.ExitActivity.Activities.Add(item5); } Timer activity8 = new Timer(new InArgument <float>(() => 0.5f)); if (base.Entrant.Opponent is LocalHumanOpponent) { state5.Transitions.Add(new Transition("ghost", activity8)); } else { state5.Transitions.Add(new Transition("ghost")); } UnHideAllGadgets item22 = new UnHideAllGadgets(base.InstancedEvent, base.Entrant); Timer activity9 = new Timer(new InArgument <float>(new InArgumentHandler <float>(base.Event.EventDef.GhostDebuffTime))); EnableGhosting item23 = new EnableGhosting(base.InstancedEvent, base.Entrant, true, base.Event.EventDef.GhostDebuffTime()); GameCore.Activities.Entrant.Components.EnableGadget item24 = new GameCore.Activities.Entrant.Components.EnableGadget(base.InstancedEvent, base.Entrant, "TeamEscapePursuitBarGadget", GameCore.Activities.Entrant.Components.EnableGadget.GadgetToggle.Enable); EnableGhosting item25 = new EnableGhosting(base.InstancedEvent, base.Entrant, false); RepairTires item26 = new RepairTires(base.InstancedEvent, base.Entrant, base.InstancedEvent.EventDef.GhostDebuffTime()); EntrantHighlight item27 = new EntrantHighlight(base.InstancedEvent, base.Entrant, EntrantHighlight.kHighlight_None); SetCamera item28 = new SetCamera(base.InstancedEvent, base.Entrant, "CDActionDrive"); GameCore.Activities.Entrant.Components.WarpTo warpTo = new GameCore.Activities.Entrant.Components.WarpTo(base.InstancedEvent, base.Entrant); warpTo.Position = new InArgument <Vector3>(this.warpPosition); warpTo.Direction = new InArgument <Vector3>(this.warpDirection); warpTo.Mps = new InArgument <float>(this.warpMps); OverrideVehicleControl item29 = new OverrideVehicleControl(base.Entrant.Opponent.Vehicle, OverrideVehicleControl.Control.Release); CopyRoutingState item30 = new CopyRoutingState(base.InstancedEvent, base.Entrant, new InArgument <long>(this.spectateTargetPersonaId)); RechargeAllPowerups item31 = new RechargeAllPowerups(); OverridePursuitBar item32 = new OverridePursuitBar(base.InstancedEvent, base.Entrant, 0f); if (base.Entrant.Opponent is LocalHumanOpponent) { state6.EnterActivity.Activities.Add(item22); state6.EnterActivity.Activities.Add(item32); state6.EnterActivity.Activities.Add(item29); state6.EnterActivity.Activities.Add(warpTo); state6.EnterActivity.Activities.Add(item23); state6.EnterActivity.Activities.Add(item30); state6.EnterActivity.Activities.Add(item12); state6.EnterActivity.Activities.Add(item31); state6.EnterActivity.Activities.Add(item28); state6.EnterActivity.Activities.Add(item7); state6.EnterActivity.Activities.Add(item27); state6.EnterActivity.Activities.Add(item26); state6.Transitions.Add(new Transition("inpursuit", activity9)); state6.Transitions.Add(new Transition("post", activity2)); state6.ExitActivity.Activities.Add(item24); state6.ExitActivity.Activities.Add(item25); } else { state6.EnterActivity.Activities.Add(item30); state6.EnterActivity.Activities.Add(item29); state6.EnterActivity.Activities.Add(item7); state6.EnterActivity.Activities.Add(item27); state6.Transitions.Add(new Transition("inpursuit", activity9)); state6.Transitions.Add(new Transition("post", activity2)); } ReleaseBehavior item33 = new ReleaseBehavior(base.InstancedEvent, base.Entrant, "BEHAVIOR_GAMEPLAY_PURSUIT"); state7.EnterActivity.Activities.Add(item22); state7.EnterActivity.Activities.Add(item6); state7.EnterActivity.Activities.Add(item33); state7.Transitions.Add(new Transition("done")); stateGraph.InitialState = "initial"; stateGraph.DoneState = "done"; stateGraph.States.Add(state); stateGraph.States.Add(state2); stateGraph.States.Add(state3); stateGraph.States.Add(state4); stateGraph.States.Add(state5); stateGraph.States.Add(state6); stateGraph.States.Add(state7); stateGraph.States.Add(item); return(stateGraph); }