private void PreInit(UnrealPackage package) { UnrealConfig.VariableTypes = new System.Collections.Generic.Dictionary <string, Tuple <string, PropertyType> >(); foreach (string current in VariableTypes) { Tuple <string, string, UELib.Types.PropertyType> tuple = ParseVariable(current); UnrealConfig.VariableTypes.Add(tuple.Item1, Tuple.Create <string, PropertyType>(tuple.Item2, tuple.Item3)); } package.RegisterClass("StaticMesh", typeof(UStaticMesh)); package.RegisterClass("Shader", typeof(UShader)); }
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { if (e.Node.Nodes.Count == 0) { CurrentPackage = Manager.LoadPackage(e.Node.Text); CurrentPackage.RegisterClass("StaticMesh", typeof(UStaticMesh)); CurrentPackage.RegisterClass("Shader", typeof(UShader)); CurrentPackage.InitializePackage(); dataGridView1.Rows.Clear(); foreach (UObject obj in CurrentPackage.Objects) { if (obj.ExportTable != null) { // add only supported objects if (obj.IsClassType("Texture") || obj.IsClassType("Texture2D") || obj.IsClassType("Sound") || obj.IsClassType("SoundCue") || obj.IsClassType("StaticMesh")) { this.dataGridView1.Rows.Add(obj.Name); } } } } }