static void Postfix(SubtitleLogic __instance, SubtitleEvent.Data data) { if (__instance.currentEmitter_ is null || data.emitter_ is null) { return; } __instance.CheckCameraDistance(data.emitter_); if (__instance.distanceToCurrentEmitter_ > data.emitter_.MaxAttenuationSq_) { return; } SubtitleState.strLabel = data.strLabel_; SubtitleState.markerID = data.markerID_; SubtitleState.forceString = data.forceString_; SubtitleState.emitter = data.emitter_; if (G.Sys.GameManager_.ModeID_ != GameModeID.Adventure) { return; } AdventureMode mode = G.Sys.GameManager_.Mode_ as AdventureMode; TimeSpan countdown = TimeSpan.FromSeconds(mode.GetCountdownTime()); SubtitleState.countdownHours = countdown.Hours; SubtitleState.countdownMinutes = countdown.Minutes; SubtitleState.countdownSeconds = countdown.Seconds; }
public GameSettings() { _gameMode = GameMode.Adventure; _numberOfPlayers = NumberOfPlayersSelected.OnePlayer; _levelSelected = LevelSelection.Tropical; _adventureMode = AdventureMode.Continue; _gameSave = GameSave.SaveFile1; }
public void ChooseDifficulty(int level) { difficulty = (Difficulty)level; switch (difficulty) { case Difficulty.Doctor: layer = 4; trap = 5; target = 2; opportunity = 10; tipsButton[0].SetActive(true); tipsButton[1].SetActive(true); tipsButton[2].SetActive(true); toggleDoctor.gameObject.SetActive(true); toggleDoctor.isOn = true; adventureMode = AdventureMode.Doctor; break; case Difficulty.Newbie: layer = 4; trap = 5; target = 2; opportunity = 2; gridGruop.localScale = Vector3.one; break; case Difficulty.Trainee: layer = 5; trap = 8; target = 4; opportunity = 3; gridGruop.localScale = Vector3.one; break; case Difficulty.Elite: layer = 5; trap = 8; target = 5; opportunity = 4; gridGruop.localScale = Vector3.one; break; case Difficulty.Expert: layer = 5; trap = 8; target = 6; opportunity = 5; gridGruop.localScale = Vector3.one; break; case Difficulty.Master: layer = 6; trap = 12; target = 9; opportunity = 7; gridGruop.localScale = new Vector3(0.84f, 0.84f, 0.84f); break; case Difficulty.Crazy: layer = 6; trap = 13; target = 11; opportunity = 9; gridGruop.localScale = new Vector3(0.84f, 0.84f, 0.84f); break; case Difficulty.Wakaka: layer = 7; trap = 26; target = 11; opportunity = 11; gridGruop.localScale = new Vector3(0.7f, 0.7f, 0.7f); break; } textLevel.text = "Lv. " + level; textDifficultyEng.text = difficulty.ToString(); textDifficultyCht.text = ((DifficultyCht)level).ToString(); // 設置難度之後要重新排列網格 countHexagonGrids = HexagonMesh.CalculateHexGrids(layer); rotateMap = false; gridGruop.localRotation = Quaternion.identity; // 排列過程中不要旋轉 for (int i = 0; i < HexagonMesh.grids.Length; i++) { if (i < countHexagonGrids) { ArrangeGrid(i); } else { Vector3 gridCoordinate = new Vector3(999, 999, 999); HexagonMesh.grids[i].gridCoordinate = gridCoordinate; HexagonMesh.grids[i].transform.localPosition = new Vector3(7000, 7000, 7000); } } rotateMap = true; }
public static void Postfix(AdventureMode __instance) { string path = Utils.Common.LevelFile; if (!Utils.Common.IsInLevelEditor() && Utils.Campaign.IsCustomCampaignLevel(path)) { __instance.countdownDisabled_ = false; double countdown = Utils.Campaign.GetLevelCountdown(path); __instance.customTime_ = (float)countdown; if (countdown == 0) { __instance.countdownDisabled_ = true; } } }
// Adventure Mode 冒險模式 public void SwitchAdventureMode(int mode) { if (firstTry) { adventureMode = (AdventureMode)mode; } else { adventureWarning.DOFade(1, 1.37f); if (difficulty == Difficulty.Doctor) { toggleDoctor.isOn = true; } else { toggleExolore.isOn = true; } } nightVision.enabled = toggleTool.isOn ? true : false; }
public static bool Prefix(AdventureMode __instance, ref double __result) { string path = Utils.Common.LevelFile; bool flag = Utils.Campaign.IsCustomCampaignLevel(path) && Utils.Campaign.GetLevelCountdown(path) == 0; if (flag) { if (__instance.paused_) { __result = __instance.pauseTime_; } else { __result = Mathf.Max((float)Timex.ModeTime_, 0.0f); } return(false); } return(true); }
public static bool Prefix(AdventureMode __instance) { string path = Utils.Common.LevelFile; __instance.UpdateRaceModeDistanceToFinish(); if (__instance.hasEnded_ || __instance.GetDisplayTime(0) > 0.0 || __instance.campaignPlusEnabled_) { return(false); } __instance.hasEnded_ = true; bool flag_a = Utils.Campaign.IsCustomCampaignLevel(path) && Utils.Campaign.GetLevelCountdown(path) > 0; flag_a |= !Utils.Campaign.IsCustomCampaignLevel(path); if (!__instance.countdownDisabled_ && flag_a) { int currentPlaylistIndex = __instance.gameMan_.GetCurrentPlaylistIndex(); PlayerDataLocal firstLocalPlayer = PlayerDataLocal.FirstLocalPlayer_; bool flag_b = !Utils.Campaign.IsCustomCampaignLevel(path) && (currentPlaylistIndex == 0 || currentPlaylistIndex == __instance.gameMan_.LevelPlaylist_.Count_ - 1); if (flag_b || __instance.HasFinished(firstLocalPlayer) || firstLocalPlayer is null || (firstLocalPlayer.Car_ is null || __instance.finishTriggerObj_ is null)) { return(false); } __instance.finishTriggerObj_.transform.position = firstLocalPlayer.Car_.transform.position; __instance.finishTriggerObj_.SetActive(true); } else { StaticEvent <ZEvent.Data> .Broadcast(new ZEvent.Data("AdventureModeClockHitZero", true)); } return(false); }