Ejemplo n.º 1
0
        public static bool ReadTransform_Tbl(LuaTable tbl, string fieldName, out UnityEngine.Vector3 pos, out UnityEngine.Vector3 euler, out UnityEngine.Vector3 scale)
        {
            pos   = euler = UnityEngine.Vector3.zero;
            scale = UnityEngine.Vector3.one;
            LuaTable val;

            if (!LuaReadHelper.GetTValue2Table(tbl, fieldName, out val))
            {
                return(false);
            }
            if (val.ArrayPart.Length != 9)
            {
                return(false);
            }
            pos.x   = (float)val.ArrayPart[0].V.NValue;
            pos.y   = (float)val.ArrayPart[1].V.NValue;
            pos.z   = (float)val.ArrayPart[2].V.NValue;
            euler.x = (float)val.ArrayPart[3].V.NValue;
            euler.y = (float)val.ArrayPart[4].V.NValue;
            euler.z = (float)val.ArrayPart[5].V.NValue;
            scale.x = (float)val.ArrayPart[6].V.NValue;
            scale.y = (float)val.ArrayPart[7].V.NValue;
            scale.z = (float)val.ArrayPart[8].V.NValue;
            return(true);
        }
Ejemplo n.º 2
0
        public static bool ReadVector3_Tbl(LuaTable tbl, string fieldName, out UnityEngine.Vector3 value)
        {
            value = UnityEngine.Vector3.zero;
            LuaTable val;

            if (!LuaReadHelper.GetTValue2Table(tbl, fieldName, out val))
            {
                return(false);
            }
            return(ReadVector3(val, out value));
        }
Ejemplo n.º 3
0
        public static bool ReadNumberArray_Tbl <T>(LuaTable tbl, string fieldName, out T[] value)
        {
            value = null;
            LuaTable val;

            if (!LuaReadHelper.GetTValue2Table(tbl, fieldName, out val))
            {
                return(false);
            }
            if (val.ArrayPart.Length <= 0)
            {
                value = new T[0];
                return(true);
            }
            value = new T[val.ArrayPart.Length];
            for (int i = 0; i < val.ArrayPart.Length; ++i)
            {
                value[i] = (T)Convert.ChangeType(val.ArrayPart[i].V.NValue, typeof(T));
            }
            return(true);
        }