function GameScreen:InitScreen()
    self:LoadScreen()
    self.active = false;
    self.names = {}
end

------------------------------------------------------------------------------------------------------
function GameScreen:SetDragObject(item_name)
    table.insert(self.names, item_name)
    self.active = true;
    ItemAttachChild("drag_trigger_img", item_name)
    ItemSetDepth(item_name, LAYERS.FRONT_MOST)
end
------------------------------------------------------------------------------------------------------
function GameScreen:SetNullDrag()
    self.active = false;
    for key, value in pairs(self.names) do
        ItemAttachChild(CurrentScreen.name, value)
    end
    self.names = {}
end
------------------------------------------------------------------------------------------------------
function GameScreen:OnMouseMove(item_name)
    if(clApplication.game_pause) then return end
 
    if(self.active) then
        if(item_name == "skip" or item_name == "menu_button" or item_name == "hint" or item_name == "close_minigame") then
            SetVisibleCursor(true)
            ItemSetOpacity("drag_object", 0.0)
        else
            if(Inventory:GetActiveObj() ~= "security_key_004" and Inventory:GetActiveObj() ~= "key_020") then
                SetVisibleCursor(false)
            end
            ItemSetOpacity("drag_object", 1.0)
        end
    end
end
------------------------------------------------------------------------------------------------------
function GameScreen:AttachToDragObj(item_name)
	ItemAttachChild("drag_trigger_img", item_name)
	ItemSetDepth(self.name, LAYERS.FRONT_MOST)
end
------------------------------------------------------------------------------------------------------
function GameScreen:LoadScreen()
	--[[---Background---]]--
	self:CreateObj(OBJ_TYPE.TRIGGER, "drag_trigger_img", "graphics/trigger", 0, 0);
end