require( "scripts/game/level_params.lua" );
require( "scripts/game/upgrades.lua" );
require( "scripts/levels/deflevel.lua" );

--для результатов по концу
end_level_info={ upgrades={"lemonad"} };
--active_tutorials={"telphon_talk47",};  --"show_eating_2", "show_eating_3", "show_watering_1", "show_watering_2", "show_watering_3", "show_egging1", "show_egging2", "show_sheep1",  "show_sheep2", "show_sheep3", "show_sheep4", "show_sheep5"};


CustomSheep = " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=80; \
aObj.Params.thirst=10000;    \
aObj.Params.hungry=10000;    \
aObj.Params.create_product=20;    \
aObj.Tasks.eating.time_tick=450;  \
aObj.Tasks.eating.restore_health=1000; \
aObj.Tasks.eating.sleeping={6}; \
aObj.Tasks.watering.time_tick=350;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={3}; \
aObj.Tasks.shearing.time_tick=1000;  \
aObj.Tasks.shearing.restore_health=1000;  \
aObj.Tasks.shearing.sleeping={10}; \
aObj.Params.first_delay_desire = { 0 }; \
";

CustomCow = " \
aObj.Params.image='cow2'; \
aObj.Params.health=5000;    \
aObj.Params.Impatience=80;  \
aObj.Params.thirst=8000;    \
aObj.Params.hungry=9000;    \
aObj.Params.create_product=40;    \
aObj.Tasks.eating.time_tick=400; \
aObj.Tasks.eating.restore_health=1000; \
aObj.Tasks.eating.sleeping={4}; \
aObj.Tasks.watering.time_tick=300;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={4}; \
aObj.Tasks.milking.time_tick=1200;  \
aObj.Tasks.milking.restore_health=1000;  \
aObj.Tasks.milking.sleeping={8}; \
aObj.Params.first_delay_desire = { 6 }; \
";
           
CustomHen = " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=50; \
aObj.Params.thirst=8000;    \
aObj.Params.hungry=8000;    \
aObj.Params.create_product=30;    \
aObj.Tasks.eating.time_tick=250;  \
aObj.Tasks.eating.restore_health=1000; \
aObj.Tasks.eating.sleeping={5}; \
aObj.Tasks.watering.time_tick=250;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={3}; \
aObj.Tasks.egging.time_tick=1000;  \
aObj.Tasks.egging.restore_health=1000;  \
aObj.Tasks.egging.sleeping={7}; \
aObj.Params.first_delay_desire = { 0 }; \
";

CustomDad4 = " \
aObj.Params.image='dad4'; \
aObj.Params.speed=1550;            \
aObj.Params.LemonadWork=0.7;      \
aObj.Params.on_drink=1.7;         \
aObj.Params.count_action_drink=3; \
aObj.Tasks.eating.time_tick=100; \
aObj.Tasks.eating.timer=1; \
aObj.Tasks.watering.time_tick=100; \
aObj.Tasks.watering.timer=1; \
aObj.Tasks.eating_cow_end.time_tick=300; \
aObj.Tasks.eating_cow_end.timer=2; \
aObj.Tasks.milking_cow.time_tick=600; \
aObj.Tasks.milking_cow.timer=4; \
aObj.Tasks.fixed1_car.time_tick=800; \
aObj.Tasks.fixed1_car.timer=5;  \
aObj.Tasks.fixed2_car.time_tick=1000; \
aObj.Tasks.fixed2_car.timer=8;  \
aObj.Tasks.fixed1_car1.time_tick=800; \
aObj.Tasks.fixed1_car1.timer=4;  \
aObj.Tasks.watering_cow_end.timer=1;  \
aObj.Tasks.watering_cow_end.time_tick=400;  \
aObj.Tasks.eating_sheep_end.time_tick=300; \
aObj.Tasks.eating_sheep_end.timer=2; \
aObj.Tasks.shearing_sheep.time_tick=700;  \
aObj.Tasks.shearing_sheep.timer=5;  \
aObj.Tasks.watering_sheep_end.timer=1; \
aObj.Tasks.watering_sheep_end.time_tick=400; \
aObj.Tasks.hackfirewood_chopping.time_tick=600; \
aObj.Tasks.hackfirewood_chopping.timer=5; \
aObj.Tasks.heating_house.timer=1; \
aObj.Tasks.heating_house.time_tick=100; \
aObj.Tasks.eating_hen_end.time_tick=300; \
aObj.Tasks.eating_hen_end.timer=2; \
aObj.Tasks.egging_hen.timer=2; \
aObj.Tasks.egging_hen.time_tick=300; \
aObj.Tasks.watering_hen_end.timer=1; \
aObj.Tasks.watering_hen_end.time_tick=500; \
aObj.Tasks.watering_tomato_end.timer=1;  \
aObj.Tasks.watering_tomato_end.time_tick=500;  \
aObj.Tasks.weeding_tomato.timer=2;    \
aObj.Tasks.weeding_tomato.time_tick=500;    \
aObj.Tasks.collection_tomato.timer=3; \
aObj.Tasks.collection_tomato.time_tick=500; \
aObj.Tasks.tools.timer=1; \
aObj.Tasks.tools.time_tick=100; \
aObj.Tasks.tools_ground_end.timer=1; \
aObj.Tasks.tools_ground_end.time_tick=100; \
aObj.Tasks.eating_eatmachine_end.timer=1; \
aObj.Tasks.eating_eatmachine_end.time_tick=100; \
aObj.Tasks.trashing_trash_end.timer=1; \
aObj.Tasks.trashing_trash_end.time_tick=100; \
aObj.Tasks.relax_kreslo.timer=13;             \
aObj.Tasks.relax_kreslo.time_tick=1000;      \
aObj.Tasks.watering_goat_end.timer=1;  \
aObj.Tasks.watering_goat_end.time_tick=500;  \
aObj.Tasks.eating_goat_end.time_tick=300; \
aObj.Tasks.eating_goat_end.timer=3; \
aObj.Tasks.milking_goat.time_tick=600; \
aObj.Tasks.milking_goat.timer=4; \
aObj.Tasks.watering_corn_end.timer=1;  \
aObj.Tasks.watering_corn_end.time_tick=500;  \
aObj.Tasks.weeding_corn.timer=2;    \
aObj.Tasks.weeding_corn.time_tick=500;    \
aObj.Tasks.weeding_pumpkins.timer=2;    \
aObj.Tasks.weeding_pumpkins.time_tick=300;    \
aObj.Tasks.collection_corn.timer=3; \
aObj.Tasks.collection_corn.time_tick=500; \
aObj.Tasks.make_lemonad.timer = 1;          \
aObj.Tasks.make_lemonad.time_tick = 100;   \
aObj.Tasks.drink_lemonad.timer = 2;          \
aObj.Tasks.drink_lemonad.time_tick = 500;  \
aObj.Params.drink_speed_bonus = 1.9;        \
aObj.Params.lemonad_time = 30";
-- aObj.Tasks.make_lemonad  - время, которое отец тратит на готовку лимонада
-- aObj.Tasks.drink_lemonad  - время, которое отец тратит на питьё лимонада
--aObj.Params.drink_speed_bonus = 1.7;  - кофицент, на который лимонад увеличивает скорость  
--aObj.Params.lemonad_time = 10";  - время действия лимонада



CustomMother4 = " \
aObj.Params.image='mother4'; \
aObj.Params.speed=1550;            \
aObj.Params.LemonadWork=0.7;      \
aObj.Params.on_drink=1.7;         \
aObj.Params.count_action_drink=3; \
aObj.Tasks.eating.time_tick=100; \
aObj.Tasks.eating.timer=1; \
aObj.Tasks.watering.time_tick=300; \
aObj.Tasks.watering.timer=2; \
aObj.Tasks.eating_cow_end.time_tick=200; \
aObj.Tasks.eating_cow_end.timer=3; \
aObj.Tasks.milking_cow.time_tick=600; \
aObj.Tasks.milking_cow.timer=4; \
aObj.Tasks.watering_cow_end.timer=1;  \
aObj.Tasks.watering_cow_end.time_tick=500;  \
aObj.Tasks.eating_sheep_end.time_tick=200; \
aObj.Tasks.eating_sheep_end.timer=2; \
aObj.Tasks.shearing_sheep.time_tick=700;  \
aObj.Tasks.shearing_sheep.timer=5;  \
aObj.Tasks.watering_sheep_end.timer=1; \
aObj.Tasks.watering_sheep_end.time_tick=500; \
aObj.Tasks.eating_hen_end.time_tick=200; \
aObj.Tasks.eating_hen_end.timer=2; \
aObj.Tasks.egging_hen.timer=1; \
aObj.Tasks.egging_hen.time_tick=300; \
aObj.Tasks.watering_hen_end.time_tick=500; \
aObj.Tasks.watering_tomato_end.timer=1;  \
aObj.Tasks.watering_tomato_end.time_tick=500;  \
aObj.Tasks.weeding_tomato.timer=2;    \
aObj.Tasks.weeding_tomato.time_tick=500;    \
aObj.Tasks.collection_tomato.timer=3; \
aObj.Tasks.collection_tomato.time_tick=500; \
aObj.Tasks.talk_telephon.timer={5};  \
aObj.Tasks.talk_telephon.time_tick=400;  \
aObj.Tasks.eating_eatmachine_end.timer=1; \
aObj.Tasks.eating_eatmachine_end.time_tick=100; \
aObj.Tasks.trashing_trash_end.timer=1; \
aObj.Tasks.trashing_trash_end.time_tick=100; \
aObj.Tasks.relax_kreslo.timer=3;             \
aObj.Tasks.relax_kreslo.time_tick=1000;      \
aObj.Tasks.tools.timer=1; \
aObj.Tasks.tools.time_tick=100; \
aObj.Tasks.tools_ground_end.timer=1; \
aObj.Tasks.tools_ground_end.time_tick=100; \
aObj.Tasks.watering_goat_end.timer=1;  \
aObj.Tasks.watering_goat_end.time_tick=500;  \
aObj.Tasks.eating_goat_end.time_tick=300; \
aObj.Tasks.eating_goat_end.timer=3; \
aObj.Tasks.milking_goat.time_tick=600; \
aObj.Tasks.milking_goat.timer=2; \
aObj.Tasks.watering_corn_end.timer=1;  \
aObj.Tasks.watering_corn_end.time_tick=500;  \
aObj.Tasks.weeding_corn.timer=3;    \
aObj.Tasks.weeding_corn.time_tick=300;    \
aObj.Tasks.weeding_pumpkins.timer=2;    \
aObj.Tasks.weeding_pumpkins.time_tick=300;    \
aObj.Tasks.collection_corn.timer=3; \
aObj.Tasks.collection_corn.time_tick=500; \
aObj.Tasks.make_lemonad.timer = 1;          \
aObj.Tasks.make_lemonad.time_tick = 100;   \
aObj.Tasks.drink_lemonad.timer = 2;          \
aObj.Tasks.drink_lemonad.time_tick = 500;  \
aObj.Params.drink_speed_bonus = 1.9;        \
aObj.Params.lemonad_time = 30";
-- aObj.Tasks.make_lemonad  - время, которое отец тратит на готовку лимонада
-- aObj.Tasks.drink_lemonad  - время, которое отец тратит на питьё лимонада
--aObj.Params.drink_speed_bonus = 1.9;  - кофицент, на который лимонад увеличивает скорость  
--aObj.Params.lemonad_time = 10";  - время действия лимонада

CustomSister4 = " \
aObj.Params.image='sister4'; \
aObj.Params.speed=1550;            \
aObj.Params.LemonadWork=0.7;      \
aObj.Params.on_drink=1.7;         \
aObj.Params.count_action_drink=3; \
aObj.Tasks.eating.time_tick=100; \
aObj.Tasks.eating.timer=1; \
aObj.Tasks.watering.time_tick=300; \
aObj.Tasks.watering.timer=2; \
aObj.Tasks.eating_cow_end.time_tick=200; \
aObj.Tasks.eating_cow_end.timer=3; \
aObj.Tasks.milking_cow.time_tick=600; \
aObj.Tasks.milking_cow.timer=4; \
aObj.Tasks.watering_cow_end.timer=1;  \
aObj.Tasks.watering_cow_end.time_tick=500;  \
aObj.Tasks.eating_sheep_end.time_tick=200; \
aObj.Tasks.eating_sheep_end.timer=2; \
aObj.Tasks.shearing_sheep.time_tick=700;  \
aObj.Tasks.shearing_sheep.timer=5;  \
aObj.Tasks.watering_sheep_end.timer=1; \
aObj.Tasks.watering_sheep_end.time_tick=500; \
aObj.Tasks.eating_hen_end.time_tick=200; \
aObj.Tasks.eating_hen_end.timer=2; \
aObj.Tasks.egging_hen.timer=1; \
aObj.Tasks.egging_hen.time_tick=300; \
aObj.Tasks.watering_hen_end.time_tick=500; \
aObj.Tasks.watering_tomato_end.timer=1;  \
aObj.Tasks.watering_tomato_end.time_tick=500;  \
aObj.Tasks.weeding_tomato.timer=2;    \
aObj.Tasks.weeding_tomato.time_tick=500;    \
aObj.Tasks.collection_tomato.timer=3; \
aObj.Tasks.collection_tomato.time_tick=500; \
aObj.Tasks.talk_telephon.timer={5};  \
aObj.Tasks.talk_telephon.time_tick=400;  \
aObj.Tasks.eating_eatmachine_end.timer=1; \
aObj.Tasks.eating_eatmachine_end.time_tick=100; \
aObj.Tasks.trashing_trash_end.timer=1; \
aObj.Tasks.trashing_trash_end.time_tick=100; \
aObj.Tasks.relax_kreslo.timer=3;             \
aObj.Tasks.relax_kreslo.time_tick=1000;      \
aObj.Tasks.weeding_pumpkins.timer=2;    \
aObj.Tasks.weeding_pumpkins.time_tick=300;    \
aObj.Tasks.tools.timer=1; \
aObj.Tasks.tools.time_tick=100; \
aObj.Tasks.tools_ground_end.timer=1; \
aObj.Tasks.tools_ground_end.time_tick=100; \
aObj.Tasks.watering_goat_end.timer=1;  \
aObj.Tasks.watering_goat_end.time_tick=500;  \
aObj.Tasks.eating_goat_end.time_tick=300; \
aObj.Tasks.eating_goat_end.timer=3; \
aObj.Tasks.milking_goat.time_tick=600; \
aObj.Tasks.milking_goat.timer=2; \
aObj.Tasks.make_lemonad.timer = 1;          \
aObj.Tasks.make_lemonad.time_tick = 100;   \
aObj.Tasks.drink_lemonad.timer = 2;          \
aObj.Tasks.drink_lemonad.time_tick = 500;  \
aObj.Params.drink_speed_bonus = 1.9;        \
aObj.Params.lemonad_time = 30";
-- aObj.Tasks.make_lemonad  - время, которое отец тратит на готовку лимонада
-- aObj.Tasks.drink_lemonad  - время, которое отец тратит на питьё лимонада
--aObj.Params.drink_speed_bonus = 1.9;  - кофицент, на который лимонад увеличивает скорость  
--aObj.Params.lemonad_time = 10";  - время действия лимонада


              
               
CustomTomato = " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=50; \
aObj.Params.thirst=4000;    \
aObj.Params.hungry=4500;    \
aObj.Params.create_product=25;    \
aObj.Tasks.weeding.time_tick=1000;  \
aObj.Tasks.weeding.restore_health=1000; \
aObj.Tasks.weeding.sleeping={8}; \
aObj.Tasks.watering.time_tick=1000;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={7}; \
aObj.Tasks.collection.time_tick=1000;  \
aObj.Tasks.collection.restore_health=3000;  \
aObj.Tasks.collection.sleeping={7}; \
aObj.Params.first_delay_desire = { 0 }; \
";
CustomCorn = " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=50; \
aObj.Params.thirst=4000;    \
aObj.Params.hungry=4500;    \
aObj.Params.create_product=30;    \
aObj.Tasks.weeding.time_tick=1000;  \
aObj.Tasks.weeding.restore_health=1000; \
aObj.Tasks.weeding.sleeping={8}; \
aObj.Tasks.watering.time_tick=1000;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={7}; \
aObj.Tasks.collection.time_tick=1000;  \
aObj.Tasks.collection.restore_health=3000;  \
aObj.Tasks.collection.sleeping={7}; \
aObj.Params.first_delay_desire = { 0 }; \
";

CustomPumpkin= " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=50; \
aObj.Params.thirst=4000;    \
aObj.Params.hungry=4500;    \
aObj.Params.create_product=10;    \
aObj.Tasks.weeding.time_tick=1000;  \
aObj.Tasks.weeding.restore_health=1000; \
aObj.Tasks.weeding.sleeping={8}; \
aObj.Tasks.watering.time_tick=1000;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.watering.sleeping={7}; \
aObj.Tasks.collection.time_tick=1000;  \
aObj.Tasks.collection.restore_health=3000;  \
aObj.Tasks.collection.sleeping={7}; \
aObj.Params.first_delay_desire = { 0 }; \
";               

CustomTelephon = " \
aObj.Triggers.Talk.timer={ 30 }; \
aObj.Triggers.Talk.first_timer={600}; \
aObj.Triggers.Talk.amount=1; \
aObj.Triggers.Talk.duration=15; \
";               

CustomGround = " \
aObj.Params.Impatience = 60; \
aObj.Params.health=5000;     \
";
CustomGround = " \
aObj.Params.Impatience = 60; \
aObj.Params.health=5000;     \
";

CustomGroundPumpkin = " \
aObj.Params.Impatience = 60; \
aObj.Params.health=5000;     \
aObj.Params.next_product='pumpkin';     \
aObj.Triggers.DieObj.timer = 2; \
";
CustomGroundCorn = " \
aObj.Params.Impatience = 60; \
aObj.Params.health=5000;     \
aObj.Params.next_product='corn';     \
aObj.Triggers.DieObj.timer = 2; \
";
CustomGroundTomato = " \
aObj.Params.Impatience = 60; \
aObj.Params.health=5000;     \
aObj.Params.next_product='tomato';     \
aObj.Triggers.DieObj.timer = 2; \
";

CustomFirewood = " \
aObj.Params.create_product=20; \
";

CustomWolf = " \
aObj.Triggers.Evil.timer={ 110}; \
aObj.Triggers.Evil.first_timer={ 50000}; \
aObj.Triggers.Evil.amount=1; \
";               
CustomWolf1 = " \
aObj.Triggers.Evil.timer={ 24 }; \
aObj.Triggers.Evil.first_timer={ 10000 }; \
aObj.Triggers.Evil.amount=1; \
";               
CustomEatmachine = " \
aObj.Tasks.eating.time_tick=400; \
";

CustomCar = " \
aObj.Triggers.BreakageTrigger.timer={ 24 }; \
aObj.Triggers.BreakageTrigger.first_timer={ 300 }; \
aObj.Triggers.BreakageTrigger.amount=1; \
";   
            
CustomCrow = " \
aObj.Triggers.Evil.timer={ 100 }; \
aObj.Triggers.Evil.first_timer={ 20 }; \
aObj.Triggers.Evil.amount=2; \
";  
             
CustomGoat = " \
aObj.Params.health=5000;    \
aObj.Params.Impatience=50; \
aObj.Params.thirst=3000;    \
aObj.Params.hungry=3500;    \
aObj.Params.create_product=10;    \
aObj.Tasks.eating.time_tick=450;  \
aObj.Tasks.eating.restore_health=1000; \
aObj.Tasks.watering.time_tick=350;  \
aObj.Tasks.watering.restore_health=1000;  \
aObj.Tasks.milking.time_tick=1000;  \
aObj.Tasks.milking.restore_health=1000;  \
";

--машинка работает 8 тиков
CustomCheesemachine = " \
aObj.Triggers.SwitchOn.time_tick=400; \
";


--aObj.Params.glass_count - количество стаканов лимонада за одно преготовление
-- НЕ ДОЛЖНО БЫТЬ БОЛЬШЕ ЧИСЛА ПЕРСОНАЖЕЙ НА УРОВНЕ!!!
CustomLemonad= "\
aObj.Tasks.make.time_tick = 1000; \
aObj.Params.glass_count = 2; \
";


--aObj.Params.glass_count - количество стаканов лимонада за одно преготовление
-- НЕ ДОЛЖНО БЫТЬ БОЛЬШЕ ЧИСЛА ПЕРСОНАЖЕЙ НА УРОВНЕ!!!
CustomLemonad= "\
aObj.Tasks.make.time_tick = 500; \
aObj.Params.glass_count = 2; \
";

-- настройки лимонада для сына(такие же как и для лемонадной машинки)
CustomLemonadBrother= "\
aObj.Params.image='lemonad_brother4'; \
aObj.Tasks.fill.time_tick = 400; \
aObj.Params.glass_count = 3; \
";
--настройки сына - aaa(точки пугания),telephon(выносить телефон в эту точку),home(точка захода в дом)
CustomBrother = "\
aObj.InnerPoint={ aaa={ {11,1}, {11,-3} }; telephon = {12,-3}; home = {9,-3}; }; \
";
--настройки телефона который выносит сын
CustomMobila = " \
aObj.Triggers.Talk.timer={ 10 }; \
aObj.Triggers.Talk.first_timer={30005}; \
aObj.Triggers.Talk.amount=1; \
aObj.Triggers.Talk.duration=15; \
";           


GameObject = {
-- основные параметры
    Params = {
-- параметры которые можно менять    
        PreviewMessage="level51_preview";
        --PreviewImage="preview/sheep.png";
        scrolling = 1;      -- turns scrolling off-on
        levelTime = 260;    -- время которое длится уровень
        visualWidth = 800;--1000; -- размер игрового поля в пикселах, ширина
        visualHeight = 600;--800; -- размер игрового поля в пикселах, высота
        WinScoresLimit    = 59000; -- кол-во очков необходимое для победы
        ExpertScoresLimit = 67000; -- кол-во очков необходимое для победы
        MaxScoreLimit     = 67000; -- кол-во очков по которым настраивается индикатор очков в игре должно быть больше чем WinScoresLimit и ExpertScoresLimit
        StartBlockTime    = 1000; --задержжка перед началом
        MaxCountDesirous  = 0;    --макс.кол-во одновременно желающих, 0-нет ограничений
        image="level4";
        CryTime = 20;             

        
-- параметры которые НЕЛЬЗЯ менять    
        ID="level";         -- do not change this parameter
        width=0;            -- do not change this parameter
        height=0;           -- do not change this parameter
        deltaDay = 1;       -- do not change this parameter
        curDeltaDay = 0;    -- do not change this parameter
        gameEnd = 0;        -- do not change this parameter
        GridData = {};      -- do not change this parameter    
    };
-- таблица начисления очков за выполнение задачи    
        Scores = 
    {
        keeping_redbarn_end = 70; -- за относ в амбар чего-либо
        cow__anger = -10;  -- сколько очков снимается за злость коровы
        sheep__anger      = -10;   -- сколько очков снимается за злость всего остального
        hen__anger = -10;
        car1__tools = 80;       -- сколько очков за первый ремонт

        fixed1 = 0;       -- сколько очков за первый ремонт
        fixed2 = 0;      -- сколько очков за второй ремонт

        milking_cow = 80; -- сколько очков за доение    
        refer = 60;         -- за подбор дров
        hackfirewood = 100;  --за рубку дров

        stop_ring = 0;    -- за неподнятый телефон

        collection_tomato = 80; -- за сбор помидоров
        tools_ground_end = 100;    --очки за грядку
        collection_corn = 80; -- за сбор кукурузы

        watering_cow_end   = 40;
        eating_sheep_end   = 60;
        tools_tomato_end = 70;
        tools_corn_end = 70;
        tools_sheep_end = 70;
        tools_cow_end = 70;
        shearing_sheep   = 80; 
        watering_sheep_end   = 40; 
        
        milking_goat = 80;
        watering_goat_end = 40;
        eating_goat_end   = 60;
        
        eating_hen_end   = 60; 
        egging_hen   = 70; 
        watering_hen_end   = 40; 
        --Tomato
        watering_tomato_end   = 40;         
        weeding_tomato = 60;        

        watering_corn_end   = 40;         
        weeding_corn = 60;        

        trashing_eating = 0;
        trashing_watering = 0;

        keeping_tomatostake = 0; 
        keeping_eggtake = 0; 
        keeping_milktake = 0; 
        keeping_sheartake = 0; 
        --за относ молока козы в сыроварку
        switch_on_milkgoattake = 50; 


        watering_pumpkins_end  = 40;
        tools_pumpkins_end = 70;
        weeding_pumpkins = 60;        
        collection_pumpkins = 80; -- за сбор кукурузы
        keeping_pumpkintake = 0; 



--[[
        Начисление очков:
        Очки начисляются согласно секции statistic
        действия, относящееся к персонажам заканчиваются на "_имя_обьекта"
         для каждого действия может быть указан спицификатор обьекта, для которого оно считается, для указания перед названием ставится идентификатор и два знака подчёркивания
         например 
         cow__watering  - сколько очков за поение коровы
         mother__shearing_sheep - сколько за стрижку офцы матерью
--]]
    };
-- таблица начисления денег за продукты
    Money = {
        shear = 40; --сколько денег дают за 1 
        milk = 15; --сколько денег дают за 1 milk
        egg = 15;   --сколько денег дают за 1 egg
        tomatos = 15;--сколько денег дают за 1 tomato
        milkgoat = 0;--сколько денег дают за 1 milkgoat
        cheese = 400; --сколько денег дают за 1 кусок сыра
        corns = 15; --за кукурузу
        pumpkin = 50; --сколько денег дают за 1 тыкву

    };
-- таблица начисления денег за продукты если доступен бонус
    BonusMoney = {
        --бонусные очки за Goal
        Goal = {
            active = 0;    --НЕ ТРОГАТЬ! 
            addition = 0;  -- если 0 то это умножается на кол-во и прибавляется деньгам, иначе просто прибавляется к деньгам
            shear = 0;    --сколько денег дают за 1 
            milk = 0;      --сколько денег дают за 1 milk
            egg = 0;       --сколько денег дают за 1 egg
            tomatos = 0;   --сколько денег дают за 1 tomato
            milkgoat = 0; --сколько денег дают за 1 milkgoat
            cheese = 0;   --сколько денег дают за 1 кусок сыра
            corns = 0; --за кукурузу
        };
        --бонусные очки за машину
        Car = {
            active = 1;    --НЕ ТРОГАТЬ! 
            addition = 0;  -- если 0 то это умножается на кол-во и прибавляется деньгам, иначе просто прибавляется к деньгам
            shear = 20;    --сколько денег дают за 1 
            milk = 8;      --сколько денег дают за 1 milk
            egg = 8;      --сколько денег дают за 1 egg
            tomatos = 8;   --сколько денег дают за 1 tomato
            milkgoat = 0; --сколько денег дают за 1 milkgoat
            cheese = 200;   --сколько денег дают за 1 кусок сыра
            corns = 8; --за кукурузу
            pumpkin = 25; --сколько денег дают за 1 тыкву

        };
        -- бонусные очки за телефон
        Telephon = {
            active = 0;    --НЕ ТРОГАТЬ! 
            addition = 0;  -- если 0 то это умножается на кол-во и прибавляется деньгам, иначе просто прибавляется к деньгам
            shear = 0;    --сколько денег дают за 1 
            milk = 0;      --сколько денег дают за 1 milk
            egg = 15;       --сколько денег дают за 1 egg
            tomatos = 0;   --сколько денег дают за 1 tomato
            milkgoat = 0; --сколько денег дают за 1 milkgoat
            cheese = 0;   --сколько денег дают за 1 кусок сыра
            corns = 0; --за кукурузу
            pumpkin = 0; --сколько денег дают за 1 тыкв
        };
    };
-- таблица игровых обьектов    
    Objects = {
        dad = { {x=11, y=-2, params=CustomDad4} };
      mother =  { {x=11 , y=-1, params=CustomMother4} };
        sister =  { {x=10, y=-3, params=CustomSister4 } };
        
        brother =  { x=9, y=-3,childs = {mobila = {  x=1,y=1,params=CustomMobila}  }, params=CustomBrother  } ; 
        lemonad_brother = {x=8,y=1,params = CustomLemonadBrother };
        --telephon4 = { x=8, y=1, params=CustomTelephon };
        --lemonad4 = { x=8, y=1, params = CustomLemonad};
        dog_point4 = { x=0, y=0 }; --нет
        dog = {x=11,y=1}, -- нет
        sheephouse4 = {  x=6, y=-9, childs = {sheep4 = {  {42, params=CustomSheep}, {43, params=CustomSheep},{44, params=CustomSheep} } }};         
        goathouse4 = {  x=23, y=-3 , childs = {goat3 = {  {5, params=CustomGoat}, {5, params=CustomGoat}, {9, params=CustomGoat} } }};         
        cowshed4 = {x=16, y=-17, childs = {cow4 = {  {35, params=CustomCow},{36, params=CustomCow} }}};        
        --pumpkins = {{ x=14, y = -1, params=CustomPumpkin  },{ x=15, y = -4, params=CustomPumpkin  }};

        --ground_el = {  { x=14, y = -1, params=CustomGroundTomato},  {x=15, y = -4, params=CustomGroundCorn}};         --pumpkins = {  x= 18, y =-2, params=CustomPumpkin  };
        --при включении или удалении ground_el изменять life_cycle для ground
        --ground_el = { {x=14, y = -1, params=CustomGroundPumpkin},{x=15, y = -4, params=CustomGroundPumpkin}  };
        corn= {x=15, y = -4, params=CustomCorn };
        tomato = { x=14, y = -1, childs={crow1 = {0, params=CustomCrow}}, params=CustomTomato };
        --corn= { { x=15, y = -4, params=CustomCorn} };         
        pond4 = { x=23, y=-4 };
        house4 = { x=6, y=-3}; -- склад 
        redbarn4 = { x=15 , y =9 }; -- dom
        car4 = { x=33, y=-7, params=CustomCar }; --нет
        ambar4 = { x=12, y=7 }; 

        henhouse4 = { x=16, y =5, childs = { hen4 = { {5,params=CustomHen},{6,params=CustomHen},{7,params=CustomHen} } } };
        workshop4 = { x=26, y =-14 }; -- trapka
        wolf = {x = 8, y = 3, params=CustomWolf };  --нет

        cheesemachine4 = {x = 28, y = -11, params=CustomCheesemachine};
        
        eatmachine4 = {x = 12, y = 4, childs = {portion = {  {0},{0}    } }, params=CustomEatmachine};
        -- по x = -1 от eatmachine(большой) y = такой же    
        eatmachine_m4 = {x = 11, y = 4, childs = {portion = {  {0}, {0}   } }, params=CustomEatmachine};
        trash4 = {x=31, y = -9};
        --kreslo = { x=9, y =4, params="aObj.Params.image='kreslo4'" };
    };
-- обьекты, которые создаются только в определённом случаи  

    NeedProducts = 
    {

    },     
    
    
-- все что ниже этой линии не трогать    
    
-- do not change this array    
    Statics = {
        die_cow = 0;       
        create_cow =0;
        
        ProductName={"milk","shear","egg","tomatos","cheese","corns","pumpkin","milkgoat"};
        indexStatics = 1;
        milk = -1;
        shear = -1;
        egg = -1;
        tomatos = -1;
        --milkgoat = -1;
        cheese = -1;
        corns = -1;
        
        score = 0;
        bonus_score = 0;
        cows_milked = 0;
        real_die_cow = 0;   
        real_die_sheep = 0; 
    };
    -- list of all tasks for an object
    Tasks = { };
    -- list of all triggers for an object
    Triggers = { 
        TimeLevel = { FuncName="TimeTrigger", NotRunWhen = {}; };
    };
    --tasks to be performed after an object is created
    InitActiveTasks = {};   -- InitActiveTasks = {"EatingTask","DrinkingTask"};
    --tasks an object is waiting ofr after it is created
    InitExpectedTasks = {}; -- InitExpectedTasks = {"EatingTask","DrinkingTask"};
};
--жизненный цикл животных уровня
life_cycle = {
-- жизненый цикл для всех коров, параметр first_pause обязателен 
-- и всегда ТОЛЬКО первый, но он может быть равен 0
cow = {
    -- корова № 1
    {
        { "first_pause", 0 };
        
        { "eating", 0 };
        { "watering", 0 };
        { "tools", 0 };
        { "milking", 50};


    };
    -- корова № 2
    {
        { "first_pause", 0 };
        

        { "eating", 0 };
        { "watering", 0 };
        { "tools", 0 };
        { "milking", 50 };


    };
    -- корова № 3
    {
        { "first_pause", 0 };
        
        { "eating", 0 };
        { "watering", 0 };
        { "milking", 55 };
    };
};
hen = {
    --кура № 1
    {
        { "first_pause", 0 };

        { "eating", 0 };
        { "watering", 0 };
        { "egging", 36 };

    };
    --кура № 2
    {
        { "first_pause", 0 };

        { "eating", 0 };
        { "watering", 0 };
        { "egging", 33 };

    };
    --кура № 3
    {
        { "first_pause", 0 };

        { "eating", 0 };
        { "watering", 0 };
        { "egging", 34};
    };
};
sheep = {
    --овца № 1
    {
        { "first_pause", 0 };

        { "watering", 0 };
        { "tools", 0 };
        { "eating", 0 };
        { "shearing", 37 };

    };
    --овца № 2
    {
        { "first_pause", 0 };

        { "watering", 0 };
        { "tools", 0 };
        { "eating", 0 };
        { "shearing", 39 };

    };
    --овца № 3
    {
        { "first_pause", 0 };

        { "watering", 0 };
        { "tools", 0 };
        { "eating", 0 };
        { "shearing", 40 };

    };
};
tomato = {
    --помидоры № 1
    {
        { "first_pause", 15 };

        { "watering", 15 };
        { "weeding", 5};
        { "collection", 10 };
    };

    --помидоры № 2
    {
        { "first_pause", 10 };
        
        { "tools", 15 };
        { "watering", 10 };
        { "weeding", 15};
        { "collection", 20 };
        { "tools", 15 };
        { "watering", 5 };
        { "weeding", 0};
        { "collection", 30 };
        { "tools", 15 };        
        { "watering", 10 };
        { "weeding", 15};
        { "collection", 40 };
        { "tools", 15 };
        { "watering", 0 };
        { "weeding", 4};
        { "collection", 20 };

    };
};
pumpkins = {
    --тыква № 1
    {
        { "first_pause", 15 };

        { "watering", 5 };
        { "weeding", 10 };
        { "tools", 16 };
        { "collection", 35 };
    };
    --тыква № 2
    {
        { "first_pause", 15 };

        { "watering", 5 };
        { "weeding", 10 };
        { "tools", 15 };
        { "collection", 35 };
    };
    --тыква № 3
    {
        { "first_pause", 5 };

        { "watering", 5 };
        { "weeding", 5 };
        { "tools", 5 };
        { "collection", 5 };
    };
};


corn = {
    --corn № 1
    {
        { "first_pause", 10 };
        
        { "watering", 10 };
        { "tools", 10 };
        { "collection", 20 };

    };
    --corn № 2
    {
        { "first_pause", 10 };
        
        { "watering", 8 };
        { "tools", 10 };
        { "collection", 10 };
        { "watering", 10 };
        { "tools", 10 };
        { "collection", 15 };
        { "watering", 10 };
        { "tools", 10 };
        { "collection", 10 };

    };
};
ground = {
    --грядка № 1
    {
        { "first_pause", 30,5,0,10 };
        
        { "weeding", 10};
        
--если используется ground (убрать эту строку если ground_el)
        --{ "tools", 5000 };
      
--если исплользуется ground_el (убрать эти 2 строки если ground)
        { "tools", 5 };
        { "switch_to_tomato", 20 };

    };

};
goat = {
    --коза № 1
    {
        { "first_pause", 0 };

        { "eating", 0 };
        { "watering", 0 };
        { "milking", 45 };
        { "eating", 0 };
        { "watering", 0 };
        { "milking", 33 };
    };
    --коза № 2
    {
        { "first_pause", 0 };

        { "eating", 0 };
        { "watering", 0 };
        { "milking", 45 };
        { "eating", 0 };
        { "watering", 0 };
        { "milking", 27 };
    };
    --коза № 3
    {
        { "first_pause", 0 };

        { "eating", 0};
        { "watering", 0 };
        { "milking", 45};
        { "eating", 0};
        { "watering", 0 };
        { "milking", 30};
    };
};
};
--для комбо

AngerScores = {
-- при потере меньше одного первый раз очки=first_minus, а дальше к этому прибавляется еще по delta за каждый раз, пока в минусах
--сколько сердечек сейчас, после потери
--                                   1         2        3          4       5  
    all = {  20,  0,  0,  0,  0, delta = 5, first_minus = 25 };  
};

function GameObject:Get()
    return self;
end


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






