Bläddra i källkod

Reformat part 8 discards and small touches

All that's probably left are more small touches.
habeebweeb 2 år sedan
förälder
incheckning
085e7e4420
61 ändrade filer med 391 tillägg och 398 borttagningar
  1. 10 13
      src/MeidoPhotoStudio.Converter/MultipleMaids/MMSceneConverter.cs
  2. 33 33
      src/MeidoPhotoStudio.Plugin/Constants.cs
  3. 2 0
      src/MeidoPhotoStudio.Plugin/DragPoint/CustomGizmo.cs
  4. 1 1
      src/MeidoPhotoStudio.Plugin/DragPoint/DragPointGeneral.cs
  5. 24 8
      src/MeidoPhotoStudio.Plugin/DragPoint/DragPointLight.cs
  6. 1 1
      src/MeidoPhotoStudio.Plugin/DragPoint/DragPointMeido.cs
  7. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Controls/ComboBox.cs
  8. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Controls/KeyRebindButton.cs
  9. 2 4
      src/MeidoPhotoStudio.Plugin/GUI/Controls/SelectionGrid.cs
  10. 2 4
      src/MeidoPhotoStudio.Plugin/GUI/Controls/Slider.cs
  11. 5 5
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/AttachPropPane.cs
  12. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/ModPropsPane.cs
  13. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/MyRoomPropsPane.cs
  14. 10 10
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/PropManagerPane.cs
  15. 6 6
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/PropsPane.cs
  16. 3 3
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/BackgroundSelectorPane.cs
  17. 4 5
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/CameraPane.cs
  18. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/DragPointPane.cs
  19. 6 6
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/BloomPane.cs
  20. 5 5
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/DepthOfFieldPane.cs
  21. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/EffectPane.cs
  22. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/EffectsPane.cs
  23. 7 7
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/FogPane.cs
  24. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/OtherEffectsPane.cs
  25. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/VignettePane.cs
  26. 15 15
      src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/LightsPane.cs
  27. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/CallWindowPanes/MaidSelectorPane.cs
  28. 7 7
      src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/MaidFaceBlendPane.cs
  29. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/MaidFaceSliderPane.cs
  30. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/SaveFacePane.cs
  31. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/BG2WindowPane.cs
  32. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/BGWindowPane.cs
  33. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/CallWindowPane.cs
  34. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/FaceWindowPane.cs
  35. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/PoseWindowPane.cs
  36. 5 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/SettingsWindowPane.cs
  37. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/OtherPanes/MaidSwitcherPane.cs
  38. 2 2
      src/MeidoPhotoStudio.Plugin/GUI/Panes/OtherPanes/TabsPane.cs
  39. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/CopyPosePane.cs
  40. 3 3
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/GravityControlPane.cs
  41. 7 7
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/HandPresetPane.cs
  42. 6 6
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidDressingPane.cs
  43. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidFreeLookPane.cs
  44. 5 7
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidIKPane.cs
  45. 7 7
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidPoseSelectorPane.cs
  46. 5 5
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MpnAttachPropPane.cs
  47. 3 3
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/SaveHandPane.cs
  48. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/SavePosePane.cs
  49. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerDirectoryPane.cs
  50. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerScenePane.cs
  51. 5 5
      src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerTitleBar.cs
  52. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Windows/MainWindow.cs
  53. 4 4
      src/MeidoPhotoStudio.Plugin/GUI/Windows/SceneModalWindow.cs
  54. 1 1
      src/MeidoPhotoStudio.Plugin/GUI/Windows/SceneWindow.cs
  55. 14 14
      src/MeidoPhotoStudio.Plugin/Managers/InputManager.cs
  56. 1 1
      src/MeidoPhotoStudio.Plugin/Meido/IK/DragPointSpine.cs
  57. 1 2
      src/MeidoPhotoStudio.Plugin/Meido/Meido.cs
  58. 17 4
      src/MeidoPhotoStudio.Plugin/Meido/MeidoDragPointManager.cs
  59. 10 10
      src/MeidoPhotoStudio.Plugin/MeidoPhotoStudio.cs
  60. 88 116
      src/MeidoPhotoStudio.Plugin/ModelUtility.cs
  61. 10 10
      src/MeidoPhotoStudio.Plugin/Serialization/Serializers/MeidoSerializer.cs

+ 10 - 13
src/MeidoPhotoStudio.Converter/MultipleMaids/MMSceneConverter.cs

@@ -164,9 +164,9 @@ public static class MMSceneConverter
 
                 writer.Write(isFreeLook);
 
-                var offsetTarget = isFreeLook
-                    ? new Vector3(float.Parse(freeLookData[2]), 1f, float.Parse(freeLookData[1]))
-                    : new Vector3(0f, 1f, 0f);
+                Vector3 offsetTarget = isFreeLook
+                    ? new(float.Parse(freeLookData[2]), 1f, float.Parse(freeLookData[1]))
+                    : new(0f, 1f, 0f);
 
                 writer.Write(offsetTarget);
             }
@@ -205,12 +205,10 @@ public static class MMSceneConverter
                 writer.Write(ConversionUtility.ParseEulerAngle(maidData[i]));
 
             if (!sixtyFourFlag)
-            {
                 // toe rotations
                 for (var i = 0; i < 2; i++)
                     for (var j = 72 + i; j < 90; j += 2)
                         writer.Write(ConversionUtility.ParseEulerAngle(maidData[j]));
-            }
 
             var rotationIndices = sixtyFourFlag ? BodyRotationIndices64 : BodyRotationIndices;
 
@@ -222,7 +220,6 @@ public static class MMSceneConverter
 
                 // check special case for ClavicleL
                 if (index is ClavicleLIndex)
-                {
                     /*
                      * Versions of MM possibly serialized ClavicleL improperly.
                      * At least I think that's what happened otherwise why would they make this check at all.
@@ -236,7 +233,6 @@ public static class MMSceneConverter
                      * float.Parse(strArray9[2]) would throw an index out of range exception???
                      */
                     writer.Write(ConversionUtility.TryParseEulerAngle(data, out rotation));
-                }
                 else
                     rotation = ConversionUtility.ParseEulerAngle(data);
 
@@ -417,12 +413,13 @@ public static class MMSceneConverter
 
         var lightPropertySerializer = Serialization.Get<LightProperty>();
 
-        /* Light Types
-           0 = Directional
-           1 = Spot
-           2 = Point
-           3 = Directional (Colour Mode)
-           */
+        /*
+         * Light Types
+         *   0 = Directional
+         *   1 = Spot
+         *   2 = Point
+         *   3 = Directional (Colour Mode)
+         */
 
         if (strArray3.Length > 16)
         {

+ 33 - 33
src/MeidoPhotoStudio.Plugin/Constants.cs

@@ -13,6 +13,10 @@ namespace MeidoPhotoStudio.Plugin;
 
 public static class Constants
 {
+    public enum Window { Call, Pose, Face, BG, BG2, Main, Message, Save, SaveModal, Settings }
+    public enum Scene { Daily = 3, Edit = 5 }
+    public enum DoguCategory { Other, Mob, Desk, HandItem, BGSmall }
+
     public const string customPoseDirectory = "Custom Poses";
     public const string customHandDirectory = "Hand Presets";
     public const string customFaceDirectory = "Face Presets";
@@ -22,10 +26,6 @@ public static class Constants
     public const string translationDirectory = "Translations";
     public const string databaseDirectory = "Database";
 
-    public enum Window { Call, Pose, Face, BG, BG2, Main, Message, Save, SaveModal, Settings }
-    public enum Scene { Daily = 3, Edit = 5 }
-    public enum DoguCategory { Other, Mob, Desk, HandItem, BGSmall }
-
     public static readonly string customPosePath;
     public static readonly string customHandPath;
     public static readonly string customFacePath;
@@ -441,16 +441,16 @@ public static class Constants
             var poseList = Directory.GetFiles(directory)
                 .Where(file => Path.GetExtension(file) is ".anm");
 
-            if (poseList.Any())
-            {
-                var poseGroupName = new DirectoryInfo(directory).Name;
+            if (!poseList.Any())
+                return;
 
-                if (poseGroupName != customPoseDirectory)
-                    CustomPoseGroupList.Add(poseGroupName);
+            var poseGroupName = new DirectoryInfo(directory).Name;
 
-                CustomPoseDict[poseGroupName] = poseList.ToList();
-                CustomPoseDict[poseGroupName].Sort(WindowsLogicalComparer.StrCmpLogicalW);
-            }
+            if (poseGroupName is not customPoseDirectory)
+                CustomPoseGroupList.Add(poseGroupName);
+
+            CustomPoseDict[poseGroupName] = poseList.ToList();
+            CustomPoseDict[poseGroupName].Sort(WindowsLogicalComparer.StrCmpLogicalW);
         }
     }
 
@@ -482,7 +482,7 @@ public static class Constants
 
             var presetCategory = new DirectoryInfo(directory).Name;
 
-            if (presetCategory != customHandDirectory)
+            if (presetCategory is not customHandDirectory)
                 CustomHandGroupList.Add(presetCategory);
 
             CustomHandDict[presetCategory] = presetList.ToList();
@@ -524,16 +524,16 @@ public static class Constants
             IEnumerable<string> presetList = Directory.GetFiles(directory)
                 .Where(file => Path.GetExtension(file) is ".xml").ToList();
 
-            if (presetList.Any())
-            {
-                var faceGroupName = new DirectoryInfo(directory).Name;
+            if (!presetList.Any())
+                return;
 
-                if (faceGroupName != customFaceDirectory)
-                    CustomFaceGroupList.Add(faceGroupName);
+            var faceGroupName = new DirectoryInfo(directory).Name;
 
-                CustomFaceDict[faceGroupName] = presetList.ToList();
-                CustomFaceDict[faceGroupName].Sort(WindowsLogicalComparer.StrCmpLogicalW);
-            }
+            if (faceGroupName is not customFaceDirectory)
+                CustomFaceGroupList.Add(faceGroupName);
+
+            CustomFaceDict[faceGroupName] = presetList.ToList();
+            CustomFaceDict[faceGroupName].Sort(WindowsLogicalComparer.StrCmpLogicalW);
         }
     }
 
@@ -847,7 +847,7 @@ public static class Constants
         if (!MenuFilesReady)
         {
             if (!beginHandItemInit)
-                MenuFilesReadyChange += (s, a) =>
+                MenuFilesReadyChange += (_, _) =>
                     InitializeHandItems();
 
             beginHandItemInit = true;
@@ -856,7 +856,6 @@ public static class Constants
         }
 
         var menuDataBase = GameMain.Instance.MenuDataBase;
-
         var doguHashSet = new HashSet<string>(StringComparer.InvariantCultureIgnoreCase);
 
         doguHashSet.UnionWith(BGList);
@@ -921,7 +920,7 @@ public static class Constants
         if (!MenuFilesReady)
         {
             if (!beginMpnAttachInit)
-                MenuFilesReadyChange += (s, a) =>
+                MenuFilesReadyChange += (_, _) =>
                     InitializeMpnAttachProps();
 
             beginMpnAttachInit = true;
@@ -938,16 +937,16 @@ public static class Constants
 
             var itemMpn = (MPN)menuDataBase.GetCategoryMpn();
 
-            if (attachMpn.Any(mpn => mpn == itemMpn))
-            {
-                var menuFileName = menuDataBase.GetMenuFileName();
-                var mpnTag = menuDataBase.GetCategoryMpnText();
+            if (!attachMpn.Any(mpn => mpn == itemMpn))
+                continue;
 
-                if (menuDataBase.GetBoDelOnly() || menuFileName.EndsWith("_del.menu"))
-                    continue;
+            var menuFileName = menuDataBase.GetMenuFileName();
+            var mpnTag = menuDataBase.GetCategoryMpnText();
 
-                MpnAttachPropList.Add(new(itemMpn, menuFileName));
-            }
+            if (menuDataBase.GetBoDelOnly() || menuFileName.EndsWith("_del.menu"))
+                continue;
+
+            MpnAttachPropList.Add(new(itemMpn, menuFileName));
         }
 
         MpnAttachInitialized = true;
@@ -1089,9 +1088,10 @@ public static class Constants
 
 public class MenuFilesEventArgs : EventArgs
 {
-    public EventType Type { get; }
     public enum EventType { HandItems, MenuFiles, MpnAttach }
 
+    public EventType Type { get; }
+
     public MenuFilesEventArgs(EventType type) =>
         Type = type;
 }

+ 2 - 0
src/MeidoPhotoStudio.Plugin/DragPoint/CustomGizmo.cs

@@ -74,9 +74,11 @@ public class CustomGizmo : GizmoRender
     public static CustomGizmo Make(Transform target, float scale = 0.25f, GizmoMode mode = GizmoMode.Local)
     {
         var gizmoGo = new GameObject($"[MPS Gizmo {target.gameObject.name}]");
+
         gizmoGo.transform.SetParent(target);
 
         var gizmo = gizmoGo.AddComponent<CustomGizmo>();
+
         gizmo.target = target;
         gizmo.lineRSelectedThick = 0.25f;
         gizmo.offsetScale = scale;

+ 1 - 1
src/MeidoPhotoStudio.Plugin/DragPoint/DragPointGeneral.cs

@@ -38,7 +38,7 @@ public abstract class DragPointGeneral : DragPoint
     {
         base.AddGizmo(scale, mode);
 
-        Gizmo.GizmoDrag += (s, a) =>
+        Gizmo.GizmoDrag += (_, _) =>
         {
             if (Gizmo.CurrentGizmoType is GizmoType.Rotate)
                 OnRotate();

+ 24 - 8
src/MeidoPhotoStudio.Plugin/DragPoint/DragPointLight.cs

@@ -1,3 +1,4 @@
+using System;
 using UnityEngine;
 
 namespace MeidoPhotoStudio.Plugin;
@@ -5,10 +6,7 @@ namespace MeidoPhotoStudio.Plugin;
 public class DragPointLight : DragPointGeneral
 {
     public enum MPSLightType { Normal, Spot, Point, Disabled }
-    public enum LightProp
-    {
-        LightRotX, LightRotY, Intensity, ShadowStrength, SpotAngle, Range, Red, Green, Blue
-    }
+    public enum LightProp { LightRotX, LightRotY, Intensity, ShadowStrength, SpotAngle, Range, Red, Green, Blue }
 
     public static EnvironmentManager EnvironmentManager { private get; set; }
 
@@ -153,24 +151,29 @@ public class DragPointLight : DragPointGeneral
 
     public void SetLightType(MPSLightType type)
     {
+        const string spotName = "spot";
+        const string normalName = "normal";
+        const string pointName = "point";
+        const string mainName = "name";
+
         var lightType = LightType.Directional;
-        var name = "normal";
+        var name = normalName;
 
         SelectedLightType = type;
 
         if (type is MPSLightType.Spot)
         {
             lightType = LightType.Spot;
-            name = "spot";
+            name = spotName;
         }
         else if (type is MPSLightType.Point)
         {
             lightType = LightType.Point;
-            name = "point";
+            name = pointName;
         }
 
         light.type = lightType;
-        Name = IsMain ? "main" : name;
+        Name = IsMain ? mainName : name;
 
         if (IsMain)
             EnvironmentManager.BGVisible = !(IsColourMode && SelectedLightType is MPSLightType.Normal);
@@ -188,25 +191,38 @@ public class DragPointLight : DragPointGeneral
         {
             case LightProp.Intensity:
                 Intensity = value;
+
                 break;
             case LightProp.ShadowStrength:
                 ShadowStrength = value;
+
                 break;
             case LightProp.SpotAngle:
                 SpotAngle = value;
+
                 break;
             case LightProp.Range:
                 Range = value;
+
                 break;
             case LightProp.Red:
                 LightColorRed = value;
+
                 break;
             case LightProp.Green:
                 LightColorGreen = value;
+
                 break;
             case LightProp.Blue:
                 LightColorBlue = value;
+
+                break;
+            case LightProp.LightRotX:
+            case LightProp.LightRotY:
+                // Do nothing
                 break;
+            default:
+                throw new ArgumentOutOfRangeException(nameof(prop));
         }
     }
 

+ 1 - 1
src/MeidoPhotoStudio.Plugin/DragPoint/DragPointMeido.cs

@@ -47,7 +47,7 @@ public abstract class DragPointMeido : DragPoint
     {
         base.AddGizmo(scale, mode);
 
-        Gizmo.GizmoDrag += (s, a) =>
+        Gizmo.GizmoDrag += (_, _) =>
         {
             meido.Stop = true;
             isPlaying = false;

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Controls/ComboBox.cs

@@ -17,7 +17,7 @@ public class ComboBox : BaseControl
     public ComboBox(string[] itemList)
     {
         BaseDropDown = new("▾", itemList);
-        BaseDropDown.SelectionChange += (s, a) =>
+        BaseDropDown.SelectionChange += (_, _) =>
             textField.Value = BaseDropDown.SelectedItem;
 
         Value = itemList[0];

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Controls/KeyRebindButton.cs

@@ -23,7 +23,7 @@ public class KeyRebindButton : BaseControl
     public KeyRebindButton(KeyCode code)
     {
         button = new(code.ToString());
-        button.ControlEvent += (s, a) =>
+        button.ControlEvent += (_, _) =>
             StartListening();
     }
 

+ 2 - 4
src/MeidoPhotoStudio.Plugin/GUI/Controls/SelectionGrid.cs

@@ -36,7 +36,6 @@ public class SelectionGrid : BaseControl
         if (items.Length != toggles.Length)
             toggles = MakeToggles(items);
         else
-        {
             for (var i = 0; i < items.Length; i++)
             {
                 var item = items[i];
@@ -44,7 +43,6 @@ public class SelectionGrid : BaseControl
                 toggles[i].value = i == SelectedItemIndex;
                 toggles[i].label = item;
             }
-        }
 
         SelectedItemIndex = Mathf.Clamp(selectedItemIndex, 0, items.Length - 1);
     }
@@ -70,9 +68,9 @@ public class SelectionGrid : BaseControl
                 toggleIndex = i,
             };
 
-            toggle.ControlEvent += (s, a) =>
+            toggle.ControlEvent += (sender, _) =>
             {
-                var value = (s as SimpleToggle).toggleIndex;
+                var value = (sender as SimpleToggle).toggleIndex;
 
                 if (value != SelectedItemIndex)
                     SelectedItemIndex = value;

+ 2 - 4
src/MeidoPhotoStudio.Plugin/GUI/Controls/Slider.cs

@@ -89,11 +89,9 @@ public class Slider : BaseControl
         DefaultValue = defaultValue;
     }
 
-    public Slider(string label, SliderProp prop)
-        : this(label, prop.Left, prop.Right, prop.Initial, prop.Default) { }
+    public Slider(string label, SliderProp prop) : this(label, prop.Left, prop.Right, prop.Initial, prop.Default) { }
 
-    public Slider(SliderProp prop)
-        : this(string.Empty, prop.Left, prop.Right, prop.Initial, prop.Default) { }
+    public Slider(SliderProp prop) : this(string.Empty, prop.Left, prop.Right, prop.Initial, prop.Default) { }
 
     public void SetBounds(float left, float right)
     {

+ 5 - 5
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/AttachPropPane.cs

@@ -62,20 +62,20 @@ public class AttachPropPane : BasePane
 
         this.propManager = propManager;
         this.meidoManager = meidoManager;
-        this.meidoManager.EndCallMeidos += (s, a) =>
+        this.meidoManager.EndCallMeidos += (_, _) =>
             SetMeidoDropdown();
 
-        this.propManager.PropSelectionChange += (s, a) =>
+        this.propManager.PropSelectionChange += (_, _) =>
             UpdateToggles();
 
-        this.propManager.PropListChange += (s, a) =>
+        this.propManager.PropListChange += (_, _) =>
         {
             doguDropdownActive = this.propManager.PropCount > 0;
             UpdateToggles();
         };
 
         meidoDropdown = new(new[] { Translation.Get("systemMessage", "noMaids") });
-        meidoDropdown.SelectionChange += (s, a) =>
+        meidoDropdown.SelectionChange += (_, _) =>
             UpdateToggles();
 
         keepWorldPositionToggle = new(Translation.Get("attachPropPane", "keepWorldPosition"));
@@ -88,7 +88,7 @@ public class AttachPropPane : BasePane
             var point = attachPoint;
             var toggle = new Toggle(Translation.Get("attachPropPane", toggleTranslation[point]));
 
-            toggle.ControlEvent += (s, a) =>
+            toggle.ControlEvent += (_, _) =>
                 OnToggleChange(point);
 
             toggles[point] = toggle;

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/ModPropsPane.cs

@@ -41,7 +41,7 @@ public class ModPropsPane : BasePane
         {
             listItems[0] = Translation.Get("systemMessage", "initializing");
 
-            MenuFilesReadyChange += (s, a) =>
+            MenuFilesReadyChange += (_, _) =>
             {
                 modItemsReady = true;
                 propCategoryDropdown.SetDropdownItems(Translation.GetArray("clothing", MenuCategories));
@@ -49,7 +49,7 @@ public class ModPropsPane : BasePane
         }
 
         propCategoryDropdown = new(listItems);
-        propCategoryDropdown.SelectionChange += (s, a) =>
+        propCategoryDropdown.SelectionChange += (_, _) =>
         {
             if (!modItemsReady)
                 return;
@@ -61,11 +61,11 @@ public class ModPropsPane : BasePane
             return;
 
         modFilterToggle = new(Translation.Get("background2Window", "modsToggle"));
-        modFilterToggle.ControlEvent += (s, a) =>
+        modFilterToggle.ControlEvent += (_, _) =>
             ChangeFilter(FilterType.Mod);
 
         baseFilterToggle = new(Translation.Get("background2Window", "baseToggle"));
-        baseFilterToggle.ControlEvent += (s, a) =>
+        baseFilterToggle.ControlEvent += (_, _) =>
             ChangeFilter(FilterType.Base);
     }
 

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/MyRoomPropsPane.cs

@@ -20,7 +20,7 @@ public class MyRoomPropsPane : BasePane
         this.propManager = propManager;
 
         propCategoryDropdown = new(Translation.GetArray("doguCategories", Constants.MyRoomPropCategories));
-        propCategoryDropdown.SelectionChange += (s, a) =>
+        propCategoryDropdown.SelectionChange += (_, _) =>
             ChangePropCategory(SelectedCategory);
 
         ChangePropCategory(SelectedCategory);

+ 10 - 10
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/PropManagerPane.cs

@@ -22,13 +22,13 @@ public class PropManagerPane : BasePane
     public PropManagerPane(PropManager propManager)
     {
         this.propManager = propManager;
-        this.propManager.PropListChange += (s, a) =>
+        this.propManager.PropListChange += (_, _) =>
         {
             UpdatePropList();
             UpdateToggles();
         };
 
-        this.propManager.FromPropSelect += (s, a) =>
+        this.propManager.FromPropSelect += (_, _) =>
         {
             updating = true;
             propDropdown.SelectedItemIndex = CurrentDoguIndex;
@@ -37,7 +37,7 @@ public class PropManagerPane : BasePane
         };
 
         propDropdown = new(this.propManager.PropNameList);
-        propDropdown.SelectionChange += (s, a) =>
+        propDropdown.SelectionChange += (_, _) =>
         {
             if (updating)
                 return;
@@ -48,15 +48,15 @@ public class PropManagerPane : BasePane
         };
 
         previousPropButton = new("<");
-        previousPropButton.ControlEvent += (s, a) =>
+        previousPropButton.ControlEvent += (_, _) =>
             propDropdown.Step(-1);
 
         nextPropButton = new(">");
-        nextPropButton.ControlEvent += (s, a) =>
+        nextPropButton.ControlEvent += (_, _) =>
             propDropdown.Step(1);
 
         dragPointToggle = new(Translation.Get("propManagerPane", "dragPointToggle"));
-        dragPointToggle.ControlEvent += (s, a) =>
+        dragPointToggle.ControlEvent += (_, _) =>
         {
             if (updating || this.propManager.PropCount is 0)
                 return;
@@ -65,7 +65,7 @@ public class PropManagerPane : BasePane
         };
 
         gizmoToggle = new(Translation.Get("propManagerPane", "gizmoToggle"));
-        gizmoToggle.ControlEvent += (s, a) =>
+        gizmoToggle.ControlEvent += (_, _) =>
         {
             if (updating || this.propManager.PropCount is 0)
                 return;
@@ -74,7 +74,7 @@ public class PropManagerPane : BasePane
         };
 
         shadowCastingToggle = new(Translation.Get("propManagerPane", "shadowCastingToggle"));
-        shadowCastingToggle.ControlEvent += (s, a) =>
+        shadowCastingToggle.ControlEvent += (_, _) =>
         {
             if (updating || this.propManager.PropCount is 0)
                 return;
@@ -83,11 +83,11 @@ public class PropManagerPane : BasePane
         };
 
         copyPropButton = new(Translation.Get("propManagerPane", "copyButton"));
-        copyPropButton.ControlEvent += (s, a) =>
+        copyPropButton.ControlEvent += (_, _) =>
             this.propManager.CopyProp(CurrentDoguIndex);
 
         deletePropButton = new(Translation.Get("propManagerPane", "deleteButton"));
-        deletePropButton.ControlEvent += (s, a) =>
+        deletePropButton.ControlEvent += (_, _) =>
             this.propManager.RemoveProp(CurrentDoguIndex);
 
         propManagerHeader = Translation.Get("propManagerPane", "header");

+ 6 - 6
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindow2Panes/PropsPane.cs

@@ -33,29 +33,29 @@ public class PropsPane : BasePane
             Constants.MenuFilesChange += InitializeHandItems;
 
         doguCategoryDropdown = new(Translation.GetArray("doguCategories", Constants.DoguCategories));
-        doguCategoryDropdown.SelectionChange += (s, a) =>
+        doguCategoryDropdown.SelectionChange += (_, _) =>
             ChangeDoguCategory(SelectedCategory);
 
         doguDropdown = new(new[] { string.Empty });
 
         addDoguButton = new("+");
-        addDoguButton.ControlEvent += (s, a) =>
+        addDoguButton.ControlEvent += (_, _) =>
             SpawnObject();
 
         nextDoguButton = new(">");
-        nextDoguButton.ControlEvent += (s, a) =>
+        nextDoguButton.ControlEvent += (_, _) =>
             doguDropdown.Step(1);
 
         prevDoguButton = new("<");
-        prevDoguButton.ControlEvent += (s, a) =>
+        prevDoguButton.ControlEvent += (_, _) =>
             doguDropdown.Step(-1);
 
         nextDoguCategoryButton = new(">");
-        nextDoguCategoryButton.ControlEvent += (s, a) =>
+        nextDoguCategoryButton.ControlEvent += (_, _) =>
             doguCategoryDropdown.Step(1);
 
         prevDoguCategoryButton = new("<");
-        prevDoguCategoryButton.ControlEvent += (s, a) =>
+        prevDoguCategoryButton.ControlEvent += (_, _) =>
             doguCategoryDropdown.Step(-1);
 
         ChangeDoguCategory(SelectedCategory);

+ 3 - 3
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/BackgroundSelectorPane.cs

@@ -23,15 +23,15 @@ public class BackgroundSelectorPane : BasePane
             bgList.AddRange(Constants.MyRoomCustomBGList.Select(kvp => kvp.Value));
 
         bgDropdown = new(bgList.ToArray(), theaterIndex);
-        bgDropdown.SelectionChange += (s, a) =>
+        bgDropdown.SelectionChange += (_, _) =>
             ChangeBackground();
 
         prevBGButton = new("<");
-        prevBGButton.ControlEvent += (s, a) =>
+        prevBGButton.ControlEvent += (_, _) =>
             bgDropdown.Step(-1);
 
         nextBGButton = new(">");
-        nextBGButton.ControlEvent += (s, a) =>
+        nextBGButton.ControlEvent += (_, _) =>
             bgDropdown.Step(1);
     }
 

+ 4 - 5
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/CameraPane.cs

@@ -15,7 +15,7 @@ public class CameraPane : BasePane
     public CameraPane(CameraManager cameraManager)
     {
         this.cameraManager = cameraManager;
-        this.cameraManager.CameraChange += (s, a) =>
+        this.cameraManager.CameraChange += (_, _) =>
             UpdatePane();
 
         var camera = CameraUtility.MainCamera.camera;
@@ -27,7 +27,7 @@ public class CameraPane : BasePane
             HasTextField = true,
         };
 
-        zRotationSlider.ControlEvent += (s, a) =>
+        zRotationSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -46,7 +46,7 @@ public class CameraPane : BasePane
             HasTextField = true,
         };
 
-        fovSlider.ControlEvent += (s, a) =>
+        fovSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -55,8 +55,7 @@ public class CameraPane : BasePane
         };
 
         cameraGrid = new(Enumerable.Range(1, cameraManager.CameraCount).Select(x => x.ToString()).ToArray());
-
-        cameraGrid.ControlEvent += (s, a) =>
+        cameraGrid.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/DragPointPane.cs

@@ -18,19 +18,19 @@ public class DragPointPane : BasePane
         header = Translation.Get("movementCube", "header");
 
         propsCubeToggle = new(Translation.Get("movementCube", "props"), PropManager.CubeActive);
-        propsCubeToggle.ControlEvent += (s, a) =>
+        propsCubeToggle.ControlEvent += (_, _) =>
             ChangeDragPointSetting(Setting.Prop, propsCubeToggle.Value);
 
         smallCubeToggle = new(Translation.Get("movementCube", "small"));
-        smallCubeToggle.ControlEvent += (s, a) =>
+        smallCubeToggle.ControlEvent += (_, _) =>
             ChangeDragPointSetting(Setting.Size, smallCubeToggle.Value);
 
         maidCubeToggle = new(Translation.Get("movementCube", "maid"), MeidoDragPointManager.CubeActive);
-        maidCubeToggle.ControlEvent += (s, a) =>
+        maidCubeToggle.ControlEvent += (_, _) =>
             ChangeDragPointSetting(Setting.Maid, maidCubeToggle.Value);
 
         bgCubeToggle = new(Translation.Get("movementCube", "bg"), EnvironmentManager.CubeActive);
-        bgCubeToggle.ControlEvent += (s, a) =>
+        bgCubeToggle.ControlEvent += (_, _) =>
             ChangeDragPointSetting(Setting.Background, bgCubeToggle.Value);
     }
 

+ 6 - 6
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/BloomPane.cs

@@ -16,7 +16,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
     public BloomPane(EffectManager effectManager) : base(effectManager)
     {
         intensitySlider = new(Translation.Get("effectBloom", "intensity"), 0f, 100f, EffectManager.BloomValue);
-        intensitySlider.ControlEvent += (s, a) =>
+        intensitySlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -25,7 +25,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
         };
 
         blurSlider = new(Translation.Get("effectBloom", "blur"), 0f, 15f, EffectManager.BlurIterations);
-        blurSlider.ControlEvent += (s, a) =>
+        blurSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -34,7 +34,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
         };
 
         redSlider = new(Translation.Get("backgroundWindow", "red"), 1f, 0.5f, EffectManager.BloomThresholdColorRed);
-        redSlider.ControlEvent += (s, a) =>
+        redSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -45,7 +45,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
         greenSlider =
             new(Translation.Get("backgroundWindow", "green"), 1f, 0.5f, EffectManager.BloomThresholdColorGreen);
 
-        greenSlider.ControlEvent += (s, a) =>
+        greenSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -54,7 +54,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
         };
 
         blueSlider = new(Translation.Get("backgroundWindow", "blue"), 1f, 0.5f, EffectManager.BloomThresholdColorBlue);
-        blueSlider.ControlEvent += (s, a) =>
+        blueSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -63,7 +63,7 @@ public class BloomPane : EffectPane<BloomEffectManager>
         };
 
         hdrToggle = new(Translation.Get("effectBloom", "hdrToggle"), EffectManager.BloomHDR);
-        hdrToggle.ControlEvent += (s, a) =>
+        hdrToggle.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 5 - 5
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/DepthOfFieldPane.cs

@@ -17,7 +17,7 @@ public class DepthOfFieldPane : EffectPane<DepthOfFieldEffectManager>
         focalLengthSlider =
             new(Translation.Get("effectDof", "focalLength"), 0f, 10f, EffectManager.FocalLength);
 
-        focalLengthSlider.ControlEvent += (s, a) =>
+        focalLengthSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -26,7 +26,7 @@ public class DepthOfFieldPane : EffectPane<DepthOfFieldEffectManager>
         };
 
         focalSizeSlider = new(Translation.Get("effectDof", "focalArea"), 0f, 2f, EffectManager.FocalSize);
-        focalSizeSlider.ControlEvent += (s, a) =>
+        focalSizeSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -35,7 +35,7 @@ public class DepthOfFieldPane : EffectPane<DepthOfFieldEffectManager>
         };
 
         apertureSlider = new(Translation.Get("effectDof", "aperture"), 0f, 60f, EffectManager.Aperture);
-        apertureSlider.ControlEvent += (s, a) =>
+        apertureSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -44,7 +44,7 @@ public class DepthOfFieldPane : EffectPane<DepthOfFieldEffectManager>
         };
 
         blurSlider = new(Translation.Get("effectDof", "blur"), 0f, 10f, EffectManager.MaxBlurSize);
-        blurSlider.ControlEvent += (s, a) =>
+        blurSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -53,7 +53,7 @@ public class DepthOfFieldPane : EffectPane<DepthOfFieldEffectManager>
         };
 
         thicknessToggle = new(Translation.Get("effectDof", "thicknessToggle"), EffectManager.VisualizeFocus);
-        thicknessToggle.ControlEvent += (s, a) =>
+        thicknessToggle.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/EffectPane.cs

@@ -30,11 +30,11 @@ public abstract class EffectPane<T> : BasePane where T : IEffectManager
         EffectManager = effectManager.Get<T>();
 
         resetEffectButton = new(Translation.Get("effectsPane", "reset"));
-        resetEffectButton.ControlEvent += (s, a) =>
+        resetEffectButton.ControlEvent += (_, _) =>
             ResetEffect();
 
         effectToggle = new(Translation.Get("effectsPane", "onToggle"));
-        effectToggle.ControlEvent += (s, a) =>
+        effectToggle.ControlEvent += (_, _) =>
             Enabled = effectToggle.Value;
     }
 

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/EffectsPane.cs

@@ -24,7 +24,7 @@ public class EffectsPane : BasePane
     public EffectsPane()
     {
         effectToggles = new(new[] { "dummy" /* thicc */ });
-        effectToggles.ControlEvent += (s, a) =>
+        effectToggles.ControlEvent += (_, _) =>
             SetEffectPane(effectList[effectToggles.SelectedItemIndex]);
     }
 

+ 7 - 7
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/FogPane.cs

@@ -17,7 +17,7 @@ public class FogPane : EffectPane<FogEffectManager>
     public FogPane(EffectManager effectManager) : base(effectManager)
     {
         distanceSlider = new(Translation.Get("effectFog", "distance"), 0f, 30f, EffectManager.Distance);
-        distanceSlider.ControlEvent += (s, a) =>
+        distanceSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -26,7 +26,7 @@ public class FogPane : EffectPane<FogEffectManager>
         };
 
         densitySlider = new(Translation.Get("effectFog", "density"), 0f, 10f, EffectManager.Density);
-        densitySlider.ControlEvent += (s, a) =>
+        densitySlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -35,7 +35,7 @@ public class FogPane : EffectPane<FogEffectManager>
         };
 
         heightScaleSlider = new(Translation.Get("effectFog", "strength"), -5f, 20f, EffectManager.HeightScale);
-        heightScaleSlider.ControlEvent += (s, a) =>
+        heightScaleSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -44,7 +44,7 @@ public class FogPane : EffectPane<FogEffectManager>
         };
 
         heightSlider = new(Translation.Get("effectFog", "height"), -10f, 10f, EffectManager.Height);
-        heightSlider.ControlEvent += (s, a) =>
+        heightSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -55,7 +55,7 @@ public class FogPane : EffectPane<FogEffectManager>
         var initialFogColour = EffectManager.FogColour;
 
         redSlider = new(Translation.Get("backgroundWIndow", "red"), 0f, 1f, initialFogColour.r);
-        redSlider.ControlEvent += (s, a) =>
+        redSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -64,7 +64,7 @@ public class FogPane : EffectPane<FogEffectManager>
         };
 
         greenSlider = new(Translation.Get("backgroundWIndow", "green"), 0f, 1f, initialFogColour.g);
-        greenSlider.ControlEvent += (s, a) =>
+        greenSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -73,7 +73,7 @@ public class FogPane : EffectPane<FogEffectManager>
         };
 
         blueSlider = new(Translation.Get("backgroundWIndow", "blue"), 0f, 1f, initialFogColour.b);
-        blueSlider.ControlEvent += (s, a) =>
+        blueSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/OtherEffectsPane.cs

@@ -18,7 +18,7 @@ public class OtherEffectsPane : BasePane
         blurEffectManager = this.effectManager.Get<BlurEffectManager>();
 
         sepiaToggle = new(Translation.Get("otherEffectsPane", "sepiaToggle"));
-        sepiaToggle.ControlEvent += (s, a) =>
+        sepiaToggle.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -27,7 +27,7 @@ public class OtherEffectsPane : BasePane
         };
 
         blurSlider = new(Translation.Get("otherEffectsPane", "blurSlider"), 0f, 18f);
-        blurSlider.ControlEvent += (s, a) =>
+        blurSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/EffectsPanes/VignettePane.cs

@@ -14,7 +14,7 @@ public class VignettePane : EffectPane<VignetteEffectManager>
     public VignettePane(EffectManager effectManager) : base(effectManager)
     {
         intensitySlider = new(Translation.Get("effectVignette", "intensity"), -40f, 70f);
-        intensitySlider.ControlEvent += (s, a) =>
+        intensitySlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -23,7 +23,7 @@ public class VignettePane : EffectPane<VignetteEffectManager>
         };
 
         blurSlider = new(Translation.Get("effectVignette", "blur"), 0f, 5f);
-        blurSlider.ControlEvent += (s, a) =>
+        blurSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -32,7 +32,7 @@ public class VignettePane : EffectPane<VignetteEffectManager>
         };
 
         blurSpreadSlider = new(Translation.Get("effectVignette", "blurSpread"), 0f, 40f);
-        blurSpreadSlider.ControlEvent += (s, a) =>
+        blurSpreadSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;
@@ -41,7 +41,7 @@ public class VignettePane : EffectPane<VignetteEffectManager>
         };
 
         aberrationSlider = new(Translation.Get("effectVignette", "aberration"), -30f, 30f);
-        aberrationSlider.ControlEvent += (s, a) =>
+        aberrationSlider.ControlEvent += (_, _) =>
         {
             if (updating)
                 return;

+ 15 - 15
src/MeidoPhotoStudio.Plugin/GUI/Panes/BackgroundWindowPanes/LightsPane.cs

@@ -55,40 +55,40 @@ public class LightsPane : BasePane
     public LightsPane(LightManager lightManager)
     {
         this.lightManager = lightManager;
-        this.lightManager.Rotate += (s, a) =>
+        this.lightManager.Rotate += (_, _) =>
             UpdateRotation();
 
-        this.lightManager.Scale += (s, a) =>
+        this.lightManager.Scale += (_, _) =>
             UpdateScale();
 
-        this.lightManager.Select += (s, a) =>
+        this.lightManager.Select += (_, _) =>
             UpdateCurrentLight();
 
-        this.lightManager.ListModified += (s, a) =>
+        this.lightManager.ListModified += (_, _) =>
             UpdateList();
 
         lightTypeGrid = new(Translation.GetArray("lightType", lightTypes));
-        lightTypeGrid.ControlEvent += (s, a) =>
+        lightTypeGrid.ControlEvent += (_, _) =>
             SetCurrentLightType();
 
         lightDropdown = new(new[] { "Main" });
-        lightDropdown.SelectionChange += (s, a) =>
+        lightDropdown.SelectionChange += (_, _) =>
             SetCurrentLight();
 
         addLightButton = new("+");
-        addLightButton.ControlEvent += (s, a) =>
+        addLightButton.ControlEvent += (_, _) =>
             lightManager.AddLight();
 
         deleteLightButton = new(Translation.Get("lightsPane", "delete"));
-        deleteLightButton.ControlEvent += (s, a) =>
+        deleteLightButton.ControlEvent += (_, _) =>
             lightManager.DeleteActiveLight();
 
         disableToggle = new(Translation.Get("lightsPane", "disable"));
-        disableToggle.ControlEvent += (s, a) =>
+        disableToggle.ControlEvent += (_, _) =>
             lightManager.CurrentLight.IsDisabled = disableToggle.Value;
 
         clearLightsButton = new(Translation.Get("lightsPane", "clear"));
-        clearLightsButton.ControlEvent += (s, a) =>
+        clearLightsButton.ControlEvent += (_, _) =>
             ClearLights();
 
         var numberOfLightProps = Enum.GetNames(typeof(LightProp)).Length;
@@ -106,25 +106,25 @@ public class LightsPane : BasePane
             };
 
             if (lightProp <= LightProp.LightRotY)
-                slider.ControlEvent += (s, a) =>
+                slider.ControlEvent += (_, _) =>
                     SetLightRotation();
             else
-                slider.ControlEvent += (s, a) =>
+                slider.ControlEvent += (_, _) =>
                     SetLightProp(lightProp, slider.Value);
 
             lightSlider[lightProp] = slider;
         }
 
         colorToggle = new(Translation.Get("lightsPane", "colour"));
-        colorToggle.ControlEvent += (s, a) =>
+        colorToggle.ControlEvent += (_, _) =>
             SetColourMode();
 
         resetPropsButton = new(Translation.Get("lightsPane", "resetProperties"));
-        resetPropsButton.ControlEvent += (s, a) =>
+        resetPropsButton.ControlEvent += (_, _) =>
             ResetLightProps();
 
         resetPositionButton = new(Translation.Get("lightsPane", "resetPosition"));
-        resetPositionButton.ControlEvent += (s, a) =>
+        resetPositionButton.ControlEvent += (_, _) =>
             lightManager.CurrentLight.ResetLightPosition();
 
         lightHeader = Translation.Get("lightsPane", "header");

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/CallWindowPanes/MaidSelectorPane.cs

@@ -18,11 +18,11 @@ public class MaidSelectorPane : BasePane
         this.meidoManager = meidoManager;
 
         clearMaidsButton = new(Translation.Get("maidCallWindow", "clearButton"));
-        clearMaidsButton.ControlEvent += (s, a) =>
+        clearMaidsButton.ControlEvent += (_, _) =>
             this.meidoManager.ClearSelectList();
 
         callMaidsButton = new(Translation.Get("maidCallWindow", "callButton"));
-        callMaidsButton.ControlEvent += (s, a) =>
+        callMaidsButton.ControlEvent += (_, _) =>
             this.meidoManager.CallMeidos();
 
         activeMeidoListToggle = new(Translation.Get("maidCallWindow", "activeOnlyToggle"));

+ 7 - 7
src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/MaidFaceBlendPane.cs

@@ -47,7 +47,7 @@ public class MaidFaceBlendPane : BasePane
 
         faceBlendSourceGrid = new(Translation.GetArray("maidFaceWindow", tabTranslations));
 
-        faceBlendSourceGrid.ControlEvent += (s, a) =>
+        faceBlendSourceGrid.ControlEvent += (_, _) =>
         {
             facePresetMode = faceBlendSourceGrid.SelectedItemIndex is 1;
 
@@ -62,22 +62,22 @@ public class MaidFaceBlendPane : BasePane
         };
 
         faceBlendCategoryDropdown = new(Translation.GetArray("faceBlendCategory", Constants.FaceGroupList));
-        faceBlendCategoryDropdown.SelectionChange += (s, a) =>
+        faceBlendCategoryDropdown.SelectionChange += (_, _) =>
         {
             faceListEnabled = CurrentFaceList.Count > 0;
             faceBlendDropdown.SetDropdownItems(UIFaceList(), 0);
         };
 
         prevCategoryButton = new("<");
-        prevCategoryButton.ControlEvent += (s, a) =>
+        prevCategoryButton.ControlEvent += (_, _) =>
             faceBlendCategoryDropdown.Step(-1);
 
         nextCategoryButton = new(">");
-        nextCategoryButton.ControlEvent += (s, a) =>
+        nextCategoryButton.ControlEvent += (_, _) =>
             faceBlendCategoryDropdown.Step(1);
 
         faceBlendDropdown = new(UIFaceList());
-        faceBlendDropdown.SelectionChange += (s, a) =>
+        faceBlendDropdown.SelectionChange += (_, _) =>
         {
             if (!faceListEnabled || updating)
                 return;
@@ -86,11 +86,11 @@ public class MaidFaceBlendPane : BasePane
         };
 
         facePrevButton = new("<");
-        facePrevButton.ControlEvent += (s, a) =>
+        facePrevButton.ControlEvent += (_, _) =>
             faceBlendDropdown.Step(-1);
 
         faceNextButton = new(">");
-        faceNextButton.ControlEvent += (s, a) =>
+        faceNextButton.ControlEvent += (_, _) =>
             faceBlendDropdown.Step(1);
 
         faceListEnabled = CurrentFaceList.Count > 0;

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/MaidFaceSliderPane.cs

@@ -114,7 +114,7 @@ public class MaidFaceSliderPane : BasePane
             var slider = new Slider(uiName, 0f, SliderLimits[key]);
             var sliderKey = key;
 
-            slider.ControlEvent += (s, a) =>
+            slider.ControlEvent += (_, _) =>
                 SetFaceValue(sliderKey, slider.Value);
 
             faceControls[key] = slider;
@@ -126,7 +126,7 @@ public class MaidFaceSliderPane : BasePane
             var toggle = new Toggle(uiName);
             var sliderKey = key;
 
-            toggle.ControlEvent += (s, a) =>
+            toggle.ControlEvent += (_, _) =>
                 SetFaceValue(sliderKey, toggle.Value);
 
             faceControls[key] = toggle;

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/FaceWindowPanes/SaveFacePane.cs

@@ -14,7 +14,7 @@ public class SaveFacePane : BasePane
 
     public SaveFacePane(MeidoManager meidoManager)
     {
-        Constants.CustomFaceChange += (s, a) =>
+        Constants.CustomFaceChange += (_, _) =>
             categoryComboBox.SetDropdownItems(Constants.CustomFaceGroupList.ToArray());
 
         this.meidoManager = meidoManager;
@@ -23,7 +23,7 @@ public class SaveFacePane : BasePane
         nameHeader = Translation.Get("faceSave", "nameHeader");
 
         saveFaceButton = new(Translation.Get("faceSave", "saveButton"));
-        saveFaceButton.ControlEvent += (s, a) =>
+        saveFaceButton.ControlEvent += (_, _) =>
             SaveFace();
 
         categoryComboBox = new(Constants.CustomFaceGroupList.ToArray());

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/BG2WindowPane.cs

@@ -18,7 +18,7 @@ public class BG2WindowPane : BaseMainWindowPane
     {
         this.meidoManager = meidoManager;
         this.propManager = propManager;
-        this.propManager.FromPropSelect += (s, a) =>
+        this.propManager.FromPropSelect += (_, _) =>
             propTabs.SelectedItemIndex = 0;
 
         // should be added in this order
@@ -30,7 +30,7 @@ public class BG2WindowPane : BaseMainWindowPane
         propManagerPane = AddPane(new PropManagerPane(propManager));
 
         propTabs = new(Translation.GetArray("propsPaneTabs", tabNames));
-        propTabs.ControlEvent += (s, a) =>
+        propTabs.ControlEvent += (_, _) =>
             currentPropsPane = Panes[propTabs.SelectedItemIndex];
 
         currentPropsPane = Panes[0];

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/BGWindowPane.cs

@@ -18,7 +18,7 @@ public class BGWindowPane : BaseMainWindowPane
     )
     {
         sceneManagerButton = new(Translation.Get("backgroundWindow", "manageScenesButton"));
-        sceneManagerButton.ControlEvent += (s, a) =>
+        sceneManagerButton.ControlEvent += (_, _) =>
             sceneWindow.Visible = !sceneWindow.Visible;
 
         backgroundSelectorPane = AddPane(new BackgroundSelectorPane(environmentManager));

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/CallWindowPane.cs

@@ -16,7 +16,7 @@ public class CallWindowPane : BaseMainWindowPane
         placementDropdown = new(Translation.GetArray("placementDropdown", MaidPlacementUtility.placementTypes));
 
         placementOKButton = new(Translation.Get("maidCallWindow", "okButton"));
-        placementOKButton.ControlEvent += (o, a) =>
+        placementOKButton.ControlEvent += (_, _) =>
             this.meidoManager.PlaceMeidos(MaidPlacementUtility.placementTypes[placementDropdown.SelectedItemIndex]);
 
         maidSelectorPane = AddPane(new MaidSelectorPane(this.meidoManager));

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/FaceWindowPane.cs

@@ -22,7 +22,7 @@ public class FaceWindowPane : BaseMainWindowPane
         saveFacePane = AddPane(new SaveFacePane(this.meidoManager));
 
         saveFaceToggle = new(Translation.Get("maidFaceWindow", "savePaneToggle"));
-        saveFaceToggle.ControlEvent += (s, a) =>
+        saveFaceToggle.ControlEvent += (_, _) =>
             saveFaceMode = !saveFaceMode;
     }
 

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/PoseWindowPane.cs

@@ -38,11 +38,11 @@ public class PoseWindowPane : BaseMainWindowPane
         maidFaceLookPane.Enabled = false;
 
         freeLookToggle = new(Translation.Get("freeLookPane", "freeLookToggle"), false);
-        freeLookToggle.ControlEvent += (s, a) =>
+        freeLookToggle.ControlEvent += (_, _) =>
             SetMaidFreeLook();
 
         savePoseToggle = new(Translation.Get("posePane", "saveToggle"));
-        savePoseToggle.ControlEvent += (s, a) =>
+        savePoseToggle.ControlEvent += (_, _) =>
             savePoseMode = !savePoseMode;
 
         // TODO: Why are only some panes added to the pane list?
@@ -54,14 +54,14 @@ public class PoseWindowPane : BaseMainWindowPane
         copyPosePane = AddPane(new CopyPosePane(this.meidoManager));
 
         saveHandToggle = new(Translation.Get("handPane", "saveToggle"));
-        saveHandToggle.ControlEvent += (s, a) =>
+        saveHandToggle.ControlEvent += (_, _) =>
             saveHandMode = !saveHandMode;
 
         handPresetPane = AddPane(new HandPresetPane(meidoManager));
         saveHandPane = AddPane(new SaveHandPane(meidoManager));
 
         flipButton = new(Translation.Get("flipIK", "flipButton"));
-        flipButton.ControlEvent += (s, a) =>
+        flipButton.ControlEvent += (_, _) =>
             this.meidoManager.ActiveMeido.IKManager.Flip();
 
         handPresetHeader = Translation.Get("handPane", "header");

+ 5 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/MainWindowPanes/SettingsWindowPane.cs

@@ -7,7 +7,8 @@ namespace MeidoPhotoStudio.Plugin;
 
 public class SettingsWindowPane : BaseMainWindowPane
 {
-    private static readonly string[] headerTranslationKeys = {
+    private static readonly string[] headerTranslationKeys =
+    {
         "controls", "controlsGeneral", "controlsMaids", "controlsCamera", "controlsDragPoint", "controlsScene"
     };
 
@@ -37,7 +38,7 @@ public class SettingsWindowPane : BaseMainWindowPane
             var action = (MpsKey)i;
             var button = new KeyRebindButton(KeyCode.None);
 
-            button.ControlEvent += (s, a) =>
+            button.ControlEvent += (_, _) =>
                 InputManager.Rebind(action, button.KeyCode);
 
             rebindButtons[i] = button;
@@ -49,11 +50,11 @@ public class SettingsWindowPane : BaseMainWindowPane
             headers[headerTranslationKeys[i]] = Translation.Get("settingsHeaders", headerTranslationKeys[i]);
 
         reloadTranslationButton = new(Translation.Get("settingsLabels", "reloadTranslation"));
-        reloadTranslationButton.ControlEvent += (s, a) =>
+        reloadTranslationButton.ControlEvent += (_, _) =>
             Translation.ReinitializeTranslation();
 
         reloadAllPresetsButton = new(Translation.Get("settingsLabels", "reloadAllPresets"));
-        reloadAllPresetsButton.ControlEvent += (s, a) =>
+        reloadAllPresetsButton.ControlEvent += (_, _) =>
         {
             Constants.InitializeCustomFaceBlends();
             Constants.InitializeHandPresets();

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/OtherPanes/MaidSwitcherPane.cs

@@ -13,22 +13,22 @@ public class MaidSwitcherPane : BasePane
     {
         this.meidoManager = meidoManager;
 
-        this.meidoManager.UpdateMeido += (s, a) =>
+        this.meidoManager.UpdateMeido += (_, _) =>
             UpdatePane();
 
         previousButton = new("<");
 
-        previousButton.ControlEvent += (s, a) =>
+        previousButton.ControlEvent += (_, _) =>
             ChangeMaid(-1);
 
         nextButton = new(">");
 
-        nextButton.ControlEvent += (s, a) =>
+        nextButton.ControlEvent += (_, _) =>
             ChangeMaid(1);
 
         editToggle = new("Edit", true);
 
-        editToggle.ControlEvent += (s, a) =>
+        editToggle.ControlEvent += (_, _) =>
             SetEditMaid();
     }
 

+ 2 - 2
src/MeidoPhotoStudio.Plugin/GUI/Panes/OtherPanes/TabsPane.cs

@@ -21,11 +21,11 @@ public class TabsPane : BasePane
 
     public TabsPane()
     {
-        Translation.ReloadTranslationEvent += (s, a) =>
+        Translation.ReloadTranslationEvent += (_, _) =>
             ReloadTranslation();
 
         Tabs = new(Translation.GetArray("tabs", tabNames));
-        Tabs.ControlEvent += (s, a) =>
+        Tabs.ControlEvent += (_, _) =>
             OnChangeTab();
     }
 

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/CopyPosePane.cs

@@ -27,7 +27,7 @@ public class CopyPosePane : BasePane
         meidoDropdown = new(new[] { Translation.Get("systemMessage", "noMaids") });
 
         copyButton = new(Translation.Get("copyPosePane", "copyButton"));
-        copyButton.ControlEvent += (s, a) =>
+        copyButton.ControlEvent += (_, _) =>
             CopyPose();
 
         copyIKHeader = Translation.Get("copyPosePane", "header");

+ 3 - 3
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/GravityControlPane.cs

@@ -16,15 +16,15 @@ public class GravityControlPane : BasePane
         this.meidoManager = meidoManager;
 
         hairToggle = new(Translation.Get("gravityControlPane", "hairToggle"));
-        hairToggle.ControlEvent += (s, a) =>
+        hairToggle.ControlEvent += (_, _) =>
             ToggleGravity(hairToggle.Value, skirt: false);
 
         skirtToggle = new(Translation.Get("gravityControlPane", "skirtToggle"));
-        skirtToggle.ControlEvent += (s, a) =>
+        skirtToggle.ControlEvent += (_, _) =>
             ToggleGravity(skirtToggle.Value, skirt: true);
 
         globalToggle = new(Translation.Get("gravityControlPane", "globalToggle"));
-        globalToggle.ControlEvent += (s, a) =>
+        globalToggle.ControlEvent += (_, _) =>
             SetGlobalGravity(globalToggle.Value);
 
         header = Translation.Get("gravityControlPane", "gravityHeader");

+ 7 - 7
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/HandPresetPane.cs

@@ -36,33 +36,33 @@ public class HandPresetPane : BasePane
         this.meidoManager = meidoManager;
 
         presetCategoryDropdown = new(Constants.CustomHandGroupList.ToArray());
-        presetCategoryDropdown.SelectionChange += (s, a) =>
+        presetCategoryDropdown.SelectionChange += (_, _) =>
             ChangePresetCategory();
 
         nextCategoryButton = new(">");
-        nextCategoryButton.ControlEvent += (s, a) =>
+        nextCategoryButton.ControlEvent += (_, _) =>
             presetCategoryDropdown.Step(1);
 
         previousCategoryButton = new("<");
-        previousCategoryButton.ControlEvent += (s, a) =>
+        previousCategoryButton.ControlEvent += (_, _) =>
             presetCategoryDropdown.Step(-1);
 
         presetDropdown = new(UIPresetList());
 
         nextPresetButton = new(">");
-        nextPresetButton.ControlEvent += (s, a) =>
+        nextPresetButton.ControlEvent += (_, _) =>
             presetDropdown.Step(1);
 
         previousPresetButton = new("<");
-        previousPresetButton.ControlEvent += (s, a) =>
+        previousPresetButton.ControlEvent += (_, _) =>
             presetDropdown.Step(-1);
 
         leftHandButton = new(Translation.Get("handPane", "leftHand"));
-        leftHandButton.ControlEvent += (s, a) =>
+        leftHandButton.ControlEvent += (_, _) =>
             SetHandPreset(right: false);
 
         rightHandButton = new(Translation.Get("handPane", "rightHand"));
-        rightHandButton.ControlEvent += (s, a) =>
+        rightHandButton.ControlEvent += (_, _) =>
             SetHandPreset(right: true);
 
         previousCategory = SelectedCategory;

+ 6 - 6
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidDressingPane.cs

@@ -58,7 +58,7 @@ public class MaidDressingPane : BasePane
         {
             var slotToggle = new Toggle(Translation.Get("clothing", slot.ToString()));
 
-            slotToggle.ControlEvent += (s, a) =>
+            slotToggle.ControlEvent += (_, _) =>
                 ToggleClothing(slot, slotToggle.Value);
 
             clothingToggles.Add(slot, slotToggle);
@@ -66,23 +66,23 @@ public class MaidDressingPane : BasePane
         }
 
         detailedClothingToggle = new(Translation.Get("clothing", "detail"));
-        detailedClothingToggle.ControlEvent += (s, a) =>
+        detailedClothingToggle.ControlEvent += (_, _) =>
             UpdateDetailedClothing();
 
         curlingFrontToggle = new(Translation.Get("clothing", "curlingFront"));
-        curlingFrontToggle.ControlEvent += (s, a) =>
+        curlingFrontToggle.ControlEvent += (_, _) =>
             ToggleCurling(Curl.Front, curlingFrontToggle.Value);
 
         curlingBackToggle = new(Translation.Get("clothing", "curlingBack"));
-        curlingBackToggle.ControlEvent += (s, a) =>
+        curlingBackToggle.ControlEvent += (_, _) =>
             ToggleCurling(Curl.Back, curlingBackToggle.Value);
 
         pantsuShiftToggle = new(Translation.Get("clothing", "shiftPanties"));
-        pantsuShiftToggle.ControlEvent += (s, a) =>
+        pantsuShiftToggle.ControlEvent += (_, _) =>
             ToggleCurling(Curl.Shift, pantsuShiftToggle.Value);
 
         maskModeGrid = new(Translation.GetArray("clothing", maskLabels));
-        maskModeGrid.ControlEvent += (s, a) =>
+        maskModeGrid.ControlEvent += (_, _) =>
             SetMaskMode((Mask)maskModeGrid.SelectedItemIndex);
 
         UpdateDetailedClothing();

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidFreeLookPane.cs

@@ -17,19 +17,19 @@ public class MaidFaceLookPane : BasePane
         this.meidoManager = meidoManager;
 
         lookXSlider = new(Translation.Get("freeLookPane", "xSlider"), -0.6f, 0.6f);
-        lookXSlider.ControlEvent += (s, a) =>
+        lookXSlider.ControlEvent += (_, _) =>
             SetMaidLook();
 
         lookYSlider = new(Translation.Get("freeLookPane", "ySlider"), 0.5f, -0.55f);
-        lookYSlider.ControlEvent += (s, a) =>
+        lookYSlider.ControlEvent += (_, _) =>
             SetMaidLook();
 
         headToCamToggle = new(Translation.Get("freeLookPane", "headToCamToggle"));
-        headToCamToggle.ControlEvent += (s, a) =>
+        headToCamToggle.ControlEvent += (_, _) =>
             SetHeadToCam(headToCamToggle.Value, eye: false);
 
         eyeToCamToggle = new(Translation.Get("freeLookPane", "eyeToCamToggle"));
-        eyeToCamToggle.ControlEvent += (s, a) =>
+        eyeToCamToggle.ControlEvent += (_, _) =>
             SetHeadToCam(eyeToCamToggle.Value, eye: true);
 
         bindLabel = Translation.Get("freeLookPane", "bindLabel");

+ 5 - 7
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidIKPane.cs

@@ -4,29 +4,27 @@ namespace MeidoPhotoStudio.Plugin;
 
 public class MaidIKPane : BasePane
 {
+    private enum IKToggle { IK, Release, Bone }
+
     private readonly MeidoManager meidoManager;
     private readonly Toggle ikToggle;
     private readonly Toggle releaseIKToggle;
     private readonly Toggle boneIKToggle;
-    private enum IKToggle
-    {
-        IK, Release, Bone
-    }
 
     public MaidIKPane(MeidoManager meidoManager)
     {
         this.meidoManager = meidoManager;
 
         ikToggle = new(Translation.Get("maidPoseWindow", "ikToggle"), true);
-        ikToggle.ControlEvent += (s, a) =>
+        ikToggle.ControlEvent += (_, _) =>
             SetIK(IKToggle.IK, ikToggle.Value);
 
         releaseIKToggle = new(Translation.Get("maidPoseWindow", "releaseToggle"));
-        releaseIKToggle.ControlEvent += (s, a) =>
+        releaseIKToggle.ControlEvent += (_, _) =>
             SetIK(IKToggle.Release, releaseIKToggle.Value);
 
         boneIKToggle = new(Translation.Get("maidPoseWindow", "boneToggle"));
-        boneIKToggle.ControlEvent += (s, a) =>
+        boneIKToggle.ControlEvent += (_, _) =>
             SetIK(IKToggle.Bone, boneIKToggle.Value);
     }
 

+ 7 - 7
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MaidPoseSelectorPane.cs

@@ -49,31 +49,31 @@ public class MaidPoseSelectorPane : BasePane
         this.meidoManager = meidoManager;
 
         poseModeGrid = new(Translation.GetArray("posePane", tabTranslations));
-        poseModeGrid.ControlEvent += (s, a) =>
+        poseModeGrid.ControlEvent += (_, _) =>
             SetPoseMode();
 
         poseGroupDropdown = new(Translation.GetArray("poseGroupDropdown", Constants.PoseGroupList));
-        poseGroupDropdown.SelectionChange += (s, a) =>
+        poseGroupDropdown.SelectionChange += (_, _) =>
             ChangePoseGroup();
 
         poseDropdown = new(UIPoseList());
-        poseDropdown.SelectionChange += (s, a) =>
+        poseDropdown.SelectionChange += (_, _) =>
             ChangePose();
 
         poseGroupLeftButton = new("<");
-        poseGroupLeftButton.ControlEvent += (s, a) =>
+        poseGroupLeftButton.ControlEvent += (_, _) =>
             poseGroupDropdown.Step(-1);
 
         poseGroupRightButton = new(">");
-        poseGroupRightButton.ControlEvent += (s, a) =>
+        poseGroupRightButton.ControlEvent += (_, _) =>
             poseGroupDropdown.Step(1);
 
         poseLeftButton = new("<");
-        poseLeftButton.ControlEvent += (s, a) =>
+        poseLeftButton.ControlEvent += (_, _) =>
             poseDropdown.Step(-1);
 
         poseRightButton = new(">");
-        poseRightButton.ControlEvent += (s, a) =>
+        poseRightButton.ControlEvent += (_, _) =>
             poseDropdown.Step(1);
 
         customPoseMode = poseModeGrid.SelectedItemIndex is 1;

+ 5 - 5
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/MpnAttachPropPane.cs

@@ -28,23 +28,23 @@ public class MpnAttachPropPane : BasePane
         SetDropdownList();
 
         previousPropButton = new("<");
-        previousPropButton.ControlEvent += (s, a) =>
+        previousPropButton.ControlEvent += (_, _) =>
             mpnAttachDropdown.Step(-1);
 
         nextPropButton = new(">");
-        nextPropButton.ControlEvent += (s, a) =>
+        nextPropButton.ControlEvent += (_, _) =>
             mpnAttachDropdown.Step(1);
 
         attachPropButton = new(Translation.Get("attachMpnPropPane", "attachButton"));
-        attachPropButton.ControlEvent += (s, a) =>
+        attachPropButton.ControlEvent += (_, _) =>
             AttachProp();
 
         detachPropButton = new(Translation.Get("attachMpnPropPane", "detachButton"));
-        detachPropButton.ControlEvent += (s, a) =>
+        detachPropButton.ControlEvent += (_, _) =>
             AttachProp(detach: true);
 
         detachAllButton = new(Translation.Get("attachMpnPropPane", "detachAllButton"));
-        detachAllButton.ControlEvent += (s, a) =>
+        detachAllButton.ControlEvent += (_, _) =>
             DetachAll();
 
         header = Translation.Get("attachMpnPropPane", "header");

+ 3 - 3
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/SaveHandPane.cs

@@ -15,7 +15,7 @@ public class SaveHandPane : BasePane
 
     public SaveHandPane(MeidoManager meidoManager)
     {
-        Constants.CustomHandChange += (s, a) =>
+        Constants.CustomHandChange += (_, _) =>
             categoryComboBox.SetDropdownItems(Constants.CustomHandGroupList.ToArray());
 
         this.meidoManager = meidoManager;
@@ -25,11 +25,11 @@ public class SaveHandPane : BasePane
         nameHeader = Translation.Get("handPane", "nameHeader");
 
         saveLeftHandButton = new(Translation.Get("handPane", "saveLeftButton"));
-        saveLeftHandButton.ControlEvent += (s, a) =>
+        saveLeftHandButton.ControlEvent += (_, _) =>
             SaveHand(right: false);
 
         saveRightHandButton = new(Translation.Get("handPane", "saveRightButton"));
-        saveRightHandButton.ControlEvent += (s, a) =>
+        saveRightHandButton.ControlEvent += (_, _) =>
             SaveHand(right: true);
 
         categoryComboBox = new(Constants.CustomHandGroupList.ToArray());

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/PoseWindowPanes/SavePosePane.cs

@@ -15,7 +15,7 @@ public class SavePosePane : BasePane
 
     public SavePosePane(MeidoManager meidoManager)
     {
-        Constants.CustomPoseChange += (s, a) =>
+        Constants.CustomPoseChange += (_, _) =>
             categoryComboBox.SetDropdownItems(Constants.CustomPoseGroupList.ToArray());
 
         this.meidoManager = meidoManager;

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerDirectoryPane.cs

@@ -23,15 +23,15 @@ public class SceneManagerDirectoryPane : BasePane
         this.sceneModalWindow = sceneModalWindow;
 
         createDirectoryButton = new(Translation.Get("sceneManager", "createDirectoryButton"));
-        createDirectoryButton.ControlEvent += (s, a) =>
+        createDirectoryButton.ControlEvent += (_, _) =>
             createDirectoryMode = true;
 
         deleteDirectoryButton = new(Translation.Get("sceneManager", "deleteDirectoryButton"));
-        deleteDirectoryButton.ControlEvent += (s, a) =>
+        deleteDirectoryButton.ControlEvent += (_, _) =>
             this.sceneModalWindow.ShowDirectoryDialogue();
 
         directoryTextField = new();
-        directoryTextField.ControlEvent += (s, a) =>
+        directoryTextField.ControlEvent += (_, _) =>
         {
             sceneManager.AddDirectory(directoryTextField.Value);
             createDirectoryMode = false;
@@ -39,7 +39,7 @@ public class SceneManagerDirectoryPane : BasePane
         };
 
         cancelButton = new("X");
-        cancelButton.ControlEvent += (s, a) =>
+        cancelButton.ControlEvent += (_, _) =>
             createDirectoryMode = false;
     }
 

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerScenePane.cs

@@ -16,7 +16,7 @@ public class SceneManagerScenePane : BasePane
         this.sceneModalWindow = sceneModalWindow;
 
         addSceneButton = new("+");
-        addSceneButton.ControlEvent += (s, a) =>
+        addSceneButton.ControlEvent += (_, _) =>
             sceneManager.SaveScene(overwrite: false);
     }
 

+ 5 - 5
src/MeidoPhotoStudio.Plugin/GUI/Panes/SceneManagerPanes/SceneManagerTitleBar.cs

@@ -21,15 +21,15 @@ public class SceneManagerTitleBarPane : BasePane
     {
         this.sceneManager = sceneManager;
         kankyoToggle = new(Translation.Get("sceneManager", "kankyoToggle"));
-        kankyoToggle.ControlEvent += (s, a) =>
+        kankyoToggle.ControlEvent += (_, _) =>
             sceneManager.ToggleKankyoMode();
 
         refreshButton = new(Translation.Get("sceneManager", "refreshButton"));
-        refreshButton.ControlEvent += (s, a) =>
+        refreshButton.ControlEvent += (_, _) =>
             sceneManager.Refresh();
 
         sortDropdown = new(Translation.GetArray("sceneManager", sortModes), (int)sceneManager.CurrentSortMode);
-        sortDropdown.SelectionChange += (s, a) =>
+        sortDropdown.SelectionChange += (_, _) =>
         {
             var sortMode = (SceneManager.SortMode)sortDropdown.SelectedItemIndex;
 
@@ -40,14 +40,14 @@ public class SceneManagerTitleBarPane : BasePane
         };
 
         descendingToggle = new(Translation.Get("sceneManager", "descendingToggle"), sceneManager.SortDescending);
-        descendingToggle.ControlEvent += (s, a) =>
+        descendingToggle.ControlEvent += (_, _) =>
         {
             sceneManager.SortDescending = descendingToggle.Value;
             sceneManager.SortScenes(sceneManager.CurrentSortMode);
         };
 
         closeButton = new("X");
-        closeButton.ControlEvent += (s, a) =>
+        closeButton.ControlEvent += (_, _) =>
             CloseChange?.Invoke(this, System.EventArgs.Empty);
 
         sortLabel = Translation.Get("sceneManager", "sortLabel");

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Windows/MainWindow.cs

@@ -47,25 +47,25 @@ public class MainWindow : BaseWindow
         this.meidoManager.UpdateMeido += UpdateMeido;
 
         this.propManager = propManager;
-        this.propManager.FromPropSelect += (s, a) =>
+        this.propManager.FromPropSelect += (_, _) =>
             ChangeWindow(Constants.Window.BG2);
 
         this.lightManager = lightManager;
-        this.lightManager.Select += (s, a) =>
+        this.lightManager.Select += (_, _) =>
             ChangeWindow(Constants.Window.BG);
 
         windowPanes = new();
         WindowRect = new(Screen.width, Screen.height * 0.08f, 240f, Screen.height * 0.9f);
 
         tabsPane = new();
-        tabsPane.TabChange += (s, a) =>
+        tabsPane.TabChange += (_, _) =>
             ChangeTab();
 
         settingsButtonLabel = Translation.Get("settingsLabels", "settingsButton");
         closeButtonLabel = Translation.Get("settingsLabels", "closeSettingsButton");
 
         settingsButton = new(settingsButtonLabel);
-        settingsButton.ControlEvent += (s, a) =>
+        settingsButton.ControlEvent += (_, _) =>
         {
             if (selectedWindow is Constants.Window.Settings)
                 ChangeTab();

+ 4 - 4
src/MeidoPhotoStudio.Plugin/GUI/Windows/SceneModalWindow.cs

@@ -61,22 +61,22 @@ public class SceneModalWindow : BaseWindow
         windowRect.y = MiddlePosition.y;
 
         okButton = new(sceneLoadCommit);
-        okButton.ControlEvent += (s, a) =>
+        okButton.ControlEvent += (_, _) =>
             Commit();
 
         cancelButton = new("Cancel");
-        cancelButton.ControlEvent += (s, a) =>
+        cancelButton.ControlEvent += (_, _) =>
             Cancel();
 
         deleteButton = new("Delete");
-        deleteButton.ControlEvent += (s, a) =>
+        deleteButton.ControlEvent += (_, _) =>
         {
             okButton.Label = sceneDeleteCommit;
             deleteScene = true;
         };
 
         overwriteButton = new("Overwrite");
-        overwriteButton.ControlEvent += (s, a) =>
+        overwriteButton.ControlEvent += (_, _) =>
         {
             sceneManager.OverwriteScene();
             Visible = false;

+ 1 - 1
src/MeidoPhotoStudio.Plugin/GUI/Windows/SceneWindow.cs

@@ -40,7 +40,7 @@ public class SceneWindow : BaseWindow
         var sceneModalWindow = new SceneModalWindow(this.sceneManager);
 
         titleBar = AddPane(new SceneManagerTitleBarPane(sceneManager));
-        titleBar.CloseChange += (s, a) =>
+        titleBar.CloseChange += (_, _) =>
             Visible = false;
 
         directoryList = AddPane(new SceneManagerDirectoryPane(sceneManager, sceneModalWindow));

+ 14 - 14
src/MeidoPhotoStudio.Plugin/Managers/InputManager.cs

@@ -6,6 +6,20 @@ using UnityEngine;
 
 namespace MeidoPhotoStudio.Plugin;
 
+public enum MpsKey
+{
+    // MeidoPhotoStudio
+    Activate, Screenshot, ToggleUI, ToggleMessage,
+    // MeidoManager
+    MeidoUndressing,
+    // Camera
+    CameraLayer, CameraReset, CameraSave, CameraLoad,
+    // Dragpoint
+    DragSelect, DragDelete, DragMove, DragRotate, DragScale, DragFinger,
+    // Scene management
+    SaveScene, LoadScene, OpenSceneManager
+}
+
 public static class InputManager
 {
     public const KeyCode upperKeyCode = KeyCode.F15;
@@ -157,17 +171,3 @@ public static class InputManager
             Key = key;
     }
 }
-
-public enum MpsKey
-{
-    // MeidoPhotoStudio
-    Activate, Screenshot, ToggleUI, ToggleMessage,
-    // MeidoManager
-    MeidoUndressing,
-    // Camera
-    CameraLayer, CameraReset, CameraSave, CameraLoad,
-    // Dragpoint
-    DragSelect, DragDelete, DragMove, DragRotate, DragScale, DragFinger,
-    // Scene management
-    SaveScene, LoadScene, OpenSceneManager
-}

+ 1 - 1
src/MeidoPhotoStudio.Plugin/Meido/IK/DragPointSpine.cs

@@ -16,7 +16,7 @@ public class DragPointSpine : DragPointMeido
         base.AddGizmo(scale, mode);
 
         if (isHead)
-            Gizmo.GizmoDrag += (s, a) =>
+            Gizmo.GizmoDrag += (_, _) =>
                 meido.HeadToCam = false;
     }
 

+ 1 - 2
src/MeidoPhotoStudio.Plugin/Meido/Meido.cs

@@ -208,7 +208,7 @@ public class Meido
         Maid = GameMain.Instance.CharacterMgr.GetStockMaid(stockMaidIndex);
 
         IKManager = new(this);
-        IKManager.SelectMaid += (s, args) =>
+        IKManager.SelectMaid += (_, args) =>
             OnUpdateMeido(args);
     }
 
@@ -873,7 +873,6 @@ public class Meido
     private DragPointGravity MakeGravityControl(bool skirt = false)
     {
         var gravityDragpoint = DragPoint.Make<DragPointGravity>(PrimitiveType.Cube, Vector3.one * 0.12f);
-
         var control = DragPointGravity.MakeGravityControl(Maid, skirt);
 
         gravityDragpoint.Initialize(() => control.transform.position, () => Vector3.zero);

+ 17 - 4
src/MeidoPhotoStudio.Plugin/Meido/MeidoDragPointManager.cs

@@ -8,23 +8,35 @@ namespace MeidoPhotoStudio.Plugin;
 
 public enum AttachPoint
 {
-    None, Head, Neck, UpperArmL, UpperArmR, ForearmL, ForearmR, MuneL, MuneR, HandL, HandR,
-    Pelvis, ThighL, ThighR, CalfL, CalfR, FootL, FootR, Spine1a, Spine1, Spine0a, Spine0
+    None, Head, Neck, UpperArmL, UpperArmR, ForearmL, ForearmR, MuneL, MuneR, HandL, HandR, Pelvis, ThighL, ThighR,
+    CalfL, CalfR, FootL, FootR, Spine1a, Spine1, Spine0a, Spine0
 }
 
 public class MeidoDragPointManager
 {
     private enum Bone
     {
+        // Head
         Head, HeadNub, ClavicleL, ClavicleR,
-        UpperArmL, UpperArmR, ForearmL, ForearmR,
-        HandL, HandR, /*IKHandL, IKHandR,*/
+
+        // Arms
+        UpperArmL, UpperArmR, ForearmL, ForearmR, HandL, HandR, /*IKHandL, IKHandR,*/
+
+        // Mune
         MuneL, MuneSubL, MuneR, MuneSubR,
+
+        // Spine
         Neck, Spine, Spine0a, Spine1, Spine1a, ThighL, ThighR,
+
+        // Hip
         Pelvis, Hip,
+
+        // Legs
         CalfL, CalfR, FootL, FootR,
+
         // Dragpoint specific
         Cube, Body, Torso,
+
         // Fingers
         Finger0L, Finger01L, Finger02L, Finger0NubL,
         Finger1L, Finger11L, Finger12L, Finger1NubL,
@@ -36,6 +48,7 @@ public class MeidoDragPointManager
         Finger2R, Finger21R, Finger22R, Finger2NubR,
         Finger3R, Finger31R, Finger32R, Finger3NubR,
         Finger4R, Finger41R, Finger42R, Finger4NubR,
+
         // Toes
         Toe0L, Toe01L, Toe0NubL,
         Toe1L, Toe11L, Toe1NubL,

+ 10 - 10
src/MeidoPhotoStudio.Plugin/MeidoPhotoStudio.cs

@@ -300,14 +300,13 @@ public class MeidoPhotoStudio : BaseUnityPlugin
         }
 
         // Hide other drag points
-        var isCubeActive =
-            new[]
-            {
-                MeidoDragPointManager.CubeActive,
-                PropManager.CubeActive,
-                LightManager.CubeActive,
-                EnvironmentManager.CubeActive
-            };
+        var isCubeActive = new[]
+        {
+            MeidoDragPointManager.CubeActive,
+            PropManager.CubeActive,
+            LightManager.CubeActive,
+            EnvironmentManager.CubeActive
+        };
 
         MeidoDragPointManager.CubeActive = false;
         PropManager.CubeActive = false;
@@ -370,6 +369,7 @@ public class MeidoPhotoStudio : BaseUnityPlugin
 
             if (isIK[i])
                 meido.IK = true;
+
             if (args.HideMaids && isVisible[i])
                 meido.Maid.Visible = true;
         }
@@ -423,10 +423,10 @@ public class MeidoPhotoStudio : BaseUnityPlugin
         effectManager.AddManager<SepiaToneEffectManger>();
         effectManager.AddManager<BlurEffectManager>();
 
-        meidoManager.BeginCallMeidos += (s, a) =>
+        meidoManager.BeginCallMeidos += (_, _) =>
             uiActive = false;
 
-        meidoManager.EndCallMeidos += (s, a) =>
+        meidoManager.EndCallMeidos += (_, _) =>
             uiActive = true;
 
         var maidSwitcherPane = new MaidSwitcherPane(meidoManager);

+ 88 - 116
src/MeidoPhotoStudio.Plugin/ModelUtility.cs

@@ -124,44 +124,41 @@ public static class ModelUtility
             return null;
         }
 
-        if (ProcScriptBin(modelBuffer, out var modelInfo))
+        if (!ProcScriptBin(modelBuffer, out var modelInfo) || !InstantiateModel(modelInfo.ModelFile, out var finalModel))
         {
-            if (InstantiateModel(modelInfo.ModelFile, out var finalModel))
-            {
-                IEnumerable<Renderer> renderers = GetRenderers(finalModel).ToList();
+            Utility.LogMessage($"Could not load menu model '{modItem.MenuFile}'");
 
-                foreach (var matChange in modelInfo.MaterialChanges)
-                    foreach (var renderer in renderers)
-                        if (matChange.MaterialIndex < renderer.materials.Length)
-                            renderer.materials[matChange.MaterialIndex] = ImportCM.LoadMaterial(
-                                matChange.MaterialFile, null, renderer.materials[matChange.MaterialIndex]
-                            );
+            return null;
+        }
 
-                if (!modItem.IsOfficialMod)
-                    return finalModel;
+        IEnumerable<Renderer> renderers = GetRenderers(finalModel).ToList();
 
-                try
-                {
-                    modelBuffer = ReadOfficialMod(modItem.MenuFile);
-                }
-                catch (Exception e)
-                {
-                    Utility.LogError(
-                        $"Could not read mod menu file '{modItem.MenuFile}' because {e.Message}\n{e.StackTrace}"
+        foreach (var matChange in modelInfo.MaterialChanges)
+            foreach (var renderer in renderers)
+                if (matChange.MaterialIndex < renderer.materials.Length)
+                    renderer.materials[matChange.MaterialIndex] = ImportCM.LoadMaterial(
+                        matChange.MaterialFile, null, renderer.materials[matChange.MaterialIndex]
                     );
 
-                    return null;
-                }
+        if (!modItem.IsOfficialMod)
+            return finalModel;
 
-                ProcModScriptBin(modelBuffer, finalModel);
+        try
+        {
+            modelBuffer = ReadOfficialMod(modItem.MenuFile);
+        }
+        catch (Exception e)
+        {
+            Utility.LogError(
+                $"Could not read mod menu file '{modItem.MenuFile}' because {e.Message}\n{e.StackTrace}"
+            );
 
-                return finalModel;
-            }
+            return null;
         }
 
-        Utility.LogMessage($"Could not load menu model '{modItem.MenuFile}'");
+        ProcModScriptBin(modelBuffer, finalModel);
 
-        return null;
+        return finalModel;
     }
 
     private static GameObject GetDeploymentObject()
@@ -238,6 +235,7 @@ public static class ModelUtility
                 if (binaryReader.ReadByte() is not 0)
                 {
                     var otherBone = CreateSeed();
+
                     otherBone.name = bone.name + "_SCL_";
                     otherBone.transform.parent = bone.transform;
                     boneDict[bone.name + "$_SCL_"] = otherBone;
@@ -421,37 +419,29 @@ public static class ModelUtility
                 var numberOfProps = binaryReader.ReadByte();
                 var menuPropString = string.Empty;
 
-                if (numberOfProps is not 0)
-                {
-                    for (var i = 0; i < numberOfProps; i++)
-                        menuPropString = $"{menuPropString}\"{binaryReader.ReadString()}\"";
-
-                    if (menuPropString != string.Empty)
-                    {
-                        var header = UTY.GetStringCom(menuPropString);
-                        var menuProps = UTY.GetStringList(menuPropString);
+                if (numberOfProps is 0)
+                    break;
 
-                        if (header is "end")
-                            break;
+                for (var i = 0; i < numberOfProps; i++)
+                    menuPropString = $"{menuPropString}\"{binaryReader.ReadString()}\"";
 
-                        switch (header)
-                        {
-                            case "マテリアル変更":
-                                var matNo = int.Parse(menuProps[2]);
-                                var materialFile = menuProps[3];
+                if (menuPropString == string.Empty)
+                    continue;
 
-                                modelInfo.MaterialChanges.Add(new MaterialChange(matNo, materialFile));
+                var header = UTY.GetStringCom(menuPropString);
+                var menuProps = UTY.GetStringList(menuPropString);
 
-                                break;
-                            case "additem":
-                                modelInfo.ModelFile = menuProps[1];
+                if (header is "end")
+                    break;
+                else if (header is "マテリアル変更")
+                {
+                    var matNo = int.Parse(menuProps[2]);
+                    var materialFile = menuProps[3];
 
-                                break;
-                        }
-                    }
+                    modelInfo.MaterialChanges.Add(new MaterialChange(matNo, materialFile));
                 }
-                else
-                    break;
+                else if (header is "additem")
+                    modelInfo.ModelFile = menuProps[1];
             }
         }
         catch
@@ -479,12 +469,12 @@ public static class ModelUtility
             binaryReader.ReadString();
             binaryReader.ReadString();
 
-            var mpnValue = binaryReader.ReadString();
+            var serializedMpn = binaryReader.ReadString();
             var mpn = MPN.null_mpn;
 
             try
             {
-                mpn = (MPN)Enum.Parse(typeof(MPN), mpnValue, true);
+                mpn = (MPN)Enum.Parse(typeof(MPN), serializedMpn, true);
             }
             catch { /* ignored */ }
 
@@ -521,76 +511,58 @@ public static class ModelUtility
         {
             var data = line.Split(new[] { '\t', ' ' }, StringSplitOptions.RemoveEmptyEntries);
 
-            switch (data[0])
+            var header = data[0];
+
+            if (header is "アイテム変更" or "マテリアル変更")
+                mode = IMode.ItemChange;
+            else if (header is "テクスチャ変更")
+                mode = IMode.TexChange;
+
+            if (mode is IMode.ItemChange)
             {
-                case "アイテム変更":
-                case "マテリアル変更":
-                    mode = IMode.ItemChange;
+                if (header is "スロット名")
+                    materialChange = true;
 
-                    break;
-                case "テクスチャ変更":
-                    mode = IMode.TexChange;
+                if (!materialChange)
+                    continue;
 
-                    break;
-            }
+                if (header is "マテリアル番号")
+                {
+                    materialIndex = int.Parse(data[1]);
 
-            switch (mode)
-            {
-                case IMode.ItemChange:
-                    if (data[0] is "スロット名")
-                        materialChange = true;
-
-                    if (materialChange)
-                    {
-                        if (data[0] is "マテリアル番号")
-                        {
-                            materialIndex = int.Parse(data[1]);
-
-                            renderers ??= GetRenderers(go).ToList();
-
-                            foreach (var renderer in renderers)
-                                if (materialIndex < renderer.materials.Length)
-                                    material = renderer.materials[materialIndex];
-                        }
-
-                        if (!material)
-                            continue;
-
-                        switch (data[0])
-                        {
-                            case "テクスチャ設定":
-                                ChangeTex(materialIndex, data[1], data[2].ToLower());
-
-                                break;
-                            case "色設定":
-                                material.SetColor(
-                                    data[1],
-                                    new(
-                                        float.Parse(data[2]) / 255f, float.Parse(data[3]) / 255f,
-                                        float.Parse(data[4]) / 255f, float.Parse(data[5]) / 255f
-                                    )
-                                );
-
-                                break;
-                            case "数値設定":
-                                material.SetFloat(data[1], float.Parse(data[2]));
-
-                                break;
-                        }
-                    }
+                    renderers ??= GetRenderers(go).ToList();
 
-                    break;
-                case IMode.TexChange:
-                    var matno = int.Parse(data[2]);
+                    foreach (var renderer in renderers)
+                        if (materialIndex < renderer.materials.Length)
+                            material = renderer.materials[materialIndex];
+                }
 
-                    ChangeTex(matno, data[3], data[4].ToLower());
+                if (!material)
+                    continue;
+
+                if (header is "テクスチャ設定")
+                    ChangeTex(materialIndex, data[1], data[2].ToLower());
+                else if (header is "色設定")
+                    material.SetColor(
+                        data[1],
+                        new(
+                            float.Parse(data[2]) / 255f, float.Parse(data[3]) / 255f, float.Parse(data[4]) / 255f,
+                            float.Parse(data[5]) / 255f
+                        )
+                    );
+                else if (header is "数値設定")
+                    material.SetFloat(data[1], float.Parse(data[2]));
+            }
+            else if (mode is IMode.TexChange)
+            {
+                var matno = int.Parse(data[2]);
 
-                    break;
-                case IMode.None:
-                    break;
-                default:
-                    throw new ArgumentOutOfRangeException();
+                ChangeTex(matno, data[3], data[4].ToLower());
             }
+            else if (mode is IMode.None)
+                continue;
+            else
+                throw new ArgumentOutOfRangeException(nameof(mode));
         }
 
         void ChangeTex(int matno, string prop, string filename)

+ 10 - 10
src/MeidoPhotoStudio.Plugin/Serialization/Serializers/MeidoSerializer.cs

@@ -199,19 +199,19 @@ public class MeidoSerializer : Serializer<Meido>
         meido.SetMune(!muneSetting.Key, true);
         meido.SetMune(!muneSetting.Value);
 
-        if (version >= 2)
-        {
-            var muneLSubRotation = reader.ReadQuaternion();
-            var muneSubRRotation = reader.ReadQuaternion();
+        if (version < 2)
+            return;
+
+        var muneLSubRotation = reader.ReadQuaternion();
+        var muneSubRRotation = reader.ReadQuaternion();
 
-            var body = meido.Body;
+        var body = meido.Body;
 
-            if (muneSetting.Key)
-                body.GetBone("Mune_L_sub").localRotation = muneLSubRotation;
+        if (muneSetting.Key)
+            body.GetBone("Mune_L_sub").localRotation = muneLSubRotation;
 
-            if (muneSetting.Value)
-                body.GetBone("Mune_R_sub").localRotation = muneSubRRotation;
-        }
+        if (muneSetting.Value)
+            body.GetBone("Mune_R_sub").localRotation = muneSubRRotation;
     }
 
     private static void DeserializeClothing(Meido meido, BinaryReader reader, SceneMetadata metadata)