public virtual void SetActive() { if (state != MissionStates.ACTIVE) { state = MissionStates.ACTIVE; MissionActivated(); } state = MissionStates.ACTIVE; }
protected void MissionFinished() { PersonInfo.AddCoins(coinAward); PersonInfo.AddGold(goldAward); this.state = MissionStates.FINISHED; for (int i = 0; i < missionListeners.Count; i++) { ((IMissionListener)missionListeners[i]).MissionFinished(this); } }
public void DeckEnableCheck() { for (int i = 0; i < this.CommandMenu.menuParts.Length; i++) { this.CommandMenu.menuParts[i].SetMenuState(CommandMenuParts.MenuState.Forcus); this.CommandMenu.menuParts[i].SetMenuState(CommandMenuParts.MenuState.NonForcus); } if (SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.IsActionEnd() || SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.MissionState != MissionStates.NONE || SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.HasBling()) { this.CommandMenu.menuParts[0].SetMenuState(CommandMenuParts.MenuState.Disable); this.CommandMenu.menuParts[1].SetMenuState(CommandMenuParts.MenuState.Disable); this.CommandMenu.menuParts[4].SetMenuState(CommandMenuParts.MenuState.Disable); } if (SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.IsActionEnd() || SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.HasBling()) { this.CommandMenu.menuParts[3].SetMenuState(CommandMenuParts.MenuState.Disable); } if (SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.MissionState == MissionStates.STOP) { this.CommandMenu.menuParts[3].SetMenuState(CommandMenuParts.MenuState.Disable); } if (StrategyAreaManager.FocusAreaID != SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.AreaId || SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.Count <= 0) { if (this.currentMenu != TaskStrategyCommandMenu.MENU_NAME.INFO) { this.currentMenu = TaskStrategyCommandMenu.MENU_NAME.DEPLOY; } this.CommandMenu.menuParts[0].SetMenuState(CommandMenuParts.MenuState.Disable); this.CommandMenu.menuParts[1].SetMenuState(CommandMenuParts.MenuState.Disable); this.CommandMenu.menuParts[4].SetMenuState(CommandMenuParts.MenuState.Disable); this.CommandMenu.menuParts[3].SetMenuState(CommandMenuParts.MenuState.Disable); } MissionStates missionState = SingletonMonoBehaviour <AppInformation> .Instance.CurrentDeck.MissionState; if (missionState != MissionStates.NONE) { if (this.currentMenu != TaskStrategyCommandMenu.MENU_NAME.INFO) { this.currentMenu = TaskStrategyCommandMenu.MENU_NAME.DEPLOY; } this.CommandMenu.menuParts[7].SetMenuState(CommandMenuParts.MenuState.Disable); } this.CommandMenu.SetMissionState(missionState); if (!this.CheckActiveDeckExist()) { this.currentMenu = TaskStrategyCommandMenu.MENU_NAME.TURNEND; } else if (this.currentMenu == TaskStrategyCommandMenu.MENU_NAME.TURNEND || this.currentMenu == TaskStrategyCommandMenu.MENU_NAME.MOVE) { this.currentMenu = TaskStrategyCommandMenu.MENU_NAME.SALLY; } }
public void SetMissionState(MissionStates state) { CommandMenuParts commandMenuParts = menuParts[3]; if (state == MissionStates.RUNNING) { commandMenuParts.MenuNameStr = "menu_stop"; } else { commandMenuParts.MenuNameStr = "menu_expedition"; } SetMenuStates(myOffset); }
private bool IsTransitionTokenValid(OpenTitan_LifeCycleState currentState, OpenTitan_LifeCycleState nextState) { if (LockedTestStates.Contains(currentState) && UnlockedTestStates.Contains(nextState)) { return(token.SequenceEqual(testUnlockToken)); } else if (UnlockedTestStates.Contains(currentState) && MissionStates.Contains(nextState)) { return(token.SequenceEqual(testExitToken)); } else if (MissionStates.Contains(currentState) && nextState == OpenTitan_LifeCycleState.Rma) { return(token.SequenceEqual(rmaToken)); } // No token required for this transition return(true); }
public void SetMissionState(MissionStates state) { if (state == MissionStates.RUNNING) { this.MenuButtonName[3] = "menu_stop_"; } else { this.MenuButtonName[3] = "menu_expedition_"; } this.missionState = state; if (this.myOffset == 3) { string text = string.Empty; text = ((!this.MenuEnable[0]) ? "off" : "on"); this.MenuButtonSprite[0].spriteName = this.MenuButtonName[3] + text; } }
public void SetMissionState(MissionStates state) { if (state == MissionStates.RUNNING) { MenuButtonName[3] = "menu_stop_"; } else { MenuButtonName[3] = "menu_expedition_"; } missionState = state; if (myOffset == 3) { string empty = string.Empty; string str = (!MenuEnable[0]) ? "off" : "on"; MenuButtonSprite[0].spriteName = MenuButtonName[3] + str; } }
private bool IsTransitionAllowed(OpenTitan_LifeCycleState currentState, OpenTitan_LifeCycleState nextState) { if (nextState == OpenTitan_LifeCycleState.Scrap || currentState == OpenTitan_LifeCycleState.Raw && UnlockedTestStates.Contains(nextState)) { return(true); } else if (UnlockedTestStates.Contains(currentState)) { if (LockedTestStates.Contains(nextState) && (nextState > currentState) || nextState == OpenTitan_LifeCycleState.Rma || MissionStates.Contains(nextState)) { return(true); } } else if ((currentState == OpenTitan_LifeCycleState.Dev || currentState == OpenTitan_LifeCycleState.Prod) && nextState == OpenTitan_LifeCycleState.Rma) { return(true); } return(false); }
public void CompleteMission() { this.State = MissionStates.Finished; }
public Mission(string codeName, MissionStates state) { this.CodeName = codeName; this.State = state; }
public void OnTick(object sender, EventArgs e) { if (InputWidowOpen) { if (menuPool.IsAnyMenuOpen()) { menuPool.CloseAllMenus(); } switch (Function.Call <int>(Hash.UPDATE_ONSCREEN_KEYBOARD)) { default: break; case 1: mNameString = Function.Call <string>(Hash.GET_ONSCREEN_KEYBOARD_RESULT); InputWidowOpen = false; CreateMenu.Visible = true; mName.Text = "Name: " + mNameString; break; case 2: InputWidowOpen = false; CreateMenu.Visible = true; break; } } // Fail states if (menuPool != null) { menuPool.ProcessMenus(); } if (DEBUG) { myUIText = new UIText("" + CurrentState + " Distance:" + distance, new Point(10, 10), 0.4f, Color.WhiteSmoke, 0, false); myUIText.Draw(); } if (!menuPool.IsAnyMenuOpen()) { if (DrawStartPos) { DrawStartPos = false; } } else if (DrawStartPos) { World.DrawMarker(MarkerType.VerticalCylinder, mStartVector, Vector3.Zero, Vector3.Zero, new Vector3(4, 4, 1), Color.FromArgb(180, Color.Yellow)); } if (Game.Player.IsPlaying) { if ((int)CurrentState >= 2 && (int)CurrentState < 6) { if (CurrentMission.PedCount > 0 && MissionPeds.FindAll(p => !p.IsAlive).Count > 0) { CurrentState = MissionStates.Fail; } if (MissionVehicle == null) { CurrentState = MissionStates.Fail; } else if (MissionVehicle.IsDead) { CurrentState = MissionStates.Fail; } } switch (CurrentState) { case MissionStates.None: // Active When No Mission is present. if (CurrentMission != null) { if (CurrentMission.active) { MissionBlipStart(CurrentMission, MissionBlip); CurrentState = MissionStates.Offered; } else { GenerateMission(); } } break; case MissionStates.Offered: distance = CurrentMission.GetStartPos().DistanceTo(Game.Player.Character.Position); if (distance < 280) { World.DrawMarker(MarkerType.VerticalCylinder, CurrentMission.GetStartPos(), Vector3.Zero, Vector3.Zero, new Vector3(4, 4, 1), Color.FromArgb(180, Color.Yellow)); if (distance < 20) { if (MissionVehicle == null) { MissionVehicle = GetMissionVehicle(CurrentMission); } if (distance < 4) { if (MissionVehicle != null && MissionVehicle.Driver != null && MissionVehicle.Driver.IsPlayer && MissionVehicle.IsStopped) { bool start = false; if (CurrentMission.PedCount > 0) { GeneratePeds(CurrentMission, MissionPeds); if (MissionPeds.Count > 0 && MissionPeds.Count == CurrentMission.PedCount) { start = true; } } else { start = true; } if (start) { MissionBlipEnd(CurrentMission, MissionBlip); CurrentState = MissionStates.Start; //Vehicle and Ped is spawned, and player is in vehicle. Change to Start state. } } } } } break; case MissionStates.Start: if (MissionVehicle.Driver != null && MissionVehicle.Driver.IsPlayer) { if (CurrentMission.PedCount > 0) { if (MissionPeds.Count > 0) { foreach (Ped ped in MissionPeds) { if (ped.CurrentPedGroup != Game.Player.Character.CurrentPedGroup) { Game.Player.Character.CurrentPedGroup.Add(ped, false); } } } if (MissionPeds.FindAll(p => p.CurrentPedGroup != Game.Player.Character.CurrentPedGroup).Count == 0) { foreach (Ped ped in MissionPeds) { if (ped.CurrentPedGroup == Game.Player.Character.CurrentPedGroup) { ped.Task.EnterVehicle(MissionVehicle, VehicleSeat.Passenger); } } CurrentState = MissionStates.Middle; } } else { CurrentState = MissionStates.Middle; } } break; case MissionStates.Middle: if (CurrentMission.PedCount > 0) { if (MissionPeds.FindAll(p => p.CurrentVehicle == MissionVehicle).Count == 0) { CurrentState = MissionStates.End; } } else { CurrentState = MissionStates.End; } break; case MissionStates.End: distance = CurrentMission.GetNewEndPos().DistanceTo(Game.Player.Character.Position); if (distance < 280) { World.DrawMarker(MarkerType.VerticalCylinder, CurrentMission.GetNewEndPos(), Vector3.Zero, Vector3.Zero, new Vector3(4, 4, 1), Color.FromArgb(180, Color.Yellow)); if (distance < 5 && MissionVehicle.IsStopped) { MissionBlip.Remove(); if (CurrentMission.PedCount > 0) { foreach (Ped p in MissionPeds) { RemovePed(p); } if (MissionPeds.FindAll(p => p.CurrentPedGroup == Game.Player.Character.CurrentPedGroup).Count == 0) { CurrentState = MissionStates.Finish; } } else { CurrentState = MissionStates.Finish; } } } break; case MissionStates.Finish: MissionVehicle = null; if (MissionPeds.FindAll(p => p.IsInVehicle()).Count == 0) { Game.Player.Money += 2000; MissionPeds.Clear(); CurrentState = MissionStates.None; // Ped has gotten out of vehicle, give player money and set us to having no mission. } break; default: break; } } }