-- не настраивать
require( "scripts/game/deftime.lua" );
require( "scripts/game/deftasks.lua" );
GameObject = {
-- основные параметры
    Params = {
        ID="henhouse1";
        width=4;
        height=5;
        RandomTasks=0;
        GridData = { 
            1,1,1,1,
            1,1,1,1,
            1,1,1,1,
            1,1,1,1,
            1,1,1,1
        };
        no_click=1;
    };
    -- точки подхода персонажа
    ActivePoints = { 
        take =   { 
                        { {"hen"}, 0,0,0, 0,  0,0,0 };
                        { {"hen"}, 2,0,0, 0,  0,0,0 };
                        { {"hen"}, 4,0,0, 0,  0,0,0 };
                     }; 
        plank = {
            { {}, 2,4,0, 0,  0,0,0 };
        };                                          
    };
    Objects = {};
    Tasks = { 
        plank = { FuncName="PlankingTaskExecute", timer=1, time_tick=100, restore_health=1000 };
    };
    -- перечисление всех триггеров для обьекта
    Triggers = { 
        need_repair = {FuncName="NeedRepairTriger", NotRunWhen={}, timer={ 55 }, first_timer={ 10000 }, amount=1, cur_value=0, koef=0.5 }
    };
    --задачи которые начинают выполнятся после создания обьекта
    InitActiveTasks = {};
    --задачи которые обьект ожидает после создания обьекта
    InitExpectedTasks = {};
};
function GameObject:Get()
    return self;
end

function GetParams()
    aObj = GameObject:Get();   
    return aObj.Params;
end

function PlankingTaskExecute()
    DefPlankingTaskExecute("hen","");
end

function NeedRepairTriger()
    DefNeedRepairTriger("hen","");
end



