экстра с активацией на команду/клавишу

XRLM

Известный
Автор темы
2,540
857
Версия MoonLoader
.026-beta
кто поможет сделать активацию для экстры?
код:
Lua:
require 'lib.moonloader'
local memory = require 'memory'

function main()
    while not isSampLoaded and not isSampfuncsLoaded do wait(0) end
    while not isSampAvailable do wait(0) end

    wait(5000)

    while true do
        wait(0)
        if not isCharDead(playerPed) then
            extra_ws(true)
        else
            extra_ws(false)
        end
    end
end

function extra_ws(active)
    if active then
        if not patch_cameraRestore then
            extraws1 = memory.read(0x5109AC, 1, true)
            extraws2 = memory.read(0x5109C5, 1, true)
            extraws3 = memory.read(0x5231A6, 1, true)
            extraws4 = memory.read(0x52322D, 1, true)
            extraws5 = memory.read(0x5233BA, 1, true)
        end
        memory.write(0x5109AC, 235, 1, true)
        memory.write(0x5109C5, 235, 1, true)
        memory.write(0x5231A6, 235, 1, true)
        memory.write(0x52322D, 235, 1, true)
        memory.write(0x5233BA, 235, 1, true)
    elseif extraws1 ~= nil then
        memory.write(0x5109AC, patch_cameraRestore1, 1, true)
        memory.write(0x5109C5, patch_cameraRestore2, 1, true)
        memory.write(0x5231A6, patch_cameraRestore3, 1, true)
        memory.write(0x52322D, patch_cameraRestore4, 1, true)
        memory.write(0x5233BA, patch_cameraRestore5, 1, true)
        extraws1 = nil
    end
end
 

why ega

РП игрок
Модератор
2,547
2,238
Код:
require 'lib.moonloader'
local memory = require 'memory'
local bool = false
function main()
    while not isSampLoaded and not isSampfuncsLoaded do wait(0) end
    while not isSampAvailable do wait(0) end

    sampRegisterChatCommand('extra', function() bool = not bool printStringNow('Ya ebu sobak', 1000) end)

    wait(5000)

    while true do
        wait(0)
        if isCharDead(playerPed) then
            extra_ws(false)
        end

        if bool then
            extra_ws(true)
        else
            extra_ws(false)
        end
    end
end

function extra_ws(bool)
    if bool then
        if not patch_cameraRestore then
            extraws1 = memory.read(0x5109AC, 1, true)
            extraws2 = memory.read(0x5109C5, 1, true)
            extraws3 = memory.read(0x5231A6, 1, true)
            extraws4 = memory.read(0x52322D, 1, true)
            extraws5 = memory.read(0x5233BA, 1, true)
        end
        memory.write(0x5109AC, 235, 1, true)
        memory.write(0x5109C5, 235, 1, true)
        memory.write(0x5231A6, 235, 1, true)
        memory.write(0x52322D, 235, 1, true)
        memory.write(0x5233BA, 235, 1, true)
    elseif extraws1 ~= nil then
        memory.write(0x5109AC, patch_cameraRestore1, 1, true)
        memory.write(0x5109C5, patch_cameraRestore2, 1, true)
        memory.write(0x5231A6, patch_cameraRestore3, 1, true)
        memory.write(0x52322D, patch_cameraRestore4, 1, true)
        memory.write(0x5233BA, patch_cameraRestore5, 1, true)
        extraws1 = nil
    end
end
попробуй
 
Последнее редактирование:

XRLM

Известный
Автор темы
2,540
857
Код:
require 'lib.moonloader'
local memory = require 'memory'
local bool = false
function main()
    while not isSampLoaded and not isSampfuncsLoaded do wait(0) end
    while not isSampAvailable do wait(0) end

    sampRegisterChatCommand('extra', function() bool = not bool end)

    wait(5000)

    while true do
        wait(0)
        if isCharDead(playerPed) then
            extra_ws(false)
        end

        if bool then
            extra_ws(true)
        else
            extra_ws(false)
        end
    end
end

function extra_ws(bool)
    if bool then
        if not patch_cameraRestore then
            extraws1 = memory.read(0x5109AC, 1, true)
            extraws2 = memory.read(0x5109C5, 1, true)
            extraws3 = memory.read(0x5231A6, 1, true)
            extraws4 = memory.read(0x52322D, 1, true)
            extraws5 = memory.read(0x5233BA, 1, true)
        end
        memory.write(0x5109AC, 235, 1, true)
        memory.write(0x5109C5, 235, 1, true)
        memory.write(0x5231A6, 235, 1, true)
        memory.write(0x52322D, 235, 1, true)
        memory.write(0x5233BA, 235, 1, true)
    elseif extraws1 ~= nil then
        memory.write(0x5109AC, patch_cameraRestore1, 1, true)
        memory.write(0x5109C5, patch_cameraRestore2, 1, true)
        memory.write(0x5231A6, patch_cameraRestore3, 1, true)
        memory.write(0x52322D, patch_cameraRestore4, 1, true)
        memory.write(0x5233BA, patch_cameraRestore5, 1, true)
        extraws1 = nil
    end
end
попробуй
не работает, даже не активируется
 

XRLM

Известный
Автор темы
2,540
857
ты когда команду пишешь у тебя в чате что?
ничего, потому что нет сообщения в чат об активации/деактивации, ну и не пишет сервер что такой команды не существует
 

why ega

РП игрок
Модератор
2,547
2,238
ничего, потому что нет сообщения в чат об активации/деактивации, ну и не пишет сервер что такой команды не существует
Так я и не делал, чтобы писало сообщение в чат
Upd: теперь текст на экране появляется
 

XRLM

Известный
Автор темы
2,540
857
Так я и не делал, чтобы писало сообщение в чат
Upd: теперь текст на экране появляется
да епта. мне и не надо сообщение в чат. сама экстра не работает. я пытался сам сделать активацию через имгуи, но у меня она не выключалась потом, поэтому пришел сюда, посмотреть как правильно активация на экстру делается, потом переделать в имгуи активацию.
 

why ega

РП игрок
Модератор
2,547
2,238
да епта. мне и не надо сообщение в чат. сама экстра не работает. я пытался сам сделать активацию через имгуи, но у меня она не выключалась потом, поэтому пришел сюда, посмотреть как правильно активация на экстру делается, потом переделать в имгуи активацию.
Хз почему не работает.
переделать в имгуи активацию.
Просто вызываешь функцию с булевым значением по сути
 

Dmitriy Makarov

25.05.2021
Проверенный
2,478
1,113
да епта. мне и не надо сообщение в чат. сама экстра не работает. я пытался сам сделать активацию через имгуи, но у меня она не выключалась потом, поэтому пришел сюда, посмотреть как правильно активация на экстру делается, потом переделать в имгуи активацию.
Я в памяти вообще не разбираюсь, никогда не работал, но ПО-МОЕМУ, ты просто активируешь булевую переменную, которая ВКЛЮЧАЕТ эту самую экстру. То есть, она 1 раз включается и всё.
Не знаю, сделай после проверки if'а проверку else и там в записи (memory.write) true на false замени. Или что там в записи за активацию отвечает...

Ну или просто в открытом доступе сурс экстры найди и оттуда стащи код. ;-;

if bool then
memory.write -> true
else
memory.write -> false
end

Мог ошибиться где-то, так что, поправьте, если что...