private void DisplayImporterGUI() { // Hide importer GUI when not active in hierarchy if (!dfUnity.gameObject.activeInHierarchy) { return; } EditorGUILayout.Space(); ShowImportFoldout = GUILayoutHelper.Foldout(ShowImportFoldout, new GUIContent("Importer"), () => { GUILayoutHelper.Indent(() => { EditorGUILayout.Space(); var propModelID = Prop("ModelImporter_ModelID"); EditorGUILayout.LabelField(new GUIContent("ModelID", "Enter numeric ID of model.")); GUILayoutHelper.Horizontal(() => { propModelID.intValue = EditorGUILayout.IntField(propModelID.intValue); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallMeshGameObject((uint)propModelID.intValue, null); } }); EditorGUILayout.Space(); var propBlockName = Prop("BlockImporter_BlockName"); EditorGUILayout.LabelField(new GUIContent("Block Name", "Enter name of block. Accepts .RMB and .RDB blocks.")); GUILayoutHelper.Horizontal(() => { propBlockName.stringValue = EditorGUILayout.TextField(propBlockName.stringValue.Trim().ToUpper()); if (GUILayout.Button("Import")) { // Create block if (propBlockName.stringValue.EndsWith(".RMB")) { GameObjectHelper.CreateRMBBlockGameObject(propBlockName.stringValue, dfUnity.Option_RMBGroundPlane, dfUnity.Option_CityBlockPrefab); } else if (propBlockName.stringValue.EndsWith(".RDB")) { GameObjectHelper.CreateRDBBlockGameObject( propBlockName.stringValue, null, true, DFRegion.DungeonTypes.HumanStronghold, 0.5f, 4, (int)DateTime.Now.Ticks, dfUnity.Option_DungeonBlockPrefab); } } }); EditorGUILayout.Space(); var propCityName = Prop("CityImporter_CityName"); EditorGUILayout.LabelField(new GUIContent("City Name", "Enter exact city name in format RegionName/CityName. Case-sensitive.")); GUILayoutHelper.Horizontal(() => { propCityName.stringValue = EditorGUILayout.TextField(propCityName.stringValue.Trim()); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallLocationGameObject(propCityName.stringValue, null); } }); EditorGUILayout.Space(); var propDungeonName = Prop("DungeonImporter_DungeonName"); EditorGUILayout.LabelField(new GUIContent("Dungeon Name", "Enter exact dungeon name in format RegionName/DungeonName. Case-sensitive.")); GUILayoutHelper.Horizontal(() => { propDungeonName.stringValue = EditorGUILayout.TextField(propDungeonName.stringValue.Trim()); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallDungeonGameObject(propDungeonName.stringValue, null); } }); }); }); }
private void DisplayImporterGUI() { // Hide importer GUI when not active in hierarchy if (!dfUnity.gameObject.activeInHierarchy) { return; } EditorGUILayout.Space(); ShowImportFoldout = GUILayoutHelper.Foldout(ShowImportFoldout, new GUIContent("Importer"), () => { GUILayoutHelper.Indent(() => { EditorGUILayout.Space(); var propModelID = Prop("ModelImporter_ModelID"); EditorGUILayout.LabelField(new GUIContent("ModelID", "Enter numeric ID of model.")); GUILayoutHelper.Horizontal(() => { propModelID.intValue = EditorGUILayout.IntField(propModelID.intValue); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallMeshGameObject((uint)propModelID.intValue, null); } }); EditorGUILayout.Space(); var propBlockName = Prop("BlockImporter_BlockName"); EditorGUILayout.LabelField(new GUIContent("Block Name", "Enter name of block. Accepts .RMB and .RDB blocks.")); GUILayoutHelper.Horizontal(() => { propBlockName.stringValue = EditorGUILayout.TextField(propBlockName.stringValue.Trim().ToUpper()); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallBlockGameObject(propBlockName.stringValue, null); } }); EditorGUILayout.Space(); var propCityName = Prop("CityImporter_CityName"); EditorGUILayout.LabelField(new GUIContent("City Name", "Enter exact city name in format RegionName/CityName. Case-sensitive.")); GUILayoutHelper.Horizontal(() => { propCityName.stringValue = EditorGUILayout.TextField(propCityName.stringValue.Trim()); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallLocationGameObject(propCityName.stringValue, null); } }); EditorGUILayout.Space(); var propDungeonName = Prop("DungeonImporter_DungeonName"); EditorGUILayout.LabelField(new GUIContent("Dungeon Name", "Enter exact dungeon name in format RegionName/DungeonName. Case-sensitive.")); GUILayoutHelper.Horizontal(() => { propDungeonName.stringValue = EditorGUILayout.TextField(propDungeonName.stringValue.Trim()); if (GUILayout.Button("Import")) { GameObjectHelper.CreateDaggerfallDungeonGameObject(propDungeonName.stringValue, null); } }); }); }); }