我死去
This commit is contained in:
@@ -789,5 +789,115 @@ namespace Ichni.Editor
|
||||
UnityEditorInternal.InternalEditorUtility.RepaintAllViews();
|
||||
#endif
|
||||
}
|
||||
public static void AddTagMatcher(string name, string parameterName)
|
||||
{
|
||||
|
||||
var tagManager = EditorManager.instance.projectInformation.tagManager;
|
||||
IBaseElement element = inspector.connectedGameElement;
|
||||
tagManager.AddTagMatcher(name, element.GetType(), parameterName);
|
||||
}
|
||||
public static void FindParameterName(float value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var i in element.GetType().GetFields())
|
||||
{
|
||||
if (i.FieldType == typeof(float) && (float)i.GetValue(element) == value)//获取对应变量的值)
|
||||
{
|
||||
Debug.Log($"Found parameter: {i.Name}");
|
||||
LogWindow.Log($"Found parameter: {i.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
public static void FindParameterName(Vector3 value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var field in element.GetType().GetFields())
|
||||
{
|
||||
if (field.FieldType == typeof(Vector3))
|
||||
{
|
||||
Vector3 fieldValue = (Vector3)field.GetValue(element);
|
||||
if (Vector3.Distance(fieldValue, value) < 0.001f) // 使用容差比较Vector3
|
||||
{
|
||||
Debug.Log($"Found Vector3 parameter: {field.Name}");
|
||||
LogWindow.Log($"Found Vector3 parameter: {field.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void FindParameterName(Vector2 value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var field in element.GetType().GetFields())
|
||||
{
|
||||
if (field.FieldType == typeof(Vector2))
|
||||
{
|
||||
Vector2 fieldValue = (Vector2)field.GetValue(element);
|
||||
if (Vector2.Distance(fieldValue, value) < 0.001f) // 使用容差比较Vector2
|
||||
{
|
||||
Debug.Log($"Found Vector2 parameter: {field.Name}");
|
||||
LogWindow.Log($"Found Vector2 parameter: {field.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void FindParameterName(Color value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var field in element.GetType().GetFields())
|
||||
{
|
||||
if (field.FieldType == typeof(Color))
|
||||
{
|
||||
Color fieldValue = (Color)field.GetValue(element);
|
||||
if (fieldValue == value) // Color可以直接比较
|
||||
{
|
||||
Debug.Log($"Found Color parameter: {field.Name}");
|
||||
LogWindow.Log($"Found Color parameter: {field.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void FindParameterName(int value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var field in element.GetType().GetFields())
|
||||
{
|
||||
if (field.FieldType == typeof(int))
|
||||
{
|
||||
int fieldValue = (int)field.GetValue(element);
|
||||
if (fieldValue == value) // int可以直接比较
|
||||
{
|
||||
Debug.Log($"Found int parameter: {field.Name}");
|
||||
LogWindow.Log($"Found int parameter: {field.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void FindParameterName(string value)
|
||||
{
|
||||
var element = inspector.connectedGameElement;
|
||||
foreach (var field in element.GetType().GetFields())
|
||||
{
|
||||
if (field.FieldType == typeof(string))
|
||||
{
|
||||
string fieldValue = (string)field.GetValue(element);
|
||||
if (fieldValue == value) // string可以直接比较
|
||||
{
|
||||
Debug.Log($"Found string parameter: {field.Name}");
|
||||
LogWindow.Log($"Found string parameter: {field.Name}", Color.green);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
public static void SyncTagedElement()
|
||||
{
|
||||
var q = inspector.connectedGameElement;
|
||||
|
||||
var tagManager = EditorManager.instance.projectInformation.tagManager;
|
||||
tagManager.SyncTagedElement((q));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user