Скрипт, который раз в 30-60 мин будет генерировать промо-код и постить его в чат сервера.
Польза:
Сообщает игрокам о наличии /donate меню
Мотивирует играть дольше, чтобы ловить больше кодов
Тем, кто собрал несколько купонов и хотел что-то купить может захотеться получить желаемую услугу быстрее и они, наконец, решатся задонатить
Код
Поместить в созданный файл addons/igs-modification/lua/autorun/server/autocoupons.lua
local col_red = Color(250,30,90)
local function publishCoupon(iSumIgs, code)
IGS.NotifyAll("*** ВНИМАНИЕ! ****")
IGS.NotifyAll("Промокод на " .. PL_MONEY(iSumIgs))
IGS.NotifyAll("", col_red, code) -- "" костыль для оверрайда цвета
IGS.NotifyAll("Активируй первым в /donate!")
end
local function generateAndPublishCoupon(iSumIgs)
IGS.CreateCoupon(iSumIgs, 1, "generated_on_server", function(code)
publishCoupon(iSumIgs, code)
end)
end
local function giveaway(iSumIgs)
if #player.GetAll() >= 5 then
generateAndPublishCoupon(iSumIgs)
end
end
timer.Create("ChatCouponsGenerator", 60 * 30, 0, function()
giveaway(10)
end)
local col_lime = Color(100,210,40)
local col_light = Color(228,228,228)
local col_red = Color(250,30,90)
// Сумма и последний купон.
local sum, last_cupon = 54, nil
local contine = true
timer.Create("CopountsGenerator", 10, 0, function ()
if last_cupon != nil and contine == false then
IGS.GetCoupon(tostring(last_cupon), function (c, expired, used)
if expired or used then
contine = true
end
end)
end
if contine then
IGS.CreateCoupon(sum, 1, "autogenerated_on_server_cupons", function (code)
last_cupon = code
contine = false
IGS.NotifyAll("*** ВНИМАНИЕ! ****")
IGS.NotifyAll("Промокод на "..tonumber(sum).." рублей!")
// Лень было делать функцию.
// Просто делаем метод GM-Donate
chat.AddTextSV(
col_lime,"[IGS] ",
col_red,tostring(code)
)
IGS.NotifyAll("Активируй первым в /donate!")
end)
else
IGS.NotifyAll("*** ВНИМАНИЕ! ****")
IGS.NotifyAll("Промокод на "..tonumber(sum).." рублей так никто и не активировал!")
chat.AddTextSV(
col_lime,"[IGS]",
col_red," > ",
col_light, "А я напоминаю его : ",
col_red,tostring(last_cupon)
)
IGS.NotifyAll("Активируй его первым в /donate!")
end
end)