Помощь в изменении скриптов

FYP

Известный
Автор темы
Администратор
1,764
5,925
Здесь вы можете попросить других пользователей внести какие-то небольшие изменения в скрипт, например, изменить активацию.
Для вопросов по программированию и разработке на форуме есть отдельная категория Разработка.

Рекомендации:
  1. Не просите о редактировании .asi, .sf, .luac, .dll, .exe и прочих файлов, не поддающихся простой декомпиляции. Скрипты формата .ahk (AutoHotKey), .lua (Lua/MoonLoader) и .cs (CLEO) легко поддаются изменению.
  2. Сообщения по типу "спасибо, помог" по правилам форума считаются флудом и скорее всего будут удалены. Если вам помогли, вы можете нажать кнопку Мне нравится под ответом - это даст понять, что ответ верный.
  3. За злонамеренное распространение вредоносного ПО - перманентный бан. Имейте это в виду.
Удаление копирайтов является нарушением авторских прав, если автор не дал на это своего разрешения. Правила BlastHack запрещают нарушать авторские права, поэтому если вам нужно их убрать - обращайтесь к автору.
 
Последнее редактирование:

Sergiu Rotari

Известный
29
2
Помогите пожалуйста ребята, мне нужно чтобы после определенного времени (5 секунд) после загрузочного екрана.

Этот скрипт отключился, типа (script end)

5 секунд работает скрипт, всё как и надо, и потом он отключается (так мне надо)
 

Вложения

  • ImageOnScreen ( imgos ).lua
    8.6 KB · Просмотры: 4

gegra

Новичок
12
0
Перекрасить зелёноё в цвет как на хп
 

Вложения

  • Status_Indicators(1) (1).cs
    20.3 KB · Просмотры: 5

sedhhhhserhhs

Активный
285
50
Посмотрите пж, в скрипте ест ькакая то ошибка и он со временем перестает работать, заранее благодарю. Клео библиотека стоит 4.4
 

Вложения

  • radiobykilobyte.cs
    17.4 KB · Просмотры: 1

friendly

Известный
900
262
поставить проверку на открытый чат/диалог, если чат/диалог открытый то скрипт не должен срабатывать
 

Вложения

  • crash.cs
    17.7 KB · Просмотры: 2

mitaminka5

Новичок
6
0
Это бот для машиниста радмир, проблема в том что, при приблежении к станции он не плавно тормозит, а моментально остановляеться, не подскажите как это пофиксить, т.к я в этом не вообще не шарю
 

Вложения

  • train.lua
    5.6 KB · Просмотры: 3

Balonboy

Известный
152
3
PHP:
// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .cs}

//-------------MAIN---------------
0662: printstring "SYSTEMAIN.3DN.RU"
thread "$PLAYER_ACTOR"

:$PLAYER_ACTOR_37
wait 0
if
   Player.Defined($PLAYER_CHAR)
jf @$PLAYER_ACTOR_37
if
key_down 113
jf @$PLAYER_ACTOR_37
0@ = 22
0@ += 36
0@ *= 112
0@ += 13150904
0@ += 34
0A8D: 20@ = read_memory 0@ size 2 virtual_protect 0
0A8C: write_memory 0@ size 2 value 15 virtual_protect 0
1@ = 23
1@ += 36
1@ *= 112
1@ += 13150904
1@ += 34
0A8D: 21@ = read_memory 1@ size 2 virtual_protect 0
0A8C: write_memory 1@ size 2 value 20 virtual_protect 0
2@ = 24
2@ += 36
2@ *= 112
2@ += 13150904
2@ += 34
0A8D: 22@ = read_memory 2@ size 2 virtual_protect 0
0A8C: write_memory 2@ size 2 value 90 virtual_protect 0
3@ = 25
3@ += 36
3@ *= 112
3@ += 13150904
3@ += 34
0A8D: 23@ = read_memory 3@ size 2 virtual_protect 0
0A8C: write_memory 3@ size 2 value 5 virtual_protect 0
4@ = 27
4@ += 36
4@ *= 112
4@ += 13150904
4@ += 34
0A8D: 24@ = read_memory 4@ size 2 virtual_protect 0
0A8C: write_memory 4@ size 2 value 7 virtual_protect 0
5@ = 29
5@ *= 112
5@ += 13150904
5@ += 34
0A8D: 25@ = read_memory 5@ size 2 virtual_protect 0
0A8C: write_memory 5@ size 2 value 9 virtual_protect 0
6@ = 30
6@ += 36
6@ *= 112
6@ += 13150904
6@ += 34
0A8D: 26@ = read_memory 6@ size 2 virtual_protect 0
0A8C: write_memory 6@ size 2 value 15 virtual_protect 0
7@ = 31
7@ += 36
7@ *= 112
7@ += 13150904
7@ += 34
0A8D: 27@ = read_memory 7@ size 2 virtual_protect 0
0A8C: write_memory 7@ size 2 value 15 virtual_protect 0
8@ = 33
8@ *= 112
8@ += 13150904
8@ += 34
0A8D: 28@ = read_memory 8@ size 2 virtual_protect 0
0A8C: write_memory 8@ size 2 value 30 virtual_protect 0
9@ = 34
9@ *= 112
9@ += 13150904
9@ += 34
0A8D: 29@ = read_memory 9@ size 2 virtual_protect 0
0A8C: write_memory 9@ size 2 value 50 virtual_protect 0
10@ = 28
10@ += 36
10@ *= 112
10@ += 13150904
10@ += 34
0A8D: 30@ = read_memory 10@ size 2 virtual_protect 0
0A8C: write_memory 10@ size 2 value 10 virtual_protect 0
11@ = 32
11@ += 36
11@ *= 112
11@ += 13150904
11@ += 34
0A8D: 31@ = read_memory 11@ size 2 virtual_protect 0
0A8C: write_memory 11@ size 2 value 10 virtual_protect 0
12@ = 37
12@ *= 112
12@ += 13150904
12@ += 34
0A8D: TIMERA = read_memory 12@ size 2 virtual_protect 0
0A8C: write_memory 12@ size 2 value 25 virtual_protect 0
13@ = 38
13@ += 36
13@ *= 112
13@ += 13150904
13@ += 34
0A8D: TIMERB = read_memory 13@ size 2 virtual_protect 0
0A8C: write_memory 13@ size 2 value 25 virtual_protect 0
14@ = 26
14@ += 36
14@ *= 112
14@ += 13150904
14@ += 34
0A8D: 34@ = read_memory 14@ size 2 virtual_protect 0
0A8C: write_memory 14@ size 2 value 6 virtual_protect 0
018C: play_sound 1085 at 0.0 0.0 0.0
wait 50
018C: play_sound 1085 at 0.0 0.0 0.0
wait 50
018C: play_sound 1085 at 0.0 0.0 0.0
00BC: show_text_highpriority GXT 'CHEAT1' time 1000 flag 1  // Trapaœa Ativada

:$PLAYER_ACTOR_1043
wait 0
if
   not key_down 113
jf @$PLAYER_ACTOR_1043

:$PLAYER_ACTOR_1062
wait 0
if
key_down 113
jf @$PLAYER_ACTOR_1062
0A8C: write_memory 0@ size 2 value 20@ virtual_protect 0
0A8C: write_memory 1@ size 2 value 21@ virtual_protect 0
0A8C: write_memory 2@ size 2 value 22@ virtual_protect 0
0A8C: write_memory 3@ size 2 value 23@ virtual_protect 0
0A8C: write_memory 4@ size 2 value 24@ virtual_protect 0
0A8C: write_memory 5@ size 2 value 25@ virtual_protect 0
0A8C: write_memory 6@ size 2 value 26@ virtual_protect 0
0A8C: write_memory 7@ size 2 value 27@ virtual_protect 0
0A8C: write_memory 8@ size 2 value 28@ virtual_protect 0
0A8C: write_memory 9@ size 2 value 29@ virtual_protect 0
0A8C: write_memory 10@ size 2 value 30@ virtual_protect 0
0A8C: write_memory 11@ size 2 value 31@ virtual_protect 0
0A8C: write_memory 12@ size 2 value TIMERA virtual_protect 0
0A8C: write_memory 13@ size 2 value TIMERB virtual_protect 0
0A8C: write_memory 14@ size 2 value 34@ virtual_protect 0
018C: play_sound 1084 at 0.0 0.0 0.0
wait 50
018C: play_sound 1084 at 0.0 0.0 0.0
wait 50
018C: play_sound 1084 at 0.0 0.0 0.0
00BC: show_text_highpriority GXT 'CHEAT8' time 1000 flag 1  // Trapaœa Desativada

:$PLAYER_ACTOR_1345
wait 0
if
   not key_down 113
jf @$PLAYER_ACTOR_1345
goto @$PLAYER_ACTOR_37

Can you solve the bug of this script that when I disable I die with 1 shot for the enemies?

Можете ли вы решить ошибку этого скрипта, что при отключении я умираю с 1 выстрела по врагам?

Can you solve the bug of this script that when I disable I die with 1 shot for the enemies?

Можете ли вы решить ошибку этого скрипта, что при отключении я умираю с 1 выстрела по врагам?
 

Вложения

  • Reductor_De_Daños.cs
    18.5 KB · Просмотры: 2

MlaBo

Новичок
1
0
Пожалуйста помогите в этом луа скрипте есть 3 бота а именно бот лесопилки, мусоровоза и полота
Мне надо что бы в боте на пилоте когда долетел там надо нажать ESC что бы продолжить работу
 

Вложения

  • [UltraBot - RadmirRP 1.1] бот пилота, автобусника, мусоровоза.luac
    29 KB · Просмотры: 2

Drednova

Новичок
1
0
Добрый день. Не могли бы вы изменить скорость нажатия стрелки вверх на мото, сделав ее чуть ниже ( скорость с которой обычный человек бы тапал по стрелке ) , или отписать где это видоизменяется.
Спасибо заранее.
 

Вложения

  • Auto_run_moto_plavat__by_vespan_.lua
    1.4 KB · Просмотры: 4

sakata69

Участник
37
8
Добрый день. Не могли бы вы изменить скорость нажатия стрелки вверх на мото, сделав ее чуть ниже ( скорость с которой обычный человек бы тапал по стрелке ) , или отписать где это видоизменяется.
Спасибо заранее.
в строках: 16, 20, 27, 31 поменяй число в скобках
 
  • Нравится
Реакции: Drednova

wrwe

Участник
51
12

Вложения

  • treningcaptchi.lua
    6.6 KB · Просмотры: 6

Victori

Новичок
2
0
Требуется помощь в lua-скриптинге. Если есть тут люди которые могут помочь с парой подпунктов, буду рада.
Нужно убрать автоотключение от чата после выхода в афк, очень неудобно, приходится перезагружать все скрипты.
По возможности, было бы неплохо добавить возможность поставить тэг, после фамилии - перед текстом. /kk Nick Name [TAG] text.
Так же было бы неплохо, добавить мемберс, чтобы можно было смотреть кто присутствует в сети в чате.
Такой небольшой /kk скрипт, с более удобными функциями.

Lua:
require 'luairc'

local inicfg = require "inicfg"
local imgui = require 'imgui'

local newcfg = {
    config = {
        chanel = '',
        name = 'ChatRoom',
        ColorName = 'FFFFFF',
        ColorText = 'FFFFFF'
    }
}


local encoding = require 'encoding' -- Подключаем библиотеку encoding для кодирования строк в UTF-8
encoding.default = 'CP1251'
u8 = encoding.UTF8

local connected = false -- переменная, которую мы будем устанавливать в true, когда мы подключены

mws = imgui.ImBool(false)


sw,sh = getScreenResolution()
function imgui.OnDrawFrame()
    if not mws.v then imgui.Process = false end

    NameChat = imgui.ImBuffer(u8(mainIni.config.name),64)

    ChanelChat = imgui.ImBuffer(u8(mainIni.config.chanel),10)

    ColorNameChat = imgui.ImBuffer(u8(mainIni.config.ColorName),7)
    ColorTextChat = imgui.ImBuffer(u8(mainIni.config.ColorText),7)

    if mws.v then
        imgui.SetNextWindowSize(imgui.ImVec2(350, 130), imgui.Cond.FirstUseEver) -- resoluthion window
        imgui.SetNextWindowPos(imgui.ImVec2((sw/2),sh/2),imgui.Cond.FirstUseEver,imgui.ImVec2(0.5,0.5)) -- in center monitor

        imgui.Begin(u8'Настройки',mws)

        imgui.PushItemWidth(125)
        if imgui.InputText(u8'Введите название чата (без [])',NameChat) then
            mainIni.config.name = u8:decode(NameChat.v)
        end

        if imgui.InputText(u8'Код чата',ChanelChat) then
            mainIni.config.chanel = u8:decode(ChanelChat.v)
        end

        imgui.SameLine()

        if imgui.Button(u8'Прийсоденится') then
            s:disconnect()
            s = irc.new{nick = MyName} -- создаем новый IRC объект
            s:connect("irc.esper.net") -- подключаем наш объект к серверу "irc.example.net"
            s:hook("OnDisconnect", onIRCDisconnect)
            s:hook("OnChat", onIRCChat)
            s:hook("OnJoin", onIRCJoin)
            s:join('#'..ip..mainIni.config.chanel)
        end

        if imgui.InputText(u8'Цвет названия',ColorNameChat) then
            mainIni.config.ColorName = u8:decode(ColorNameChat.v)
        end

        if imgui.InputText(u8'Цвет текста',ColorTextChat) then
            mainIni.config.ColorText = u8:decode(ColorTextChat.v)
        end
        imgui.PopItemWidth()
        inicfg.save(mainIni,pathCFG)

        imgui.End()
    end
end


function main()
    if not isSampLoaded() then return end
    while not isSampAvailable() do wait(0) end

    ip, port = sampGetCurrentServerAddress()
  
    pathCFG = getWorkingDirectory()..'\\ChatRoom.ini'
    if doesFileExist(pathCFG) then
        mainIni = inicfg.load(nil,pathCFG)
    else
        file = io.open(pathCFG,'w')
        file.close()
        inicfg.save(newcfg,pathCFG)
        thisScript():reload()
    end

    _,MyId = sampGetPlayerIdByCharHandle(PLAYER_PED)
    MyName = sampGetPlayerNickname(MyId)

    FunckCon()

    sampAddChatMessage('{FF0000}[ChatRoom]{ffffff}: loaded, отправить сообщение - /kk text, открыть меню - /crmenu. Автор: n1cho',-1)


    sampRegisterChatCommand("kk",sendIRC)
    sampRegisterChatCommand('crmenu',function()
        mws.v = not mws.v
        imgui.Process = mws.v
    end)

    while true do
        wait(1500) -- обязательна задержка не менее 500 мс (рекомендация разработчика библиотеки)
        if connected then -- Проверяем подключены ли мы, иначе при вызове s:think() скрипт выдаст ошибку
            s:think() --[[ функция, которая обрабатывает входящие данные и отвечает на запросы сервера (такие как PING)
                            Данную функцию стоит вызывать достаточно часто, чтобы не истекло время ожидания сервера]]
        end

    end
end

function onIRCJoin(user, channel)
    ConnectID = sampGetPlayerIdByNickname(user.nick)
    if sampIsPlayerConnected(ConnectID) then
        sampAddChatMessage(string.format('{%s}[%s] {FFFFFF} %s [%s] прийсоденился к серверу.',mainIni.config.ColorName,mainIni.config.name,user.nick,ConnectID),-1)
    end
end

function onIRCChat(user, channel, message) -- Добавляем обработчик событий. Ниже рассмотрим все виды событий.
    SendID = sampGetPlayerIdByNickname(user.nick)
    if sampIsPlayerConnected(SendID) then
        scolor=string.format("%06X", ARGBtoRGB(sampGetPlayerColor(SendID)))
        sampAddChatMessage(string.format("{%s}[%s]{%s} %s[%s]{FFFFFF}:{%s} %s",mainIni.config.ColorName, mainIni.config.name, scolor,user.nick,SendID,mainIni.config.ColorText, u8:decode(message)),-1)
    else
        sampAddChatMessage(string.format("{%s}[%s]{FFFFFF} %s:{%s} %s",mainIni.config.ColorName, mainIni.config.name, user.nick,mainIni.config.ColorText, u8:decode(message)),-1) -- Готовим строку для вывода и выводим ее в лог. Немного ниже поговорим о структуре user
    end
end

function onIRCDisconnect(message, error)
    if error then
        if connected then
            connected = false
            s:disconnect()
            sampAddChatMessage("Вы были отключены от сервера за AFK,переподключаемся",-1)
            FunckCon()
        end
    end
end

function FunckCon()
    s = irc.new{nick = MyName} -- создаем новый IRC объект
    s:connect("irc.esper.net") -- подключаем наш объект к серверу "irc.example.net"


    s:hook("OnDisconnect", onIRCDisconnect)
    s:hook("OnChat", onIRCChat)
    s:hook("OnJoin", onIRCJoin)


    s:join('#'..ip..mainIni.config.chanel) -- Подключаемся к каналу
    connected = true -- меняем значение переменной на true
end
function sendIRC(params) -- Для ответа создадим команду /kk
    _,MyId = sampGetPlayerIdByCharHandle(PLAYER_PED)
    MyName = sampGetPlayerNickname(MyId)
    if connected and params ~= nil and params ~= '' then -- Проверим, что мы подключены и ввели аргументы команды
        s:sendChat('#'..ip..mainIni.config.chanel, u8(params)) -- отправим сообщение, которое мы ввели в аргументах в канал #example
        mcolor=string.format("%06X", ARGBtoRGB(sampGetPlayerColor(MyId)))
        sampAddChatMessage(string.format('{%s}[%s]{%s} %s[%s]{FFFFFF}:{%s} %s',mainIni.config.ColorName, mainIni.config.name,mcolor,MyName,MyId,mainIni.config.ColorText,params),-1)
    else
        sampAddChatMessage('Вы неправильно ввели команду, правильно: /kk text',-1)
    end
end

function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
end

function getColor(ID)
    PlayerColor = sampGetPlayerColor(id)
    a, r, g, b = explode_argb(PlayerColor)
    return r/255, g/255, b/255, 1
end

function explode_argb(argb)
    local a = bit.band(bit.rshift(argb, 24), 0xFF)
    local r = bit.band(bit.rshift(argb, 16), 0xFF)
    local g = bit.band(bit.rshift(argb, 8), 0xFF)
    local b = bit.band(argb, 0xFF)
    return a, r, g, b
end

function ARGBtoRGB(color)
    local a = bit.band(bit.rshift(color, 24), 0xFF)
    local r = bit.band(bit.rshift(color, 16), 0xFF)
    local g = bit.band(bit.rshift(color, 8), 0xFF)
    local b = bit.band(color, 0xFF)
    local rgb = b
    rgb = bit.bor(rgb, bit.lshift(g, 8))
    rgb = bit.bor(rgb, bit.lshift(r, 16))
    return rgb
end
 
Последнее редактирование:

InSeym

Новичок
8
0
Car lock не работает потому что на сервере чтобы открыть машину нужно писать /lock 1 Помогите
 

Вложения

  • lock_cars.cs
    17.6 KB · Просмотры: 4

kolinggom

Новичок
11
0
автосвитч с активацией команды /qie работает только с диглом и шотганом в руках(без шотгана автосвитч не работает), на E дигл на Q шотган, прошу переделать скрипт что-бы без шотгана работала
 

Вложения

  • Scroll[0].cs
    19.1 KB · Просмотры: 1
Последнее редактирование:

.deagle

Активный
165
39

script_properties('work-in-pause')
require 'lib.moonloader'

script_author('TyphoonWw')
script_name('HeliKladChecker')
script_version('2.0')

local samp = require('lib.samp.events')

local imgui = require 'imgui'
local encoding = require 'encoding'
encoding.default = 'CP1251'
u8 = encoding.UTF8
local mx, my = getScreenResolution()

local kladid = {1271, 2680}

local main_window_state = imgui.ImBool(false)

inicfg = require 'inicfg'
iniFile = '[Ww] HeliKladChecker.lua.ini'
ini = inicfg.load({
config = {
speed = 0,
zatup_dist = 70,
zatup_timer = 10,
dist_far = 200,
dist_near = 70,
dist_close = 25,
height_close = 0,
height_near = 10,
height_water = 30,
height_standart = 20,
},
}, iniFile)
if not doesFileExist('moonloader/config/'..iniFile) then inicfg.save(ini, iniFile) end

local font_flag = require('moonloader').font_flag
local font_name = 'Tahoma'
local font_style = 0x4 --font_flag.SHADOW + font_flag.BOLD
local font_text = renderCreateFont(font_name, 11, font_style)

founded = {}

disable = false
timer = false

local im_speed = imgui.ImFloat(ini.config.speed)
local im_zatup_dist = imgui.ImInt(ini.config.zatup_dist)
local im_zatup_timer = imgui.ImInt(ini.config.zatup_timer)
local im_dist_far = imgui.ImInt(ini.config.dist_far)
local im_dist_near = imgui.ImInt(ini.config.dist_near)
local im_dist_close = imgui.ImInt(ini.config.dist_close)
local im_height_close = imgui.ImInt(ini.config.height_close)
local im_height_near = imgui.ImInt(ini.config.height_near)
local im_height_water = imgui.ImInt(ini.config.height_water)
local im_height_standart = imgui.ImInt(ini.config.height_standart)

function imgui.OnDrawFrame()
apply_custom_style()
imgui.SetNextWindowSize(imgui.ImVec2(800, 400), imgui.Cond.FirstUseEver)
imgui.SetNextWindowPos(imgui.ImVec2(mx/2, my/2), imgui.Cond.FirstUseEver)
local otk = 200
imgui.Begin(u8'HeliKladChecker', main_window_state, imgui.WindowFlags.AlwaysAutoResize)
imgui.PushItemWidth(150)

ShowHelpMarker(u8'Скорость полёта вертолёта (Стандарт == 0)')
imgui.SameLine()
imgui.Text(u8'Скорость')
imgui.SameLine(otk)
imgui.SliderFloat(u8'##Speed', im_speed, 0, 5, "%.1f")

ShowHelpMarker(u8'Дистанция, с которой будет начинаться таймер затупа')
imgui.SameLine()
imgui.Text(u8'Дистанция затупа')
imgui.SameLine(otk)
imgui.SliderInt(u8'##ZatupDist', im_zatup_dist, 1, 100, "%.0f")

ShowHelpMarker(u8'Таймер, по истечению которого бот пропустит эту точку')
imgui.SameLine()
imgui.Text(u8'Таймер затупа')
imgui.SameLine(otk)
imgui.SliderInt(u8'##ZatupTimer', im_zatup_timer, 1, 30, "%.0f")

imgui.Separator()

ShowHelpMarker(u8'Дистанция, на которой будет снижаться высота полёта')
imgui.SameLine()
imgui.Text(u8'Дальняя дистанция')
imgui.SameLine(otk)
imgui.SliderInt(u8'##DistFar', im_dist_far, 100, 200, "%.0f")

ShowHelpMarker(u8'Дистанция, на которой бот приготовится к проверке точки')
imgui.SameLine()
imgui.Text(u8'Дистанция снижения высоты')
imgui.SameLine(otk)
imgui.SliderInt(u8'##DistNear', im_dist_near, 30, 100, "%.0f")

ShowHelpMarker(u8'Дистанция, на которой бот конкретно проверяет точку')
imgui.SameLine()
imgui.Text(u8'Дистанция подлёта')
imgui.SameLine(otk)
imgui.SliderInt(u8'##DistClose', im_dist_close, 1, 30, "%.0f")

imgui.Separator()

ShowHelpMarker(u8'Высота при проверке точки')
imgui.SameLine()
imgui.Text(u8'Высота на точке')
imgui.SameLine(otk)
imgui.SliderInt(u8'##HeightClose', im_height_close, 0, 100, "%.0f")

ShowHelpMarker(u8'Высота подлетая к точке')
imgui.SameLine()
imgui.Text(u8'Высота вблизи точки')
imgui.SameLine(otk)
imgui.SliderInt(u8'##HeightNear', im_height_near, 0, 100, "%.0f")

ShowHelpMarker(u8'Высота пролетая над морем')
imgui.SameLine()
imgui.Text(u8'Высота над морем')
imgui.SameLine(otk)
imgui.SliderInt(u8'##HeightWater', im_height_water, 0, 100, "%.0f")

ShowHelpMarker(u8'Высота вдалеке от точки')
imgui.SameLine()
imgui.Text(u8'Обычная высота')
imgui.SameLine(otk)
imgui.SliderInt(u8'##HeightStandart', im_height_standart, 0, 100, "%.0f")

imgui.Separator()

--imgui.PushItemWidth(150)
button_X = 170
button_Y = 80
if imgui.Button(u8'Включить', imgui.ImVec2(button_X, button_Y)) then
state = true
end
imgui.SameLine()
if imgui.Button(u8'Очистить точки', imgui.ImVec2(button_X, button_Y)) then
founded = {}
end


ini.config.speed = im_speed.v
ini.config.zatup_dist = im_zatup_dist.v
ini.config.zatup_timer = im_zatup_timer.v
ini.config.dist_far = im_dist_far.v
ini.config.dist_near = im_dist_near.v
ini.config.dist_close = im_dist_close.v
ini.config.height_close = im_height_close.v
ini.config.height_near = im_height_near.v
ini.config.height_water = im_height_water.v
ini.config.height_standart = im_height_standart.v
inicfg.save(ini, iniFile)
imgui.End()
end

function main()
while not isSampAvailable() do wait(200) end
get_coords()
sampRegisterChatCommand('hkc', function()
state = true
end)
while true do
wait(0)
if not sampIsCursorActive() and isKeyDown(VK_H) and isKeyJustPressed(VK_C) then
main_window_state.v = not main_window_state.v
end
imgui.Process = main_window_state.v
if isCharInAnyHeli(PLAYER_PED) then
for i, C in ipairs(coords) do
if not founded == true then
pX, pY, pZ = getCharCoordinates(PLAYER_PED)
ddist = getDistanceBetweenCoords3d(pX, pY, pZ, C[1], C[2], C[3])
ddist = ('%.0f'):format(ddist)
ddist = tonumber(ddist)
heli = storeCarCharIsInNoSave(PLAYER_PED)
psX, psY = convert3DCoordsToScreen(pX, pY, pZ)
ksX, ksY = convert3DCoordsToScreen(C[1], C[2], C[3])
if ddist <= im_dist_close.v and not founded == true then
founded = true
end
activateHeliSpeedCheat(heli, im_speed.v)
if state and ddist < 1000 and i == getNearestCoord() then
if isPointOnScreen(C[1], C[2], C[3]) then
renderDrawLine(psX, psY, ksX, ksY, 1, 0xFFFFFFCD)
renderFontDrawText(font_text, ''..ddist..'m', ksX, ksY, 0xFFFFFFCD)
end
if ddist > im_dist_near.v and ddist < im_dist_far.v then
--sampAddChatMessage('Стандарт', -1)
groundP = getGroundZFor3dCoord(pX, pY, pZ)
groundZ = getGroundZFor3dCoord(C[1], C[2], C[3])
groundMin = groundZ + groundP
groundMax = groundZ + groundP + im_height_standart.v
elseif ddist <= im_dist_near.v and ddist > im_dist_close.v then
--sampAddChatMessage('Средняя', -1)
groundP = getGroundZFor3dCoord(pX, pY, pZ)
groundZ = getGroundZFor3dCoord(C[1], C[2], C[3])
groundMin = groundZ + im_height_near.v
groundMax = groundZ + im_height_near.v
elseif ddist <= im_dist_close.v then
--sampAddChatMessage('Впритык', -1)
groundZ = getGroundZFor3dCoord(C[1], C[2], C[3])
groundMin = im_height_close.v
groundMax = im_height_close.v
else
--sampAddChatMessage('Иначе', -1)
groundZ = getGroundZFor3dCoord(pX, pY, pZ)
groundMin = groundZ + im_height_standart.v
groundMax = groundZ + im_height_standart.v
end
if groundP < 0 then
--sampAddChatMessage('Вода', -1)
groundP = getGroundZFor3dCoord(pX, pY, pZ)
groundP = im_height_water.v
groundMin = groundP
groundMax = groundP
end
if not founded == true then
heliGotoCoords(heli, C[1], C[2], C[3], groundMin, groundMax)

if ddist < im_zatup_dist.v then
lua_thread.create(function()
if disable == false and not timer then
timer = true
--sampAddChatMessage('Disable timer', -1)
wait(im_zatup_timer.v * 1000)
disable = true
timer = false
end
end)
else
disable = false
end
--printStringNow(''..ddist..'m.', 10)
if disable == true then
founded = true
timeupdate = true
disable = false
--sampAddChatMessage('Disabled', -1)
end
end

if isKeyJustPressed(VK_SPACE) then
warpCharIntoCar(PLAYER_PED, heli)
--printStringNow('STOP', 1000)
state = false
end
end
end
end


end

end
end

function samp.onCreateObject(objectId, data)
for i = 1, #kladid do
if data.modelId == kladid then
last_X = data.position.x
last_Y = data.position.y
last_Z = data.position.z
printStringNow('KLAD FOUNDED: '..last_X..' '..last_Y..' '..last_Z..'', 5000)
end
end
end

function ShowHelpMarker(desc)
imgui.TextDisabled(u8"(?)")
if imgui.IsItemHovered() then
imgui.BeginTooltip()
imgui.PushTextWrapPos(450.0)
imgui.TextUnformatted(desc)
imgui.PopTextWrapPos()
imgui.EndTooltip()
end
end

function apply_custom_style()
imgui.SwitchContext()
local style = imgui.GetStyle()
local colors = style.Colors
local clr = imgui.Col
local ImVec4 = imgui.ImVec4

style.WindowRounding = 2.0
style.WindowTitleAlign = imgui.ImVec2(0.5, 0.84)
style.ChildWindowRounding = 2.0
style.FrameRounding = 2.0
style.ItemSpacing = imgui.ImVec2(5.0, 4.0)
style.ScrollbarSize = 13.0
style.ScrollbarRounding = 0
style.GrabMinSize = 8.0
style.GrabRounding = 1.0

colors[clr.FrameBg] = ImVec4(0.16, 0.48, 0.42, 0.54)
colors[clr.FrameBgHovered] = ImVec4(0.26, 0.98, 0.85, 0.40)
colors[clr.FrameBgActive] = ImVec4(0.26, 0.98, 0.85, 0.67)
colors[clr.TitleBg] = ImVec4(0.04, 0.04, 0.04, 1.00)
colors[clr.TitleBgActive] = ImVec4(0.16, 0.48, 0.42, 1.00)
colors[clr.TitleBgCollapsed] = ImVec4(0.00, 0.00, 0.00, 0.51)
colors[clr.CheckMark] = ImVec4(0.26, 0.98, 0.85, 1.00)
colors[clr.SliderGrab] = ImVec4(0.24, 0.88, 0.77, 1.00)
colors[clr.SliderGrabActive] = ImVec4(0.26, 0.98, 0.85, 1.00)
colors[clr.Button] = ImVec4(0.26, 0.98, 0.85, 0.40)
colors[clr.ButtonHovered] = ImVec4(0.26, 0.98, 0.85, 1.00)
colors[clr.ButtonActive] = ImVec4(0.06, 0.98, 0.82, 1.00)
colors[clr.Header] = ImVec4(0.26, 0.98, 0.85, 0.31)
colors[clr.HeaderHovered] = ImVec4(0.26, 0.98, 0.85, 0.80)
colors[clr.HeaderActive] = ImVec4(0.26, 0.98, 0.85, 1.00)
colors[clr.Separator] = colors[clr.Border]
colors[clr.SeparatorHovered] = ImVec4(0.10, 0.75, 0.63, 0.78)
colors[clr.SeparatorActive] = ImVec4(0.10, 0.75, 0.63, 1.00)
colors[clr.ResizeGrip] = ImVec4(0.26, 0.98, 0.85, 0.25)
colors[clr.ResizeGripHovered] = ImVec4(0.26, 0.98, 0.85, 0.67)
colors[clr.ResizeGripActive] = ImVec4(0.26, 0.98, 0.85, 0.95)
colors[clr.PlotLines] = ImVec4(0.61, 0.61, 0.61, 1.00)
colors[clr.PlotLinesHovered] = ImVec4(1.00, 0.81, 0.35, 1.00)
colors[clr.TextSelectedBg] = ImVec4(0.26, 0.98, 0.85, 0.35)
colors[clr.Text] = ImVec4(1.00, 1.00, 1.00, 1.00)
colors[clr.TextDisabled] = ImVec4(0.50, 0.50, 0.50, 1.00)
colors[clr.WindowBg] = ImVec4(0.06, 0.06, 0.06, 0.94)
colors[clr.ChildWindowBg] = ImVec4(1.00, 1.00, 1.00, 0.00)
colors[clr.PopupBg] = ImVec4(0.08, 0.08, 0.08, 0.94)
colors[clr.ComboBg] = colors[clr.PopupBg]
colors[clr.Border] = ImVec4(0.43, 0.43, 0.50, 0.50)
colors[clr.BorderShadow] = ImVec4(0.00, 0.00, 0.00, 0.00)
colors[clr.MenuBarBg] = ImVec4(0.14, 0.14, 0.14, 1.00)
colors[clr.ScrollbarBg] = ImVec4(0.02, 0.02, 0.02, 0.53)
colors[clr.ScrollbarGrab] = ImVec4(0.31, 0.31, 0.31, 1.00)
colors[clr.ScrollbarGrabHovered] = ImVec4(0.41, 0.41, 0.41, 1.00)
colors[clr.ScrollbarGrabActive] = ImVec4(0.51, 0.51, 0.51, 1.00)
colors[clr.CloseButton] = ImVec4(0.41, 0.41, 0.41, 0.50)
colors[clr.CloseButtonHovered] = ImVec4(0.98, 0.39, 0.36, 1.00)
colors[clr.CloseButtonActive] = ImVec4(0.98, 0.39, 0.36, 1.00)
colors[clr.PlotHistogram] = ImVec4(0.90, 0.70, 0.00, 1.00)
colors[clr.PlotHistogramHovered] = ImVec4(1.00, 0.60, 0.00, 1.00)
colors[clr.ModalWindowDarkening] = ImVec4(0.80, 0.80, 0.80, 0.35)
end

function getNearestCoord()
local mX, mY, mZ = getCharCoordinates(PLAYER_PED)
local mindist = 9999
local nearest = 0
for i, C in ipairs(coords) do
local sddist = getDistanceBetweenCoords3d(mX, mY, mZ, C[1], C[2], C[3])
if sddist <= mindist and not founded == true then
mindist = sddist
nearest = i
end
end
return nearest
end

function get_coords()
local lib, requests = pcall(require, 'requests')
if lib then
local c_responce = requests.get('https://arzmap.fun/developer.php', {params = {['coord'] = 'true', ['nofull'] = 'true'}, headers = {['user-agent'] = 'Mozilla/5.0'}})
if c_responce.status_code == 200 then
local c_result = decodeJson(c_responce.text)
if type(c_result) == 'table' then
coords = c_result
else
return
end
else
return
end
else
return
end
end


Надо изменить обычные корды которые вписаны вручную заменить на корды которые на сайте мира
azmap.fun или как там пример выше
 

Вложения

  • kladpoc.lua
    17.2 KB · Просмотры: 2