Lua Check Online | Trinity GTA

DolgorukovGTA

Известный
Автор темы
Проверенный
652
345
34f44f25df57.png

Check Online
Автор: DolgorukovGTA
Доброго времени суток, уважаемые пользователи и участники форума. При помощи данного скрипта Вы сможете узнавать, сколько человек находится во фракциях, бандах, мафиях и байкерских клубах на серверах проекта Trinity GTA, используя команду /online. Если неправильно выводит онлайн фракции, отпишите в эту тему, разберемся.

21308dff9c83.png

26.06.2019: релиз скрипта,
27.06.2019: исправление ошибки с СОА на рпг; проверка на NPC для НГ, ибо у 23 NPC точно такой же клист; сделал отображение информации об онлайне в более компактном и удобнее варианте.
 

Вложения

  • Check Online.lua
    3.5 KB · Просмотры: 1,497
Последнее редактирование:

DolgorukovGTA

Известный
Автор темы
Проверенный
652
345
прикольно, но нахуя?
Игроки РПГ сервера, не знаю, как на РП, любят чекать, сколько у враждующей стороны челиков в онлайне, к примеру. Тут же ещё и госки подтянулись, но опять же, раз у всех госок разных стран одинаковые клисты, онлайн идёт, как единая фракция. Мб админам тоже полезно будет.
 
  • Нравится
Реакции: Vintik

FYS

Потрачен
982
236
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
у админов есть своя команда на это и она более информативнее. как по мне скрипт бессмысленный, профита от него крайне мало, учитывая ещё то, что у госок общий онлайн.

сделал бы в /leaders, например. а не отдельной командой. радует, что хоть не на диалогах, как с gsensivity.
У админов свое, у обычных игроков свое
 

DolgorukovGTA

Известный
Автор темы
Проверенный
652
345
Чекать онлайн госок бессмысленно.
Лучше мой юзать https://vk.com/lapenko_scripts?w=wall-182046899_60
Не бессмысленно, к примеру, может помочь, если ты зашел на сервер, видишь, что в такси/емс/пд мало или нет онлайна, значит, можно сделать вывод, что они не примут вызов, а если нет вообще пд/фбр, значит, можно с точностью сказать, что за тобой никто не выедет. Больше ситуаций в голову не пришло, и чем же твой лучше? Тот же самый результат.
 
  • Нравится
Реакции: Vintik

FYS

Потрачен
982
236
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
  • Нравится
Реакции: Vintik

DolgorukovGTA

Известный
Автор темы
Проверенный
652
345
Код + вид + нету госок.
Как я могу убедиться, что код лучше, если ты его закомпилил? Насчёт вида могу привести поговорку: "На вкус и цвет - товарищей нет".

Код + вид + нету госок.
А так, не вижу смысла спорить, есть выбор за то у людей.
Ты так и не указал, почему код хуже у меня, а у тебя лучше? Какая здесь ещё вариативность может быть?
 
  • Нравится
Реакции: Vintik

Lapenko

Известный
157
76
Как я могу убедиться, что код лучше, если ты его закомпилил? Насчёт вида могу привести поговорку: "На вкус и цвет - товарищей нет".
Ты так и не указал, почему код хуже у меня, а у тебя лучше? Какая здесь ещё вариативность может быть?

Код:
script_name('TOC')
script_authors('checkdasound', 'imring','Lapenko')
script_version('1.0')

local cc = {
    {
        4279826207, -- Grove
        4291237375, -- Ballas
        4294967040, -- Vagos
        4279228922, -- El Corona
        4292396898, -- LCN
        4286070681, -- Yakuza
        4286023833, -- RM
        4294910464, -- Triads
        4287102976, -- Outlaws
        4278550420, -- Coyotes
        4278220612, -- Hells Angels
        4279900698  -- Sons of Anarchy
    },
    {
        4279826207, -- Grove
        4291237375, -- Ballas
        4294967040, -- Vagos
        4279228922, -- El Corona
        4292396898, -- LCN
        4286070681, -- Yakuza
        4286023833, -- RM
        4294910464, -- Triads
        4287102976, -- Outlaws
        4278550420, -- Coyotes
        4278220612, -- Hells Angels
        4282006074  -- Sons of Anarchy
    }
}

local tt = {
    '{778899}---------------------------- {B0C4DE}ONLINE CHECKER{778899} ----------------------------\nBands: {$Col}Grove: $ONL {FFFFFF}| {$Col}Ballas: $ONL {FFFFFF}| {$Col}Vagos: $ONL {FFFFFF}| {$Col}El Corona: $ONL{FFFFFF}\nMafia: {$Col}LCN: $ONL {FFFFFF}| {$Col}Yakuza: $ONL {FFFFFF}| {$Col}Russian Mafia: $ONL {FFFFFF}| {$Col}Triads: $ONL {FFFFFF}\nBikers Club: {$Col}Outlaws: $ONL {FFFFFF}| {$Col}Coyotes: $ONL {FFFFFF}| {$Col}Hells Angels: $ONL {FFFFFF}| {$Col}{696969}SOA: $ONL',
    '{778899}---------------------------- {B0C4DE}ONLINE CHECKER{778899} ----------------------------\nBands: {$Col}Grove: $ONL {FFFFFF}| {$Col}Ballas: $ONL {FFFFFF}| {$Col}Vagos: $ONL {FFFFFF}| {$Col}El Corona: $ONL{FFFFFF}\nMafia: {$Col}LCN: $ONL {FFFFFF}| {$Col}Yakuza: $ONL {FFFFFF}| {$Col}Russian Mafia: $ONL {FFFFFF}| {$Col}Triads: $ONL {FFFFFF}\nBikers Club: {$Col}Outlaws: $ONL {FFFFFF}| {$Col}Coyotes: $ONL {FFFFFF}| {$Col}Hells Angels: $ONL {FFFFFF}| {$Col}{696969}SOA: $ONL'
}

function main()
    while not isSampAvailable() do wait(0) end
    while sampGetGamestate() ~= 3 do wait(0) end
    current_server = getCurrentServer(sampGetCurrentServerName())
    assert(current_server, 'Server not found.')
    sampRegisterChatCommand('gon', function()
        local t = tt[current_server]
        for i = 1, #cc[current_server] do
            local onl = 0
            local _, myid = sampGetPlayerIdByCharHandle(playerPed)
            if sampGetPlayerColor(myid) == cc[current_server][i] then onl = onl + 1 end
            for l = 0, sampGetMaxPlayerId(false) do
                if sampIsPlayerConnected(l) then
                    if sampGetPlayerColor(l) == cc[current_server][i] then onl = onl + 1 end
                end
            end
            t = t:gsub('$Col', ('%06X'):format(bit.band(cc[current_server][i], 0xFFFFFF)), 1)
            t = t:gsub('$ONL', onl, 1)
        end
        for vr in t:gmatch('[^\r\n]+') do sampAddChatMessage(vr, -1)end
    end)
    wait(-1)
end

function getCurrentServer(name)
    if name:find('Trinity Roleplay  №2') or name:find('Trinity Roleplay  №1') then return 1
    elseif name:find('Trinity RPG') then return 2
    end
end

И твой скрипт не будет учитывать тебя самого + не будет показывать СОА на РПГ.
 
  • Нравится
Реакции: maestto

FYS

Потрачен
982
236
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Давайте теперь соревнования устроим, у кого пизже код
 
  • Нравится
Реакции: Vintik и MrCreepTon

DolgorukovGTA

Известный
Автор темы
Проверенный
652
345
Код:
script_name('TOC')
script_authors('checkdasound', 'imring','Lapenko')
script_version('1.0')

local cc = {
    {
        4279826207, -- Grove
        4291237375, -- Ballas
        4294967040, -- Vagos
        4279228922, -- El Corona
        4292396898, -- LCN
        4286070681, -- Yakuza
        4286023833, -- RM
        4294910464, -- Triads
        4287102976, -- Outlaws
        4278550420, -- Coyotes
        4278220612, -- Hells Angels
        4279900698  -- Sons of Anarchy
    },
    {
        4279826207, -- Grove
        4291237375, -- Ballas
        4294967040, -- Vagos
        4279228922, -- El Corona
        4292396898, -- LCN
        4286070681, -- Yakuza
        4286023833, -- RM
        4294910464, -- Triads
        4287102976, -- Outlaws
        4278550420, -- Coyotes
        4278220612, -- Hells Angels
        4282006074  -- Sons of Anarchy
    }
}

local tt = {
    '{778899}---------------------------- {B0C4DE}ONLINE CHECKER{778899} ----------------------------\nBands: {$Col}Grove: $ONL {FFFFFF}| {$Col}Ballas: $ONL {FFFFFF}| {$Col}Vagos: $ONL {FFFFFF}| {$Col}El Corona: $ONL{FFFFFF}\nMafia: {$Col}LCN: $ONL {FFFFFF}| {$Col}Yakuza: $ONL {FFFFFF}| {$Col}Russian Mafia: $ONL {FFFFFF}| {$Col}Triads: $ONL {FFFFFF}\nBikers Club: {$Col}Outlaws: $ONL {FFFFFF}| {$Col}Coyotes: $ONL {FFFFFF}| {$Col}Hells Angels: $ONL {FFFFFF}| {$Col}{696969}SOA: $ONL',
    '{778899}---------------------------- {B0C4DE}ONLINE CHECKER{778899} ----------------------------\nBands: {$Col}Grove: $ONL {FFFFFF}| {$Col}Ballas: $ONL {FFFFFF}| {$Col}Vagos: $ONL {FFFFFF}| {$Col}El Corona: $ONL{FFFFFF}\nMafia: {$Col}LCN: $ONL {FFFFFF}| {$Col}Yakuza: $ONL {FFFFFF}| {$Col}Russian Mafia: $ONL {FFFFFF}| {$Col}Triads: $ONL {FFFFFF}\nBikers Club: {$Col}Outlaws: $ONL {FFFFFF}| {$Col}Coyotes: $ONL {FFFFFF}| {$Col}Hells Angels: $ONL {FFFFFF}| {$Col}{696969}SOA: $ONL'
}

function main()
    while not isSampAvailable() do wait(0) end
    while sampGetGamestate() ~= 3 do wait(0) end
    current_server = getCurrentServer(sampGetCurrentServerName())
    assert(current_server, 'Server not found.')
    sampRegisterChatCommand('gon', function()
        local t = tt[current_server]
        for i = 1, #cc[current_server] do
            local onl = 0
            local _, myid = sampGetPlayerIdByCharHandle(playerPed)
            if sampGetPlayerColor(myid) == cc[current_server][i] then onl = onl + 1 end
            for l = 0, sampGetMaxPlayerId(false) do
                if sampIsPlayerConnected(l) then
                    if sampGetPlayerColor(l) == cc[current_server][i] then onl = onl + 1 end
                end
            end
            t = t:gsub('$Col', ('%06X'):format(bit.band(cc[current_server][i], 0xFFFFFF)), 1)
            t = t:gsub('$ONL', onl, 1)
        end
        for vr in t:gmatch('[^\r\n]+') do sampAddChatMessage(vr, -1)end
    end)
    wait(-1)
end

function getCurrentServer(name)
    if name:find('Trinity Roleplay  №2') or name:find('Trinity Roleplay  №1') then return 1
    elseif name:find('Trinity RPG') then return 2
    end
end

И твой скрипт не будет учитывать тебя самого + не будет показывать СОА на РПГ.
Почему не будет, если прогон for-ом будет захватывать мой ид: он находится в диапазоне между 0 и максимальным id игрока на сервере со входящими в него крайними точками - это хоть как. Аналогичный код реализован, как у тебя, в подобном скрипте. Кстати, а почему не будет показывать СОА?
 
Последнее редактирование:
  • Нравится
Реакции: Vintik

Lapenko

Известный
157
76
Почему не будет, если прогон for-ом будет захватывать мой ид: он находится в диапазоне между 0 и максимальным id игрока на сервере - это хоть как. Аналогичный код реализован в подобном скрипте. Кстати, а почему не будет показывать СОА?
А ну да, ты же не чекаешь игроков законекченных ( sampIsPlayerConnected(l) )
 

astynk

Известный
Проверенный
742
532
Только для крайма есть смысл такое делать, у госок - путаница из-за /duty и разных стран (US/AF/RC).
 
  • Нравится
Реакции: maestto и Lapenko