playerDataList = new List The class inherits from [CreateAssetMenu(menuName = "Create CharactersDataBase", fileName = "CharactersDataBase", order = 0)]
public class CharactersDataBase : ParsedScriptableObject
{
public List<CharacterData> playerDataList = new List<CharacterData>();
protected override void PopulateData(ParsedDataList data)
{
if(data.TryGetParsedData( 0, out var parsedData))
{
playerDataList = EasyParser.ParseRowsData( parsedData, i => new CharacterData
{
name = parsedData.GetString(i,0),
description = parsedData.GetString(i,1),
stars = parsedData.GetInt(i,2),
attackRate = parsedData.GetFloat(i,3),
damage = parsedData.GetFloat(i,4),
rarity = parsedData.GetEnum<Rarity>(i,5),
cost = parsedData.GetInt(i,7)
});
}
}
}
Class Overview
ParsedScriptableObject and overrides the PopulateData method to parse data into a structured format. It maintains a list of CharacterData objects representing individual characters with various attributes.
Fields
playerDataList
List<CharacterData>CharacterData objects that stores parsed character information, including name, description, stats, rarity, and cost.
Methods
PopulateData(ParsedDataList data)
protected overrideplayerDataList field by parsing data from the provided ParsedDataList.
data (ParsedDataList): A structured list of parsed data rows to be processed.
TryGetParsedData(0, out var parsedData).EasyParser.ParseRowsData to process the rows and map them into CharacterData objects.CharacterData object using a lambda function.
EasyParser.ParseRowsData: A utility function used to parse rows into strongly-typed objects.CharacterData: A data structure representing individual character attributes.ParsedDataList: The source of raw data to be parsed.
Parsing Details