#include "MonsterConfig.h"
#include "Asset/AssetManager.h"
#include "Tool/Tool_String.h"

namespace GlobalMonsterScript
{

    std::map<int, std::string> InitMonsterLst()
    {
        std::map<int, std::string> EquipList;
        ScriptData Data = AssetManager::GetInstance().GetScriptInfo("monster/monster.lst");
        while (!Data.IsEnd())
        {
            std::string Index = Data.Get();
            std::string MonsterPath = std::string("monster/") + Data.Get();
            EquipList[std::stoi(Index)] = MonsterPath;
        }
        return EquipList;
    }
    MonsterConfig ReadMonsterConfig(std::string path)
    {
        MonsterConfig Config;
        Config.folder = path.substr(0, path.find_last_of('/') + 1);
        ScriptData Data = AssetManager::GetInstance().GetScriptInfo(path);
        while (!Data.IsEnd())
        {
            std::string Segment = Data.Get();
            if (Segment == "name")
            {
                Config.name = Data.Get();
            }
            else if (Segment == "[动作动画]")
            {
                while (true)
                {
                    std::string Ret = Data.Get();
                    if (Ret == "[/动作动画]")
                        break;
                    std::string path = Data.Get();
                    Config.animationPath[Ret] = path;
                }
            }
        }
        return Config;
    }
}