Vec3InputField 2

e
按·(esc下面那个)暂时关闭UI
This commit is contained in:
2025-02-12 21:29:40 +08:00
parent cbbfc624d6
commit 3a1ee5f9ef
9 changed files with 137 additions and 486 deletions

View File

@@ -1,6 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Lean.Pool;
using UnityEngine;
@@ -32,8 +33,10 @@ namespace Ichni.RhythmGame
submoduleList.Add(transformSubmodule);
submoduleList.Add(timeDurationSubmodule);
}
}
public partial class ElementFolder
{
public override void SaveBM()

View File

@@ -1,9 +1,11 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Dreamteck.Splines;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Sirenix.OdinInspector;
using Unity.VisualScripting;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UIElements;
@@ -36,7 +38,7 @@ namespace Ichni.RhythmGame
//存档类
public BaseElement_BM matchedBM { get; set; }
private Inspector inspector;
public Editor.Inspector inspector;
/// <summary>
@@ -141,16 +143,27 @@ namespace Ichni.RhythmGame
public abstract partial class GameElement
{
public virtual void SetUpInspector()
public virtual void SetUpInspector()//被点击时设置第一层Inspector
{
var container = inspector.GenerateContainer("Element Info");
var nameInputField = inspector.GenerateInputField(container, GetType().Name+"'s Name", nameof(elementName));
var guidText = inspector.GenerateText(container, "Element GUID", nameof(elementGuid), true);
var container2 = inspector.GenerateContainer("Element Property");
foreach(var i in submoduleList){
if(i.GetType()==typeof(TransformSubmodule)){
SetUpSecondInspector((TransformSubmodule)i);
break;
}
}
}
public virtual void SetUpSecondInspector(TransformSubmodule i){
var container2 = inspector.GenerateContainer("Element Property");
container2.setVoH(true);
var posInputField=inspector.GenerateVec3InputField(container2,"Position",nameof(transform.position));
var rotInputField=inspector.GenerateVec3InputField(container2,"Rotation",nameof(transform.eulerAngles));
var scaleInputField=inspector.GenerateVec3InputField(container2,"Scale",nameof(transform.localScale));
var posInputField=inspector.GenerateVec3InputField(container2,"Start Position",nameof(i.originalPosition));
var rotInputField=inspector.GenerateVec3InputField(container2,"Start Rotation",nameof(i.originalEulerAngles));
var scaleInputField=inspector.GenerateVec3InputField(container2,"Start Scale",nameof(i.originalScale));
}

View File

@@ -35,7 +35,7 @@ namespace Ichni.RhythmGame
submoduleList.Add(transformSubmodule);
submoduleList.Add(timeDurationSubmodule);
}
private void Update()
{
if (timeDurationSubmodule.CheckTimeInDuration(EditorManager.instance.songModule.songTime))