private bool Yotogi_initialize() { // デバイスオープン OpenVorzeDevices(); //メイドを取得 this.maid = GameMain.Instance.CharacterMgr.GetMaid(0); if (!this.maid) { return(false); } // 夜伽コマンドフック { this.yotogiManager = getInstance <YotogiManager>(); if (!this.yotogiManager) { return(false); } this.yotogiPlayManager = getInstance <YotogiPlayManager>(); if (!this.yotogiPlayManager) { return(false); } YotogiCommandFactory cf = getFieldValue <YotogiPlayManager, YotogiCommandFactory>(this.yotogiPlayManager, "command_factory_"); if (IsNull(cf)) { return(false); } try { //YotogiPlayManagerのコールバック cf.SetCommandCallback(new YotogiCommandFactory.CommandCallback(this.OnYotogiPlayManagerOnClickCommand)); } catch (Exception ex) { DebugManager.Log(string.Format("Error - SetCommandCallback() : {0}", ex.Message)); return(false); } this.orgOnClickCommand = getMethodDelegate <YotogiPlayManager, Action <Yotogi.SkillData.Command.Data> >(this.yotogiPlayManager, "OnClickCommand"); if (IsNull(this.orgOnClickCommand)) { return(false); } } return(true); }
private void OnLevelWasLoaded(int level) { if (!Enum.IsDefined(typeof(TargetLevel), level)) { return; } menuType = MenuType.None; bsEnable = false; screenCreated = false; currentYotogiName = ""; xmlLoaded = ssParam.Init(); winRect = pv.PropScreenMH(1f - guiWidth, 0f, guiWidth, 1f); createScreen(); if (level == (int)TargetLevel.SceneYotogi) { yotogiManager = GameObject.Find("YotogiManager").GetComponent<YotogiManager>(); } if (ssParam.autoPreset) { loadPresetXml(); string key = generateSceneKey(level.ToString(), currentBg, ""); DebugLog("autoPresetTarget", key); if (scenePresets != null && scenePresets.ContainsKey(key) && presets.ContainsKey(scenePresets[key])) { SetPreset(presets[scenePresets[key]]); } } }