Вопросы по Lua скриптингу

Тема в разделе "Lua", создана пользователем FYP, 8 авг 2016.

  1. Musaigen

    Musaigen не забирайте моего проверенного!!!!!(

    Регистрация:
    1 апр 2018
    Сообщения:
    542
    Симпатии:
    158
    sampCloseCurrentDialogWithButton(1)
     
    Harryss нравится это.
  2. Harryss

    Harryss Постоянный участник

    Регистрация:
    7 мар 2015
    Сообщения:
    59
    Симпатии:
    1
    Хм... ровно так же пробывал, не пашет. Сообщение в чат выводит, а диалог все равно не закрывает.
    while true do
        wait(0)
        if wasKeyPressed(0x70) then
            if sampIsDialogClientside() then
                sampAddChatMessage("{ffffff}You got it")
                sampCloseCurrentDialogWithButton(1)
                wait(1000)
                submenus_show(main_menu, '{ffffff}Lua script | Main')
            end
        end
    end
     
  3. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    Перед функцией ставь wait(0)
     
  4. Harryss

    Harryss Постоянный участник

    Регистрация:
    7 мар 2015
    Сообщения:
    59
    Симпатии:
    1
    О какой именно функции говоришь?
     
  5. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    sampCloseCurrentDialogWithButton
     
  6. Harryss

    Harryss Постоянный участник

    Регистрация:
    7 мар 2015
    Сообщения:
    59
    Симпатии:
    1
    Эту задержку в 0 тоже пробовал - не заработало. И диалог с сабменю эта функция не закрывает, чувствую я, что в луа это функцией локальный диалог не закроешь.
     
  7. kraft1k

    kraft1k Вынь хуй из головы и все получится © hnnssy
    Друг

    Регистрация:
    29 сен 2014
    Сообщения:
    969
    Симпатии:
    587
    Это что за?
    sampIsDialogClientside()
    На "sampIsDialogActive(id)" поменяй. Если "id" равен "-1", то будет закрывать любой диалог.
     
  8. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    Лучше onShowDialog
    return false
     
  9. kraft1k

    kraft1k Вынь хуй из головы и все получится © hnnssy
    Друг

    Регистрация:
    29 сен 2014
    Сообщения:
    969
    Симпатии:
    587
    Хук не поймает локальный диалог, он же не сервером шлётся.
     
    Harryss и yuy111 нравится это.
  10. Harryss

    Harryss Постоянный участник

    Регистрация:
    7 мар 2015
    Сообщения:
    59
    Симпатии:
    1
    Поставил твою функцию, все так же не работает. Похоже что дело в клавише - как только я убрал ее, то все удачно заработало. Но без клавиши мне некуда)
     
  11. Dentotalwar

    Dentotalwar Постоянный участник

    Регистрация:
    20 июн 2017
    Сообщения:
    96
    Симпатии:
    1
    imgui.Separator() ток вертикальный как сделать?
     
  12. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    imgui.Columns()
     
  13. kraft1k

    kraft1k Вынь хуй из головы и все получится © hnnssy
    Друг

    Регистрация:
    29 сен 2014
    Сообщения:
    969
    Симпатии:
    587
    Пробуй другие проверки.

    isKeyDown(70)
    isKeyJustPressed(70)
    
    и т.д
     
  14. laz3r228

    laz3r228 Интересующийся

    Регистрация:
    24 ноя 2016
    Сообщения:
    139
    Симпатии:
    4
    как сделать слайдер на имгуи?
     
  15. Slavaguzik

    Slavaguzik Новичок

    Регистрация:
    24 июл 2018
    Сообщения:
    3
    Симпатии:
    1
    ЗА ЧТО КОД ОТВЕЧАЕТ ПЛИЗ РАССКАЖИТЕ

    function imgui.OnDrawFrame()
    local w, h = getScreenResolution()
    if test_menu.v then --
    imgui.SetNextWindowPos(imgui.ImVec2(w / 2, h / 2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(321, 123), imgui.Cond.FirstUseEver)
    imgui.Begin('GM for test', test_menu)
    if imgui.Checkbox('GM', gm) then
    setCharProofs(PLAYER_PED, true, true, true, true, true)
    else
    setCharProofs(PLAYER_PED, false, false, false, false, false)
    end
    imgui.End()
    end
    end
     
  16. checkdasound

    checkdasound Друг форума

    Регистрация:
    12 янв 2018
    Сообщения:
    651
    Симпатии:
    123
    я же тебе скинул код с комментариями этот, ты комменты убрал зачем?
     
  17. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    local slider = imgui.ImInt(0)
    imgui.SliderInt("Число", slider, 0, 1000)
     
  18. Slavaguzik

    Slavaguzik Новичок

    Регистрация:
    24 июл 2018
    Сообщения:
    3
    Симпатии:
    1
    Ну просто ты написал мол типо я надоел тебе писать на стену вот и удалил((
     
  19. yuy111

    yuy111 Друг форума

    Регистрация:
    22 фев 2017
    Сообщения:
    601
    Симпатии:
    51
    GM включать и выключать с помощью чекбокса имгуи
     
  20. kraft1k

    kraft1k Вынь хуй из головы и все получится © hnnssy
    Друг

    Регистрация:
    29 сен 2014
    Сообщения:
    969
    Симпатии:
    587
    При нажатии на кнопку включает и выключает гм

    Dear ImGui(https://blast.hk/threads/19292/)
    Тебе сюда, там обычно ImGui`шники сидят
     
  21. #JD

    #JD Активный участник

    Регистрация:
    27 мар 2017
    Сообщения:
    30
    Симпатии:
    1
    Кто знает\может сделать\поможет сделать чекер как у Митина в lua'шном Admin Tools?
    upload_2018-8-11_7-14-43.png
     
  22. Mystache

    Mystache Постоянный участник

    Регистрация:
    25 июн 2017
    Сообщения:
    76
    Симпатии:
    3
    Как получить хендлы пассажиров?
     
  23. crybaby

    crybaby Свой человек

    Регистрация:
    29 июл 2017
    Сообщения:
    318
    Симпатии:
    25
    таких чекеров как говна, гугл в помощь
     
  24. #JD

    #JD Активный участник

    Регистрация:
    27 мар 2017
    Сообщения:
    30
    Симпатии:
    1
    Сколько искал, находил на lua ток тот, который в окне открывается. :(
     
  25. LZTD

    LZTD Активный участник

    Регистрация:
    17 сен 2016
    Сообщения:
    49
    Симпатии:
    5
    Как узнать ID машины по её хендлу
     
  26. imring

    imring колечконуп
    Всефорумный модератор

    Регистрация:
    3 авг 2016
    Сообщения:
    1.484
    Симпатии:
    797
    bool result, int id = sampGetVehicleIdByCarHandle(Vehicle car) -- 0B2C
     
    LZTD нравится это.
  27. Aniki

    Проверенный

    Регистрация:
    3 сен 2017
    Сообщения:
    326
    Симпатии:
    194
    CLEO - [0.3.7] Admin and Friend checker [Autoupdater](https://blast.hk/threads/8605/), если нужно чтобы написали тебе какой-то другой, то это сюда - Работа и услуги(https://blast.hk/forums/16/), и вообще тема с поиском софта вот - Помогите найти скрипт/плагин/мод(https://blast.hk/threads/18155/page-107#post-234029)

    Ped ped = getCharInCarPassengerSeat(Vehicle car, int seat)
     
    #13187 Aniki, 11 авг 2018 в 10:03
    Последнее редактирование модератором: 11 авг 2018 в 10:13
  28. Gradusov

    Gradusov Участник

    Регистрация:
    15 июн 2015
    Сообщения:
    16
    Симпатии:
    2
    Как оставить метку игрока (не мою) на карте? То-есть, чтобы она показывалась не только в зоне стрима, а еще и за тридевять земель от него. Об отсутствии возможности её обновлять знаю.
     
  29. lolimoska1

    lolimoska1 Свой человек

    Регистрация:
    27 июн 2017
    Сообщения:
    362
    Симпатии:
    37
    Не как
     
  30. crybaby

    crybaby Свой человек

    Регистрация:
    29 июл 2017
    Сообщения:
    318
    Симпатии:
    25
    
       if tonumber(select) == 3 then
            if sampGetPlayerNickname(myid) == 'Schweitzer_Rewzeisch' then
                if imgui.Button(u8"Сохранить настройки") then
                    os.remove('moonloader/config/commands_rp.ini')
                    os.remove('commands_cmds.ini')
                    if inicfg.save(commands_rp, "commands_rp.ini") and inicfg.save(commands_cmd, "commands_cmds.ini") then
                        sampAddChatMessage("Настройки успешно сохранены", -1)
                    end
                end
                imgui.SameLine(270)
                imgui.TextColored(RGBtoImVec4('000000'), utf("Меню настроек биндов"))
                imgui.BeginChild('left', imgui.ImVec2(160, 0), true)
                if not selectcmd then selectedcmd = 1 end
                imgui.TextDisabled(utf"Команда")
                imgui.SameLine(100)
                imgui.TextDisabled(utf("Кнопка"))
                if add_cmd then
                    imgui.InputText(utf("##add_cmd"), add_cm)
                    if imgui.Button(utf("Добавить")) then
                        table.insert(commands_cmd, 1, {[utf:decode(add_cm.v)] = "Нет"})
                        table.insert(commands_rp, 1, utf:decode(add_cm.v))
                        commands_rp[add_cm.v] = {"Нет"}
                        selectcmd = 1
                        add_cmd = false
                    end
                else
                    imgui.TextColored(RGBtoImVec4('000000'), utf"    Добавить команду")
                    if imgui.IsItemClicked() then
                        add_cmd = true
                    end
                end
                imgui.Spacing()
                imgui.Separator()
                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0.00, 0.00, 0.00, 1.00))
                for i, v in pairs(commands_cmd) do
                    for k, v in pairs(v) do
                        if imgui.Selectable(u8(k), false) then selectcmd = i end
                        imgui.SameLine(100)
                        imgui.TextColored(RGBtoImVec4('000000'), utf(vkeys.id_to_name(v) or v))
                    end
                end
                imgui.PopStyleColor(1)
                imgui.EndChild()
                imgui.SameLine()
                imgui.BeginChild('right', imgui.ImVec2(0, 0), true)
                for i, v in pairs(commands_cmd) do
                    if selectcmd == i then
                        for k, v in pairs(v) do
                            imgui.TextColored(RGBtoImVec4('000000'), utf(string.format("Клавиша активации команды %s: %s", k, vkeys.id_to_name(v) or v)))
                            imgui.NewLine()
                            if not changekey then
                                if imgui.Button(utf("Изменить клавишу активации")) then
                                    changekey = true
                                end
                            else
                                imgui.TextColored(RGBtoImVec4('000000'), utf("Нажмите любую кнопку, чтобы сохранить ее для этой команды"))
                                for w, key in pairs(vkeys) do
                                    if wasKeyPressed(key) then
                                        commands_cmd[i][k] = key
                                        changekey = false
                                        break
                                    end
                                end
                            end
                            imgui.Spacing()
                            imgui.Separator()
                            imgui.NewLine()
                            if red_roleplay then
                                imgui.InputTextMultiline('', edit_text_bind, imgui.ImVec2(-0.1, 200))
                                if imgui.Button(utf("Сохранить")) then
                                    local infobyline = 0
                                    commands_rp[k] = {}
                                    for w in string.gmatch(edit_text_bind.v, "[^\r\n]+") do
                                        infobyline = infobyline + 1
                                        commands_rp[k][infobyline] = u8:decode(w)
                                    end
                                    red_roleplay = false
                                end
                                imgui.SameLine()
                                if imgui.Button(utf("Отмена")) then
                                    red_roleplay = false
                                end
                            else
                                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0.00, 0.00, 0.00, 1.00))
                                for _, t in pairs(commands_rp[k]) do
                                    imgui.TextWrapped(utf(t))
                                end
                                imgui.PopStyleColor(1)
                            end
                            imgui.NewLine(); imgui.Separator(); imgui.Spacing()
                            if not red_roleplay then
                                if imgui.Button(utf("Редактировать")) then
                                    edit_text_bind.v = ''
                                    for a, b in pairs(commands_rp[k]) do
                                        edit_text_bind.v = edit_text_bind.v..''..u8(b)..'\n'
                                    end
                                    etag = ""
                                    for tag, _ in pairs(tags) do
                                        etag = etag .. "\n" ..tags_description[tag]
                                    end
                                    red_roleplay = true
                                end
                                imgui.SameLine()
                                imgui.SameLine()
                                if imgui.Button(utf("Удалить")) then
                                    table.remove(commands_cmd, i)
                                end
                            elseif red_roleplay then
                                imgui.PushStyleColor(imgui.Col.Text, imgui.ImVec4(0.00, 0.00, 0.00, 1.00))
                                imgui.Text(utf("Доступны теги: "))
                                for w in string.gmatch(etag, "[^\r\n]+") do
                                    imgui.TextWrapped(utf(w))
                                end
                                imgui.Text(utf("{param1} - пишет первый параметр, который Вы укажете при использовании команды."))
                                imgui.Text(utf("{param2} - пишет второй параметр, который Вы укажете при использовании команды."))
                                imgui.Text(utf("{param3} - пишет третий параметр, который Вы укажете при использовании команды."))
                                imgui.Text(utf("{param1nickname} - пишет ник игрока благодаря ID игрока из 1 параметра,"))
                                imgui.Text(utf("который Вы укажете при использовании команды."))
                                imgui.Text(utf("{param2nickname} - пишет ник игрока благодаря ID игрока из 1 параметра,"))
                                imgui.Text(utf("который Вы укажете при использовании команды."))
                                imgui.Text(utf("{param3nickname} - пишет ник игрока благодаря ID игрока из 1 параметра,"))
                                imgui.Text(utf("который Вы укажете при использовании команды."))
                                imgui.Text(utf("{wait МС} - задержка в миллисекундах. 1000 миллисекунд = 1 секунда."))
                                imgui.PopStyleColor(1)
                            end
                        end
                    end
                end
                imgui.EndChild()
                imgui.EndChild()
            else
                imgui.SetCursorPos(imgui.ImVec2(190, 225))
                imgui.Image(warning, imgui.ImVec2(200, 200))
                imgui.SetCursorPos(imgui.ImVec2(250, 425))
                imgui.TextColored(RGBtoImVec4('545454'), u8'В разработке.')
            end
        end
    почему крашит я заебался уже
     
    #13190 crybaby, 11 авг 2018 в 11:55
    Последнее редактирование: 11 авг 2018 в 12:19
  31. Ranx

    Ranx Активный участник

    Регистрация:
    12 мар 2015
    Сообщения:
    40
    Симпатии:
    20
    Была тут вроде функция, которая показывала район, в котором находится игрок. Там вроде координаты с таблицей сравнивали, её ж делать долго. Киньте, пожалуйста, ссылочку)
     
  32. crybaby

    crybaby Свой человек

    Регистрация:
    29 июл 2017
    Сообщения:
    318
    Симпатии:
    25
    getGxtText(getNameOfZone(x, y, z))
     
    Ranx нравится это.
  33. Justin_Rivero

    Justin_Rivero Участник

    Регистрация:
    30 июл 2018
    Сообщения:
    9
    Симпатии:
    0
    Как выполнить sampSendChat автоматически после того как заспавнился на сервере? (Я начинающий... Сорри за то что прошу код)
     
  34. BW-Samp

    BW-Samp Постоянный участник

    Регистрация:
    29 июл 2018
    Сообщения:
    63
    Симпатии:
    0
    upload_2018-8-11_15-20-59.png
    почему район таким образом пишет?
     
  35. checkdasound

    checkdasound Друг форума

    Регистрация:
    12 янв 2018
    Сообщения:
    651
    Симпатии:
    123
    потому что кодировку файла поставь: windows-1251