-- ======================================== -- СИСТЕМА КВЕСТОВ - ФАЙЛ q20027.lua -- ======================================== -- -- Описание: Обработчики различных квестовых событий -- Включает: завершение квестов, принятие квестов, подарки и награды -- -- ======================================== function q20027_OnComplete(mapID, instanceID, questID, ownerID, enderID) -- Добавляем новый квест игроку role.AddQuest(ownerID, 20011) -- Телепортируем игрока в новую локацию role.RoleGotoNewMap(mapID, instanceID, ownerID, 3424073512, 617, 22980, 252) end aux.RegisterQuestEvent(20027, 1, "q20027_OnComplete") -- ======================================== -- ЗАВЕРШЕНИЕ КВЕСТА 40043 -- ======================================== function q40043_OnComplete(mapID, instanceID, questID, ownerID, enderID) -- Добавляем следующий квест в цепочке role.AddQuest(ownerID, 20204) -- Увеличиваем счетчик завершенных испытаний role.SetTrialCompleteNum(ownerID, 1003, 1) -- Проверяем состояние испытания и завершаем его при необходимости if role.GetTrialState(ownerID, 1003) == 1 then role.TrialComplete(ownerID, 1003) end end -- Регистрируем событие завершения квеста 40043 aux.RegisterQuestEvent(40043, 1, "q40043_OnComplete") -- ======================================== -- ПРИНЯТИЕ КВЕСТОВ -- ======================================== -- Функция для принятия квеста 20210 function q20210_OnAccept(MapID, InstanceID, QuestID, RoleID, NPCID) -- Добавляем предмет роли role.AddRoleItem(MapID, InstanceID, RoleID, 3050030, 1, -1, 8, 420) end -- Регистрируем событие принятия квеста 20210 aux.RegisterQuestEvent(20210, 0, "q20210_OnAccept") -- Функция для принятия квеста 20216 function q20216_OnAccept(MapID, InstanceID, QuestID, RoleID, NPCID) -- Добавляем предмет роли для квеста role.QuestAddRoleItem(MapID, InstanceID, RoleID, 20216, 6601746, 1, -1, 420) end -- Регистрируем событие принятия квеста 20216 aux.RegisterQuestEvent(20216, 0, "q20216_OnAccept") -- ======================================== -- ОБРАБОТЧИКИ СОБЫТИЙ СУЩЕСТВ -- ======================================== -- Функция для события инвестирования существа 9010643 function C9010643_OnInVest(MapID, InstanceID, CreatureID, CreatureTypeID, RoleID) -- Проверяем входные параметры if MapID == nil or InstanceID == nil or RoleID == nil then return end -- Проверяем, есть ли у игрока активный квест 20218 -- Добавляем предмет как награду за инвестирование role.AddRoleItem(MapID, InstanceID, RoleID, 6601332, 1, -1, 8, 420) end -- Регистрируем событие инвестирования существа 9010643 aux.RegisterCreatureEvent(9010643, 6, "C9010643_OnInVest")