82 lines
2.3 KiB
C#
82 lines
2.3 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using XPlugin.Data.JsonLiteDB;
|
|
|
|
public class AiInfo
|
|
{
|
|
public int ID;
|
|
public int Type;
|
|
public string Name;
|
|
public List<int> HitRate;//命中率
|
|
public float FiringRate;//射击频率
|
|
public float FiringWaitTime;//射击等待时间
|
|
public List<int> FiringTarget1;//射击目标1
|
|
public List<int> FiringTarget2;//射击目标2
|
|
public Vector3 EulerAngles;
|
|
|
|
public AiInfo(JsonLiteDB.TableReader table)
|
|
{
|
|
HitRate = new List<int>();
|
|
FiringTarget1 = new List<int>();
|
|
FiringTarget2 = new List<int>();
|
|
|
|
ID = table["ID"].OptInt();
|
|
Type = table["Type"].OptInt();
|
|
Name = table["CN_Name"].OptString();
|
|
|
|
string hitRateStr = table["HitRate"].OptString();
|
|
if (hitRateStr == "-1")
|
|
{
|
|
HitRate.Add(-1);
|
|
}
|
|
else
|
|
{
|
|
HitRate=ParseStringToIntArray(hitRateStr);
|
|
}
|
|
FiringRate = table["FiringRate"].OptFloat();
|
|
FiringWaitTime = table["FiringWaitTime"].OptFloat();
|
|
|
|
string firingTarget1 = table["FiringTarget1"].OptString();
|
|
if (hitRateStr == "-1")
|
|
{
|
|
FiringTarget1.Add(-1);
|
|
}
|
|
else
|
|
{
|
|
FiringTarget1=ParseStringToIntArray(firingTarget1);
|
|
}
|
|
|
|
string firingTarget2 = table["FiringTarget2"].OptString();
|
|
if (hitRateStr == "-1")
|
|
{
|
|
FiringTarget2.Add(-1);
|
|
}
|
|
else
|
|
{
|
|
FiringTarget2=ParseStringToIntArray(firingTarget2);
|
|
}
|
|
|
|
string eulerAnglesStr = table["EulerAngles"].OptString();
|
|
|
|
var eulerAnglesList = ParseStringToIntArray(eulerAnglesStr);
|
|
EulerAngles = new Vector3(eulerAnglesList[0], eulerAnglesList[1], eulerAnglesList[2]);
|
|
}
|
|
|
|
List<int> ParseStringToIntArray(string input)
|
|
{
|
|
if (input == "")
|
|
{
|
|
return null;
|
|
}
|
|
string[] elements = input.Replace("[", "").Replace("]", "").Split(',');
|
|
List<int> intArray = new List<int>();
|
|
|
|
for (int i = 0; i < elements.Length; i++)
|
|
{
|
|
intArray.Add(int.Parse(elements[i]));
|
|
}
|
|
return intArray;
|
|
}
|
|
}
|