void OnElementLayout(SubData data) { var x = data.element; if (x.isComponent) { OnComponentLayout(x); } if (x.isMaterial) { OnMaterialLayout(x); } }
private void ReadLiquid() { var chunk = SubData.GetChunkByName("MLIQ"); if (chunk == null) { return; } HasLiquidData = true; var stream = chunk.GetStream(); LiquidDataHeader = LiquidHeader.Read(stream); LiquidDataGeometry = LiquidData.Read(stream, LiquidDataHeader); }
private void ReadVertices() { var chunk = SubData.GetChunkByName("MOVT"); if (chunk == null) { return; } var verticeCount = (int)(chunk.Length / 12); Vertices = new Vector3[verticeCount]; var stream = chunk.GetStream(); for (int i = 0; i < verticeCount; i++) { Vertices[i] = Vector3Helper.Read(stream); } }
private void ReadNormals() { var chunk = SubData.GetChunkByName("MONR"); if (chunk == null) { return; } var normalCount = (int)(chunk.Length / 12); Debug.Assert(normalCount == Vertices.Length); Normals = new Vector3[normalCount]; var stream = chunk.GetStream(); for (int i = 0; i < normalCount; i++) { Normals[i] = Vector3Helper.Read(stream); } }
private void ReadMaterials() { var chunk = SubData.GetChunkByName("MOPY"); if (chunk == null) { return; } var stream = chunk.GetStream(); var triangleCount = (int)(chunk.Length / 2); TriangleFlags = new byte[triangleCount]; TriangleMaterials = new byte[triangleCount]; for (int i = 0; i < triangleCount; i++) { TriangleFlags[i] = (byte)stream.ReadByte(); TriangleMaterials[i] = (byte)stream.ReadByte(); } }
private void ReadTriangles() { var chunk = SubData.GetChunkByName("MOVI"); if (chunk == null) { return; } var triangleCount = (int)(chunk.Length / 6); Debug.Assert(triangleCount == TriangleFlags.Length); var r = new BinaryReader(chunk.GetStream()); Triangles = new Triangle <ushort> [triangleCount]; for (int i = 0; i < triangleCount; i++) { Triangles[i] = new Triangle <ushort>(TriangleType.Wmo, r.ReadUInt16(), r.ReadUInt16(), r.ReadUInt16()); } }
void OnEnable() { _TableList.Clear(); _FileList.Clear(); jUtil.GetFiles(_FileList, "Assets/Resources/" + _PathName, "*.xml"); _FileList.Insert(0, "none"); if ((_SubData = jRes.LoadPrefs <SubData>("class_data")) == null) { _SubData = new SubData(); } if ((_TablePathName != null) && (_TablePathName.Length > 0)) { if (_TableList.ContainsKey(_TablePathName) == false) { LoadTable(_TablePathName); } } }
void Start() { sd3 = target3.GetComponent <SubData> (); sd6 = target3.GetComponent <SubData> (); }
public int GetAttribute(CharacterAttribute attribute) => SubData.GetAttribute(attribute) + attributeMods[(int)attribute];
public int GetSkill(CharacterSkill skill) => SubData.GetSkill(skill) + skillMods[(int)skill];
public static void DrawDataTable(float x, float y, float w, float h, object data, SubData sub_data, List <FieldInfo> fiList) { if (data == null) { return; } float ww = 200; float add = 30; bool isFocus; object temp = null, obj = null; obj = data; //string typeName = obj.GetType().BaseType.Name.ToString(); //string typeName2 = "TableList`1"; //if( typeName.CompareTo( typeName2 ) == 0 ) { if ((temp = GetDataList(obj)) != null) { //System.Type type = GetListType( temp ); DrawDataList(x, y, ww, h - add, data.GetType().ToString(), temp, ref sub_data._vScroll1, ref sub_data._Index, ref sub_data._Count, out isFocus, sub_data._Flush); DrawDataAdd(x, y + h - add, ww, add, temp, ref sub_data._Index); IList lst = temp as IList; if ((sub_data._Index >= 0) && (sub_data._Index < lst.Count)) { obj = lst[sub_data._Index]; } else { obj = null; } x += ww; w -= ww; } //} DrawFieldList(x, y, w, h, obj, ref sub_data._vScroll2, fiList); }
System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { return(SubData.GetEnumerator()); }
public IEnumerator <LogData> GetEnumerator() { return(SubData.GetEnumerator()); }
public void Add(LogData log) { SubData.Add(log); }
/// <see cref="EditorElementPatch.Init_"/> public void SetupEditorElement(EditorElement x) { var element = x.element; var header = x.header; var inspector = x.inspector; var footer = x.footer; var data = x.Get <SubData>().First(); var cullingEnabled = prefs.useIMGUICulling; if (x.isGo) { // Tabs bar is injected inside GO editor gameObjectEditor = element; } element.AddClass("editor-element"); header.AddClass("header"); inspector.AddClass("inspector"); footer.AddClass("footer"); header.onAddChild = e => e.AddToClassList("user-element"); inspector.onAddChild = e => e.AddToClassList("user-element"); SetupSubData(); SetupEditorElement(); SetupHeader(); SetupInspectorElement(); // Footer is manipulated by EditorElementPatch.Init_ if (!editors.ContainsKey(element)) { editors.Add(element, x); } try { Runtime.SmartInspector.OnSetupEditorElement?.Invoke(x); } catch (Exception ex) { Debug.LogException(ex); } void SetupSubData() { if (data == null) { inspector.Add(data = new SubData()); } data.smartInspector = this; data.element = x; } void SetupEditorElement() { x.Register <GeometryChangedEvent>(evt => OnElementLayout(data)); element.EnableClass("game-object", x.isGo); element.EnableClass("transform", x.isTransform); element.EnableClass("component", x.isComponent); element.EnableClass("material", x.isMaterial); #if !UNITY_2020_1_OR_NEWER if (x.isTransform) { element.style.top = -2; } #endif } void SetupHeader() { #if UNITY_2020_1_OR_NEWER header.x.cullingEnabled = cullingEnabled; #endif if (x.isComponent) { x.header.Direction(FlexDirection.RowReverse); var width = 64; if (!prefs.showHelp) { width -= 20; } if (!prefs.showPreset) { width -= 20; } // Temp solution for component header buttons spacing if (!x.header.Has("#rightSpace", out Space space)) { space = new Space { name = "rightSpace" }; x.header.x.Add(space); } space.style.width = width; } } void SetupInspectorElement() { var container = inspector.Get <IMGUIContainer>().First() ?? inspector.Get(".unity-inspector-element__custom-inspector-container").First(); if (container != null) { SetupInspectorContainer(container); } } void SetupInspectorContainer(VisualElement container) { if (container is IMGUIContainer imgui) { #if UNITY_2020_1_OR_NEWER imgui.cullingEnabled = cullingEnabled; #endif } if (x.isComponent) { // Dragging is calculated based on container layout (it ignores InspectorElement padding) container.style.paddingBottom = ComponentPaddingBottom; inspector.style.paddingBottom = 0; } } }