Exemplo n.º 1
0
    static int LoadSpriteAsync(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 4)
            {
                BaseResLoader obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                int           arg0 = (int)LuaDLL.luaL_checknumber(L, 2);
                int           arg1 = (int)LuaDLL.luaL_checknumber(L, 3);
                BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer> arg2 = (BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer>)ToLua.CheckDelegate <BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer> >(L, 4);
                obj.LoadSpriteAsync(arg0, arg1, arg2);
                return(0);
            }
            else if (count == 5)
            {
                BaseResLoader obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                int           arg0 = (int)LuaDLL.luaL_checknumber(L, 2);
                int           arg1 = (int)LuaDLL.luaL_checknumber(L, 3);
                BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer> arg2 = (BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer>)ToLua.CheckDelegate <BaseResLoader.OnGetItem1 <UnityEngine.SpriteRenderer> >(L, 4);
                float arg3 = (float)LuaDLL.luaL_checknumber(L, 5);
                obj.LoadSpriteAsync(arg0, arg1, arg2, arg3);
                return(0);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: BaseResLoader.LoadSpriteAsync"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Exemplo n.º 2
0
        /*
         * public bool ClearLoader(int instanceId, BaseResLoader loader, LoaderGroupSubNodeType subType) {
         * if (m_SubNodeList == null || loader == null)
         * return false;
         * var node = m_SubNodeList.First;
         * while (node != null) {
         * var next = node.Next;
         * var n = node.Value;
         * if (n != null && n.IsVaild && n.target.GetInstanceID() == instanceId) {
         *  if (!IsLoadAllMustLoad(n.type, subType)) {
         *      m_SubNodeList.Remove(node);
         *      DestroySubNodeByPool(n);
         *      return true;
         *  }
         * }
         * node = next;
         * }
         * return false;
         * }
         */

        public bool LoadAll(int instanceId, BaseResLoader loader, LoaderGroupSubNodeType subType)
        {
            if (m_SubNodeList == null || loader == null)
            {
                return(false);
            }
            var node = m_SubNodeList.First;

            while (node != null)
            {
                var next = node.Next;
                var n    = node.Value;
                if (n != null && n.IsVaild && n.target.GetInstanceID() == instanceId)
                {
                    // 类型一样直接不加载
                    if (IsLoadAllMustLoad(n.type, subType))
                    {
                        DoLoad(loader, n);
                    }
                    m_SubNodeList.Remove(node);
                    DestroySubNodeByPool(n);
                    return(true);
                }
                node = next;
            }
            return(false);
        }
Exemplo n.º 3
0
    static int ClearTexture(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 2)
            {
                BaseResLoader       obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.Texture arg0 = (UnityEngine.Texture)ToLua.CheckObject <UnityEngine.Texture>(L, 2);
                obj.ClearTexture(ref arg0);
                ToLua.Push(L, arg0);
                return(1);
            }
            else if (count == 3)
            {
                BaseResLoader            obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.MeshRenderer arg0 = (UnityEngine.MeshRenderer)ToLua.CheckObject(L, 2, typeof(UnityEngine.MeshRenderer));
                string arg1 = ToLua.CheckString(L, 3);
                obj.ClearTexture(arg0, arg1);
                return(0);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: BaseResLoader.ClearTexture"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Exemplo n.º 4
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));
        }
    }
Exemplo n.º 5
0
        public void Load(BaseResLoader loader)
        {
            if (loader == null || m_SubNodeList == null)
            {
                return;
            }

            /*
             * if (loader != null)
             * loader.AddLoaderGroupAllRef();
             */
            var node = m_SubNodeList.First;

            while (node != null)
            {
                var next    = node.Next;
                var subNode = node.Value;
                if (subNode != null)
                {
                    DoLoad(loader, subNode);
                }
                m_SubNodeList.Remove(node);
                DestroySubNodeByPool(subNode);
                node = next;
            }

            /*
             * if (loader != null)
             * loader.DecLoaderGroupAllRef();
             */
        }
Exemplo n.º 6
0
 static int ClearAllResources(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         BaseResLoader obj = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         obj.ClearAllResources();
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 7
0
 static int DestroyGameObj(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.GameObject arg0 = (UnityEngine.GameObject)ToLua.CheckObject(L, 1, typeof(UnityEngine.GameObject));
         BaseResLoader.DestroyGameObj(arg0);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 8
0
 static int ClearAniController(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         BaseResLoader        obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.Animator arg0 = (UnityEngine.Animator)ToLua.CheckObject(L, 2, typeof(UnityEngine.Animator));
         obj.ClearAniController(arg0);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 9
0
 static int InstantiateGameObj(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         UnityEngine.GameObject arg0 = (UnityEngine.GameObject)ToLua.CheckObject(L, 1, typeof(UnityEngine.GameObject));
         UnityEngine.GameObject o    = BaseResLoader.InstantiateGameObj(arg0);
         ToLua.PushSealed(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 10
0
    public static void DestroyGameObj(GameObject obj)
    {
        if (obj == null)
        {
            return;
        }
        BaseResLoader loader = obj.GetComponent <BaseResLoader> ();

        if (loader != null)
        {
            loader.ClearAllResources();
        }

        GameObject.Destroy(obj);
    }
Exemplo n.º 11
0
 static int GetResList(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         BaseResLoader obj = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         System.Collections.Generic.List <UnityEngine.Object> o = obj.GetResList();
         ToLua.PushSealed(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 12
0
 static int CreateGameObject(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 1);
         string arg0 = ToLua.CheckString(L, 1);
         UnityEngine.GameObject o = BaseResLoader.CreateGameObject(arg0);
         ToLua.PushSealed(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 13
0
 static int ClearMainTexture(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         BaseResLoader            obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.MeshRenderer arg0 = (UnityEngine.MeshRenderer)ToLua.CheckObject(L, 2, typeof(UnityEngine.MeshRenderer));
         obj.ClearMainTexture(arg0);
         return(0);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 14
0
 static int ClearMaterail(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         BaseResLoader        obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.Material arg0 = (UnityEngine.Material)ToLua.CheckObject <UnityEngine.Material>(L, 2);
         obj.ClearMaterail(ref arg0);
         ToLua.Push(L, arg0);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 15
0
 static int ClearAnimationClip(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 2);
         BaseResLoader             obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.AnimationClip arg0 = (UnityEngine.AnimationClip)ToLua.CheckObject(L, 2, typeof(UnityEngine.AnimationClip));
         obj.ClearAnimationClip(ref arg0);
         ToLua.PushSealed(L, arg0);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 16
0
 static int LoadMainTexture(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         BaseResLoader            obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.MeshRenderer arg0 = (UnityEngine.MeshRenderer)ToLua.CheckObject(L, 2, typeof(UnityEngine.MeshRenderer));
         string arg1 = ToLua.CheckString(L, 3);
         bool   o    = obj.LoadMainTexture(arg0, arg1);
         LuaDLL.lua_pushboolean(L, o);
         return(1);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 17
0
 static int LoadAnimationClip(IntPtr L)
 {
     try
     {
         ToLua.CheckArgsCount(L, 3);
         BaseResLoader             obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
         UnityEngine.AnimationClip arg0 = (UnityEngine.AnimationClip)ToLua.CheckObject(L, 2, typeof(UnityEngine.AnimationClip));
         string arg1 = ToLua.CheckString(L, 3);
         bool   o    = obj.LoadAnimationClip(ref arg0, arg1);
         LuaDLL.lua_pushboolean(L, o);
         ToLua.PushSealed(L, arg0);
         return(2);
     }
     catch (Exception e)
     {
         return(LuaDLL.toluaL_exception(L, e));
     }
 }
Exemplo n.º 18
0
    static int LoadMaterial(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 3 && TypeChecker.CheckTypes <UnityEngine.Material, string>(L, 2))
            {
                BaseResLoader        obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.Material arg0 = (UnityEngine.Material)ToLua.ToObject(L, 2);
                string arg1 = ToLua.ToString(L, 3);
                bool   o    = obj.LoadMaterial(ref arg0, arg1);
                LuaDLL.lua_pushboolean(L, o);
                ToLua.Push(L, arg0);
                return(2);
            }
            else if (count == 3 && TypeChecker.CheckTypes <UnityEngine.SpriteRenderer, string>(L, 2))
            {
                BaseResLoader obj = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.SpriteRenderer arg0 = (UnityEngine.SpriteRenderer)ToLua.ToObject(L, 2);
                string arg1 = ToLua.ToString(L, 3);
                bool   o    = obj.LoadMaterial(arg0, arg1);
                LuaDLL.lua_pushboolean(L, o);
                return(1);
            }
            else if (count == 3 && TypeChecker.CheckTypes <UnityEngine.MeshRenderer, string>(L, 2))
            {
                BaseResLoader            obj  = (BaseResLoader)ToLua.CheckObject <BaseResLoader>(L, 1);
                UnityEngine.MeshRenderer arg0 = (UnityEngine.MeshRenderer)ToLua.ToObject(L, 2);
                string arg1 = ToLua.ToString(L, 3);
                bool   o    = obj.LoadMaterial(arg0, arg1);
                LuaDLL.lua_pushboolean(L, o);
                return(1);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: BaseResLoader.LoadMaterial"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Exemplo n.º 19
0
    protected override void  Awake()
    {
        base.Awake();

        m_Loader = gameObject.AddComponent <BaseResLoader> ();

        m_ClsnSpritePoolRoot = new GameObject("Pool_SpriteClsn");
        m_ClsnSpritePoolRoot.transform.SetParent(this.transform, false);
        m_ClsnSpritePoolRoot.SetActive(false);

        m_ClsnColliderPoolRoot = new GameObject("Pool_ColliderClsn");
        m_ClsnColliderPoolRoot.transform.SetParent(this.transform, false);
        m_ClsnColliderPoolRoot.SetActive(false);

        m_FlyPoolRoot = new GameObject("Fly_Pool");
        m_FlyPoolRoot.transform.SetParent(this.transform, false);
        m_FlyPoolRoot.SetActive(false);

        RegisterDefaultStates();
        RegisterStateMgrListener();
    }
Exemplo n.º 20
0
        public void Load(BaseResLoader loader)
        {
            if (loader == null || m_SubNodeList == null)
            {
                return;
            }
            loader.IsCheckLoaderGroup = false;
            var node = m_SubNodeList.First;

            while (node != null)
            {
                var next    = node.Next;
                var subNode = node.Value;
                if (subNode != null)
                {
                    DoLoad(loader, subNode);
                }
                m_SubNodeList.Remove(node);
                DestroySubNodeByPool(subNode);
                node = next;
            }
            loader.IsCheckLoaderGroup = true;
        }
Exemplo n.º 21
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;
            }
        }
Exemplo n.º 22
0
        protected bool DoNGUILoad(BaseResLoader loader, LoaderGroupSubNode node)
        {
            if (loader == null || node == null || !node.IsVaild)
            {
                return(false);
            }

            string fileName = this.FileName;

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

            var nguiLoader = loader as NGUIResLoader;

            if (nguiLoader == null)
            {
                return(false);
            }

            bool ret = true;
            LoaderGroupSubNodeType type = node.type;

            switch (type)
            {
            case LoaderGroupSubNodeType.UITexture_MainTexture:
                var t1 = node.uiTexture;
                if (t1 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMainTexture(t1, fileName);
                break;

            case LoaderGroupSubNodeType.UITexture_Material:
                var t2 = node.uiTexture;
                if (t2 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMaterial(t2, fileName);
                break;

            case LoaderGroupSubNodeType.UITexture_Texture:
                var t3 = node.uiTexture;
                if (t3 == null)
                {
                    return(true);
                }
                string matName = node.Param as string;
                if (string.IsNullOrEmpty(matName))
                {
                    return(true);
                }
                nguiLoader.LoadTexture(t3, fileName, matName);
                break;

            case LoaderGroupSubNodeType.UISprite_Atals:
                var sp1 = node.uiSprite;
                if (sp1 == null)
                {
                    return(true);
                }
                if (nguiLoader.LoadAltas(sp1, fileName))
                {
                    /*
                     * string spriteName = this.Param as string;
                     * if (!string.IsNullOrEmpty(spriteName))
                     *  sp1.spriteName = spriteName;
                     */
                    // 判断是否有SpriteAnimation
                    RefreshSpriteAnimiate(sp1);
                }
                break;

            case LoaderGroupSubNodeType.UISprite_Material:
                var sp2 = node.uiSprite;
                if (sp2 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMaterial(sp2, fileName);
                break;

            case LoaderGroupSubNodeType.UISprite_MainTexture:
                var sp3 = node.uiSprite;
                if (sp3 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMainTexture(sp3, fileName);
                break;

            case LoaderGroupSubNodeType.UI2DSprite_MainTexture:
                var sp4 = node.ui2DSprite;
                if (sp4 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMainTexture(sp4, fileName);
                break;

            case LoaderGroupSubNodeType.UI2DSprite_SpriteData:
                var sp5 = node.ui2DSprite;
                if (sp5 == null)
                {
                    return(true);
                }
                string spName1 = node.Param as string;
                if (!string.IsNullOrEmpty(spName1))
                {
                    nguiLoader.LoadSprite(sp5, fileName, spName1);
                }
                break;

            case LoaderGroupSubNodeType.UI2DSprite_Material:
                var sp6 = node.ui2DSprite;
                if (sp6 == null)
                {
                    return(true);
                }
                nguiLoader.LoadMaterial(sp6, fileName);
                break;

            default:
                ret = false;
                break;
            }
            return(ret);
        }