-- Рог изобилия (Horn of Abundance) -- ID: 4700238 -- Рандомное выпадение одного предмета из списка function I4700238_GiftBag(MapID, InstanceID, TypeID, TargetID) -- Таблица предметов для рандомного выбора local items = { {id = 3070028, count = 1, name = "Руна опыт 1ч"}, -- руна опыт 1ч {id = 3070023, count = 1, name = "Эликсир эльфов"}, -- Эликсир эльфов Х1 {id = 3070018, count = 1, name = "Свиток воскрешения"}, -- свиток воскрешения х1 {id = 3070078, count = 1, name = "Великолепное сверло"}, -- великолепное сверло х1 (вечное сверло) {id = 4500004, count = 10, name = "Заказ"}, -- заказ х10 {id = 4090027, count = 2, name = "Камень полета"}, -- камень полета х2 (Avalon stone) {id = 5610014, count = 1, name = "Красное яблоко 30дн"}, -- красное яблоко 30дн (альтернатива - руна опыта) {id = 4400024, count = 1, name = "Камень истины"}, -- камень истины {id = 3020057, count = 1, name = "Руна гарантии"}, -- руна гарантии {id = 4999004, count = 1, name = "Улучшенный рунный камень"} -- улучшенный рунный камень х1 } -- Выбираем случайный предмет local randomIndex = math.random(1, #items) local selectedItem = items[randomIndex] -- Добавляем выбранный предмет игроку role.AddRoleItem(MapID, InstanceID, TargetID, selectedItem.id, selectedItem.count, -1, 8, 420) end function I4700238_CanUseGiftBag(MapID, InstanceID, TypeID, TargetID) local bRet, bIgnore = 0, false -- Проверяем свободное место в инвентаре (минимум 1 слот для одного предмета) local FreeSize = role.GetBagFreeSize(TargetID) if(FreeSize < 1) then -- Недостаточно места в инвентаре bRet = 40 end return bRet, bIgnore end -- Регистрируем события для рога изобилия aux.RegisterItemEvent(4700238, 1, "I4700238_GiftBag") aux.RegisterItemEvent(4700238, 0, "I4700238_CanUseGiftBag")