mirror of
https://github.com/hanetzer/sdraw_mods_cvr.git
synced 2025-09-03 10:29:22 +00:00
Pose detection and animator transitions for regular avatars
This commit is contained in:
parent
0cab0fb7db
commit
6b67471217
7 changed files with 152 additions and 38 deletions
|
@ -10,17 +10,23 @@ namespace ml_amt
|
|||
enum ModSetting
|
||||
{
|
||||
IKOverride = 0,
|
||||
CrouchLimit
|
||||
CrouchLimit,
|
||||
DetectPose,
|
||||
ProneLimit
|
||||
};
|
||||
|
||||
static bool ms_ikOverride = true;
|
||||
static float ms_crouchLimit = 0.65f;
|
||||
static bool ms_detectPose = true;
|
||||
static float ms_proneLimit = 0.3f;
|
||||
|
||||
static MelonLoader.MelonPreferences_Category ms_category = null;
|
||||
static List<MelonLoader.MelonPreferences_Entry> ms_entries = null;
|
||||
|
||||
static public event Action<bool> IKOverrideChange;
|
||||
static public event Action<float> CrouchLimitChange;
|
||||
static public event Action<bool> DetectPoseChange;
|
||||
static public event Action<float> ProneLimitChange;
|
||||
|
||||
public static void Init()
|
||||
{
|
||||
|
@ -29,6 +35,8 @@ namespace ml_amt
|
|||
ms_entries = new List<MelonLoader.MelonPreferences_Entry>();
|
||||
ms_entries.Add(ms_category.CreateEntry(ModSetting.IKOverride.ToString(), true));
|
||||
ms_entries.Add(ms_category.CreateEntry(ModSetting.CrouchLimit.ToString(), 65));
|
||||
ms_entries.Add(ms_category.CreateEntry(ModSetting.DetectPose.ToString(), true));
|
||||
ms_entries.Add(ms_category.CreateEntry(ModSetting.ProneLimit.ToString(), 30));
|
||||
|
||||
Load();
|
||||
|
||||
|
@ -61,6 +69,8 @@ namespace ml_amt
|
|||
{
|
||||
ms_ikOverride = (bool)ms_entries[(int)ModSetting.IKOverride].BoxedValue;
|
||||
ms_crouchLimit = ((int)ms_entries[(int)ModSetting.CrouchLimit].BoxedValue) * 0.01f;
|
||||
ms_detectPose = (bool)ms_entries[(int)ModSetting.DetectPose].BoxedValue;
|
||||
ms_proneLimit = ((int)ms_entries[(int)ModSetting.ProneLimit].BoxedValue) * 0.01f;
|
||||
}
|
||||
|
||||
static void OnSliderUpdate(string p_name, string p_value)
|
||||
|
@ -73,8 +83,13 @@ namespace ml_amt
|
|||
{
|
||||
ms_crouchLimit = int.Parse(p_value) * 0.01f;
|
||||
CrouchLimitChange?.Invoke(ms_crouchLimit);
|
||||
}
|
||||
break;
|
||||
} break;
|
||||
|
||||
case ModSetting.ProneLimit:
|
||||
{
|
||||
ms_proneLimit = int.Parse(p_value) * 0.01f;
|
||||
ProneLimitChange?.Invoke(ms_proneLimit);
|
||||
} break;
|
||||
}
|
||||
|
||||
ms_entries[(int)l_setting].BoxedValue = int.Parse(p_value);
|
||||
|
@ -91,8 +106,13 @@ namespace ml_amt
|
|||
{
|
||||
ms_ikOverride = bool.Parse(p_value);
|
||||
IKOverrideChange?.Invoke(ms_ikOverride);
|
||||
}
|
||||
break;
|
||||
} break;
|
||||
|
||||
case ModSetting.DetectPose:
|
||||
{
|
||||
ms_detectPose = bool.Parse(p_value);
|
||||
DetectPoseChange?.Invoke(ms_detectPose);
|
||||
} break;
|
||||
}
|
||||
|
||||
ms_entries[(int)l_setting].BoxedValue = bool.Parse(p_value);
|
||||
|
@ -108,5 +128,15 @@ namespace ml_amt
|
|||
{
|
||||
get => ms_ikOverride;
|
||||
}
|
||||
|
||||
public static bool DetectPose
|
||||
{
|
||||
get => ms_detectPose;
|
||||
}
|
||||
|
||||
public static float ProneLimit
|
||||
{
|
||||
get => ms_proneLimit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue