Better cohtml values parsing

This commit is contained in:
SDraw 2024-04-27 19:53:36 +03:00
parent 85925a7072
commit d91fe1515e
No known key found for this signature in database
GPG key ID: BB95B4DAB2BB8BB5
10 changed files with 94 additions and 95 deletions

View file

@ -92,26 +92,26 @@ namespace ml_amt
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.CrouchLimit:
{
CrouchLimit = int.Parse(p_value) * 0.01f;
CrouchLimit = l_value * 0.01f;
OnCrouchLimitChanged.Invoke(CrouchLimit);
}
break;
case ModSetting.ProneLimit:
{
ProneLimit = int.Parse(p_value) * 0.01f;
ProneLimit = l_value * 0.01f;
OnProneLimitChanged.Invoke(ProneLimit);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -124,40 +124,40 @@ namespace ml_amt
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.IKOverrideFly:
{
IKOverrideFly = bool.Parse(p_value);
OnIKOverrideFlyChanged.Invoke(IKOverrideFly);
IKOverrideFly = l_value;
OnIKOverrideFlyChanged.Invoke(l_value);
}
break;
case ModSetting.IKOverrideJump:
{
IKOverrideJump = bool.Parse(p_value);
IKOverrideJump = l_value;
OnIKOverrideJumpChanged.Invoke(IKOverrideJump);
}
break;
case ModSetting.DetectEmotes:
{
DetectEmotes = bool.Parse(p_value);
DetectEmotes = l_value;
OnDetectEmotesChanged.Invoke(DetectEmotes);
}
break;
case ModSetting.MassCenter:
{
MassCenter = bool.Parse(p_value);
MassCenter = l_value;
OnMassCenterChanged.Invoke(MassCenter);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -66,19 +66,19 @@ namespace ml_asl
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.Enabled:
{
Enabled = bool.Parse(p_value);
Enabled = l_value;
OnEnabledChanged.Invoke(Enabled);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -86,33 +86,33 @@ namespace ml_bft
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.SkeletalInput:
{
SkeletalInput = bool.Parse(p_value);
SkeletalInput = l_value;
OnSkeletalInputChanged.Invoke(SkeletalInput);
}
break;
case ModSetting.ShowHands:
{
ShowHands = bool.Parse(p_value);
ShowHands = l_value;
OnShowHandsChanged.Invoke(ShowHands);
}
break;
case ModSetting.MechanimFilter:
{
MechanimFilter = bool.Parse(p_value);
MechanimFilter = l_value;
OnMechanimFilterChanged.Invoke(MechanimFilter);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -125,19 +125,19 @@ namespace ml_bft
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.MotionRange:
{
MotionRange = (MotionRangeType)int.Parse(p_value);
MotionRange = (MotionRangeType)l_value;
OnMotionRangeChanged.Invoke(MotionRange);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -97,19 +97,19 @@ namespace ml_dht
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.Smoothing:
{
Smoothing = int.Parse(p_value) * 0.01f;
Smoothing = l_value * 0.01f;
OnSmoothingChanged.Invoke(Smoothing);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -122,54 +122,54 @@ namespace ml_dht
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.Enabled:
{
Enabled = bool.Parse(p_value);
Enabled = l_value;
OnEnabledChanged.Invoke(Enabled);
}
break;
case ModSetting.HeadTracking:
{
HeadTracking = bool.Parse(p_value);
HeadTracking = l_value;
OnHeadTrackingChanged.Invoke(HeadTracking);
}
break;
case ModSetting.EyeTracking:
{
EyeTracking = bool.Parse(p_value);
EyeTracking = l_value;
OnEyeTrackingChanged.Invoke(EyeTracking);
}
break;
case ModSetting.FaceTracking:
{
FaceTracking = bool.Parse(p_value);
FaceTracking = l_value;
OnFaceTrackingChanged.Invoke(FaceTracking);
}
break;
case ModSetting.Blinking:
{
Blinking = bool.Parse(p_value);
Blinking = l_value;
OnBlinkingChanged.Invoke(Blinking);
}
break;
case ModSetting.Mirrored:
{
Mirrored = bool.Parse(p_value);
Mirrored = l_value;
OnMirroredChanged.Invoke(Mirrored);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -170,75 +170,75 @@ namespace ml_lme
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.Enabled:
{
Enabled = bool.Parse(p_value);
Enabled = l_value;
OnEnabledChanged.Invoke(Enabled);
}
break;
case ModSetting.FingersOnly:
{
FingersOnly = bool.Parse(p_value);
FingersOnly = l_value;
OnFingersOnlyChanged.Invoke(FingersOnly);
}
break;
case ModSetting.Model:
{
ModelVisibility = bool.Parse(p_value);
ModelVisibility = l_value;
OnModelVisibilityChanged.Invoke(ModelVisibility);
}
break;
case ModSetting.Head:
{
HeadAttach = bool.Parse(p_value);
HeadAttach = l_value;
OnHeadAttachChanged.Invoke(HeadAttach);
}
break;
case ModSetting.TrackElbows:
{
TrackElbows = bool.Parse(p_value);
TrackElbows = l_value;
OnTrackElbowsChanged.Invoke(TrackElbows);
}
break;
case ModSetting.Interaction:
{
Interaction = bool.Parse(p_value);
Interaction = l_value;
OnInteractionChanged.Invoke(Interaction);
}
break;
case ModSetting.Gestures:
{
Gestures = bool.Parse(p_value);
Gestures = l_value;
OnGesturesChanged.Invoke(Gestures);
}
break;
case ModSetting.VisualHands:
{
VisualHands = bool.Parse(p_value);
VisualHands = l_value;
OnVisualHandsChanged.Invoke(VisualHands);
}
break;
case ModSetting.MechanimFilter:
{
MechanimFilter = bool.Parse(p_value);
MechanimFilter = l_value;
OnMechanimFilterChanged.Invoke(MechanimFilter);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -251,14 +251,14 @@ namespace ml_lme
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.DesktopX:
{
Vector3 l_current = DesktopOffset;
l_current.x = int.Parse(p_value) * 0.01f;
l_current.x = l_value * 0.01f;
DesktopOffset = l_current;
OnDesktopOffsetChanged.Invoke(l_current);
}
@ -266,7 +266,7 @@ namespace ml_lme
case ModSetting.DesktopY:
{
Vector3 l_current = DesktopOffset;
l_current.y = int.Parse(p_value) * 0.01f;
l_current.y = l_value * 0.01f;
DesktopOffset = l_current;
OnDesktopOffsetChanged.Invoke(l_current);
}
@ -274,7 +274,7 @@ namespace ml_lme
case ModSetting.DesktopZ:
{
Vector3 l_current = DesktopOffset;
l_current.z = int.Parse(p_value) * 0.01f;
l_current.z = l_value * 0.01f;
DesktopOffset = l_current;
OnDesktopOffsetChanged.Invoke(l_current);
}
@ -283,7 +283,7 @@ namespace ml_lme
case ModSetting.AngleX:
{
Vector3 l_current = RootAngle;
l_current.x = int.Parse(p_value);
l_current.x = l_value;
RootAngle = l_current;
OnRootAngleChanged.Invoke(l_current);
}
@ -292,7 +292,7 @@ namespace ml_lme
case ModSetting.AngleY:
{
Vector3 l_current = RootAngle;
l_current.y = int.Parse(p_value);
l_current.y = l_value;
RootAngle = l_current;
OnRootAngleChanged.Invoke(l_current);
}
@ -301,7 +301,7 @@ namespace ml_lme
case ModSetting.AngleZ:
{
Vector3 l_current = RootAngle;
l_current.z = int.Parse(p_value);
l_current.z = l_value;
RootAngle = l_current;
OnRootAngleChanged.Invoke(l_current);
}
@ -310,7 +310,7 @@ namespace ml_lme
case ModSetting.HeadX:
{
Vector3 l_current = HeadOffset;
l_current.x = int.Parse(p_value) * 0.01f;
l_current.x = l_value * 0.01f;
HeadOffset = l_current;
OnHeadOffsetChanged.Invoke(l_current);
}
@ -318,7 +318,7 @@ namespace ml_lme
case ModSetting.HeadY:
{
Vector3 l_current = HeadOffset;
l_current.y = int.Parse(p_value) * 0.01f;
l_current.y = l_value * 0.01f;
HeadOffset = l_current;
OnHeadOffsetChanged.Invoke(l_current);
}
@ -326,26 +326,26 @@ namespace ml_lme
case ModSetting.HeadZ:
{
Vector3 l_current = HeadOffset;
l_current.z = int.Parse(p_value) * 0.01f;
l_current.z = l_value * 0.01f;
HeadOffset = l_current;
OnHeadOffsetChanged.Invoke(l_current);
}
break;
case ModSetting.InteractThreadhold:
{
InteractThreadhold = int.Parse(p_value) * 0.01f;
InteractThreadhold = l_value * 0.01f;
OnInteractThreadholdChanged.Invoke(InteractThreadhold);
}
break;
case ModSetting.GripThreadhold:
{
GripThreadhold = int.Parse(p_value) * 0.01f;
GripThreadhold = l_value * 0.01f;
OnGripThreadholdChanged.Invoke(GripThreadhold);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -358,19 +358,19 @@ namespace ml_lme
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.Mode:
{
TrackingMode = (LeapTrackingMode)int.Parse(p_value);
TrackingMode = (LeapTrackingMode)l_value;
OnTrackingModeChanged.Invoke(TrackingMode);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -89,26 +89,26 @@ namespace ml_pam
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.Enabled:
{
Enabled = bool.Parse(p_value);
Enabled = l_value;
OnEnabledChanged.Invoke(Enabled);
}
break;
case ModSetting.HandsExtension:
{
HandsExtension = bool.Parse(p_value);
HandsExtension = l_value;
OnHandsExtensionChanged.Invoke(HandsExtension);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -121,19 +121,19 @@ namespace ml_pam
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.GrabOffset:
{
GrabOffset = int.Parse(p_value) * 0.01f;
GrabOffset = l_value * 0.01f;
OnGrabOffsetChanged.Invoke(GrabOffset);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -146,19 +146,19 @@ namespace ml_pam
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.LeadHand:
{
LeadingHand = (LeadHand)int.Parse(p_value);
LeadingHand = (LeadHand)l_value;
OnLeadingHandChanged.Invoke(LeadingHand);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -100,40 +100,40 @@ namespace ml_pin
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value, out bool l_value))
{
switch(l_setting)
{
case ModSetting.NotifyInPublic:
{
NotifyInPublic = bool.Parse(p_value);
NotifyInPublic = l_value;
OnNotifyInPublicChanged.Invoke(NotifyInPublic);
}
break;
case ModSetting.NotifyInFriends:
{
NotifyInFriends = bool.Parse(p_value);
NotifyInFriends = l_value;
OnNotifyInFriendsChanged.Invoke(NotifyInFriends);
}
break;
case ModSetting.NotifyInPrivate:
{
NotifyInPrivate = bool.Parse(p_value);
NotifyInPrivate = l_value;
OnNotifyInPrivateChanged.Invoke(NotifyInPrivate);
}
break;
case ModSetting.FriendsAlways:
{
FriendsAlways = bool.Parse(p_value);
FriendsAlways = l_value;
OnFriendsAlwaysChanged.Invoke(FriendsAlways);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -146,19 +146,19 @@ namespace ml_pin
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.Volume:
{
Volume = int.Parse(p_value) * 0.01f;
Volume = l_value * 0.01f;
OnVolumeChanged.Invoke(Volume);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -171,19 +171,19 @@ namespace ml_pin
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.NotifyType:
{
NotifyType = (NotificationType)int.Parse(p_value);
NotifyType = (NotificationType)l_value;
OnNotifyTypeChanged.Invoke(NotifyType);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)

View file

@ -100,7 +100,6 @@ namespace ml_pmc
}
break;
//
case ModSetting.MirrorPose:
{
MirrorPose = (bool)p_value;

View file

@ -129,9 +129,9 @@ namespace ml_prm
{
try
{
if(p_newValue is KeyCode)
if(p_newValue is KeyCode code)
{
HotkeyKey = (KeyCode)p_newValue;
HotkeyKey = code;
OnHotkeyKeyChanged.Invoke(HotkeyKey);
}
}

View file

@ -34,9 +34,9 @@ namespace ml_vei
static MelonLoader.MelonPreferences_Category ms_category = null;
static List<MelonLoader.MelonPreferences_Entry> ms_entries = null;
public static readonly SettingEvent<bool> OnGesturesChanged;
public static readonly SettingEvent<bool> OnGripTriggerChanged;
public static readonly SettingEvent<PriorityAxis> OnAxisPriorityChanged;
public static readonly SettingEvent<bool> OnGesturesChanged = new SettingEvent<bool>();
public static readonly SettingEvent<bool> OnGripTriggerChanged = new SettingEvent<bool>();
public static readonly SettingEvent<PriorityAxis> OnAxisPriorityChanged = new SettingEvent<PriorityAxis>();
internal static void Init()
{
@ -83,26 +83,26 @@ namespace ml_vei
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && bool.TryParse(p_value,out bool l_value))
{
switch(l_setting)
{
case ModSetting.Gestures:
{
Gestures = bool.Parse(p_value);
Gestures = l_value;
OnGesturesChanged.Invoke(Gestures);
}
break;
case ModSetting.GripTrigger:
{
GripTrigger = bool.Parse(p_value);
GripTrigger = l_value;
OnGripTriggerChanged.Invoke(GripTrigger);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)
@ -115,19 +115,19 @@ namespace ml_vei
{
try
{
if(Enum.TryParse(p_name, out ModSetting l_setting))
if(Enum.TryParse(p_name, out ModSetting l_setting) && int.TryParse(p_value, out int l_value))
{
switch(l_setting)
{
case ModSetting.AxisPriority:
{
AxisPriority = (PriorityAxis)int.Parse(p_value);
AxisPriority = (PriorityAxis)l_value;
OnAxisPriorityChanged.Invoke(AxisPriority);
}
break;
}
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
ms_entries[(int)l_setting].BoxedValue = l_value;
}
}
catch(Exception e)