Logg, конечно можно получить все квесты у npc, и по имени квеста, например, брать дополнительно нужные. Сейчас это делается вот так:
function IsInList (questName, listName)
if listName[localization][questName] then
return listName[localization][questName]
end
return false
end
...
Global( "QuestsLocales", {
[ "rus" ] = {
[ "Охота с огоньком" ] = true,
...
Но таблицу с квестами нужно наполнять руками - прям смотреть имя квеста и добавлять. Мне же не нужно брать вообще все квесты, только определённые. Поэтому было принято решение просто добавить кнопку в интерфейс, по нажатию которой квест будет приниматься аватаром и, дополнительно, сохраняться в бд.
А уже потом я задумался, как понять, какой именно квест из доступных сейчас хочет взять аватар.