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

FYP

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

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

Gavayi

Активный
206
43
Кто может склеить эти 2 скрипта.
В одном сбив на Q в другом сбив на R и переворот машины.
Или же подскажите как можно их склеить, чтобы не было проблем и багов при их использовании.
 

Вложения

  • Sbiv(q-durka).cs
    18.2 KB · Просмотры: 4
  • GotovoeCLEO 2in1.cs
    18.5 KB · Просмотры: 5

Gavayi

Активный
206
43
Кто сможет поменять цвет прицела на белый и добавить активацию по чит-коду "cross"
 

Вложения

  • crosshair.cs
    18.9 KB · Просмотры: 3

kalonne

Участник
23
15
Недавно я переделал скрипт, и теперь я хочу добавить возможность телепортации по метке на карте, но у меня не получается сделать это. Помогите, пожалуйста.
Lua:
require 'lib.moonloader'
local sampev = require 'lib.samp.events'
local inicfg = require 'inicfg'

script_name("VirtualWorld")
script_author("Noname")
script_version("1.0")
script_description("Пример использования MoonLoader для создания виртуального мира с меткой и телепортацией")

local color_white = 0xFFFFFF -- Белый цвет
local color_green = 0x00FF00 -- Зеленый цвет
local color_blue = 0x0000FF -- Синий цвет
local script_initialized = false

local config = {
    virtualWorldActive = false,
    virtualWorldCoords = {0, 0, 0},
    realWorldCoords = {0, 0, 0},
    teleportMarker = {0, 0, 0}
}

local config_file = getWorkingDirectory() .. "\\virtual_world.ini"

function main()
    if not isSampLoaded() or not isSampfuncsLoaded() then return end

    -- Загрузка конфигурации
    if doesFileExist(config_file) then
        config = inicfg.load(config, config_file)
    else
        inicfg.save(config, config_file)
    end

    -- Ждем, пока SAMP полностью загрузится
    while not isSampAvailable() do wait(100) end

    -- Вывод информации о скрипте только один раз при запуске
    if not script_initialized then
        sampAddChatMessage("Активация виртуального мира", color_blue)
        sampAddChatMessage(script.this.name .. ' V' .. script.this.version, color_green)
        script_initialized = true
    end

    -- Регистрация команд для управления виртуальным миром
    sampRegisterChatCommand("vw", handleVirtualWorldCommand)
    sampRegisterChatCommand("teleport", handleTeleportCommand)
    sampRegisterChatCommand("marker", handleShowMarkerCommand)

    while true do
        wait(0)
        if config.virtualWorldActive and isKeyJustPressed(VK_Z) then
            handleSetMarkerCommand()
        end
    end
end

function handleVirtualWorldCommand(params)
    if params:lower() == "on" then
        if config.virtualWorldActive then
            sampAddChatMessage("Виртуальный мир уже активен.", color_white)
            return
        end

        -- Активация виртуального мира
        config.virtualWorldActive = true
        config.realWorldCoords = {getCharCoordinates(PLAYER_PED)}
        config.virtualWorldCoords = {getCharCoordinates(PLAYER_PED)}
        inicfg.save(config, config_file)
        sampAddChatMessage("Виртуальный мир активирован.", color_green)
    elseif params:lower() == "off" then
        if not config.virtualWorldActive then
            sampAddChatMessage("Виртуальный мир не активен.", color_white)
            return
        end

        -- Деактивация виртуального мира
        config.virtualWorldActive = false
        setCharCoordinates(PLAYER_PED, unpack(config.realWorldCoords))
        inicfg.save(config, config_file)
        sampAddChatMessage("Виртуальный мир деактивирован.", color_green)
    else
        sampAddChatMessage("Использование: /vw on/off", color_white)
    end
end

function handleSetMarkerCommand()
    if not config.virtualWorldActive then
        sampAddChatMessage("Установка метки доступна только в виртуальном мире.", color_white)
        return
    end

    -- Получаем координаты курсора на карте
    local cursorX, cursorY = getCursorPos()
    local worldX, worldY, worldZ = convertScreenCoordsToWorld3D(cursorX, cursorY, 1000)

    if worldX and worldY and worldZ then
        config.teleportMarker = {worldX, worldY, worldZ}
        inicfg.save(config, config_file)
        sampAddChatMessage("Метка установлена автоматически.", color_green)
    else
        sampAddChatMessage("Не удалось получить координаты метки.", color_white)
    end
end

function handleTeleportCommand()
    if not config.virtualWorldActive then
        sampAddChatMessage("Телепортация доступна только в виртуальном мире.", color_white)
        return
    end

    if config.teleportMarker[1] == 0 and config.teleportMarker[2] == 0 and config.teleportMarker[3] == 0 then
        sampAddChatMessage("Метка не установлена.", color_white)
        return
    end

    -- Телепортация к метке
    setCharCoordinates(PLAYER_PED, unpack(config.teleportMarker))
    config.virtualWorldCoords = {unpack(config.teleportMarker)}
    sampAddChatMessage(string.format("Вы телепортированы на координаты X:%.2f, Y:%.2f, Z:%.2f", unpack(config.teleportMarker)), color_green)
end

function handleShowMarkerCommand()
    if not config.virtualWorldActive then
        sampAddChatMessage("Просмотр метки доступен только в виртуальном мире.", color_white)
        return
    end

    if config.teleportMarker[1] == 0 and config.teleportMarker[2] == 0 and config.teleportMarker[3] == 0 then
        sampAddChatMessage("Метка не установлена.", color_white)
    else
        sampAddChatMessage(string.format("Метка установлена на координатах X:%.2f, Y:%.2f, Z:%.2f", unpack(config.teleportMarker)), color_blue)
    end
end

function updateVirtualWorld()
    -- Обновляем координаты в виртуальном мире
    local currentCoords = {getCharCoordinates(PLAYER_PED)}
    local velocity = {getCharVelocity(PLAYER_PED)}

    config.virtualWorldCoords[1] = config.virtualWorldCoords[1] + velocity[1]
    config.virtualWorldCoords[2] = config.virtualWorldCoords[2] + velocity[2]
    config.virtualWorldCoords[3] = config.virtualWorldCoords[3] + velocity[3]

    setCharCoordinates(PLAYER_PED, unpack(config.virtualWorldCoords))
end

function sampev.onSendPlayerSync(data)
    if config.virtualWorldActive then
        -- Сервер думает, что вы находитесь в реальном мире
        data.position = {unpack(config.realWorldCoords)}
    end
end

function doesFileExist(file)
    local f = io.open(file, "r")
    if f then
        io.close(f)
        return true
    else
        return false
    end
end
 

D3.Pheonix

🎹
Модератор
2,861
1,649
Кто может склеить эти 2 скрипта.
В одном сбив на Q в другом сбив на R и переворот машины.
Или же подскажите как можно их склеить, чтобы не было проблем и багов при их использовании.
Кто сможет поменять цвет прицела на белый и добавить активацию по чит-коду "cross"
 

Вложения

  • crosshair.cs
    19.2 KB · Просмотры: 2
  • GotovoeCLEO 3in1.cs
    19 KB · Просмотры: 2
  • Нравится
Реакции: Gavayi

Gavayi

Активный
206
43
Сначала удалил, потом переместил, потом сделал склеил скрипты, благодарю)
Сможешь ещё склеить эти 2 файла, там фикс метлы (/fmop) и сама метла (mop чит-код)
 

Вложения

  • 5_MopFix_v5_fmop.cs
    1.6 KB · Просмотры: 2
  • mop.cs
    9.7 KB · Просмотры: 13

D3.Pheonix

🎹
Модератор
2,861
1,649
Сначала удалил, потом переместил, потом сделал склеил скрипты, благодарю)
Сможешь ещё склеить эти 2 файла, там фикс метлы (/fmop) и сама метла (mop чит-код)
не могу mop.cs нормально декомпилировать. Так что сорян
 

D3.Pheonix

🎹
Модератор
2,861
1,649
я не фикс имел в виду, а саму метлу. Там какая то часть теряется что-ли при открытии. И после компиляции уже не работает (крашит)
@chromiusj помоему прикол в том что метла скрипт очень древний (2008 что-ли) и при компиляции что-то ломается
 

RainThes

Новичок
1
0
добавьте активацию и деактивацию на клавишу F2
Код:
script_author('chapo')
local active = false

require('lib.samp.events').onApplyPlayerAnimation = function(playerId)
    if active and playerId == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
        return false
    end
end

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('noanim', function()
        active = not active
        printStyledString('NO ANIM: '..(active and '~g~ON' or '~r~OFF'), 750, 7)
    end)
    wait(-1)
end
 

minxty

Известный
1,270
1,132
добавьте активацию и деактивацию на клавишу F2
Код:
script_author('chapo')
local active = false

require('lib.samp.events').onApplyPlayerAnimation = function(playerId)
    if active and playerId == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
        return false
    end
end

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('noanim', function()
        active = not active
        printStyledString('NO ANIM: '..(active and '~g~ON' or '~r~OFF'), 750, 7)
    end)
    wait(-1)
end
Lua:
script_author('chapo')
local active = false

require('lib.samp.events').onApplyPlayerAnimation = function(playerId)
    if active and playerId == select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)) then
        return false
    end
end

function main()
    while not isSampAvailable() do wait(0) end
    sampRegisterChatCommand('noanim', function()
        active = not active
        printStyledString('NO ANIM: '..(active and '~g~ON' or '~r~OFF'), 750, 7)
    end)
    while true do wait(0)
        if wasKeyPressed(0x71) and not sampIsCursorActive() then
            active = not active
            printStyledString('NO ANIM: '..(active and '~g~ON' or '~r~OFF'), 750, 7)
        end
    end
end
 

killerson

Участник
75
4
изменить активацию с читкода "GG" на нажатие клавиши "-"
 

Вложения

  • GG.cs
    1.3 KB · Просмотры: 3

Egyption King

Новичок
5
0
Удалить (/jack) или изменить активацию (/jjack)
 

Вложения

  • Kproject v2.0.cs
    145.2 KB · Просмотры: 3

zkillerz12

Новичок
1
0
Здравствуйте, я бы хотел, чтобы вы добавили сигнал включения/выключения.
 

Вложения

  • gm.cs
    20.4 KB · Просмотры: 0

aesthetics

Активный
104
36

Вложения

  • [gangmaster.lua
    62.3 KB · Просмотры: 3
  • GG.cs
    1.3 KB · Просмотры: 1
Последнее редактирование:
  • Нравится
Реакции: @vevegg