-- Куб власти (6602498) и ежедневный набор (1160133): как в standart skript offi.lua — только 0=CanUse и 1=GiftBag, без GetInfo. -- Состав «Куба власти» в тултипе: первые 50 позиций в data/local/zhCN/attdata/item_name.xml (desc у 6602498). -- Оповещение: пятое число в строке — 1 = мировое (шаблон 280), 0 = без эфира. -- Гарантированный лут: каждое 100-е открытие — случайная строка из garant_tbl (RoleDataType.KubVlasti_OpenCount). do function I6602498_CanUseGiftBag(MapID, InstanceID, TypeID, TargetID) local bRet, bIgnore = 0, false local FreeSize = role.GetBagFreeSize(TargetID) if FreeSize < 1 then bRet = 40 end return bRet, bIgnore end function I6602498_GiftBag(MapID, InstanceID, TypeID, TargetID) local garant_tbl = { {5802131, 1, 6, 1}, {5802130, 1, 6, 1}, {5802129, 1, 6, 1}, {5802128, 1, 6, 1}, {5802127, 1, 6, 1}, {5802126, 1, 6, 1}, {5802125, 1, 6, 1}, {5802124, 1, 6, 1}, {9990007, 1, 6, 1}, {6600127, 1, 6, 1}, {6600128, 1, 6, 1}, {6600129, 1, 6, 1}, {6600130, 1, 6, 1}, {6600131, 1, 6, 1}, {6600132, 1, 6, 1}, {6600133, 1, 6, 1}, {6600134, 1, 6, 1}, {6600135, 1, 6, 1}, {6600136, 1, 6, 1}, {6600137, 1, 6, 1}, {6600138, 1, 6, 1}, } local pityKey = RoleDataType["KubVlasti_OpenCount"] local openCnt = (role.GetRoleScriptData(TargetID, 1, pityKey) or 0) + 1 local isPity = (openCnt >= 100) if isPity then openCnt = 0 end local dropType, dropQty, dropBind, dropAnnounce if isPity then local gi = math.random(1, #garant_tbl) dropType = garant_tbl[gi][1] dropQty = garant_tbl[gi][2] dropBind = garant_tbl[gi][3] dropAnnounce = garant_tbl[gi][4] else local temp = 0 local index = 1 local tbl = { {3020144, 1, 6, 99999, 0},--Набор оружия 95 ур. [часть 1] {3020142, 1, 6, 115000, 0},--Набор оружия 95 ур. [часть 1] {3020140, 1, 6, 195000, 0},--Набор оружия 95 ур. [часть 1] {6600127, 1, 6, 15000, 1},--Набор оружия 95 ур. [часть 1] {6600128, 1, 6, 15000, 1},--Набор оружия 95 ур. [часть 2] {6600129, 1, 6, 15000, 1},--Набор ожерелий 95 ур. {6600130, 1, 6, 15000, 1},--Набор поясов 95 ур. {6600131, 1, 6, 15000, 1},--Набор колец 95 ур. [часть 1] {6600132, 1, 6, 15000, 1},--Набор колец 95 ур. [часть 2] {6600133, 1, 6, 15000, 1},--Набор ботинок 95 ур. {6600134, 1, 6, 15000, 1},--Набор плащей 95 ур. {6600135, 1, 6, 15000, 1},--Набор перчаток 95 ур. {6600136, 1, 6, 15000, 1},--Набор поножей 95 ур. {6600137, 1, 6, 15000, 1},--Набор доспехов 95 ур. {6600138, 1, 6, 15000, 1},--Набор шлемов 95 ур. {9990007, 1, 6, 9999, 1},--Ледяная дева Адель {6601711, 1, 6, 9999, 1},--Крылья небесного стража {5802131, 1, 6, 1500, 1},--Магическое ожерелье +40 {5802130, 1, 6, 2000, 1},--Магическое ожерелье +39 {5802129, 1, 6, 4500, 1},--Магическое ожерелье +38 {5802128, 1, 6, 5000, 1},--Магическое ожерелье +37 {5802127, 1, 6, 6000, 1},--Магическое ожерелье +36 {5802126, 1, 6, 7000, 1},--Магическое ожерелье +35 {5802125, 1, 6, 8000, 1},--Магическое ожерелье +34 {5802124, 1, 6, 9000, 1},--Магическое ожерелье +33 {5802123, 1, 6, 10000, 1},--Магическое ожерелье +32 {3030390, 1, 6, 20000, 0},--Императорский рубин[Ур. 8] {3030415, 1, 6, 20000, 0},--Императорский сапфир[Ур. 8] {3030550, 1, 6, 20000, 0},--Имперский яркий сапфир[Ур. 8] {3030395, 1, 6, 20000, 0},--Таинственный рубин[Ур. 8] {3030420, 1, 6, 20000, 0},--Таинственный сапфир[Ур. 8] {3030581, 1, 6, 20000, 0},--Таинственный топаз[Ур. 8] {3030305, 1, 6, 20000, 0},--Смертоносный солнцевик[Ур. 8] {3030310, 1, 6, 20000, 0},--Горячий солнцевик[Ур. 8] {3030315, 1, 6, 20000, 0},--Ослепительный солнцевик[Ур. 8] {3030320, 1, 6, 20000, 0},--Искрящийся солнцевик[Ур. 8] {3030325, 1, 6, 20000, 0},--Смертоносный лунник[Ур. 8] {3030330, 1, 6, 20000, 0},--Чистый лунник[Ур. 8] {3030335, 1, 6, 20000, 0},--Блестящий лунник[Ур. 8] {3030340, 1, 6, 20000, 0},--Пестрый лунник[Ур. 8] {3030345, 1, 6, 20000, 0},--Вечный диамант[Ур. 8] {3030350, 1, 6, 20000, 0},--Священный диамант[Ур. 8] {3030355, 1, 6, 20000, 0},--Крепкий диамант[Ур. 8] {3030360, 1, 6, 20000, 0},--Губительный диамант[Ур. 8] {3030365, 1, 6, 20000, 0},--Мистический диамант[Ур. 8] {3030370, 1, 6, 20000, 0},--Зеркальный диамант[Ур. 8] {3030375, 1, 6, 20000, 0},--Пульсирующий рубин[Ур. 8] {3030380, 1, 6, 20000, 0},--Великолепный рубин[Ур. 8] {3030385, 1, 6, 20000, 0},--Крепкий рубин[Ур. 8] {3030400, 1, 6, 20000, 0},--Спасительный сапфир[Ур. 8] {3030405, 1, 6, 20000, 0},--Энергетический сапфир[Ур. 8] {3030410, 1, 6, 20000, 0},--Прозрачный сапфир[Ур. 8] {3030501, 1, 6, 20000, 0},--Мерцающий жемчуг[Ур. 8] {3030507, 1, 6, 20000, 0},--Чудесный жемчуг[Ур. 8] {3030513, 1, 6, 20000, 0},--Сверкающий жемчуг[Ур. 8] {3030519, 1, 6, 20000, 0},--Редкий жемчуг[Ур. 8] {3030532, 1, 6, 20000, 0},--Яркий сапфир спасения[Ур. 8] {3030538, 1, 6, 20000, 0},--Яркий сапфир веры[Ур. 8] {3030544, 1, 6, 20000, 0},--Крепкий яркий сапфир[Ур. 8] {3030563, 1, 6, 20000, 0},--Спасительный топаз[Ур. 8] {3030569, 1, 6, 20000, 0},--Топаз веры[Ур. 8] {3030575, 1, 6, 20000, 0},--Крепкий топаз[Ур. 8] {3030660, 1, 6, 20000, 0},--Александрит веры[Ур. 8] {3030661, 1, 6, 20000, 0},--Александрит отмщения[Ур. 8] {3030662, 1, 6, 20000, 0},--Александрит спасения[Ур. 8] {3030663, 1, 6, 20000, 0},--Александрит стойкости[Ур. 8] {3030692, 1, 6, 20000, 0},--Большой шаровик ярости[Ур. 8] {3030693, 1, 6, 20000, 0},--Большой шаровик надежды[Ур. 8] {3030694, 1, 6, 20000, 0},--Большой шаровик покоя[Ур. 8] {3030695, 1, 6, 20000, 0},--Большой шаровик тишины[Ур. 8] {3030724, 1, 6, 20000, 0},--Пульсирующий лазурит[Ур. 8] {3030725, 1, 6, 20000, 0},--Священный лазурит[Ур. 8] {3030726, 1, 6, 20000, 0},--Крепкий лазурит[Ур. 8] {3030727, 1, 6, 20000, 0},--Ослепительный лазурит[Ур. 8] {3030756, 1, 6, 20000, 0},--Аметист спасения[Ур. 8] {3030757, 1, 6, 20000, 0},--Аметист веры[Ур. 8] {3030758, 1, 6, 20000, 0},--Аметист гнева[Ур. 8] {3030759, 1, 6, 20000, 0},--Аметист стойкости[Ур. 8] {3030788, 1, 6, 20000, 0},--Малахит опоры[Ур. 8] {3030789, 1, 6, 20000, 0},--Малахит спасения[Ур. 8] {3030790, 1, 6, 20000, 0},--Малахит ярости[Ур. 8] {3030791, 1, 6, 20000, 0},--Малахит отмщения[Ур. 8] {3030820, 1, 6, 20000, 0},--Бриллиант опоры[Ур. 8] {3030821, 1, 6, 20000, 0},--Бриллиант спасения[Ур. 8] {3030822, 1, 6, 20000, 0},--Бриллиант ярости[Ур. 8] {3030823, 1, 6, 20000, 0},--Бриллиант отмщения[Ур. 8] {3030852, 1, 6, 20000, 0},--Циркон казни[Ур. 8] {3030853, 1, 6, 20000, 0},--Циркон долголетия[Ур. 8] {3030854, 1, 6, 20000, 0},--Циркон отражения[Ур. 8] {3030855, 1, 6, 20000, 0},--Циркон отблеска[Ур. 8] {3030884, 1, 6, 20000, 0},--Янтарь опоры[Ур. 8] {3030885, 1, 6, 20000, 0},--Янтарь спасения[Ур. 8] {3030886, 1, 6, 20000, 0},--Янтарь ярости[Ур. 8] {3030887, 1, 6, 20000, 0},--Янтарь отмщения[Ур. 8] {6601025, 1, 6, 20000, 0},--Берилл спасения[Ур. 8] {6601034, 1, 6, 20000, 0},--Берилл веры[Ур. 8] {6601043, 1, 6, 20000, 0},--Берилл ярости[Ур. 8] {6601052, 1, 6, 20000, 0},--Берилл отмщения[Ур. 8] {3500209, 1, 6, 66666, 0},--Ядро души эльфа [120] {3500208, 1, 6, 99999, 0},--Ядро души эльфа [110] {4810109, 1, 6, 30000, 0},--Золотая плейона {4820180, 1, 6, 88888, 0},--Плейона {3051616, 1, 6, 20000, 0},--Вечное сверло {4700231, 1, 6, 20000, 0},--Сундук Звезд 10 ур. [перс.] {3060061, 1, 6, 200000, 0},--Святой эликсир {6600626, 1, 6, 700000, 0},--Порочное сердце духов [10 ур.] {5802666, 1, 6, 700000, 0},--Священный свет [8 ур.] {5802631, 1, 6, 700000, 0},--Священное сияние [8 ур.] {3020013, 1, 6, 800000, 0},--Божественная руна удачи {4820256, 1, 6, 800000, 0},--Книга Астролога {3500023, 1, 6, 800000, 0},--Особая руна способностей {3500061, 2, 6, 800000, 0},--Древний кремень темноты {4810135, 1, 6, 1000000, 0},--Хороший камень пробуждения {4810134, 2, 6, 1000000, 0},--Чудесный кремень темноты {4500002, 20, 6, 1000000, 0},--Заказ {3070019, 3, 6, 1000000, 0},--Свиток воскрешения {4530242, 3, 6, 1000000, 0},--Сосредоточение стихий {3500100, 3, 6, 1000000, 0},--Аугмент } local tw = 0 for i = 1, #tbl do tw = tw + tbl[i][4] end local r = math.random(tw) for i = 1, #tbl do temp = temp + tbl[i][4] if temp >= r then index = i break end end dropType = tbl[index][1] dropQty = tbl[index][2] dropBind = tbl[index][3] dropAnnounce = tbl[index][5] end role.SetRoleScriptData(TargetID, 1, pityKey, openCnt) if dropAnnounce == 1 then local MsgID = msg.BeginMsgEvent() msg.AddMsgEvent(MsgID, 100, 280) msg.AddMsgEvent(MsgID, 2, TargetID) msg.AddMsgEvent(MsgID, 4, TypeID) msg.AddMsgEvent(MsgID, 4, dropType) msg.DispatchWorldMsgEvent(MsgID) end role.AddRoleItem(MapID, InstanceID, TargetID, dropType, dropQty, dropBind, 8, 35) return 1 end aux.RegisterItemEvent(6602498, 0, "I6602498_CanUseGiftBag") aux.RegisterItemEvent(6602498, 1, "I6602498_GiftBag") end do function I1160133_CanUseGiftBag(MapID, InstanceID, TypeID, TargetID) local bRet, bIgnore = 0, false local FreeSize = role.GetBagFreeSize(TargetID) if FreeSize < 1 then bRet = 40 end return bRet, bIgnore end function I1160133_GiftBag(MapID, InstanceID, TypeID, TargetID) local temp = 0 local index = 1 local tbl = { {4820249, 1, 6, 8081000}, {4820180, 1, 6, 195000}, {3020137, 1, 6, 4310000}, {3070019, 1, 6, 7000000}, {3070011, 1, 6, 4940000}, {6600100, 1, 6, 655000}, {3070028, 1, 6, 9770000}, {3010034, 1, 6, 9885000}, {3070034, 1, 6, 10000000}, {3070040, 1, 6, 10000000}, {3070042, 1, 6, 10000000}, {3070003, 1, 6, 300000}, {3070004, 1, 6, 300000}, {3070069, 1, 6, 8000000}, {3070078, 1, 6, 3000000}, {4530138, 1, 6, 800000}, {4500002, 10, 6, 7000000}, {3500100, 1, 6, 3000000}, } local tw = 0 for i = 1, #tbl do tw = tw + tbl[i][4] end local r = math.random(tw) for i = 1, #tbl do temp = temp + tbl[i][4] if temp >= r then index = i break end end role.AddRoleItem(MapID, InstanceID, TargetID, tbl[index][1], tbl[index][2], tbl[index][3], 8, 35) return 1 end aux.RegisterItemEvent(1160133, 0, "I1160133_CanUseGiftBag") aux.RegisterItemEvent(1160133, 1, "I1160133_GiftBag") end