Помогите кто может

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Версия MoonLoader
Другое
Кто может помогите! Вот код при прописывании команды /kicker игрокам в радиусе 3х метров отправляется диалоговое окно с текстом Вы тут? И через 15 секунд их кикает с причиной Помеха. Надо сделать так что если игрок прочитал диалог ( в чате пишется если он прочитал его, пишет Nick прочитал ваш диалог) или ответил в чат что-то, то его не кикало автоматически, а кикало тех кто не прочитал диалог или ничего не ответил. Помогите пожалуйста)
Lua:
function kicker()
    local peds = getAllChars()
    for _, v in pairs(peds) do
        local result, myid = sampGetPlayerIdByCharHandle(playerPed)
        local mx, my, mz = getCharCoordinates(playerPed)
        local x, y, z = getCharCoordinates(v)
        local distance = getDistanceBetweenCoords3d(mx, my, mz, x, y, z)
        local result, id = sampGetPlayerIdByCharHandle(v)
        if result and id ~= sampGetPlayerIdByCharHandle(PLAYER_PED) and distance < 3.0 then
            if id ~= myid then
                sampSendChat("/pm "..tonumber(id).. " 1 Вы тут?")
                lua_thread.create(function()
                    wait(15000)
                    sampSendChat("/kick "..tonumber(id).. " Помеха")
                end)
            end
        end
    end
end
 

Tema05

Известный
1,442
401
Кто может помогите! Вот код при прописывании команды /kicker игрокам в радиусе 3х метров отправляется диалоговое окно с текстом Вы тут? И через 15 секунд их кикает с причиной Помеха. Надо сделать так что если игрок прочитал диалог ( в чате пишется если он прочитал его, пишет Nick прочитал ваш диалог) или ответил в чат что-то, то его не кикало автоматически, а кикало тех кто не прочитал диалог или ничего не ответил. Помогите пожалуйста)
Lua:
function kicker()
    local peds = getAllChars()
    for _, v in pairs(peds) do
        local result, myid = sampGetPlayerIdByCharHandle(playerPed)
        local mx, my, mz = getCharCoordinates(playerPed)
        local x, y, z = getCharCoordinates(v)
        local distance = getDistanceBetweenCoords3d(mx, my, mz, x, y, z)
        local result, id = sampGetPlayerIdByCharHandle(v)
        if result and id ~= sampGetPlayerIdByCharHandle(PLAYER_PED) and distance < 3.0 then
            if id ~= myid then
                sampSendChat("/pm "..tonumber(id).. " 1 Вы тут?")
                lua_thread.create(function()
                    wait(15000)
                    sampSendChat("/kick "..tonumber(id).. " Помеха")
                end)
            end
        end
    end
end
Создаёшь массив с вмеси idщникамми. Найди что происходит когда кто либо ответил и удаляй из массива тех кто ответил. Перед киком проверяй есть ли данный id в массиве
 

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Создаёшь массив с вмеси idщникамми. Найди что происходит когда кто либо ответил и удаляй из массива тех кто ответил. Перед киком проверяй есть ли данный id в массиве
а пример можно? А то как-то не очень понял
 

Tema05

Известный
1,442
401
а пример можно? А то как-то не очень понял
Я понимаю что ты наверное только начал писать на lua. Я лично думаю что ты весь код выше скопировал откуда-то. Попробуй сам что то сделать, а если не получится пиши на бх.
 

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Я понимаю что ты наверное только начал писать на lua. Я лично думаю что ты весь код выше скопировал откуда-то. Попробуй сам что то сделать, а если не получится пиши на бх.
Какая разница только не только
 

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

Salvatore_Ferrari

Известный
427
239
Нельзя эту фишку провернуть в клиентской части. Как ты посмотришь прочитал ли твой диалог кто-то другой?
Никак. Взаимодействие с диалогом отправляется на сервер a не тебе и не может быть перехвачен методами lua
 

Fott

Простреленный
3,433
2,279
Нельзя эту фишку провернуть в клиентской части. Как ты посмотришь прочитал ли твой диалог кто-то другой?
Никак. Взаимодействие с диалогом отправляется на сервер a не тебе и не может быть перехвачен методами lua
Если после прочтения у игрока к примеру появляется над головой надпись, то вполне реально реализовать.
 

Morse

Потрачен
Автор темы
436
70
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Нельзя эту фишку провернуть в клиентской части. Как ты посмотришь прочитал ли твой диалог кто-то другой?
Никак. Взаимодействие с диалогом отправляется на сервер a не тебе и не может быть перехвачен методами lua
ну тогда проверку на то что он ответил или нет