/// <summary> /// Unity event. /// </summary> private void Start() { GameplayState gameplayState = SceneManager.Instance.GameplayState; RoomSelectable = gameplayState.Room.GetComponent <Selectable>(); InvoiceData.ClearData(); Mission mission = gameplayState.Mission; InvoiceData.MissionName = mission != null?Localization.GetLocalizedString(mission.DisplayNameTerm != "Freeplay"?mission.DisplayNameTerm : "Missions/freeplay_DisplayName") : null; FactoryGameModePicker.GameMode gameModeEnum; GameMode = FactoryGameModePicker.CreateGameMode(GameplayState.MissionToLoad, gameObject, out gameModeEnum); InvoiceData.GameMode = gameModeEnum; QuickDelay(() => GameMode.Setup(this)); OnLightChange(false); KMModSettings modSettings = GetComponent <KMModSettings>(); ModSettings activeModSettings = JsonConvert.DeserializeObject <ModSettings>(modSettings.Settings); GetComponent <SpoopyScares>().enabled = activeModSettings.halloweenEvent; }
public void Start() { this.AdvantageousWarningCanvas.SetActive(false); this.KMGameInfo = this.GetComponent <KMGameInfo>(); this.KMModSettings = this.GetComponent <KMModSettings>(); this.KMGamepad = this.GetComponent <KMGamepad>(); if (Application.isEditor) { this.config = new Config { ShowModuleNames = true }; this.StartCoroutine(this.CheckForBombsTest()); } else { this.RefreshConfig(); this.KMGameInfo.OnStateChange = this.KMGameInfo_OnStateChange; UnityEngine.SceneManagement.SceneManager.sceneLoaded += this.SceneManager_sceneLoaded; } if (KTInputManager.Instance.IsMotionControlMode()) { this.StartCoroutine(this.SearchForVrControllersCoroutine()); } }
//Update this line each time you make changes to the Settings version. public ModSettings(KMModSettings settings) { var fileName = Path.GetFileName(settings.SettingsPath); if (fileName != null) { ModuleName = fileName.Replace("-settings.txt", ""); } }
private void Start() { _gameInfo = GetComponent <KMGameInfo>(); _gameInfo.OnStateChange += OnStateChange; _modSettings = GetComponent <KMModSettings>(); ModSettingsJSON settings = JsonConvert.DeserializeObject <ModSettingsJSON>(_modSettings.Settings); if (settings == null) { DebugHelper.LogError("Failed to read connection settings from mod settings."); return; } DebugMode = (settings.debug == true); _ircConnection = new IRCConnection(settings.authToken, settings.userName, settings.channelName, settings.serverName, settings.serverPort); _ircConnection.Connect(); _coroutineCanceller = new CoroutineCanceller(); _coroutineQueue = GetComponent <CoroutineQueue>(); _coroutineQueue.coroutineCanceller = _coroutineCanceller; logUploader = GetComponent <LogUploader>(); logUploader.ircConnection = _ircConnection; urlHelper = GetComponent <UrlHelper>(); urlHelper.ChangeMode(settings.shortUrls == true); _leaderboard = new Leaderboard(); _leaderboard.LoadDataFromFile(); ModuleData.LoadDataFromFile(); ModuleData.WriteDataToFile(); TwitchPlaySettings.LoadDataFromFile(); UserAccess.AddUser(settings.userName, AccessLevel.Streamer | AccessLevel.SuperUser | AccessLevel.Admin | AccessLevel.Mod); UserAccess.AddUser(settings.channelName.Replace("#", ""), AccessLevel.Streamer | AccessLevel.SuperUser | AccessLevel.Admin | AccessLevel.Mod); UserAccess.WriteAccessList(); SetupResponder(bombMessageResponder); SetupResponder(postGameMessageResponder); SetupResponder(missionMessageResponder); SetupResponder(miscellaneousMessageResponder); bombMessageResponder.leaderboard = _leaderboard; postGameMessageResponder.leaderboard = _leaderboard; miscellaneousMessageResponder.leaderboard = _leaderboard; bombMessageResponder.parentService = this; }
//Done when the bomb starts void OnActivate() { modSettings = GetComponent <KMModSettings>(); settings = JsonConvert.DeserializeObject <MySettings>(modSettings.Settings); //Randomises the song displayed at the bottom currentSong = Random.Range(0, 25); song.text = songNames[currentSong]; StartCoroutine(UpdateStages()); }
public IceCreamConfirm(BombCommander bombCommander, BombComponent bombComponent) : base(bombCommander, bombComponent) { _settings = new Settings(); modInfo = ComponentSolverFactory.GetModuleInfo(GetModuleType(), ShimData.HelpMessage + " Check the opening hours with !{0} hours."); KMModSettings modSettings = bombComponent.GetComponent <KMModSettings>(); try { _settings = JsonConvert.DeserializeObject <Settings>(modSettings.Settings); } catch (Exception ex) { DebugHelper.LogException(ex, "Could not deserialize ice cream settings:"); TwitchPlaySettings.data.ShowHours = false; TwitchPlaySettings.WriteDataToFile(); } }
void Start() { MonoBehaviour[] scripts = MonoBehaviour.FindObjectsOfType <MonoBehaviour>(); foreach (MonoBehaviour s in scripts) { IEnumerable <FieldInfo> fields = s.GetType().GetFields(); foreach (FieldInfo f in fields) { if (f.FieldType.Equals(typeof(KMBombInfo))) { KMBombInfo component = (KMBombInfo)f.GetValue(s); if (component.OnBombExploded != null) { fakeInfo.Detonate += new FakeBombInfo.OnDetonate(component.OnBombExploded); } if (component.OnBombSolved != null) { fakeInfo.HandleSolved += new FakeBombInfo.OnSolved(component.OnBombSolved); } continue; } } } currentSelectable = GetComponent <TestSelectable>(); KMBombModule[] modules = FindObjectsOfType <KMBombModule>(); KMNeedyModule[] needyModules = FindObjectsOfType <KMNeedyModule>(); fakeInfo.needyModules = needyModules.ToList(); currentSelectable.Children = new TestSelectable[modules.Length + needyModules.Length]; for (int i = 0; i < modules.Length; i++) { KMBombModule mod = modules[i]; currentSelectable.Children[i] = modules[i].GetComponent <TestSelectable>(); modules[i].GetComponent <TestSelectable>().Parent = currentSelectable; fakeInfo.modules.Add(new KeyValuePair <KMBombModule, bool>(modules[i], false)); modules[i].OnPass = delegate() { Debug.Log("Module Passed"); fakeInfo.modules.Remove(fakeInfo.modules.First(t => t.Key.Equals(mod))); fakeInfo.modules.Add(new KeyValuePair <KMBombModule, bool>(mod, true)); bool allSolved = true; foreach (KeyValuePair <KMBombModule, bool> m in fakeInfo.modules) { if (!m.Value) { allSolved = false; break; } } if (allSolved) { fakeInfo.Solved(); } return(false); }; modules[i].OnStrike = delegate() { Debug.Log("Strike"); fakeInfo.HandleStrike(); return(false); }; KMModSettings settings = modules[i].GetComponent <KMModSettings>(); if (settings != null) { try { if (File.Exists("Assets/modSettings.json")) { settings.Settings = File.ReadAllText("Assets/modSettings.json"); } } catch { // } settings.SettingsPath = "Assets/modSettings.json"; } } for (int i = 0; i < needyModules.Length; i++) { currentSelectable.Children[modules.Length + i] = needyModules[i].GetComponent <TestSelectable>(); needyModules[i].GetComponent <TestSelectable>().Parent = currentSelectable; needyModules[i].OnPass = delegate() { Debug.Log("Module Passed"); return(false); }; needyModules[i].OnStrike = delegate() { Debug.Log("Strike"); fakeInfo.HandleStrike(); return(false); }; KMModSettings settings = needyModules[i].GetComponent <KMModSettings>(); if (settings != null) { try { if (File.Exists("Assets/modSettings.json")) { settings.Settings = File.ReadAllText("Assets/modSettings.json"); } } catch { // } settings.SettingsPath = "Assets/modSettings.json"; } } currentSelectable.ActivateChildSelectableAreas(); audioSource = gameObject.AddComponent <AudioSource>(); KMAudio[] kmAudios = FindObjectsOfType <KMAudio>(); foreach (KMAudio kmAudio in kmAudios) { kmAudio.HandlePlaySoundAtTransform += PlaySoundHandler; } }