static int QPYX_GetComponents_YXQP(IntPtr L_YXQP) { try { int QPYX_count_YXQP = LuaDLL.lua_gettop(L_YXQP); if (QPYX_count_YXQP == 2 && TypeChecker.CheckTypes <System.Type>(L_YXQP, 2)) { UnityEngine.GameObject QPYX_arg0_YXQP = (UnityEngine.GameObject)ToLua.CheckObject(L_YXQP, 1, typeof(UnityEngine.GameObject)); System.Type QPYX_arg1_YXQP = (System.Type)ToLua.ToObject(L_YXQP, 2); UnityEngine.Component[] QPYX_o_YXQP = ComponentUtil.GetComponents(QPYX_arg0_YXQP, QPYX_arg1_YXQP); ToLua.Push(L_YXQP, QPYX_o_YXQP); return(1); } else if (QPYX_count_YXQP == 2 && TypeChecker.CheckTypes <string>(L_YXQP, 2)) { UnityEngine.GameObject QPYX_arg0_YXQP = (UnityEngine.GameObject)ToLua.CheckObject(L_YXQP, 1, typeof(UnityEngine.GameObject)); string QPYX_arg1_YXQP = ToLua.ToString(L_YXQP, 2); UnityEngine.Component[] QPYX_o_YXQP = ComponentUtil.GetComponents(QPYX_arg0_YXQP, QPYX_arg1_YXQP); ToLua.Push(L_YXQP, QPYX_o_YXQP); return(1); } else { return(LuaDLL.luaL_throw(L_YXQP, "invalid arguments to method: ComponentUtil.GetComponents")); } } catch (Exception e_YXQP) { return(LuaDLL.toluaL_exception(L_YXQP, e_YXQP)); } }
static int GetComponents(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 2 && TypeChecker.CheckTypes <System.Type>(L, 2)) { UnityEngine.GameObject arg0 = (UnityEngine.GameObject)ToLua.CheckObject(L, 1, typeof(UnityEngine.GameObject)); System.Type arg1 = (System.Type)ToLua.ToObject(L, 2); UnityEngine.Component[] o = ComponentUtil.GetComponents(arg0, arg1); ToLua.Push(L, o); return(1); } else if (count == 2 && TypeChecker.CheckTypes <string>(L, 2)) { UnityEngine.GameObject arg0 = (UnityEngine.GameObject)ToLua.CheckObject(L, 1, typeof(UnityEngine.GameObject)); string arg1 = ToLua.ToString(L, 2); UnityEngine.Component[] o = ComponentUtil.GetComponents(arg0, arg1); ToLua.Push(L, o); return(1); } else { return(LuaDLL.luaL_throw(L, "invalid arguments to method: ComponentUtil.GetComponents")); } } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
public static void GetComponentsOnTarg(GameObject container, ICollection <T> coll, bool includeComponentsOnContainer) { if (includeComponentsOnContainer) { ComponentUtil.GetComponents <T>(container, coll); } for (int i = 0; i < container.transform.childCount; i++) { ComponentUtil.GetComponents <T>(container.transform.GetChild(i), coll); } }
public static TSub[] GetComponentsOnTarg <TSub>(GameObject container, bool includeComponentsOnContainer) where TSub : class, T { using (var set = com.spacepuppy.Collections.TempCollection.GetSet <TSub>()) { if (includeComponentsOnContainer) { ComponentUtil.GetComponents <TSub>(container, set); } for (int i = 0; i < container.transform.childCount; i++) { ComponentUtil.GetComponents <TSub>(container.transform.GetChild(i), set); } return(set.ToArray()); } }
public static T[] GetComponentsOnTarg(System.Type tp, GameObject container, bool includeComponentsOnContainer) { if (!TypeUtil.IsType(tp, typeof(T))) { throw new TypeArgumentMismatchException(tp, typeof(T), "tp"); } using (var set = com.spacepuppy.Collections.TempCollection.GetSet <T>()) { System.Func <Component, T> filter = (c) => { if (object.ReferenceEquals(c, null)) { return(null); } if (tp.IsAssignableFrom(c.GetType())) { return(c as T); } else { return(null); } }; if (includeComponentsOnContainer) { ComponentUtil.GetComponents <T>(container, set, filter); } for (int i = 0; i < container.transform.childCount; i++) { ComponentUtil.GetComponents <T>(container.transform.GetChild(i), set, filter); } return(set.ToArray()); } }
static void SpriteRendererChangeToUISprite() { //var assetPath = AssetDatabase.GetAssetPath(Selection.activeGameObject); //var prefab = AssetDatabase.LoadAssetAtPath(assetPath, typeof(GameObject)) as GameObject; var prefab = Selection.activeGameObject; if (prefab == null) { Debug.LogError("GameObject is null"); return; } Debug.Log(string.Format("Doing... [{0}]", prefab)); var renderers = ComponentUtil.GetComponents <Renderer>(prefab); foreach (var renderer in renderers) { var r = renderer as SpriteRenderer; if (r != null) { var go = r.gameObject; try { DestroyImmediate(r, true); if (null == go.GetComponent <UISprite>()) { go.AddComponent <UISprite>(); } } catch (Exception ex) { Debug.LogError(ex.Message); } } } Debug.Log("Done..."); }
public static void ReplaceShadersOfParticleMaterialsToMobileVersion() { var searchPath = Path.Combine(Application.dataPath, "Particles"); var dirs = Directory.GetDirectories(searchPath); var materialsNeedToProcess = new List <Material>(); // Find all of materials which referenced by renderer. foreach (var dir in dirs) { var files = Directory.GetFiles(dir, "*.prefab"); foreach (var file in files) { var fileInfo = new FileInfo(file); var assetPath = Path.Combine(fileInfo.DirectoryName, Path.GetFileName(file)); assetPath = assetPath.Substring(Application.dataPath.Length - 6); var prefab = AssetDatabase.LoadAssetAtPath(assetPath, typeof(GameObject)) as GameObject; if (prefab == null) { continue; } var renderers = ComponentUtil.GetComponents <Renderer>(prefab); if (renderers == null) { continue; } foreach (var renderer in renderers) { if (renderer == null) { continue; } if (renderer.sharedMaterials == null || renderer.sharedMaterials.Length == 0) { continue; } foreach (var material in renderer.sharedMaterials) { materialsNeedToProcess.Add(material); } } } } if (materialsNeedToProcess.Count == 0) { return; } var count = 0; foreach (var material in materialsNeedToProcess) { if (EditorUtility.DisplayCancelableProgressBar( "Replace Shaders of Particle Materials to Mobile Version...", string.Format("Proessing \"{0}\"", material.name), (float)count / materialsNeedToProcess.Count)) { break; } if (ReplaceShaderIfNeeded(material)) { EditorUtility.SetDirty(material); } ++count; } EditorUtility.ClearProgressBar(); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); }