function OnSceneLoad(screen)
	menu = screen	
	
    game_state = {}    
    LoadData(screen)        
    game_state.custom_cursors = {}
    game_state.locked_objects = {}
    --level:AddTaskSafe(CreateTask('', '', ''))
    --zone = CreateZoomZone('')
    game_state.locker = ReferenceCounter()
    game_state.active_zone = nil
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('0033')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, -3 * M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('0034')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, 3 * M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('004')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('005')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, M_TWO_PI);
	af:Play()
	
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('001')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('0012')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, -M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('002')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, M_TWO_PI);
	af:Play()
		
	local af = CreateAnimationEffector()
	local object = screen:GetObject('003')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, -3 * M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('0032')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, 3 * M_TWO_PI);
	af:Play()
	
	local af = CreateAnimationEffector()
	local object = screen:GetObject('004')
	af:AttachTo(object)
	af:SetMode(_ANIM_FWD + _ANIM_LOOP)	
	af:SetKey(_TRACK_A, 0, 0);
	af:SetKey(_TRACK_A, 3.95833333333333, M_TWO_PI);
	af:Play()
	
	game_state.buttons = CreateAutoRegisterEntity();
	
	local up = screen:GetObject("exitup"):GetAnimationPtr()
	screen:GetObject("exitup"):SetVisible(false)
	local over = screen:GetObject("exitover"):GetAnimationPtr()
	screen:GetObject("exitover"):SetVisible(false)
	local down = screen:GetObject("exitdown"):GetAnimationPtr()
	screen:GetObject("exitdown"):SetVisible(false)
	button = CreateButton(up, over, down, "Exit", screen)
	button:SetXY(742, 690)
	button:SetZ(534)
	button:AttachTo(screen)	
	
	local up = screen:GetObject("optionsup"):GetAnimationPtr()
	screen:GetObject("optionsup"):SetVisible(false)
	local over = screen:GetObject("optionsover"):GetAnimationPtr()
	screen:GetObject("optionsover"):SetVisible(false)
	local down = screen:GetObject("optionsdown"):GetAnimationPtr()
	screen:GetObject("optionsdown"):SetVisible(false)
	button = CreateButton(up, over, down, "Options", screen)
	button:SetXY(366, 560)
	button:SetZ(534)
	button:AttachTo(screen)	
	
	local up = screen:GetObject("playup"):GetAnimationPtr()
	screen:GetObject("playup"):SetVisible(false)
	local over = screen:GetObject("playover"):GetAnimationPtr()
	screen:GetObject("playover"):SetVisible(false)
	local down = screen:GetObject("playdown"):GetAnimationPtr()
	screen:GetObject("playdown"):SetVisible(false)
	button = CreateButton(up, over, down, "Play", screen)	
	button:SetXY(516, 502)
	button:SetZ(534)
	button:AttachTo(screen)	
	
	local up = screen:GetObject("creditsup"):GetAnimationPtr()
	screen:GetObject("creditsup"):SetVisible(false)
	local over = screen:GetObject("creditsover"):GetAnimationPtr()
	screen:GetObject("creditsover"):SetVisible(false)
	local down = screen:GetObject("creditsdown"):GetAnimationPtr()
	screen:GetObject("creditsdown"):SetVisible(false)
	button = CreateButton(up, over, down, "Credits", screen)
	button:SetXY(668, 561)
	button:SetZ(534)
	button:AttachTo(screen)	
	    
	local up = screen:GetObject("profileup"):GetAnimationPtr()
	screen:GetObject("profileup"):SetVisible(false)
	local over = screen:GetObject("profileover"):GetAnimationPtr()
	screen:GetObject("profileover"):SetVisible(false)
	local down = screen:GetObject("profiledown"):GetAnimationPtr()
	screen:GetObject("profiledown"):SetVisible(false)
	button = CreateButton(up, over, down, "Profiles", screen)
	button:SetXY(291, 690)
	button:SetZ(534)
	button:AttachTo(screen)		
	
	local up = screen:GetObject("RewardGameUp"):GetAnimationPtr()
	screen:GetObject("RewardGameUp"):SetVisible(false)	
	local down = screen:GetObject("RewardGameDown"):GetAnimationPtr()
	screen:GetObject("RewardGameDown"):SetVisible(false)
	button = CreateButton(up, down, down, "RewardGame", screen)
	button:SetXY(941, 94)
	button:SetZ(534)
	button:AttachTo(screen)	
	menu.reward_button = button
	
	game_state.is_lever_moving = false
	
	LoadAdditionalAnimations(screen)
	
	--screen:GetObject('pixel'):ChangeOpacity(1, 0, 15)
	
	local up = screen:GetObject("MoreUp"):GetAnimationPtr()
	screen:GetObject("MoreUp"):SetVisible(false)
	local over = screen:GetObject("MoreOver"):GetAnimationPtr()
	screen:GetObject("MoreOver"):SetVisible(false)
	local down = screen:GetObject("MoreOver"):GetAnimationPtr()
	screen:GetObject("MoreOver"):SetVisible(false)
	button = CreateButton(up, over, down, "More", screen)
	button:SetXY(515, 727)
	button:SetZ(550)
	button:AttachTo(screen)	
	
	screen:SetLayer(2)
	
	local waterEffect = WaterEffectComposition()
	waterEffect:Play()
	waterEffect:AttachTo(screen)	
	waterEffect:SetZ(290)
	
	
	
	menu.game_state = game_state
	
	local caption = ""
    local cp = GetProfileManager():GetCurrentProfile()	
    if cp then
        caption = cp:GetName()
    end
    menu.game_state.playerName = CreateTextEntity("profile", caption)
	local PlayersName = menu.game_state.playerName
	PlayersName:AttachTo(screen:GetObject('profile_01'))
	--ProceedHint:SetXY(571, 759)
	PlayersName:SetX(-379)
	PlayersName:SetLayer(COMICS_LAYER)
	PlayersName:SetZ(500)
	--ProceedHint:SetScale(0.5)	
	
	local all_cigars_found = true
	cp = GetProfileManager():GetCurrentProfile()
	if cp then
        for i, v in ipairs(cp.cigars_found) do
            all_cigars_found = all_cigars_found and v
        end
        game_state.all_cigars_found = all_cigars_found
        
        if all_cigars_found then
            menu.reward_button:Go()
            menu:GetObject("Chains"):Hide()
            return    
        end        
    end
	
    menu.reward_button:SetAngle(0)
    menu.reward_button:Stop()
    menu:GetObject("Chains"):Show()    
end

function OnButtonMouseEnter(title)
	if title == 'RewardGame' then
	    game_state.is_mouse_entered = true		
	end
end

function OnButtonMouseLeave(title)
	if title == 'RewardGame' then
		game_state.is_mouse_entered = false
	end
end

function LoadAdditionalAnimations(screen)	
    -- Layer carlight1
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/carlight.png");
    anim:SetHotSpot(32.5, 30.5);
    object = screen:CreateObject("carlight1", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(103);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(22.64, 43.72);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 22.64, 531.5);
    effector:SetKey(_TRACK_Y, 22.64, 280);
    effector:SetKey(_TRACK_X, 24.84, 519.5);
    effector:SetKey(_TRACK_Y, 24.84, 281.5);
    effector:SetKey(_TRACK_X, 26.64, 510.5);
    effector:SetKey(_TRACK_Y, 26.64, 285.5);
    effector:SetKey(_TRACK_X, 28.16, 509);
    effector:SetKey(_TRACK_Y, 28.16, 318);
    effector:SetKey(_TRACK_X, 28.6, 500);
    effector:SetKey(_TRACK_Y, 28.6, 328.5);
    effector:SetKey(_TRACK_SX, 22.64, 0.81639344262295);
    effector:SetKey(_TRACK_SY, 22.64, 0.53947036569987);
    effector:SetKey(_TRACK_SX, 24.84, 0.89331651954603);
    effector:SetKey(_TRACK_SY, 24.84, 0.89331651954603);
    effector:SetKey(_TRACK_SX, 27.84, 1.22118537200504);
    effector:SetKey(_TRACK_SY, 27.84, 1.22118537200504);
    effector:SetKey(_TRACK_SX, 28.6, 0.86733921815889);
    effector:SetKey(_TRACK_SY, 28.6, 0.90970996216898);
    effector:SetKey(_TRACK_O, 22.64, 0);
    effector:SetKey(_TRACK_O, 23.48, 1);
    effector:SetKey(_TRACK_O, 27.8, 1);
    effector:SetKey(_TRACK_O, 29.6, 0);

    -- Layer car1
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/car1.png");
    anim:SetHotSpot(143.5, 30.5);
    object = screen:CreateObject("car1", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(102);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(27.04, 43.72);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 27.04, 514.75);
    effector:SetKey(_TRACK_Y, 27.04, 300.5);
    effector:SetKey(_TRACK_X, 27.56, 517.74971867497);
    effector:SetKey(_TRACK_Y, 27.56, 308.001808518051);
    effector:SetKey(_TRACK_X, 28.08, 515.25);
    effector:SetKey(_TRACK_Y, 28.08, 317.5);
    effector:SetKey(_TRACK_X, 29.68, 469);
    effector:SetKey(_TRACK_Y, 29.68, 339.75);
    effector:SetKey(_TRACK_X, 31.16, 408.75);
    effector:SetKey(_TRACK_Y, 31.16, 346.5);
    effector:SetKey(_TRACK_X, 32.16, 357.582103203455);
    effector:SetKey(_TRACK_Y, 32.16, 351.516624708432);
    effector:SetKey(_TRACK_X, 33.2, 287);
    effector:SetKey(_TRACK_Y, 33.2, 358.75);
    effector:SetKey(_TRACK_X, 33.92, 200.754334190549);
    effector:SetKey(_TRACK_Y, 33.92, 364.787783416203);
    effector:SetKey(_TRACK_X, 35.6, -121.5);
    effector:SetKey(_TRACK_Y, 35.6, 389.5);
    effector:SetKey(_TRACK_SX, 26.8, 0.24390243902439);
    effector:SetKey(_TRACK_SY, 26.8, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 30.04, 0.37282229965157);
    effector:SetKey(_TRACK_SY, 30.04, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 32.32, 0.69414000633513);
    effector:SetKey(_TRACK_SY, 32.32, 0.65573770491803);
    effector:SetKey(_TRACK_SX, 33.8, 0.93050364269876);
    effector:SetKey(_TRACK_SY, 33.8, 0.80327868852459);
    effector:SetKey(_TRACK_SX, 35.56, 1.40323091542604);
    effector:SetKey(_TRACK_SY, 35.56, 1.22950819672131);
    effector:SetKey(_TRACK_O, 27, 0);
    effector:SetKey(_TRACK_O, 27.68, 1);

    -- Layer carlight2
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/carlight.png");
    anim:SetHotSpot(32.5, 30.5);
    object = screen:CreateObject("carlight2", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(101);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(15.04, 39.8);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 15.04, 531.5);
    effector:SetKey(_TRACK_Y, 15.04, 280);
    effector:SetKey(_TRACK_X, 17.24, 519.5);
    effector:SetKey(_TRACK_Y, 17.24, 281.5);
    effector:SetKey(_TRACK_X, 19.04, 510.5);
    effector:SetKey(_TRACK_Y, 19.04, 285.5);
    effector:SetKey(_TRACK_X, 20.56, 509);
    effector:SetKey(_TRACK_Y, 20.56, 318);
    effector:SetKey(_TRACK_X, 21, 500);
    effector:SetKey(_TRACK_Y, 21, 328.5);
    effector:SetKey(_TRACK_SX, 15.04, 0.81639344262295);
    effector:SetKey(_TRACK_SY, 15.04, 0.53947036569987);
    effector:SetKey(_TRACK_SX, 17.24, 0.89331651954603);
    effector:SetKey(_TRACK_SY, 17.24, 0.89331651954603);
    effector:SetKey(_TRACK_SX, 20.24, 1.22118537200504);
    effector:SetKey(_TRACK_SY, 20.24, 1.22118537200504);
    effector:SetKey(_TRACK_SX, 21, 0.86733921815889);
    effector:SetKey(_TRACK_SY, 21, 0.90970996216898);
    effector:SetKey(_TRACK_O, 15.04, 0);
    effector:SetKey(_TRACK_O, 15.88, 1);
    effector:SetKey(_TRACK_O, 20.2, 1);
    effector:SetKey(_TRACK_O, 22, 0);

    -- Layer car2
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/car2.png");
    anim:SetHotSpot(85.5, 29.5);
    object = screen:CreateObject("car2", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(100);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(19.2, 39.8);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 19.44, 504.75);
    effector:SetKey(_TRACK_Y, 19.44, 296.5);
    effector:SetKey(_TRACK_X, 19.96, 507.74971867497);
    effector:SetKey(_TRACK_Y, 19.96, 304.001808518051);
    effector:SetKey(_TRACK_X, 20.48, 505.25);
    effector:SetKey(_TRACK_Y, 20.48, 313.5);
    effector:SetKey(_TRACK_X, 22.08, 459);
    effector:SetKey(_TRACK_Y, 22.08, 335.75);
    effector:SetKey(_TRACK_X, 23.56, 398.75);
    effector:SetKey(_TRACK_Y, 23.56, 342.5);
    effector:SetKey(_TRACK_X, 24.56, 347.582103203455);
    effector:SetKey(_TRACK_Y, 24.56, 347.516624708432);
    effector:SetKey(_TRACK_X, 25.6, 277);
    effector:SetKey(_TRACK_Y, 25.6, 354.75);
    effector:SetKey(_TRACK_X, 26.32, 190.754334190549);
    effector:SetKey(_TRACK_Y, 26.32, 360.787783416203);
    effector:SetKey(_TRACK_X, 28, -123.5);
    effector:SetKey(_TRACK_Y, 28, 387.5);
    effector:SetKey(_TRACK_SX, 19.2, 0.24390243902439);
    effector:SetKey(_TRACK_SY, 19.2, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 22.44, 0.37282229965157);
    effector:SetKey(_TRACK_SY, 22.44, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 24.72, 0.69414000633513);
    effector:SetKey(_TRACK_SY, 24.72, 0.65573770491803);
    effector:SetKey(_TRACK_SX, 26.2, 0.93050364269876);
    effector:SetKey(_TRACK_SY, 26.2, 0.80327868852459);
    effector:SetKey(_TRACK_SX, 27.96, 1.40323091542604);
    effector:SetKey(_TRACK_SY, 27.96, 1.22950819672131);
    effector:SetKey(_TRACK_O, 19.4, 0);
    effector:SetKey(_TRACK_O, 20.08, 1);

    -- Layer carlight3
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/carlight.png");
    anim:SetHotSpot(32.5, 30.5);
    object = screen:CreateObject("carlight3", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(99);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(11.72, 36.48);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 11.72, 531.5);
    effector:SetKey(_TRACK_Y, 11.72, 280);
    effector:SetKey(_TRACK_X, 13.92, 519.5);
    effector:SetKey(_TRACK_Y, 13.92, 281.5);
    effector:SetKey(_TRACK_X, 15.72, 510.5);
    effector:SetKey(_TRACK_Y, 15.72, 285.5);
    effector:SetKey(_TRACK_X, 17.24, 509);
    effector:SetKey(_TRACK_Y, 17.24, 318);
    effector:SetKey(_TRACK_X, 17.68, 500);
    effector:SetKey(_TRACK_Y, 17.68, 328.5);
    effector:SetKey(_TRACK_SX, 11.72, 0.81639344262295);
    effector:SetKey(_TRACK_SY, 11.72, 0.53947036569987);
    effector:SetKey(_TRACK_SX, 13.92, 0.89331651954603);
    effector:SetKey(_TRACK_SY, 13.92, 0.89331651954603);
    effector:SetKey(_TRACK_SX, 16.92, 1.22118537200504);
    effector:SetKey(_TRACK_SY, 16.92, 1.22118537200504);
    effector:SetKey(_TRACK_SX, 17.68, 0.86733921815889);
    effector:SetKey(_TRACK_SY, 17.68, 0.90970996216898);
    effector:SetKey(_TRACK_O, 11.72, 0);
    effector:SetKey(_TRACK_O, 12.56, 1);
    effector:SetKey(_TRACK_O, 16.88, 1);
    effector:SetKey(_TRACK_O, 18.68, 0);

    -- Layer car3
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/car3.png");
    anim:SetHotSpot(85.5, 29.5);
    object = screen:CreateObject("car3", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(98);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(15.88, 36.48);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 16.12, 504.75);
    effector:SetKey(_TRACK_Y, 16.12, 297.5);
    effector:SetKey(_TRACK_X, 16.64, 507.74971867497);
    effector:SetKey(_TRACK_Y, 16.64, 305.001808518051);
    effector:SetKey(_TRACK_X, 17.16, 505.25);
    effector:SetKey(_TRACK_Y, 17.16, 314.5);
    effector:SetKey(_TRACK_X, 18.76, 459);
    effector:SetKey(_TRACK_Y, 18.76, 336.75);
    effector:SetKey(_TRACK_X, 20.24, 398.75);
    effector:SetKey(_TRACK_Y, 20.24, 343.5);
    effector:SetKey(_TRACK_X, 21.24, 347.582103203455);
    effector:SetKey(_TRACK_Y, 21.24, 348.516624708432);
    effector:SetKey(_TRACK_X, 22.28, 277);
    effector:SetKey(_TRACK_Y, 22.28, 355.75);
    effector:SetKey(_TRACK_X, 23, 190.754334190549);
    effector:SetKey(_TRACK_Y, 23, 361.787783416203);
    effector:SetKey(_TRACK_X, 24.68, -158.5);
    effector:SetKey(_TRACK_Y, 24.68, 390.5);
    effector:SetKey(_TRACK_SX, 15.88, 0.24390243902439);
    effector:SetKey(_TRACK_SY, 15.88, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 19.12, 0.37282229965157);
    effector:SetKey(_TRACK_SY, 19.12, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 21.4, 0.69414000633513);
    effector:SetKey(_TRACK_SY, 21.4, 0.65573770491803);
    effector:SetKey(_TRACK_SX, 22.88, 0.93050364269876);
    effector:SetKey(_TRACK_SY, 22.88, 0.80327868852459);
    effector:SetKey(_TRACK_SX, 24.64, 1.40323091542604);
    effector:SetKey(_TRACK_SY, 24.64, 1.22950819672131);
    effector:SetKey(_TRACK_O, 16.08, 0);
    effector:SetKey(_TRACK_O, 16.76, 1);

    -- Layer carlight4
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/carlight.png");
    anim:SetHotSpot(32.5, 30.5);
    object = screen:CreateObject("carlight4", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(97);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(0.48, 25.24);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 0.48, 531.5);
    effector:SetKey(_TRACK_Y, 0.48, 280);
    effector:SetKey(_TRACK_X, 2.68, 519.5);
    effector:SetKey(_TRACK_Y, 2.68, 281.5);
    effector:SetKey(_TRACK_X, 4.48, 510.5);
    effector:SetKey(_TRACK_Y, 4.48, 285.5);
    effector:SetKey(_TRACK_X, 6, 509);
    effector:SetKey(_TRACK_Y, 6, 318);
    effector:SetKey(_TRACK_X, 6.44, 500);
    effector:SetKey(_TRACK_Y, 6.44, 328.5);
    effector:SetKey(_TRACK_SX, 0.48, 0.81639344262295);
    effector:SetKey(_TRACK_SY, 0.48, 0.53947036569987);
    effector:SetKey(_TRACK_SX, 2.68, 0.89331651954603);
    effector:SetKey(_TRACK_SY, 2.68, 0.89331651954603);
    effector:SetKey(_TRACK_SX, 5.68, 1.22118537200504);
    effector:SetKey(_TRACK_SY, 5.68, 1.22118537200504);
    effector:SetKey(_TRACK_SX, 6.44, 0.86733921815889);
    effector:SetKey(_TRACK_SY, 6.44, 0.90970996216898);
    effector:SetKey(_TRACK_O, 0.48, 0);
    effector:SetKey(_TRACK_O, 1.32, 1);
    effector:SetKey(_TRACK_O, 5.64, 1);
    effector:SetKey(_TRACK_O, 7.44, 0);

    -- Layer car4
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/car1.png");
    anim:SetHotSpot(143.5, 30.5);
    object = screen:CreateObject("car4", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(96);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(4.64, 27.88);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, 0, 0);
    effector:SetKey(_TRACK_X, 4.88, 514.75);
    effector:SetKey(_TRACK_Y, 4.88, 300.5);
    effector:SetKey(_TRACK_X, 5.4, 517.74971867497);
    effector:SetKey(_TRACK_Y, 5.4, 308.001808518051);
    effector:SetKey(_TRACK_X, 5.92, 515.25);
    effector:SetKey(_TRACK_Y, 5.92, 317.5);
    effector:SetKey(_TRACK_X, 7.52, 469);
    effector:SetKey(_TRACK_Y, 7.52, 339.75);
    effector:SetKey(_TRACK_X, 9, 408.75);
    effector:SetKey(_TRACK_Y, 9, 346.5);
    effector:SetKey(_TRACK_X, 10, 357.582103203455);
    effector:SetKey(_TRACK_Y, 10, 351.516624708432);
    effector:SetKey(_TRACK_X, 11.04, 287);
    effector:SetKey(_TRACK_Y, 11.04, 358.75);
    effector:SetKey(_TRACK_X, 11.76, 200.754334190549);
    effector:SetKey(_TRACK_Y, 11.76, 364.787783416203);
    effector:SetKey(_TRACK_X, 13.44, -53.5);
    effector:SetKey(_TRACK_Y, 13.44, 385.5);
    effector:SetKey(_TRACK_SX, 4.64, 0.24390243902439);
    effector:SetKey(_TRACK_SY, 4.64, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 7.88, 0.37282229965157);
    effector:SetKey(_TRACK_SY, 7.88, 0.52459016393443);
    effector:SetKey(_TRACK_SX, 10.16, 0.69414000633513);
    effector:SetKey(_TRACK_SY, 10.16, 0.65573770491803);
    effector:SetKey(_TRACK_SX, 11.64, 0.93050364269876);
    effector:SetKey(_TRACK_SY, 11.64, 0.80327868852459);
    effector:SetKey(_TRACK_SX, 13.4, 1.40323091542604);
    effector:SetKey(_TRACK_SY, 13.4, 1.22950819672131);
    effector:SetKey(_TRACK_O, 4.84, 0);
    effector:SetKey(_TRACK_O, 5.52, 1);    

    -- Layer city
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/gorod_mask.png");
    anim:SetHotSpot(473, 60.5);
    object = screen:CreateObject("city", anim, 0, 0, 0, 0, 1, 1);
    object:SetXY(551, 262.5);
    object:SetZ(93);
    object:SetScaleX(1);
    object:SetScaleY(1);
    object:SetAngle(0);
    object:SetOpacity(1);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(0.36, 43.72);
    effector:AttachTo(object);
    effector:Play();

    -- Layer train_fog
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/train_fog.png");
    anim:SetHotSpot(317, 86.5);
    object = screen:CreateObject("train_fog", anim, 0, 0, 0, 0, 1, 1);
    object:SetXY(546.5, 239);
    object:SetZ(92);
    object:SetScaleX(1);
    object:SetScaleY(1);
    object:SetAngle(0);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(23.56, 43.72);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_O, -0.12, 0);
    effector:SetKey(_TRACK_O, 1.8, 1);

    -- Layer train1
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/train.png");
    anim:SetHotSpot(276.5, 32);
    object = screen:CreateObject("train1", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(91);
    object:SetOpacity(1);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(24.12, 43.72);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_X, 23.56, 564);
    effector:SetKey(_TRACK_Y, 23.56, 289);
    effector:SetKey(_TRACK_X, 24.12, 564);
    effector:SetKey(_TRACK_Y, 24.12, 288);
    effector:SetKey(_TRACK_X, 27.2, 719.50513384072);
    effector:SetKey(_TRACK_Y, 27.2, 297.272314731424);
    effector:SetKey(_TRACK_X, 28.44, 810.305638554575);
    effector:SetKey(_TRACK_Y, 28.44, 298.01522795181);
    effector:SetKey(_TRACK_X, 29.96, 963.020454722252);
    effector:SetKey(_TRACK_Y, 29.96, 299.264712811364);
    effector:SetKey(_TRACK_X, 30.76, 1068.16661554322);
    effector:SetKey(_TRACK_Y, 30.76, 300.124999581717);
    effector:SetKey(_TRACK_X, 32.12, 1297.01569507602);
    effector:SetKey(_TRACK_Y, 32.12, 301.997401141531);
    effector:SetKey(_TRACK_X, 34.12, 1664);
    effector:SetKey(_TRACK_Y, 34.12, 305);
    effector:SetKey(_TRACK_SX, 24.12, 0.31034482758621);
    effector:SetKey(_TRACK_SY, 24.12, 0.31034482758621);
    effector:SetKey(_TRACK_SX, 27.2, 0.41657853262242);
    effector:SetKey(_TRACK_SY, 27.2, 0.41657853262242);
    effector:SetKey(_TRACK_SX, 28.44, 0.47861330889238);
    effector:SetKey(_TRACK_SY, 28.44, 0.47861330889238);
    effector:SetKey(_TRACK_SX, 29.96, 0.5829445235282);
    effector:SetKey(_TRACK_SY, 29.96, 0.5829445235282);
    effector:SetKey(_TRACK_SX, 30.76, 0.65477822718859);
    effector:SetKey(_TRACK_SY, 30.76, 0.65477822718859);
    effector:SetKey(_TRACK_SX, 32.12, 0.81112217044944);
    effector:SetKey(_TRACK_SY, 32.12, 0.81112217044944);
    effector:SetKey(_TRACK_SX, 34.12, 1.06183588126414);
    effector:SetKey(_TRACK_SY, 34.12, 1.06183588126414);
    effector:SetKey(_TRACK_A, 24.12, 0);

    -- Layer train2
    anim = CreateAnimationByPath("data/Texture/GUI/Menu/Animations/train.png");
    anim:SetHotSpot(276.5, 32);
    object = screen:CreateObject("train2", anim, 0, 0, 0, 0, 1, 1);
    object:SetZ(90);
    object:SetOpacity(1);

    effector = CreateAnimationEffector();
    effector:SetMode(_ANIM_LOOP);
    effector:SetLifeTime(14.16, 43.72);
    effector:AttachTo(object);
    effector:Play();
    effector:SetKey(_TRACK_X, 13.52, 207);
    effector:SetKey(_TRACK_Y, 13.52, 230);
    effector:SetKey(_TRACK_X, 16.6, 362.50513384072);
    effector:SetKey(_TRACK_Y, 16.6, 231.272314731424);
    effector:SetKey(_TRACK_X, 17.84, 453.305638554575);
    effector:SetKey(_TRACK_Y, 17.84, 232.01522795181);
    effector:SetKey(_TRACK_X, 19.36, 606.020454722252);
    effector:SetKey(_TRACK_Y, 19.36, 233.264712811364);
    effector:SetKey(_TRACK_X, 20.16, 711.166615543223);
    effector:SetKey(_TRACK_Y, 20.16, 234.124999581717);
    effector:SetKey(_TRACK_X, 21.52, 940.015695076023);
    effector:SetKey(_TRACK_Y, 21.52, 235.997401141531);
    effector:SetKey(_TRACK_X, 23.52, 1307);
    effector:SetKey(_TRACK_Y, 23.52, 239);
    effector:SetKey(_TRACK_SX, 13.52, 0.31034482758621);
    effector:SetKey(_TRACK_SY, 13.52, 0.31034482758621);
    effector:SetKey(_TRACK_SX, 16.6, 0.41657853262242);
    effector:SetKey(_TRACK_SY, 16.6, 0.41657853262242);
    effector:SetKey(_TRACK_SX, 17.84, 0.47861330889238);
    effector:SetKey(_TRACK_SY, 17.84, 0.47861330889238);
    effector:SetKey(_TRACK_SX, 19.36, 0.5829445235282);
    effector:SetKey(_TRACK_SY, 19.36, 0.5829445235282);
    effector:SetKey(_TRACK_SX, 20.16, 0.65477822718859);
    effector:SetKey(_TRACK_SY, 20.16, 0.65477822718859);
    effector:SetKey(_TRACK_SX, 21.52, 0.81112217044944);
    effector:SetKey(_TRACK_SY, 21.52, 0.81112217044944);
    effector:SetKey(_TRACK_SX, 23.52, 1.06183588126414);
    effector:SetKey(_TRACK_SY, 23.52, 1.06183588126414);
    effector:SetKey(_TRACK_A, 13.52, 0);

end

function OnLostFocus()
end

function OnGainFocus()
end

function OnScreenShown()
	PlayMusic('menu')
	if not GetProfileManager():GetCurrentProfile() then
	    return
	end
	
	local levels_completed = 0
	for i = 1, 36 do
		if IsLevelCompleted(GetLevelByRealId(i)) then
			levels_completed = levels_completed + 1
		end
	end
	
	if levels_completed == 36 then 
		local all_cigars_found = true
		local cp = GetProfileManager():GetCurrentProfile()
		for i, v in ipairs(cp.cigars_found) do
			all_cigars_found = all_cigars_found and v
		end
		
		if not cp.is_meta_game_proceed_dialog_was_shown and not all_cigars_found then
			menu:Stop()
			menu.game_state = game_state			
			load_screen('data/Lua/Screens/DialogMetaGameNotComplete.lua')
			cp.is_meta_game_proceed_dialog_was_shown = true			
			GetProfileManager():SaveProfiles()
		end
		
		if not cp.is_meta_game_complete_dialog_was_shown and all_cigars_found then		    
		    menu:Stop()
			menu.game_state = game_state
            load_screen('data/Lua/Screens/DialogMetaGameComplete.lua')
            cp.is_meta_game_complete_dialog_was_shown = true
            GetProfileManager():SaveProfiles()
        end			
		
		--[[if all_cigars_found then
			menu:Stop()
			load_screen('data/Lua/Screens/DialogMetaGameComplete.lua')
		end]]
	end
end

function OnObjectRightMouseDown(object)
end

function OnObjectRightMouseUp(object)
end


function OnUpdate(dt)
    if game_state.is_mouse_entered then
        menu.reward_button:SetAngle(menu.reward_button:GetAngle() + 1 / 500 / M_PI * 180);
    end
    local pm = GetProfileManager()
 
    if pm:GetCurrentProfile() == nil then
        if not pm:IsErrorMessageEnabled() then
            local new_screen = load_screen('data/Lua/Screens/DialogPlayerName.lua');
        else
            load_screen('data/Lua/Screens/DialogErrorSaveFileIsCorrupted.lua');
            pm:SetErrorMessageEnabled(false)
        end
	end
end

function OnExit()
end

function OnObjectMouseEnter(object)
    DefaultOnObjectMouseEnter(object)
end

function OnObjectMouseLeave(object)
    DefaultOnObjectMouseLeave(object)
end

function OnObjectMouseDown(object)
end

function OnObjectMouseUp(object)
end

function OnToolFound(tool)
end

function OnToolApply(tool, object)
    ShowToolFailEffect()
end

function OnObjectReachPanel(object)
end

function OnButtonPress(title)
	PlaySound("MenuButtonClick")
	menu:SetAllowInput(false)
    DefaultOnButtonPress(title)
	
	local move_time = 0.1
    
    local lever = menu:GetObject('back_menu_3')
	
	local af = CreateAnimationEffector()	
	af:AttachTo(lever)
	af:SetMode(_ANIM_FWD + _ANIM_NOLOOP)
	af:SetKey(_TRACK_A, 0, lever:GetAngle());
	
	local LoadScreen = function(path)	    
		load_screen(path)
		game_state.is_lever_moving = false
	end
    
	menu.StartNewGame = function()
		--load_level(GetLevelToLoad())
		
		load_screen('data/Lua/Screens/Movie.lua')
		
		menu:ScreenDestroy()
		menu = nil
		game_state.is_lever_moving = false
	end
	
	menu.LoadSavedGame = function()
	    menu:ScreenDestroy()
		local cp = GetProfileManager():GetCurrentProfile()
	    local level_to_load = cp:GetLevelToLoad()
		if cp:CallsFunction('OnWin') then
			cp.game_state_ = {}
			cp.functions_to_call_on_start_ = {}
			cp.found_objects_ = {}
			cp.last_level_completed_ = level_to_load
			level_to_load = GetNextLevel(level_to_load)
		end
	    if level_to_load and level_to_load ~= "" and level_to_load ~= "map" then
		    load_level(level_to_load)
		elseif level_to_load == "map" then
			if not menu.game_state.all_cigars_found then
			    if cp.last_level_completed_ == GetLevelByRealId(GetLevelsCount()) then
			        load_screen('data/Lua/Screens/GlobalMap.lua')
			    else
			        load_screen('data/Lua/Screens/Movie.lua')
			    end
			else
				load_screen('data/Lua/Screens/Outro.lua')
			end
		else
		    load_screen('data/Lua/Screens/Movie.lua')
		    --load_level(GetLevelToLoad())
		end
		    
		menu = nil
		game_state.is_lever_moving = false
	end
	
	local timer = menu:GetTimer()
	
    if title == "Options" then		
		af:SetKey(_TRACK_A, move_time, -42 / 180 * M_PI);		
        TimerDo(menu:GetTimer(), move_time, LoadScreen, 'data/Lua/Screens/OptionsMain.lua')		
    end
	if title == "Credits" then
		af:SetKey(_TRACK_A, move_time, 42 / 180 * M_PI);
		TimerDo(timer, move_time, LoadScreen, 'data/Lua/Screens/Credits.lua')        
    end
    if title == "Exit" then		
		af:SetKey(_TRACK_A, move_time, 85 / 180 * M_PI);		
		local Exit = function()
			GetGameApp():Exit()
		end
		TimerDo(timer, move_time, Exit)		
    end
    
    --GetProfileManager():GetCurrentProfile().show_error_message_ = false
    
    if title == "Play" then          		
        af:SetKey(_TRACK_A, move_time, 0);		
        --TimerDo(timer, move_time, LoadSavedGame)        
		--TimerDo(timer, move_time, menu.StartNewGame)
		local currentProfile = GetProfileManager():GetCurrentProfile()
		if currentProfile.level_to_load_ == "" or currentProfile.game_state_.is_tutorial_must_be_shown then
		    TimerDo(timer, move_time, menu.StartNewGame)
		elseif not currentProfile.show_error_message_ then
			TimerDo(timer, move_time, menu.LoadSavedGame)
		    --TimerDo(menu:GetTimer(), move_time, LoadScreen, 'data/Lua/Screens/DialogLoad.lua')		
		else
		    TimerDo(timer,
                    move_time,
                    function()
                        load_screen('data/Lua/Screens/DialogErrorRestart.lua')
                    end)
		end
    end
	if title == "Profiles" then
        previous_screen = dialog
		af:SetKey(_TRACK_A, move_time, -83 / 180 * M_PI);	        
		TimerDo(timer, move_time, LoadScreen, 'data/Lua/Screens/Profiles.lua')        
    end
	if title == "More" then
		OpenURL("http://www.bigfishgames.com/download-games/4235/steve-the-sheriff/index.html")
		--GetGameApp():DoExit(true)
		menu:SetAllowInput(true)
	end
	
	if title == "RewardGame" then
		LoadScreen('data/Scenes/Minigames/Award_Race.lua')
		menu:ScreenDestroy() 
		menu = nil
	end
	af:Play()
end

function OnMouseMove(previous_pos, current_pos)
end

function OnSetTool(tool)
end

function CanBeHinted(obj)
    if locked_object[obj] ~= true then
        return true
    else
        return false
    end
end

-- CLEAR_ON_SAVE_BEGIN
-- Do not edit code listed below (generated by the editor on each save)
function LoadData(screen)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/001.png',0,0,265,264,1,0)
	anim:SetHotSpot(132,132)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('001',anim,612,662,497,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/002.png',0,0,194,193,1,0)
	anim:SetHotSpot(97,96)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('002',anim,318,743,498,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/003.png',0,0,47,47,1,0)
	anim:SetHotSpot(23,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('003',anim,431,579,498,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/003.png',0,0,47,47,1,0)
	anim:SetHotSpot(23,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('0032',anim,441,607,498,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/003.png',0,0,47,47,1,0)
	anim:SetHotSpot(23,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('0033',anim,471,625,495,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/003.png',0,0,47,47,1,0)
	anim:SetHotSpot(23,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('0034',anim,480,653,495,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/004.png',0,0,78,77,1,0)
	anim:SetHotSpot(39,38)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('004',anim,456,543,499,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/005.png',0,0,433,433,1,0)
	anim:SetHotSpot(216,216)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('005',anim,514,734,496,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/001.png',0,0,265,264,1,0)
	anim:SetHotSpot(132,132)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('0012',anim,357,653,497,0,0.82,0.82)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Wheels/004.png',0,0,78,77,1,0)
	anim:SetHotSpot(39,38)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('0041',anim,496,589,495,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Animations/ad/ad.png',0,0,111,66,36,10)
	anim:SetHotSpot(56,33)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('ad',anim,283,283,133,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Animations/stars.png',0,0,355,129,9,5)
	anim:SetHotSpot(178,65)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('stars',anim,661,196,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/back_menu_2.png',0,0,602,339,1,0)
	anim:SetHotSpot(301,169)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('back_menu_2',anim,516,598,500,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/back_menu_3.png',0,0,180,485,1,0)
	anim:SetHotSpot(90,485)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('back_menu_3',anim,519,723,535,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/back_menu_4.png',0,0,197,128,1,0)
	anim:SetHotSpot(98,64)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('back_menu_4',anim,513,705,540,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Animations/most.png',0,0,543,94,1,0)
	anim:SetHotSpot(271,47)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('most',anim,271,359,120,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/profile.png',0,0,71,160,1,0)
	anim:SetHotSpot(35,80)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('profileup',anim,291,690,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/profile.png',0,160,71,160,1,0)
	anim:SetHotSpot(35,80)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('profileover',anim,285,460,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/profile.png',0,320,71,160,1,0)
	anim:SetHotSpot(35,80)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('profiledown',anim,231,454,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/options.png',0,0,160,142,1,0)
	anim:SetHotSpot(80,71)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('optionsup',anim,366,560,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/options.png',0,142,160,142,1,0)
	anim:SetHotSpot(80,71)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('optionsover',anim,556,168,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/options.png',0,284,160,142,1,0)
	anim:SetHotSpot(80,71)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('optionsdown',anim,590,206,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/play.png',0,0,184,55,1,0)
	anim:SetHotSpot(92,28)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('playup',anim,516,502,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/play.png',0,55,184,55,1,0)
	anim:SetHotSpot(92,28)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('playover',anim,719,48,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/play.png',0,110,184,55,1,0)
	anim:SetHotSpot(92,28)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('playdown',anim,726,101,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/credits.png',0,0,159,143,1,0)
	anim:SetHotSpot(79,72)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('creditsup',anim,668,561,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/credits.png',0,143,159,143,1,0)
	anim:SetHotSpot(79,72)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('creditsover',anim,894,238,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/credits.png',0,286,159,143,1,0)
	anim:SetHotSpot(79,72)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('creditsdown',anim,855,282,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/exit.png',0,0,73,161,1,0)
	anim:SetHotSpot(36,81)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('exitup',anim,742,690,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/exit.png',0,161,73,161,1,0)
	anim:SetHotSpot(36,81)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('exitover',anim,911,486,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/exit.png',0,322,73,161,1,0)
	anim:SetHotSpot(36,81)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('exitdown',anim,857,495,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Buttons/exit.png',0,322,73,161,1,0)
	anim:SetHotSpot(4,4)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('pixel',anim,512,384,1000,0,1024,768)
	local anim = CreateAnimation('data/Texture/Intro/gorod.jpg',0,0,1024,768,1,0)
	anim:SetHotSpot(512,384)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('gorod',anim,512,384,5,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/More_back.png',0,0,207,104,18,10)
	anim:SetHotSpot(104,52)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('More_back',anim,520,722,545,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/More_menu.png',0,0,114,92,1,0)
	anim:SetHotSpot(57,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('MoreUp',anim,515,727,150,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/More_menu.png',0,92,114,92,1,0)
	anim:SetHotSpot(57,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('MoreOver',anim,80,634,100,0,1,1)
	local anim = CreateAnimation('data/Texture/Logo/LogoSmall.png',0,0,278,287,1,0)
	anim:SetHotSpot(139,143)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('LogoSmall',anim,141,143,200,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/RewardButton.png',0,0,125,141,1,0)
	anim:SetHotSpot(63,70)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('RewardGameUp',anim,944,93,107,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/RewardButton.png',125,0,125,141,1,0)
	anim:SetHotSpot(63,70)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('RewardGameDown',anim,797,234,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/Chains.png',0,0,56,68,1,0)
	anim:SetHotSpot(28,34)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Chains',anim,942,93,600,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/RewardBack.png',0,0,172,159,1,0)
	anim:SetHotSpot(86,79)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('RewardBack',anim,938,79,100,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/String.png',0,0,168,55,1,0)
	anim:SetHotSpot(84,27)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('String',anim,946,28,200,0,1,1)
	local anim = CreateAnimation('data/Texture/GUI/Menu/profile_01.png',0,0,1011,113,1,0)
	anim:SetHotSpot(505,56)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('profile_01',anim,519,559,100,0,1,1)
end

function FreeData(screen)
end
-- CLEAR_ON_SAVE_END
