示例#1
0
 private void register_common_libs()
 {
     LuaThread.LoadLibs(_luaState);
     LuaSystemLib.Load(_luaState); // <-- @todo この書式に統一したい
     LuaGameObject.RegisterClass(_luaState);
     LuaComponentBehaviour.RegisterClass(_luaState);
     LuaComponentTransform.RegisterClass(_luaState);
     LuaComponentRectTransform.RegisterClass(_luaState);
     LuaComponentUI.RegisterClass(_luaState);
     LuaMathf.LoadLibs(_luaState);
     LuaUtilLib.Load(_luaState);
 }
示例#2
0
        // @class Resources
        // @desc GameObjectをロードします
        // @decl GameObject load_game_object(prefabname)
        // @param prefabname プレハブのパス
        // @return GameObject
        // @note これで取得した GameObject は transform 等を編集することは出来ません。
        // @note また GameObject.is_prefab が真になっています。
        // @sample local g = Resources.load_game_object("HOGE")
        // @sample print(g.is_prefab) -- <-- true
        // @sample local newg = GameObject.instantiate(g)
        // @sample print(newg.is_prefab) -- <-- false
        // @see GameObject.instantiate
        private static int L_load_game_object(ILuaState lua)
        {
            lua.L_CheckType(1, LuaType.LUA_TSTRING);
            GameObject obj = Resources.Load <GameObject>(lua.ToString(1));

            if (obj == null)
            {
                lua.PushNil();
            }
            else
            {
                LuaGameObject.PushNewAsPrefab(lua, obj);
            }
            return(1);
        }
        // @desc Transform.Find()
        // @decl GameObject find(self, name)
        // @param name 名前 or パス
        // @result 見つかったGameObject
        private static int L_find(ILuaState lua)
        {
            check_identifier(lua, 1, klassName);
            Transform trs   = get_internal <Transform>(lua, 1);
            Transform child = trs.Find(lua.ToString(2));

            if (child != null)
            {
                LuaGameObject.PushNew(lua, child.gameObject);
            }
            else
            {
                lua.PushNil();
            }
            return(1);
        }