Unity中LitJson插件的使用

1、LitJson下载

百度云

链接:https://pan.baidu.com/s/1BmmqLJ5asX2DSDxfR29KLQ

提取码:80gl

2、LitJson如何使用

Json文本内容 Items

[
    {
        "id": 1,
        "name": "血瓶",
        "type": "Consumable",
		"sprite": "Sprites/Items/hp"
    },
    {
        "id": 2,
        "name": "长剑",
        "type": "Weapon",
		"sprite": "Sprites/Items/Saber"
    }
]

对应Json的物品类

public class Item
{
    /// <summary>
    /// 物品ID
    /// </summary>
    public int ID { get; set; }

    /// <summary>
    /// 物品名字
    /// </summary>
    public string Name { get; set; }

    /// <summary>
    /// 物品类型
    /// </summary>
    public ItemType Type { get; set; }

	/// <summary>
    /// 物品资源地址
    /// </summary>
    public string Sprite { get; set; }

    public Item(int id , string name,ItemType type,string sprite)
    {
        this.ID = id;
        this.Name = name;
        this.Type = type;
        this.Sprite = sprite;
    }

    /// <summary>
    /// 物品类型
    /// </summary>
    public enum ItemType
    {
        Consumable, //消耗品
        Weapon   //装备
    }
}

解析Json类 Items

public class JsonTest : MonoBehaviour
{
    private List<Item> database = new List<Item>();

    void Start()
    {
        ParseItemJson();
    }

    /// <summary>
    /// 解析物品信息
    /// </summary>
    private void ParseItemJson()
    {
        //获取Json中的文本。文本在unity中是textasset类型
        TextAsset itemText = Resources.Load<TextAsset>("Items");
        //把json文本转换为jsondata格式
        JsonData itemData = JsonMapper.ToObject(itemText.text);

        //对每一个物品,都新建个item类来存储
        for (int i = 0; i < itemData.Count; i++)
        {
            int id = (int)itemData[i]["id"];
            string name = (string)itemData[i]["name"];

            //枚举类型则要把字符串转换为枚举类型
            //用System.Enum.Parse方法
            Item.ItemType type = (Item.ItemType)System.Enum.Parse(typeof(Item.ItemType), itemData[i]["type"].ToString());
            string sprite = (string)itemData[i]["Sprite"];

            Item item = new Item(id, name, type,sprite);
            database.Add(item);
        }
        Debug.Log(itemList[1]);
    }
}
—— 完 ——
相关推荐
评论

立 为 非 似

中 谁 昨 此

宵 风 夜 星

。 露 , 辰

文章点击榜

细 无 轻 自

如 边 似 在

愁 丝 梦 飞

。 雨 , 花