private static int Play(IntPtr L)
    {
        int result;

        try
        {
            int num = LuaDLL.lua_gettop(L);
            if (num == 2 && TypeChecker.CheckTypes(L, 1, typeof(DirectorPlayer), typeof(Playable)))
            {
                DirectorPlayer directorPlayer = (DirectorPlayer)ToLua.ToObject(L, 1);
                Playable       playable       = (Playable)ToLua.ToObject(L, 2);
                directorPlayer.Play(playable);
                result = 0;
            }
            else if (num == 3 && TypeChecker.CheckTypes(L, 1, typeof(DirectorPlayer), typeof(Playable), typeof(object)))
            {
                DirectorPlayer directorPlayer2 = (DirectorPlayer)ToLua.ToObject(L, 1);
                Playable       playable2       = (Playable)ToLua.ToObject(L, 2);
                object         obj             = ToLua.ToVarObject(L, 3);
                directorPlayer2.Play(playable2, obj);
                result = 0;
            }
            else
            {
                result = LuaDLL.luaL_throw(L, "invalid arguments to method: UnityEngine.Experimental.Director.DirectorPlayer.Play");
            }
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }
    private static int Stop(IntPtr L)
    {
        int result;

        try
        {
            ToLua.CheckArgsCount(L, 1);
            DirectorPlayer directorPlayer = (DirectorPlayer)ToLua.CheckObject(L, 1, typeof(DirectorPlayer));
            directorPlayer.Stop();
            result = 0;
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }
    private static int GetTimeUpdateMode(IntPtr L)
    {
        int result;

        try
        {
            ToLua.CheckArgsCount(L, 1);
            DirectorPlayer     directorPlayer = (DirectorPlayer)ToLua.CheckObject(L, 1, typeof(DirectorPlayer));
            DirectorUpdateMode timeUpdateMode = directorPlayer.GetTimeUpdateMode();
            ToLua.Push(L, timeUpdateMode);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }
    private static int SetTimeUpdateMode(IntPtr L)
    {
        int result;

        try
        {
            ToLua.CheckArgsCount(L, 2);
            DirectorPlayer     directorPlayer = (DirectorPlayer)ToLua.CheckObject(L, 1, typeof(DirectorPlayer));
            DirectorUpdateMode timeUpdateMode = (int)ToLua.CheckObject(L, 2, typeof(DirectorUpdateMode));
            directorPlayer.SetTimeUpdateMode(timeUpdateMode);
            result = 0;
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }
    private static int GetTime(IntPtr L)
    {
        int result;

        try
        {
            ToLua.CheckArgsCount(L, 1);
            DirectorPlayer directorPlayer = (DirectorPlayer)ToLua.CheckObject(L, 1, typeof(DirectorPlayer));
            double         time           = directorPlayer.GetTime();
            LuaDLL.lua_pushnumber(L, time);
            result = 1;
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }
    private static int _CreateUnityEngine_Experimental_Director_DirectorPlayer(IntPtr L)
    {
        int result;

        try
        {
            if (LuaDLL.lua_gettop(L) == 0)
            {
                DirectorPlayer obj = new DirectorPlayer();
                ToLua.Push(L, obj);
                result = 1;
            }
            else
            {
                result = LuaDLL.luaL_throw(L, "invalid arguments to ctor method: UnityEngine.Experimental.Director.DirectorPlayer.New");
            }
        }
        catch (Exception e)
        {
            result = LuaDLL.toluaL_exception(L, e, null);
        }
        return(result);
    }