// NGUI 하단에 붙이기 public static void NUI_MoveBottom(Camera cam, Transform mat, float height) { float uiscale = cam.transform.root.localScale.y; Vector3[] poss = NGUITools.GetWorldCorners(cam); mat.position = new Vector3(mat.position.x, poss[0].y + height * 0.5f * uiscale, mat.position.z); }
static public int GetWorldCorners_s(IntPtr l) { try { int argc = LuaDLL.lua_gettop(l); if (argc == 1) { UnityEngine.Camera a1; checkType(l, 1, out a1); var ret = NGUITools.GetWorldCorners(a1); pushValue(l, true); pushValue(l, ret); return(2); } else if (matchType(l, argc, 1, typeof(UnityEngine.Camera), typeof(UnityEngine.Transform))) { UnityEngine.Camera a1; checkType(l, 1, out a1); UnityEngine.Transform a2; checkType(l, 2, out a2); var ret = NGUITools.GetWorldCorners(a1, a2); pushValue(l, true); pushValue(l, ret); return(2); } else if (matchType(l, argc, 1, typeof(UnityEngine.Camera), typeof(float))) { UnityEngine.Camera a1; checkType(l, 1, out a1); System.Single a2; checkType(l, 2, out a2); var ret = NGUITools.GetWorldCorners(a1, a2); pushValue(l, true); pushValue(l, ret); return(2); } else if (argc == 3) { UnityEngine.Camera a1; checkType(l, 1, out a1); System.Single a2; checkType(l, 2, out a2); UnityEngine.Transform a3; checkType(l, 3, out a3); var ret = NGUITools.GetWorldCorners(a1, a2, a3); pushValue(l, true); pushValue(l, ret); return(2); } pushValue(l, false); LuaDLL.lua_pushstring(l, "No matched override function to call"); return(2); } catch (Exception e) { return(error(l, e)); } }
static int GetWorldCorners(IntPtr L) { try { int count = LuaDLL.lua_gettop(L); if (count == 1 && TypeChecker.CheckTypes(L, 1, typeof(UnityEngine.Camera))) { UnityEngine.Camera arg0 = (UnityEngine.Camera)ToLua.ToObject(L, 1); UnityEngine.Vector3[] o = NGUITools.GetWorldCorners(arg0); ToLua.Push(L, o); return(1); } else if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(UnityEngine.Camera), typeof(UnityEngine.Transform))) { UnityEngine.Camera arg0 = (UnityEngine.Camera)ToLua.ToObject(L, 1); UnityEngine.Transform arg1 = (UnityEngine.Transform)ToLua.ToObject(L, 2); UnityEngine.Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1); ToLua.Push(L, o); return(1); } else if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(UnityEngine.Camera), typeof(float))) { UnityEngine.Camera arg0 = (UnityEngine.Camera)ToLua.ToObject(L, 1); float arg1 = (float)LuaDLL.lua_tonumber(L, 2); UnityEngine.Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1); ToLua.Push(L, o); return(1); } else if (count == 3 && TypeChecker.CheckTypes(L, 1, typeof(UnityEngine.Camera), typeof(float), typeof(UnityEngine.Transform))) { UnityEngine.Camera arg0 = (UnityEngine.Camera)ToLua.ToObject(L, 1); float arg1 = (float)LuaDLL.lua_tonumber(L, 2); UnityEngine.Transform arg2 = (UnityEngine.Transform)ToLua.ToObject(L, 3); UnityEngine.Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1, arg2); ToLua.Push(L, o); return(1); } else { return(LuaDLL.luaL_throw(L, "invalid arguments to method: NGUITools.GetWorldCorners")); } } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }
static int GetWorldCorners(IntPtr L) { int count = LuaDLL.lua_gettop(L); if (count == 1) { Camera arg0 = (Camera)LuaScriptMgr.GetUnityObject(L, 1, typeof(Camera)); Vector3[] o = NGUITools.GetWorldCorners(arg0); LuaScriptMgr.PushArray(L, o); return(1); } else if (count == 2 && LuaScriptMgr.CheckTypes(L, 1, typeof(Camera), typeof(Transform))) { Camera arg0 = (Camera)LuaScriptMgr.GetLuaObject(L, 1); Transform arg1 = (Transform)LuaScriptMgr.GetLuaObject(L, 2); Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1); LuaScriptMgr.PushArray(L, o); return(1); } else if (count == 2 && LuaScriptMgr.CheckTypes(L, 1, typeof(Camera), typeof(float))) { Camera arg0 = (Camera)LuaScriptMgr.GetLuaObject(L, 1); float arg1 = (float)LuaDLL.lua_tonumber(L, 2); Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1); LuaScriptMgr.PushArray(L, o); return(1); } else if (count == 3) { Camera arg0 = (Camera)LuaScriptMgr.GetUnityObject(L, 1, typeof(Camera)); float arg1 = (float)LuaScriptMgr.GetNumber(L, 2); Transform arg2 = (Transform)LuaScriptMgr.GetUnityObject(L, 3, typeof(Transform)); Vector3[] o = NGUITools.GetWorldCorners(arg0, arg1, arg2); LuaScriptMgr.PushArray(L, o); return(1); } else { LuaDLL.luaL_error(L, "invalid arguments to method: NGUITools.GetWorldCorners"); } return(0); }
// NGUI 스프라이트 위치를 rate(0 ~ 1) 변경 public static void NUI_MoveRate(Camera cam, Transform mat, float rx, float ry, float width, float height) { float uiscale = cam.transform.root.localScale.x; Vector3[] poss = NGUITools.GetWorldCorners(cam); float sw = Vector3.Distance(poss[0], poss[3]); float sh = Vector3.Distance(poss[0], poss[1]); float w = width * uiscale; float h = height * uiscale; float ry2 = 1 - ry; Vector3 re = Vector3.zero; re.x = (sw * rx) - (w * rx); re.y = (sh * ry2) - (h * ry2); re.x += -sw * 0.5f + w * 0.5f; re.y += -sh * 0.5f + h * 0.5f; mat.position = new Vector3(cam.transform.position.x + re.x, cam.transform.position.y + re.y, mat.position.z); }
static public int GetWorldCorners_s(IntPtr l) { try { #if DEBUG var method = System.Reflection.MethodBase.GetCurrentMethod(); string methodName = GetMethodName(method); #if UNITY_5_5_OR_NEWER UnityEngine.Profiling.Profiler.BeginSample(methodName); #else Profiler.BeginSample(methodName); #endif #endif int argc = LuaDLL.lua_gettop(l); if (argc == 1) { UnityEngine.Camera a1; checkType(l, 1, out a1); var ret = NGUITools.GetWorldCorners(a1); pushValue(l, true); pushValue(l, ret); return(2); } else if (matchType(l, argc, 1, typeof(UnityEngine.Camera), typeof(float))) { UnityEngine.Camera a1; checkType(l, 1, out a1); System.Single a2; checkType(l, 2, out a2); var ret = NGUITools.GetWorldCorners(a1, a2); pushValue(l, true); pushValue(l, ret); return(2); } else if (matchType(l, argc, 1, typeof(UnityEngine.Camera), typeof(UnityEngine.Transform))) { UnityEngine.Camera a1; checkType(l, 1, out a1); UnityEngine.Transform a2; checkType(l, 2, out a2); var ret = NGUITools.GetWorldCorners(a1, a2); pushValue(l, true); pushValue(l, ret); return(2); } else if (argc == 3) { UnityEngine.Camera a1; checkType(l, 1, out a1); System.Single a2; checkType(l, 2, out a2); UnityEngine.Transform a3; checkType(l, 3, out a3); var ret = NGUITools.GetWorldCorners(a1, a2, a3); pushValue(l, true); pushValue(l, ret); return(2); } pushValue(l, false); LuaDLL.lua_pushstring(l, "No matched override function GetWorldCorners to call"); return(2); } catch (Exception e) { return(error(l, e)); } #if DEBUG finally { #if UNITY_5_5_OR_NEWER UnityEngine.Profiling.Profiler.EndSample(); #else Profiler.EndSample(); #endif } #endif }