local zoom_floor;

function OnSceneLoad(screen)
    LoadData(screen)
    DefaultOnSceneLoad('data/Scenes/23_Stateroom_Cage_HO.lua', 'hidden_object', 'data/Scenes/23_Stateroom_Main.lua')
    
    play_field:IgnoreOnTestPoint('BG_Karta');
    play_field:IgnoreOnTestPoint('BG_Zamok');
    play_field:IgnoreOnTestPoint('BG_Pismo');
    
    zoom_floor = CreateZoomZone('area_floor',
                                'CloseZoneFloor',
                                'ZOOM_floor',   true,
                                'Layer_gate',   true,
                                'Layer_hoop',   true);
    
    AddTask(CreateTask('FISH',              'FISHES',    'Fish1',     'Fish2',     'Fish3'));
    AddTask(CreateTask('SEAHORSE',          'SEAHORSES', 'Seahorse1', 'Seahorse2', 'Seahorse3'));
    AddTask(CreateTask('CIRCULAR_HANDLE',   '',          'Layer_hoop'));
    
    AddRandomTasks( CreateTask('ADJUSTABLEWRENCH', '', 'AdjustableWrench'),
                    CreateTask('ANCHOR',           '', 'Anchor'),
                    CreateTask('ARROW',            '', 'Arrow'),
                    CreateTask('BAG',              '', 'Bag'),
                    CreateTask('BIRD',             '', 'Bird'),
                    CreateTask('BROOCH',           '', 'Brooch'),
                    CreateTask('BRUSH',            '', 'Brush'),
                    CreateTask('BUG',              '', 'Bug'),
                    CreateTask('CARD',             '', 'Card'),
                    CreateTask('CIGARCASE',        '', 'CigarCase'),
                    CreateTask('DIRECTIONAL_COMPASS', '', 'Compass'),
                    CreateTask('DRAFTING_COMPASS', '', 'Compasses'),
                    CreateTask('CORKSCREW',        '', 'Corkscrew'),
                    CreateTask('CRUTCH',           '', 'Crutch'),
                    CreateTask('DICE',             '', 'Dice'),
                    CreateTask('ELEPHANT',         '', 'Elephant'),
                    CreateTask('HORN',             '', 'Fife'),
                    CreateTask('FLOWER',           '', 'Flower'),
                    CreateTask('GLASSHOLDER',      '', 'GlassHolder'),
                    CreateTask('GLOVE',            '', 'Glove'),
                    CreateTask('HARMONICA',        '', 'Harmonica'),
                    CreateTask('IRON',             '', 'Iron'),
                    CreateTask('JUG',              '', 'Jug'),
                    CreateTask('KANGAROO',         '', 'Kangaroo'),
                    CreateTask('KETTLE',           '', 'Kettle'),
                    CreateTask('LIZARD',           '', 'Lizard'),
                    CreateTask('LOCK',             '', 'Lock'),
                    CreateTask('MAIL',             '', 'Mail'),
                    CreateTask('MASK',             '', 'Mask'),
                    CreateTask('PAINTING',         '', 'Painting'),
                    CreateTask('PEAKEDCAP',        '', 'PeakedCap'),
                    CreateTask('POCKET_WATCH',     '', 'PocketWatch'),
                    CreateTask('RAZOR',            '', 'Razor'),
                    CreateTask('SANDGLASS',        '', 'SandGlass'),
                    CreateTask('SPIDER',           '', 'Spider'),
                    CreateTask('TASSEL',           '', 'Tassel'),
                    CreateTask('TELESCOPE',        '', 'Telescope'),
                    CreateTask('THERMOMETER',      '', 'Thermometer'),
                    CreateTask('UMBRELLA',         '', 'Umbrella'),
                    CreateTask('W',                '', 'W'));

    if IsTaskObjectFound('Layer_hoop') then
        zoom_floor.Disable();
    end
    
    RegisterToolFindInfo('23_hoop');
    CreateMonkeyAnim();
    
    MakeSoundEntity("23_Gorilla"):Play(true);
    
    game_state.disable_close_scene_on_complete = true;
end

function CreateMonkeyAnim()
    --PlaySound('23_Gorilla');
    
    play_field:GetObject('monkey_anim_1'            ):SetVisible(true);
    play_field:GetObject('monkey_anim_before'       ):SetVisible(false);
    play_field:GetObject('monkey_anim_respiration_2'):SetVisible(false);
    play_field:GetObject('monkey_anim_after'        ):SetVisible(false);
    play_field:GetObject('monkey_anim_squatting'    ):SetVisible(false);
    play_field:GetObject('monkey_anim_swaying_1'    ):SetVisible(false);
    play_field:GetObject('monkey_anim_swaying_2'    ):SetVisible(false);
    
    play_field:GetObject('monkey_anim_1'            ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_PINGPONG + HGEANIM_LOOP);
    play_field:GetObject('monkey_anim_before'       ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_NOLOOP);
    play_field:GetObject('monkey_anim_respiration_2'):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_PINGPONG + HGEANIM_LOOP);
    play_field:GetObject('monkey_anim_after'        ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_NOLOOP);
    play_field:GetObject('monkey_anim_squatting'    ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_PINGPONG + HGEANIM_LOOP);
    play_field:GetObject('monkey_anim_swaying_1'    ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_NOLOOP);
    play_field:GetObject('monkey_anim_swaying_2'    ):GetAnimation():SetMode(HGEANIM_FWD + HGEANIM_NOLOOP);
    
    play_field:GetObject('monkey_anim_1'            ):GetAnimation():Play();
    play_field:GetObject('monkey_anim_before'       ):GetAnimation():Stop();
    play_field:GetObject('monkey_anim_respiration_2'):GetAnimation():Stop();
    play_field:GetObject('monkey_anim_after'        ):GetAnimation():Stop();
    play_field:GetObject('monkey_anim_squatting'    ):GetAnimation():Stop();
    play_field:GetObject('monkey_anim_swaying_1'    ):GetAnimation():Stop();
    play_field:GetObject('monkey_anim_swaying_2'    ):GetAnimation():Stop();
    
    local time = GetAnimationLength(play_field:GetObject('monkey_anim_1'):GetAnimation()) * 8;
    play_field:TimerDoString("play_field:GetObject('monkey_anim_1'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_1'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_squatting'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_squatting'):GetAnimation():Play();", time);
                             
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_squatting'):GetAnimation()) * 3;
    play_field:TimerDoString("play_field:GetObject('monkey_anim_squatting'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_squatting'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_swaying_1'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_swaying_1'):GetAnimation():Play();", time);
    
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_swaying_1'):GetAnimation());
    play_field:TimerDoString("play_field:GetObject('monkey_anim_swaying_1'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_swaying_1'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_swaying_2'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_swaying_2'):GetAnimation():Play();", time);
    
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_swaying_2'):GetAnimation());
    play_field:TimerDoString("play_field:GetObject('monkey_anim_swaying_2'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_swaying_2'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_before'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_before'):GetAnimation():Play();", time);
    
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_before'):GetAnimation());
    play_field:TimerDoString("play_field:GetObject('monkey_anim_before'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_before'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_respiration_2'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_respiration_2'):GetAnimation():Play();", time);
                             
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_respiration_2'):GetAnimation()) * 8;
    play_field:TimerDoString("play_field:GetObject('monkey_anim_respiration_2'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_respiration_2'):SetVisible(false);"..
                             "play_field:GetObject('monkey_anim_after'):SetVisible(true);"..
                             "play_field:GetObject('monkey_anim_after'):GetAnimation():Play();", time);
    
    time = time + GetAnimationLength(play_field:GetObject('monkey_anim_after'):GetAnimation());
    play_field:TimerDoString("play_field:GetObject('monkey_anim_after'):GetAnimation():Stop();"..
                             "play_field:GetObject('monkey_anim_after'):SetVisible(false);"..
                             "CreateMonkeyAnim();"..
                             "play_field:GetObject('monkey_anim_squatting'):GetAnimation():Play();", time);
        --]]                     
end

function CloseZoomFloor()
    if zoom_floor.IsVisible() then
        zoom_floor.SetVisible(false);
    end
    zoom_floor.Disable();
end

function OnSceneFree(screen)
    DefaultOnSceneFree()
    FreeData(screen)
end

function OnUpdate(dt)
    DefaultOnUpdate(dt)
end

function OnAllItemsFound()
    DefaultOnAllItemsFound()
end

function OnLose()
    DefaultOnLose()
end

function OnExit()
    DefaultOnExit()
end

function OnClose()
    DefaultOnClose()
end

function OnObjectMouseEnter(object)
    DefaultOnObjectMouseEnter(object)
end

function OnObjectMouseLeave(object)
    DefaultOnObjectMouseLeave(object)
end

function OnObjectMouseDown(object)
    local is_wrong_click = not DefaultOnObjectMouseDown(object)
    local obj_name = object:GetName()
    local pf = play_field

    DefaultOnObjectMouseDownProcessed(is_wrong_click);
end

function OnObjectMouseUp(object)
    DefaultOnObjectMouseUp(object)
end

function OnObjectFound(object)
    if object:GetName() == 'Layer_hoop' then
        TimerDoString("CloseZoomFloor()", 1, play_field:GetTimer())
    end
    
    DefaultOnObjectFound(object)
end

function OnToolFound(tool)
    DefaultOnToolFound(tool)
end

function OnToolApply(tool, object)
    DefaultOnToolApply(tool, object)
end

function OnObjectReachPanel(object)
    DefaultOnObjectReachPanel(object)
end

function OnButtonPress(title)
    DefaultOnButtonPress(title)
end

function OnMouseMove(previous_pos, current_pos)
    DefaultOnMouseMove(previous_pos, current_pos)
end

function OnSetTool(tool)
    DefaultOnSetTool(tool)
end

function LevelLoaded(level)
end

function OnSceneDestroy(playfield)
    DefaultOnSceneDestroy(playfield)
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/Scenes/23_Stateroom/Zone_HO_cage/Layers/background.jpg',0,0,1024,768,1,0)
	anim:SetHotSpot(512,384)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('background',anim,512,384,99,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/AdjustableWrench.png',0,0,109,83,1,0)
	anim:SetHotSpot(54,41)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('AdjustableWrench',anim,834,634,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Anchor.png',0,0,43,48,1,0)
	anim:SetHotSpot(21,24)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Anchor',anim,870,333,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Arrow.png',0,0,35,53,1,0)
	anim:SetHotSpot(17,26)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Arrow',anim,143,314,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Bag.png',0,0,108,176,1,0)
	anim:SetHotSpot(54,88)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Bag',anim,49,464,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Bird.png',0,0,78,80,1,0)
	anim:SetHotSpot(39,40)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Bird',anim,123,553,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Brooch.png',0,0,42,55,1,0)
	anim:SetHotSpot(21,27)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Brooch',anim,310,217,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Brush.png',0,0,49,133,1,0)
	anim:SetHotSpot(24,66)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Brush',anim,839,611,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Bug.png',0,0,32,50,1,0)
	anim:SetHotSpot(16,25)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Bug',anim,271,57,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Card.png',0,0,68,49,1,0)
	anim:SetHotSpot(34,24)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Card',anim,575,653,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/CigarCase.png',0,0,80,41,1,0)
	anim:SetHotSpot(40,20)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('CigarCase',anim,305,648,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Compass.png',0,0,54,49,1,0)
	anim:SetHotSpot(27,24)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Compass',anim,620,633,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Compasses.png',0,0,52,93,1,0)
	anim:SetHotSpot(26,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Compasses',anim,425,224,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Corkscrew.png',0,0,46,68,1,0)
	anim:SetHotSpot(23,34)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Corkscrew',anim,211,379,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Crutch.png',0,0,70,272,1,0)
	anim:SetHotSpot(35,136)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Crutch',anim,909,423,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Dice.png',0,0,60,35,1,0)
	anim:SetHotSpot(30,17)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Dice',anim,507,652,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Elephant.png',0,0,76,53,1,0)
	anim:SetHotSpot(38,26)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Elephant',anim,384,623,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Fife.png',0,0,193,57,1,0)
	anim:SetHotSpot(96,28)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Fife',anim,126,583,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Fish1.png',0,0,79,59,1,0)
	anim:SetHotSpot(39,29)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Fish1',anim,666,640,106,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Fish2.png',0,0,33,89,1,0)
	anim:SetHotSpot(16,44)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Fish2',anim,948,154,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Fish3.png',0,0,50,47,1,0)
	anim:SetHotSpot(25,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Fish3',anim,179,34,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Flower.png',0,0,45,46,1,0)
	anim:SetHotSpot(22,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Flower',anim,880,459,104,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/GlassHolder.png',0,0,105,97,1,0)
	anim:SetHotSpot(52,48)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('GlassHolder',anim,734,639,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Glove.png',0,0,71,108,1,0)
	anim:SetHotSpot(35,54)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Glove',anim,428,459,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Harmonica.png',0,0,93,59,1,0)
	anim:SetHotSpot(46,29)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Harmonica',anim,459,632,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Iron.png',0,0,96,101,1,0)
	anim:SetHotSpot(48,50)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Iron',anim,966,576,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Jug.png',0,0,81,97,1,0)
	anim:SetHotSpot(40,48)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Jug',anim,918,527,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Kangaroo.png',0,0,44,63,1,0)
	anim:SetHotSpot(22,31)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Kangaroo',anim,782,266,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Kettle.png',0,0,132,123,1,0)
	anim:SetHotSpot(66,61)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Kettle',anim,62,539,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Lizard.png',0,0,72,84,1,0)
	anim:SetHotSpot(36,42)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Lizard',anim,66,225,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Lock.png',0,0,63,92,1,0)
	anim:SetHotSpot(31,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Lock',anim,722,528,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Mail.png',0,0,56,83,1,0)
	anim:SetHotSpot(28,41)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Mail',anim,884,619,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Mask.png',0,0,55,122,1,0)
	anim:SetHotSpot(27,61)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Mask',anim,206,226,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Painting.png',0,0,64,78,1,0)
	anim:SetHotSpot(32,39)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Painting',anim,949,247,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/PeakedCap.png',0,0,83,115,1,0)
	anim:SetHotSpot(41,57)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('PeakedCap',anim,954,619,105,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/PocketWatch.png',0,0,60,39,1,0)
	anim:SetHotSpot(30,19)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('PocketWatch',anim,94,617,105,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Razor.png',0,0,41,74,1,0)
	anim:SetHotSpot(20,37)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Razor',anim,882,643,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/SandGlass.png',0,0,63,84,1,0)
	anim:SetHotSpot(31,42)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('SandGlass',anim,27,585,104,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Seahorse1.png',0,0,38,73,1,0)
	anim:SetHotSpot(19,36)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Seahorse1',anim,377,41,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Seahorse2.png',0,0,40,76,1,0)
	anim:SetHotSpot(20,38)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Seahorse2',anim,704,103,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Seahorse3.png',0,0,41,66,1,0)
	anim:SetHotSpot(20,33)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Seahorse3',anim,261,518,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Spider.png',0,0,65,63,1,0)
	anim:SetHotSpot(32,31)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Spider',anim,51,41,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Tassel.png',0,0,39,99,1,0)
	anim:SetHotSpot(19,49)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Tassel',anim,829,46,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Telescope.png',0,0,108,139,1,0)
	anim:SetHotSpot(54,69)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Telescope',anim,134,556,104,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Thermometer.png',0,0,68,150,1,0)
	anim:SetHotSpot(34,75)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Thermometer',anim,887,76,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/Umbrella.png',0,0,54,281,1,0)
	anim:SetHotSpot(27,140)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('Umbrella',anim,303,508,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Items/W.png',0,0,35,47,1,0)
	anim:SetHotSpot(17,23)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('W',anim,1009,406,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Gradusnik.png',0,0,39,145,1,0)
	anim:SetHotSpot(19,72)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Gradusnik',anim,863,77,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Gruzik.png',0,0,26,93,1,0)
	anim:SetHotSpot(13,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Gruzik',anim,601,34,100,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Karta.png',0,0,42,24,1,0)
	anim:SetHotSpot(21,12)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Karta',anim,567,635,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Klyuch.png',0,0,57,48,1,0)
	anim:SetHotSpot(28,24)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Klyuch',anim,865,656,104,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Kostyl.png',0,0,32,33,1,0)
	anim:SetHotSpot(16,16)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Kostyl',anim,888,300,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Kuvshin.png',0,0,46,104,1,0)
	anim:SetHotSpot(23,52)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Kuvshin',anim,891,513,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Pismo.png',0,0,67,92,1,0)
	anim:SetHotSpot(33,46)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Pismo',anim,886,623,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Shtopor.png',0,0,32,19,1,0)
	anim:SetHotSpot(16,9)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Shtopor',anim,196,350,102,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Tsirkul.png',0,0,24,23,1,0)
	anim:SetHotSpot(12,11)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Tsirkul',anim,428,202,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Utyug.png',0,0,104,112,1,0)
	anim:SetHotSpot(52,56)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Utyug',anim,970,572,104,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Layers/BG_Zamok.png',0,0,32,24,1,0)
	anim:SetHotSpot(16,12)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('BG_Zamok',anim,718,505,103,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Zoom_floor/ZOOM_floor.jpg',0,0,640,480,1,0)
	anim:SetHotSpot(320,240)
	anim:SetBlendMode(2)
	anim:SetColor('0x00FFFFFF')
	screen:CreateObject('ZOOM_floor',anim,512,384,150,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Zoom_floor/Layer_hoop.png',0,0,219,192,1,0)
	anim:SetHotSpot(109,96)
	anim:SetBlendMode(2)
	anim:SetColor('0x00FFFFFF')
	screen:CreateObject('Layer_hoop',anim,548,391,151,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Zoom_floor/Layer_gate.png',0,0,499,480,1,0)
	anim:SetHotSpot(249,240)
	anim:SetBlendMode(2)
	anim:SetColor('0x00FFFFFF')
	screen:CreateObject('Layer_gate',anim,582,384,152,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/Common/area_circle.png',0,0,128,128,1,0)
	anim:SetHotSpot(64,64)
	anim:SetBlendMode(2)
	anim:SetColor('0x01FFFFFF')
	screen:CreateObject('area_floor',anim,458,548,102,0,1.86,0.82)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_1.png',0,0,365,463,5,8)
	anim:SetHotSpot(182,231)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_1',anim,560,400,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_before.png',0,0,377,535,6,8)
	anim:SetHotSpot(188,267)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_before',anim,566,363,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_respiration_2.png',0,0,377,535,5,8)
	anim:SetHotSpot(188,267)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_respiration_2',anim,566,363,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_after.png',0,0,377,535,2,8)
	anim:SetHotSpot(188,267)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_after',anim,566,363,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_squatting.png',0,0,383,448,4,8)
	anim:SetHotSpot(191,224)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_squatting',anim,569,405,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_swaying_1.png',0,0,383,527,10,8)
	anim:SetHotSpot(191,263)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_swaying_1',anim,569,365,101,0,1,1)
	local anim = CreateAnimation('data/Texture/Scenes/23_Stateroom/Zone_HO_cage/Animations/monkey_anim_swaying_2.png',0,0,383,527,10,8)
	anim:SetHotSpot(191,263)
	anim:SetBlendMode(2)
	anim:SetColor('0xFFFFFFFF')
	screen:CreateObject('monkey_anim_swaying_2',anim,569,365,101,0,1,1)
end

function FreeData(screen)
end
-- CLEAR_ON_SAVE_END
