dofile ('Data/Scripts/Common/Screens/GameSceneBase.lua')

class 'GameScene' (GameSceneBase)

function GameScene:__init(level_name)
	self.game_tasks_tracker = GameTasksTracker(self)	
    GameSceneBase.__init(self, level_name)   
    self:getInformManager() 
end

-------------------------------------------------------------------------------
function GameScene:registerAchievments()
	dofile('Data/Scripts/Achievments/NoSkipMinigame.lua')
	dofile('Data/Scripts/Achievments/NoSkipNMinigames.lua')
	dofile('Data/Scripts/Achievments/NoHintHiddenObject.lua')
	dofile('Data/Scripts/Achievments/NoHintNHiddenObjects.lua')
	dofile('Data/Scripts/Achievments/CollectNPhoto.lua')
	dofile('Data/Scripts/Achievments/CollectNClock.lua')

	self.achievments =
	{
		'NoSkipMG',
		'NoHint5HO',
		'Collect10Photo',
		'Collect1Clock',
	}

	for _, achievment_name in pairs(self.achievments) do
		dofile('Data/Scripts/Achievments/'..achievment_name..'/'..achievment_name..'.lua')
		local achievment = Helpers.CallFunctionByName(achievment_name, self)
		achievment:restoreStates()
		self.achievments_manager:addAchievment(achievment)
	end
end

-------------------------------------------------------------------------------
function GameScene:getInformManager()
	if not self.inform_manager then
		self.inform_manager = InformManager(self)
	end
    return self.inform_manager
end

-------------------------------------------------------------------------------
function GameScene:getGameTasksTracker()
    return self.game_tasks_tracker
end