Example #1
0
    static int LoadSprite(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 3)
            {
                BaseResLoader obj = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.SpriteRenderer arg0 = (UnityEngine.SpriteRenderer)ToLua.CheckObject(L, 2, typeof(UnityEngine.SpriteRenderer));
                string arg1 = ToLua.CheckString(L, 3);
                bool   o    = obj.LoadSprite(arg0, arg1);
                LuaDLL.lua_pushboolean(L, o);
                return(1);
            }
            else if (count == 4)
            {
                BaseResLoader obj = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.SpriteRenderer arg0 = (UnityEngine.SpriteRenderer)ToLua.CheckObject(L, 2, typeof(UnityEngine.SpriteRenderer));
                string arg1 = ToLua.CheckString(L, 3);
                string arg2 = ToLua.CheckString(L, 4);
                bool   o    = obj.LoadSprite(arg0, arg1, arg2);
                LuaDLL.lua_pushboolean(L, o);
                return(1);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: BaseResLoader.LoadSprite"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Example #2
0
        // 加载
        protected virtual void DoLoad(BaseResLoader loader, LoaderGroupSubNode node)
        {
            if (DoNGUILoad(loader, node))
            {
                return;
            }

            if (loader == null || node == null || !node.IsVaild)
            {
                return;
            }
            string fileName = this.FileName;

            if (string.IsNullOrEmpty(fileName))
            {
                return;
            }

            switch (node.type)
            {
            case LoaderGroupSubNodeType.SpriteRenderer_Material:
                var sp1 = node.spriteRenderer;
                if (sp1 == null)
                {
                    return;
                }
                loader.LoadMaterial(sp1, fileName);
                break;

            case LoaderGroupSubNodeType.SpriteRenderer_SpriteData:
                var sp2 = node.spriteRenderer;
                if (sp2 == null)
                {
                    return;
                }
                string spriteName = node.Param as string;
                if (string.IsNullOrEmpty(spriteName))
                {
                    loader.LoadSprite(sp2, fileName);
                }
                else
                {
                    loader.LoadSprite(sp2, fileName, spriteName);
                }
                break;

            case LoaderGroupSubNodeType.MeshRenderer_Material:
                var mr1 = node.meshRenderer;
                if (mr1 == null)
                {
                    return;
                }
                loader.LoadMaterial(mr1, fileName);
                break;

            case LoaderGroupSubNodeType.MeshRenderer_MainTexture:
                var mr2 = node.meshRenderer;
                if (mr2 == null)
                {
                    return;
                }
                loader.LoadMainTexture(mr2, fileName);
                break;

            case LoaderGroupSubNodeType.MeshRenderer_Texture:
                var mr3 = node.meshRenderer;
                if (mr3 == null)
                {
                    return;
                }
                string matName = node.Param as string;
                if (!string.IsNullOrEmpty(matName))
                {
                    loader.LoadTexture(mr3, fileName, matName);
                }
                break;

            case LoaderGroupSubNodeType.TextMesh_Font:
                var tM1 = node.textMesh;
                if (tM1 == null)
                {
                    return;
                }
                loader.LoadFont(tM1, fileName);
                break;
            }
        }