//--------------------------------------------------------
|
// [Author]: YYL
|
// [ Date ]: Friday, June 27, 2025
|
//--------------------------------------------------------
|
|
using System.Collections.Generic;
|
using System.IO;
|
using System.Threading;
|
using System;
|
using UnityEngine;
|
using LitJson;
|
|
public partial class ChatBubbleBoxConfig : ConfigBase<int, ChatBubbleBoxConfig>
|
{
|
|
public int ID;
|
public string Name;
|
public int NeedLV;
|
public int SortNum;
|
public int UnlockDefault;
|
public int ExpireMinutes;
|
public int[][] UnlockNeedItemList;
|
public int[] LightAttrType;
|
public int[] LightAttrValue;
|
public int LightFightPower;
|
public string leftBubbleIcon;
|
public string rightBubbleIcon;
|
public int[] leftOffset;
|
public int[] rightOffset;
|
public string Icon;
|
public int Jump;
|
public string GainTip;
|
public int[] color;
|
public int top;
|
public string Descriptive;
|
|
public override int LoadKey(string _key)
|
{
|
int key = GetKey(_key);
|
return key;
|
}
|
|
public override void LoadConfig(string input)
|
{
|
try {
|
string[] tables = input.Split('\t');
|
int.TryParse(tables[0],out ID);
|
|
Name = tables[1];
|
|
int.TryParse(tables[2],out NeedLV);
|
|
int.TryParse(tables[3],out SortNum);
|
|
int.TryParse(tables[4],out UnlockDefault);
|
|
int.TryParse(tables[5],out ExpireMinutes);
|
|
UnlockNeedItemList = JsonMapper.ToObject<int[][]>(tables[6].Replace("(", "[").Replace(")", "]"));
|
|
if (tables[7].Contains("["))
|
{
|
LightAttrType = JsonMapper.ToObject<int[]>(tables[7]);
|
}
|
else
|
{
|
string[] LightAttrTypeStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
LightAttrType = new int[LightAttrTypeStringArray.Length];
|
for (int i=0;i<LightAttrTypeStringArray.Length;i++)
|
{
|
int.TryParse(LightAttrTypeStringArray[i],out LightAttrType[i]);
|
}
|
}
|
|
if (tables[8].Contains("["))
|
{
|
LightAttrValue = JsonMapper.ToObject<int[]>(tables[8]);
|
}
|
else
|
{
|
string[] LightAttrValueStringArray = tables[8].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
LightAttrValue = new int[LightAttrValueStringArray.Length];
|
for (int i=0;i<LightAttrValueStringArray.Length;i++)
|
{
|
int.TryParse(LightAttrValueStringArray[i],out LightAttrValue[i]);
|
}
|
}
|
|
int.TryParse(tables[9],out LightFightPower);
|
|
leftBubbleIcon = tables[10];
|
|
rightBubbleIcon = tables[11];
|
|
if (tables[12].Contains("["))
|
{
|
leftOffset = JsonMapper.ToObject<int[]>(tables[12]);
|
}
|
else
|
{
|
string[] leftOffsetStringArray = tables[12].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
leftOffset = new int[leftOffsetStringArray.Length];
|
for (int i=0;i<leftOffsetStringArray.Length;i++)
|
{
|
int.TryParse(leftOffsetStringArray[i],out leftOffset[i]);
|
}
|
}
|
|
if (tables[13].Contains("["))
|
{
|
rightOffset = JsonMapper.ToObject<int[]>(tables[13]);
|
}
|
else
|
{
|
string[] rightOffsetStringArray = tables[13].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
rightOffset = new int[rightOffsetStringArray.Length];
|
for (int i=0;i<rightOffsetStringArray.Length;i++)
|
{
|
int.TryParse(rightOffsetStringArray[i],out rightOffset[i]);
|
}
|
}
|
|
Icon = tables[14];
|
|
int.TryParse(tables[15],out Jump);
|
|
GainTip = tables[16];
|
|
if (tables[17].Contains("["))
|
{
|
color = JsonMapper.ToObject<int[]>(tables[17]);
|
}
|
else
|
{
|
string[] colorStringArray = tables[17].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
|
color = new int[colorStringArray.Length];
|
for (int i=0;i<colorStringArray.Length;i++)
|
{
|
int.TryParse(colorStringArray[i],out color[i]);
|
}
|
}
|
|
int.TryParse(tables[18],out top);
|
|
Descriptive = tables[19];
|
}
|
catch (Exception exception)
|
{
|
Debug.LogError(exception);
|
}
|
}
|
}
|