static bool Prefix(AsPl_Sprint __instance) { if (OcPlVRM.modelMaster == null) { return(true); } var pl = __instance.GetRefField <OcActState_Pl, OcPl>("_Pl"); __instance.GetRefField <AsPl_Sprint, float>("_RunBlockCheckStartTimer") = 0f; __instance.GetRefField <AsPl_Sprint, float>("_SprintContinueTimer") = 0.2f; if (pl.isActPrev <OcPl.As>(OcPl.As.LandSprint)) { __instance.animPlayBase(OcAnimHash.Sprint, 0.25f); return(false); } if (pl.isActPrev <OcPl.As>(OcPl.As.RollF) || pl.isActPrev <OcPl.As>(OcPl.As.RollF_Sprint)) { __instance.animPlayBase(OcAnimHash.Sprint, 0.25f); return(false); } float normalizedTimeOffset = 0f; if (pl.isActPrev <OcPl.As>(OcPl.As.MovementStand)) { normalizedTimeOffset = (pl.getAct <OcPl.As>(OcPl.As.MovementStand) as AsPl_MovementStand).RunEndMotRate; } //__instance.animPlaySec(OcAnimHash.Sprint, normalizedTimeOffset, 0, 0.1f); pl.Animator.CrossFade(OcAnimHash.Sprint, 0.1f, 0, normalizedTimeOffset); OcPlVRM.modelMaster.GetComponentInChildren <Animator>().CrossFade(OcAnimHash.Sprint, 0.1f, 0, normalizedTimeOffset); return(false); }
static bool Prefix(AsPl_MovementStand __instance) { if (OcPlVRM.modelMaster == null) { return(true); } var pl = __instance.GetRefField <OcActState_Pl, OcPl>("_Pl"); if (pl.isActPrev <OcPl.As>(OcPl.As.Sprint)) { AsPl_Sprint asPl_Sprint = pl.getAct <OcPl.As>(OcPl.As.Sprint) as AsPl_Sprint; OcPlVRM.modelMaster.GetComponentInChildren <Animator>().CrossFade(OcAnimHash.MovementStand, 0.6f, 0, asPl_Sprint.SprintEndMotRate); } return(true); }