Code/ChitChat/Data/DialogueCharacter.cs
using Sandbox;
using System.Collections.Generic;

namespace ChitChat;

[AssetType(Name = "Character", Extension = "chitchar", Category = "ChitChat")]
[Description("Holds character data.")]
public sealed class DialogueCharacter : GameResource
{
	public string Name { get; set; } = "Unnamed";

	public List<CharacterPicture> CharacterPictures { get; set; } = new();

	protected override void PostReload()
	{
		base.PostReload();

		if (CharacterPictures == null)
		{
			CharacterPictures = new();
		}
	}

	protected override Bitmap CreateAssetTypeIcon( int width, int height )
	{
		return CreateSimpleAssetTypeIcon("person", width, height, "#ac5c5c");
	}
}

public struct CharacterPicture
{
	public string Name { get; set; }
	public Texture Picture { get; set; }

	public override string ToString()
	{
		return Name;
	}
}