Пример #1
0
        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);
        }
Пример #2
0
        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);
        }