Files
XMen/Assets/Scripts/Data/TempInfo.cs
2025-07-10 14:49:53 +08:00

54 lines
1.3 KiB
C#

using System.Collections;
using System.Collections.Generic;
using JetBrains.Annotations;
using UnityEngine;
using static XPlugin.Data.JsonLiteDB.JsonLiteDB;
public class TempInfo
{
public int Id;
public string Name;
public Vector3[] Positions;
public Vector3[] Scales;
public Vector3[] Angles;
public TempInfo(TableReader table)
{
Id = table["ID"].OptInt();
Name = table["Name"].OptString();
string positions = table["Positions"].OptString();
Positions = ParseStringToVectorArray(positions);
string scales = table["Scales"].OptString();
Scales = ParseStringToVectorArray(scales);
string angles = table["Angles"].OptString();
Angles = ParseStringToVectorArray(angles);
}
Vector3[] ParseStringToVectorArray(string input)
{
if (input == "")
{
return null;
}
string[] elements = input.Replace("(", "").Replace(")", "").Split(',');
List<Vector3> vectorList = new List<Vector3>();
for (int i = 0; i < elements.Length; i += 3)
{
float x = float.Parse(elements[i]);
float y = float.Parse(elements[i + 1]);
float z = float.Parse(elements[i + 2]);
vectorList.Add(new Vector3(x, y, z));
}
return vectorList.ToArray();
}
}