public static AnimPositionResetter OnAnimStarted(GameObject go, float animTime)
    {
        if (animTime <= 0f)
        {
            return(null);
        }
        AnimPositionResetter resetter = RegisterResetter(go);

        resetter.OnAnimStarted(animTime);
        return(resetter);
    }
    private static AnimPositionResetter RegisterResetter(GameObject go)
    {
        if (go == null)
        {
            return(null);
        }
        AnimPositionResetter component = go.GetComponent <AnimPositionResetter>();

        if (component != null)
        {
            return(component);
        }
        return(go.AddComponent <AnimPositionResetter>());
    }