-- модуль для общегемплейных фаункций
game = {}

-- функция для формирования событий конкретного режима игры
function game.GameEventsOverload(_table)
	for func_name, func in pairs(game._base_events_table) do
		game[func_name] = _table[func_name] or func
	end
end

game._base_events_table = 
{

OnAddScore = function ()
end,

-- разрушение игроком мача определенного цвета
OnPlayerDestroyMatch = function (_color)
end,

-- функция, которая выызвается при сборе всех камней
OnAllGemsCollected = function ()
end,

-- функция, которая выызвается при прохождении уровня
OnWinGame = function ()
end,

-- функция, которая выызвается при прохождении уровня
OnLoseGame = function ()
end,

-- функция, которая вызывается, если это событие инициализировано и все эфефкты закончились
OnNoEffects = function ()
end,

-- функция при сборе послденего гема
OnLastGemAdd = function ()
end,

-- функция сбора камня
OnGemAdd = function ()
end,

-- функция прлета камня в гембар
OnGemAddToGemBar = function ()
end,

-- событие на создание снепшота игры
OnCreateSnapshot = function ()
end,

-- событие на отсутсвие ходов
OnNoMoves = function ()
end,

-- на окончание бенчмарка
OnFinishBenchmark = function ()
end,

-- на модификация гем бара бечмарком
OnBenchmarkUpdateGemBar = function ()
end,

-- перегружаемый метод, который вызывается из игры и проверяет есть ли луа эффекты
IsLuaEffects = function ()
	return false
end
}

game.GameEventsOverload({})

