/*
文件名:TileObject.nut
路径:User/Object/Map/TileObject.nut
创建日期:2024-11-28	23:17
文件用途:地板类
*/
class Tile extends CL_SpriteObject {

    m_data = null;

    function InitData(path) {
        m_data = ScriptData.GetFileData(path, function(DataTable, Data) {
            while (!Data.Eof()) {
                local Pack = Data.Get();
                if (Pack == "[IMAGE]") {
                    local PathBuf = Data.Get().tolower();
                    if (PathBuf.len() > 0) {
                        DataTable.path <- "sprite/" + PathBuf;
                        DataTable.idx <- Data.Get();
                    }
                } else if (Pack == "[img pos]") {
                    DataTable.pos <- Data.Get();
                } else if (Pack == "[pass type]") {
                    DataTable.pass_type <- [];
                    while (!Data.Eof()) {
                        DataTable.pass_type.push(Data.Get());
                    }
                }
            }
        });
    }

    constructor(arg) {
        if (typeof arg == "integer") {

        } else if (typeof arg == "string") {
            InitData(arg);
            if ("path" in m_data)
                base.constructor(m_data.path, m_data.idx);
            else {
                base.constructor("sprite/character/common/circlecooltime.img", 27);
            }
        }
    }
}