void LoadSettings(Maid maid) { if (maid == null) { return; } bool autoCam = ExSaveData.GetBool(maid, PluginName, "AutoCameraInitialValue", true); bool eyeToCam = ExSaveData.GetBool(maid, PluginName, "EyeToCameraInitialValue", true); string clothMaskMode = ExSaveData.Get(maid, PluginName, "ClothMaskMode", ""); string bgName = ExSaveData.Get(maid, PluginName, "BgName", ""); string poseScript = ExSaveData.Get(maid, PluginName, "Pose.Script", ""); string poseLabel = ExSaveData.Get(maid, PluginName, "Pose.Label", ""); DebugWriteLine( "PersonalizedEditSceneSettings.LoadSettings : name={0}{1}, autoCam={2}, eyeToCam={3}, cloth={4}, bg={5}, pose={6}.{7}", maid.Param.status.last_name, maid.Param.status.first_name, autoCam, eyeToCam, clothMaskMode, bgName, poseScript, poseLabel); editViewReset.SetVisibleAutoCam(autoCam); editViewReset.SetVisibleEyeToCam(eyeToCam); sceneEdit.ClothesState(Helper.ToEnum <SceneEditInfo.ClothesState>(clothMaskMode, SceneEditInfo.ClothesState.Wear)); SceneEdit.PVBInfo bgPvbInfo = sceneEdit.m_listBg.FirstOrDefault((i) => { var bgInfo = i as SceneEdit.BGInfo; if (bgInfo == null) { return(false); } return(bgInfo.strBGFileName == bgName); }); if (bgPvbInfo != null) { sceneEdit.Bg(bgPvbInfo); } SceneEdit.PVBInfo posePvbInfo = sceneEdit.m_listPose.FirstOrDefault((i) => { var poseInfo = i as SceneEdit.PoseInfo; if (poseInfo == null) { return(false); } return(poseInfo.strScriptFileName == poseScript && poseInfo.strScriptLabelName == poseLabel); }); if (posePvbInfo != null) { sceneEdit.Pose(posePvbInfo); lastPoseScript = poseScript; lastPoseLabel = poseLabel; } LoadCameraSettings(maid); }
static void Update(Maid maid, string PluginName) { if (!maid.Visible) { return; } string fname = ExSaveData.Get(maid, PluginName, "SLIDER_TEMPLATE", null); SliderTemplate sliderTemplate = sliderTemplates.Get(fname); if (sliderTemplate != null && !sliderTemplate.IsLoaded) { sliderTemplate.WriteProps(maid); sliderTemplate.IsLoaded = true; } }
static void Update(Maid maid, string PluginName) { if (!maid.Visible) { return; } string fname = ExSaveData.Get(maid, PluginName, "SLIDER_TEMPLATE", "UnityInjector/Config/MaidVoicePitchSlider.xml"); SliderTemplate sliderTemplate = sliderTemplates.Get(fname); string guid = maid.Param.status.guid; if (sliderTemplate != null && !sliderTemplate.LoadedMaidGuids.Contains(guid)) { sliderTemplate.WriteProps(maid); sliderTemplate.LoadedMaidGuids.Add(guid); } }
// 動作していない古い設定を削除する static void CleanupExSave() { string[] obsoleteSettings = { "WIDESLIDER.enable", "PROPSET_OFF.enable", "LIPSYNC_OFF.enable", "HYOUJOU_OFF.enable", "EYETOCAMERA_OFF.enable", "MUHYOU.enable", "FARMFIX.enable", "EYEBALL.enable", "EYE_ANG.enable", "PELSCL.enable", "SKTSCL.enable", "THISCL.enable", "THIPOS.enable", "PELVIS.enable", "FARMFIX.enable", "SPISCL.enable", "S0ASCL.enable", "S1_SCL.enable", "S1ASCL.enable", "FACE_OFF.enable", "FACEBLEND_OFF.enable", // 以下0.2.4で廃止 "FACE_ANIME_SPEED", "MABATAKI_SPEED", "PELVIS", "PELVIS.x", "PELVIS.y", "PELVIS.z", }; CharacterMgr cm = GameMain.Instance.CharacterMgr; for (int i = 0, n = cm.GetStockMaidCount(); i < n; i++) { Maid maid = cm.GetStockMaid(i); foreach (string s in obsoleteSettings) { ExSaveData.Remove(maid, PluginName, s); } { string fname = ExSaveData.Get(maid, PluginName, "SLIDER_TEMPLATE", null); if (string.IsNullOrEmpty(fname)) { ExSaveData.Set(maid, PluginName, "SLIDER_TEMPLATE", "UnityInjector/Config/MaidVoicePitchSlider.xml", true); } } } string[] obsoleteGlobalSettings = { "TEST_GLOBAL_KEY" }; foreach (string s in obsoleteGlobalSettings) { ExSaveData.GlobalRemove(PluginName, s); } }
void LoadSettings(Maid maid) { if (maid == null) { return; } bool autoCam = ExSaveData.GetBool(maid, PluginName, "AutoCameraInitialValue", true); bool eyeToCam = ExSaveData.GetBool(maid, PluginName, "EyeToCameraInitialValue", true); string clothMaskMode = ExSaveData.Get(maid, PluginName, "ClothMaskMode", ""); string bgName = ExSaveData.Get(maid, PluginName, "BgName", ""); string poseName = ExSaveData.Get(maid, PluginName, "PoseName", ""); #if DEBUG Console.WriteLine( "PersonalizedEditSceneSettings.LoadSettings : name={0}{1}, autoCam={2}, eyeToCam={3}, cloth={4}, bg={5}, pose={6}", maid.Param.status.last_name, maid.Param.status.first_name, autoCam, eyeToCam, clothMaskMode, bgName, poseName); #endif editViewReset.SetVisibleAutoCam(autoCam); editViewReset.SetVisibleEyeToCam(eyeToCam); sceneEdit.ClothesState(Helper.ToEnum <SceneEditInfo.ClothesState>(clothMaskMode, SceneEditInfo.ClothesState.Wear)); SceneEdit.PVBInfo bgPvbInfo = sceneEdit.m_listBg.FirstOrDefault(i => i.info.strFileName == bgName); if (bgPvbInfo != null) { sceneEdit.Bg(bgPvbInfo); } SceneEdit.PVBInfo[] poses = sceneEdit.m_dicPose[maid.Param.status.personal]; SceneEdit.PVBInfo posePvbInfo = poses.FirstOrDefault(i => i.info.strFileName + ".anm" == poseName); if (posePvbInfo != null) { sceneEdit.Pose(posePvbInfo); } LoadCameraSettings(maid); }
static TemplateFile Get(Maid maid, string PluginName) { return(Get(ExSaveData.Get(maid, PluginName, "FACE_SCRIPT_TEMPLATE", null))); }