[FuckToes] i guess bring this back

This commit is contained in:
NotAKidoS 2025-04-12 16:38:19 -05:00
parent c4ab9cce47
commit 6e37bcbabb
5 changed files with 22 additions and 20 deletions

View file

@ -3,23 +3,22 @@ using ABI_RC.Systems.IK;
using MelonLoader; using MelonLoader;
using RootMotion.FinalIK; using RootMotion.FinalIK;
using System.Reflection; using System.Reflection;
using ABI_RC.Core;
namespace NAK.FuckToes; namespace NAK.FuckToes;
public class FuckToesMod : MelonMod public class FuckToesMod : MelonMod
{ {
private static MelonLogger.Instance Logger;
#region Melon Preferences #region Melon Preferences
private static readonly MelonPreferences_Category Category = private static readonly MelonPreferences_Category Category =
MelonPreferences.CreateCategory(nameof(FuckToesMod)); MelonPreferences.CreateCategory(nameof(FuckToes));
private static readonly MelonPreferences_Entry<bool> EntryEnabledVR = private static readonly MelonPreferences_Entry<bool> EntryEnabledVR =
Category.CreateEntry("Enabled in HalfBody", true, description: "Nuke VRIK toes when in Halfbody."); Category.CreateEntry("use_in_halfbody", true, display_name:"No Toes in Halfbody", description: "Nuke VRIK toes when in Halfbody.");
private static readonly MelonPreferences_Entry<bool> EntryEnabledFBT = private static readonly MelonPreferences_Entry<bool> EntryEnabledFBT =
Category.CreateEntry("Enabled in FBT", true, description: "Nuke VRIK toes when in FBT."); Category.CreateEntry("use_in_fbt", true, display_name:"No Toes in Fullbody", description: "Nuke VRIK toes when in FBT.");
#endregion Melon Preferences #endregion Melon Preferences
@ -27,10 +26,10 @@ public class FuckToesMod : MelonMod
public override void OnInitializeMelon() public override void OnInitializeMelon()
{ {
Logger = LoggerInstance;
HarmonyInstance.Patch( HarmonyInstance.Patch(
typeof(VRIK).GetMethod(nameof(VRIK.AutoDetectReferences)), typeof(VRIK).GetMethod(nameof(VRIK.AutoDetectReferences)),
prefix: new HarmonyLib.HarmonyMethod(typeof(FuckToesMod).GetMethod(nameof(OnVRIKAutoDetectReferences_Prefix), BindingFlags.NonPublic | BindingFlags.Static)) prefix: new HarmonyLib.HarmonyMethod(typeof(FuckToesMod).GetMethod(nameof(OnVRIKAutoDetectReferences_Prefix),
BindingFlags.NonPublic | BindingFlags.Static))
); );
} }
@ -43,13 +42,12 @@ public class FuckToesMod : MelonMod
try try
{ {
// Must be PlayerLocal layer and in VR // Must be PlayerLocal layer and in VR
if (__instance.gameObject.layer != 8 if (__instance.gameObject.layer != CVRLayers.PlayerLocal
|| !MetaPort.Instance.isUsingVr) || !MetaPort.Instance.isUsingVr)
return; return;
switch (IKSystem.Instance.BodySystem.FullBodyActive) switch (IKSystem.Instance.BodySystem.FullBodyActive)
{ {
case false when !EntryEnabledVR.Value: // Not in FBT, and not enabled, perish case false when !EntryEnabledVR.Value: // Not in FBT, and not enabled, perish
case true when !EntryEnabledFBT.Value: // In FBT, and not enabled in fbt, perish case true when !EntryEnabledFBT.Value: // In FBT, and not enabled in fbt, perish
return; return;
@ -61,8 +59,8 @@ public class FuckToesMod : MelonMod
} }
catch (Exception e) catch (Exception e)
{ {
Logger.Error($"Error during the patched method {nameof(OnVRIKAutoDetectReferences_Prefix)}"); MelonLogger.Error($"Error during the patched method {nameof(OnVRIKAutoDetectReferences_Prefix)}");
Logger.Error(e); MelonLogger.Error(e);
} }
} }

View file

@ -27,6 +27,6 @@ using System.Reflection;
namespace NAK.FuckToes.Properties; namespace NAK.FuckToes.Properties;
internal static class AssemblyInfoParams internal static class AssemblyInfoParams
{ {
public const string Version = "1.0.3"; public const string Version = "1.0.4";
public const string Author = "NotAKidoS"; public const string Author = "NotAKidoS";
} }

View file

@ -1,7 +1,6 @@
# FuckToes # FuckToes
Prevents VRIK from autodetecting toes in HalfbodyIK.
Optionally can be applied in FBT, but toes in FBT are nice so you are a monster if so. Prevents VRIK from autodetecting toes in Halfbody or Fullbody.
![fuckthetoes](https://user-images.githubusercontent.com/37721153/216518012-ae3b1dde-17ea-419a-a875-48d57e13f3dd.png) ![fuckthetoes](https://user-images.githubusercontent.com/37721153/216518012-ae3b1dde-17ea-419a-a875-48d57e13f3dd.png)
@ -14,5 +13,4 @@ https://documentation.abinteractive.net/official/legal/tos/#7-modding-our-games
> Use of this mod is done so at the user's own risk and the creator cannot be held responsible for any issues arising from its use. > Use of this mod is done so at the user's own risk and the creator cannot be held responsible for any issues arising from its use.
> To the best of my knowledge, I have adhered to the Modding Guidelines established by Alpha Blend Interactive. > To the best of my knowledge, I have adhered to the Modding Guidelines established by Alpha Blend Interactive.

View file

@ -1,8 +1,8 @@
{ {
"_id": 129, "_id": 129,
"name": "FuckToes", "name": "FuckToes",
"modversion": "1.0.3", "modversion": "1.0.4",
"gameversion": "2023r171", "gameversion": "2025r179",
"loaderversion": "0.6.1", "loaderversion": "0.6.1",
"modtype": "Mod", "modtype": "Mod",
"author": "NotAKidoS", "author": "NotAKidoS",
@ -16,8 +16,8 @@
"requirements": [ "requirements": [
"None" "None"
], ],
"downloadlink": "https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r14/FuckToes.dll", "downloadlink": "https://github.com/NotAKidoS/NAK_CVR_Mods/releases/download/r46/FuckToes.dll",
"sourcelink": "https://github.com/NotAKidoS/NAK_CVR_Mods/tree/main/FuckToes/", "sourcelink": "https://github.com/NotAKidoS/NAK_CVR_Mods/tree/main/FuckToes/",
"changelog": "- Fixes for 2023r171.", "changelog": "- Recompiled for 2025r179",
"embedcolor": "#f61963" "embedcolor": "#f61963"
} }

View file

@ -58,6 +58,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "YouAreMyPropNowWeAreHavingS
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DoubleTapJumpToExitSeat", "DoubleTapJumpToExitSeat\DoubleTapJumpToExitSeat.csproj", "{36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DoubleTapJumpToExitSeat", "DoubleTapJumpToExitSeat\DoubleTapJumpToExitSeat.csproj", "{36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}"
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FuckToes", "FuckToes\FuckToes.csproj", "{751E4140-2F4D-4550-A4A9-65ABA9F7893A}"
EndProject
EndProject EndProject
EndProject EndProject
EndProject EndProject
@ -301,6 +303,10 @@ Global
{36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Debug|Any CPU.Build.0 = Debug|Any CPU {36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Release|Any CPU.ActiveCfg = Release|Any CPU {36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Release|Any CPU.Build.0 = Release|Any CPU {36BF2B8B-F444-4886-AA4C-0EDF7540F1CE}.Release|Any CPU.Build.0 = Release|Any CPU
{751E4140-2F4D-4550-A4A9-65ABA9F7893A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{751E4140-2F4D-4550-A4A9-65ABA9F7893A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{751E4140-2F4D-4550-A4A9-65ABA9F7893A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{751E4140-2F4D-4550-A4A9-65ABA9F7893A}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection EndGlobalSection
GlobalSection(SolutionProperties) = preSolution GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE HideSolutionNode = FALSE