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

FYP

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

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

lightmetal

Участник
32
3
Подскажите почему в чекбоксе не включается/выключается скрипт. Отметил код который отвечает за это и который должен включать/выключаться(111-146). Делал включение/выключение скрипта по первому чекбоксу,всё работала. Начал делать второй по такому же принципу, он не включается(постоянно выключен)
Код:
require 'moonloader'
local imgui = require 'mimgui'
local ffi = require 'ffi'
local inicfg = require "inicfg"
local dlstatus = require('moonloader').download_status
local sampev = require('lib.samp.events')
local fa = require 'faIcons'
local fonts = renderCreateFont("Arial", 9, 5)
local encoding = require 'encoding'
encoding.default = 'CP1251'
local u8 = encoding.UTF8
local new = imgui.new


local tab = 1
local WinState = imgui.new.bool()
local active_script = imgui.new.bool()
local active_scriptuval = imgui.new.bool()

local words = {'псж','psj','увал','увольте'}
local font = renderCreateFont('TimesNewRoman', 12, 5)
local st = {
    nick = '',
    bool = false,
    timer = -1,
    id = -1,
}

function imgui.Link(link, text) -- link
    text = text or link
    local tSize = imgui.CalcTextSize(text)
    local p = imgui.GetCursorScreenPos()
    local DL = imgui.GetWindowDrawList()
    local col = { 0xFFFF7700, 0xFFFF9900 }
    if imgui.InvisibleButton("##" .. link, tSize) then os.execute("explorer " .. link) end
    local color = imgui.IsItemHovered() and col[1] or col[2]
    DL:AddText(p, color, text)
    DL:AddLine(imgui.ImVec2(p.x, p.y + tSize.y), imgui.ImVec2(p.x + tSize.x, p.y + tSize.y), color)
end

imgui.OnFrame(function() return WinState[0] end, function(player)
    imgui.SetNextWindowPos(imgui.ImVec2(500, 500), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
    imgui.SetNextWindowSize(imgui.ImVec2(700, 420), imgui.Cond.Always)
    imgui.Begin(u8'Пример', WinState, imgui.WindowFlags.NoResize)
 
    imgui.BeginChild('##left', imgui.ImVec2(160, 365), true)
    for numberTab, nameTab in pairs({'Основное','Настройки','Инфа', 'Тест', 'Тест2',  'Тест3'}) do
        if imgui.Button(u8(nameTab), imgui.ImVec2(148,55)) then
            tab = numberTab
        end
    end
    imgui.EndChild()
    imgui.SameLine()
     imgui.SetCursorPos(imgui.ImVec2(170, 30))
     if imgui.BeginChild('right'..tab, imgui.ImVec2(510, 365), true) then
        -- Содержимое вкладок
        if tab == 1 then
        imgui.Checkbox(u8'Быстрый инвайт', active_script)
        imgui.Checkbox(u8'Быстрое увольнение', active_scriptuval)
        end
    end


    if tab == 2 then
        imgui.Text(u8'Текущая тема: '..colorList[colorListNumber[0]+1])
        if imgui.Combo(u8'Темы',colorListNumber,colorListBuffer, #colorList) then
            theme[colorListNumber[0]+1].change()
        end
    end

    if tab == 3 then
        imgui.Text(u8'Скрипт создан для упрощения игры в гетто или на каптах')
        imgui.Link("https://vk.com",u8'vk')
    end
    imgui.End()
end)



function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end
    while not isSampAvailable() do wait(100) end
    sampRegisterChatCommand('ghelperr', function() WinState[0] = not WinState[0] end)
    while true do
        if active_script[0] then
            if wasKeyPressed(0x31) and not sampIsChatInputActive() and not sampIsDialogActive() then
                local result, ped = getCharPlayerIsTargeting(PLAYER_HANDLE)
                if result then
                    _, id = sampGetPlayerIdByCharHandle(ped)
                    sampSendChat('/me передал бандану')
                    wait(1000)
                    sampSendChat('/givecbook '..id..' 100')
                    wait(100)
                    sampSendChat('/invite '..id)
                    setVirtualKeyDown(13, true)
                    wait(100)
                    setVirtualKeyDown(13, false)
                    if accept and t:find("(%S+)_(%S+) принял ваше предложение вступить к вам в организацию.") then
                        sampSendChat("/giverank "..id.." 6")
                        accept = false
                    end
                end
                    accept = true
                end
            end
            wait(0)
        end
        return 1
    end
 
    function uval()
        while true do
            if active_scriptuval[0] then
            if st.bool and st.timer ~= -1 then
                timer = os.clock()-st.timer
                renderFontDrawText(font,'Нажми Y чтоб уволить '..st.nick..' или N чтоб не увольнять\nВремени на раздумья 6 сек, прошло: '..tostring(os.date("!*t", timer).sec), 500, 500, 0xFFFFFFFF)
                if timer > 5 or wasKeyPressed(0x59) or wasKeyPressed(0x4E) then
                    if wasKeyPressed(0x59) then
                        sampSendChat('/uninvite '..st.id..' ПСЖ')
                    end
                    st.bool = false
                    st.timer = -1
                end
            end
        end
    end
    wait(0)
end
    function sampev.onServerMessage(color, text)
        for k, v in pairs(words) do
            local nick, msg = text:match('(.+) говорит: (.+)')
            if nick and msg:find(v) then
                st.nick = nick
                st.id = sampGetPlayerIdByNickname(nick:gsub(' ','_'))
                st.bool = true
                st.timer = os.clock()
            end
        end
    end
    function sampGetPlayerIdByNickname(nick)
        local _, myid = sampGetPlayerIdByCharHandle(playerPed)
        if tostring(nick:gsub('%[%d+%]','')) == sampGetPlayerNickname(myid):gsub('%[%d+%]','') then return myid end
        for i = 0, sampGetMaxPlayerId() do
            if sampIsPlayerConnected(i) and sampGetPlayerNickname(i):gsub('%[%d+%]','') == nick then return i end
        end
    end

Нужно вот этот код
Код:
   function uval()
            while true do wait(0)
                if st.bool and st.timer ~= -1 then
                    timer = os.clock()-st.timer
                    renderFontDrawText(font,'Нажми Y чтоб уволить '..st.nick..' или N чтоб не увольнять\nВремени на раздумья 6 сек, прошло: '..tostring(os.date("!*t", timer).sec), 500, 500, 0xFFFFFFFF)
                    if timer > 5 or wasKeyPressed(0x59) or wasKeyPressed(0x4E) then
                        if wasKeyPressed(0x59) then
                            sampSendChat('/uninvite '..st.id..' ПСЖ')
                        end
                        st.bool = false
                        st.timer = -1
                    end
                end
            end
        end
    end
        function sampev.onServerMessage(color, text)
            for k, v in pairs(words) do
                local nick, id, msg = text:match('%[F%] (.+)%[(%d+)%]: (.+)')
                if nick and id and msg:find(v) then
                    st.nick = nick
                    st.id = id
                    st.bool = true
                    st.timer = os.clock()
                end
            end
        end

засунуть во второй чекбокс. Что бы при включение/выключение чекбокса с ним же включался или выключался скрипт выше.
Код:
imgui.Checkbox(u8'Быстрое увольнение', active_scriptUVAL)
 

Klubnichka

Новичок
13
0
Сделайте пожалуйста что бы активация была на /gmcar
 

Вложения

  • gm car.cs
    17.4 KB · Просмотры: 3

Paketov

Новичок
2
0
Есть 2 антирванки, обьедините в 1 чтобы показывало кто пытается юзать рванку (1 антирванка) и кикало с зоны стрима (2 антирванка)
 

Вложения

  • AntiRvanka_3.1.lua
    14.8 KB · Просмотры: 2
  • АнтиРванка by Sad_Flores.lua
    3.8 KB · Просмотры: 1
  • Эм
Реакции: vuyy

gamefixer?

Известный
538
202
Доброго времени суток , пишу по данному скрипту - https://www.blast.hk/threads/180193/
Хотелось бы добавить в данный скрипт проверку формы (то есть, если форма надета уже - не надевать, не надета - надеть)
Т.к. я 0 кодер, не осилю добавить функцию и вовсе понять что да как.
Буду благодарен (версия скрипта в теме AfkZP - 1.zip)

1711747954641.png
 

Benzo.

Участник
157
3
помогите изменить шапез чтобы работал на arizona swag и были доступны все функции от меня благодарность.и еще у меня проблема что когда пытаюсь сделать кастомную тему ничего не получается как решить?
 

Вложения

  • Shapez.lua
    119.5 KB · Просмотры: 3

976h

Участник
90
34
помогите изменить шапез чтобы работал на arizona swag и были доступны все функции от меня благодарность.и еще у меня проблема что когда пытаюсь сделать кастомную тему ничего не получается как решить?
 

Вложения

  • Shapez.lua
    119.1 KB · Просмотры: 2

Benzo.

Участник
157
3
у меня конечно работает на arizona swag,но у меня не все функции а там же есть delplayer delcar мне блин это нужно
 

vuyy

Активный
129
53
у меня конечно работает на arizona swag,но у меня не все функции а там же есть delplayer delcar мне блин это нужно
я конечно не эксперт но если на 1 серве что то работает а на другом нет то это что то нужно адаптировать на другой серв ( и врядле за бесплатно кто то будет этим заниматься )
 
  • Клоун
Реакции: Air_Official и Willy4ka

Ravey4ik

Новичок
6
0
Короче нужно изменить уведомление об активации скрипта при запуске сампа(Изменить на DFL by Dapo Dope), и изменить название скрипта в консоли.
И нужно изменить название файла rend.ini Так же желательно изменить команду на /KantikGey. Буду очень благодарен
 

Вложения

  • rend .cs
    72.2 KB · Просмотры: 2

Митя Евгеньевич

Известный
301
124
Короче нужно изменить уведомление об активации скрипта при запуске сампа(Изменить на DFL by Dapo Dope), и изменить название скрипта в консоли.
И нужно изменить название файла rend.ini Так же желательно изменить команду на /KantikGey. Буду очень благодарен
Проверяй
 

Вложения

  • DFL by Dapo Dope.cs
    14.5 KB · Просмотры: 3
  • DFL by Dapo Dope.txt
    43.4 KB · Просмотры: 3
  • Нравится
Реакции: Ravey4ik

congic

Активный
275
85
Lua:
function sampev.onApplyPlayerAnimation(animId)
if animId == 15 then
return false
end
end
почему данный код не сбрасывает анимацию питья?
 

minxty

Известный
891
740
Lua:
function sampev.onApplyPlayerAnimation(animId)
if animId == 15 then
return false
end
end
почему данный код не сбрасывает анимацию питья?
Тут юзается не animId, а animLib и animName, а айди анимки получать через функцию sampFindAnimationIdByNameAndFile, вот рабочий код
Lua:
local sampev = require 'lib.samp.events'

function sampev.onApplyPlayerAnimation(playerId, animLib, animName)
    if sampFindAnimationIdByNameAndFile(animName, animLib) == 15 and playerId == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
        return false
    end
end

либо, можно было бы и так:
Lua:
local sampev = require 'lib.samp.events'

function sampev.onApplyPlayerAnimation(playerId, animLib, animName)
    if animLib == 'BAR' and animName == 'dnk_stndF_loop' and playerId == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
        return false
    end
end
если что, это тема для изменения готовых скриптов, тебе лучше обращаться сюда
 
  • Влюблен
Реакции: congic

qwywudbqqd

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

Вложения

  • simple-binder.lua
    16.6 KB · Просмотры: 2