Lua Developer tools

inforser.

Активный
132
37
можешь еще сделать отображение в строчку текущих проигрываемых звуков гта са в виде id звука, его файл (FEET, GENRL, PAIN_A и тд), bank_ и название в виде sound_ххх.wav если это конечно возможно впринципе
 

Dmitriy Makarov

25.05.2021
Проверенный
2,478
1,113
sa-mp-480.png

Full Code:
require "lib.moonloader"
local weapons = require 'game.weapons'
local font = renderCreateFont("Trebuchet MS", 8, 4)

function main()
    if not isSampLoaded() then return end
    while not isSampAvailable() do wait(100) end
    while true do
        wait(0)
        local info = string.format("ID: %d | Skin: %d | Ping: %d | Health: %d | Speed: %.1f | Anim ID: %d | Anim Lib: %s | Anim Name: %s | Heading: %.1f | Angle: %.1f | Weapon: %s[%d] | X: %f, Y: %f, Z: %f",
        select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)), --[[ID]]
        getCharModel(PLAYER_PED), --[[Skin]]
        sampGetPlayerPing(select(2, sampGetPlayerIdByCharHandle(PLAYER_PED))), --[[Ping]]
        getCharHealth(PLAYER_PED), --[[HP]]
        (isCharInAnyCar(PLAYER_PED) and getCarSpeed(storeCarCharIsInNoSave(PLAYER_PED)) or getCharSpeed(PLAYER_PED)), --[[Speed]]
        sampGetPlayerAnimationId(select(2, sampGetPlayerIdByCharHandle(PLAYER_PED))), --[[Anim ID]]
        select(1, returnAnimNameAndFile()), --[[Anil Lib]]
        select(2, returnAnimNameAndFile()),  --[[Anim Name]]
        (isCharInAnyCar(PLAYER_PED) and getCarHeading(storeCarCharIsInNoSave(PLAYER_PED)) or getCharHeading(PLAYER_PED)), --[[Heading]]
        returnAngle(), --[[Angle]]
        weapons.get_name(getCurrentCharWeapon(PLAYER_PED)), --[[Weapon Name]]
        getCurrentCharWeapon(PLAYER_PED), --[[Weapon ID]]
        select(1, getCharCoordinates(PLAYER_PED)), --[[CoordX]]
        select(2, getCharCoordinates(PLAYER_PED)), --[[CoordY]]
        select(3, getCharCoordinates(PLAYER_PED))) --[[CoordZ]]
        renderDrawBox(0, select(2, getScreenResolution()) - 20, 5000, 20, 0xAA000000)
        renderFontDrawText(font, info, 5, select(2, getScreenResolution()) - 18, 0xFFFFFFFF)
    end
end

function returnAngle()
    local camCoordX, camCoordY, camCoordZ = getActiveCameraCoordinates()
    local targetCamX, targetCamY, targetCamZ = getActiveCameraPointAt()
    return getHeadingFromVector2d(targetCamX - camCoordX, targetCamY - camCoordY)
end

function returnAnimNameAndFile()
    return sampGetAnimationNameAndFile(sampGetPlayerAnimationId(select(2, sampGetPlayerIdByCharHandle(PLAYER_PED))))
end
 
  • Нравится
Реакции: FirePrizrak

yung milonov

Известный
972
474
Добавь копирование текущих координат в буфер обмена, а то иногда надоедает выписывать их самому
 

Riley

Известный
22
3
Не хватает отображения виртуального мира и интерьера
 

cort

Активный
275
79
Код:
[16:59:17.756936] (system)    Loading script 'D:\My Games\GTA NAMALSK\moonloader\Developer tools.lua'...
[16:59:17.756936] (debug)    New script: 321E830C
[16:59:17.775475] (error)    Developer tools.lua: D:\My Games\GTA NAMALSK\moonloader\Developer tools.lua:9: attempt to index local 'font_flag' (a nil value)
stack traceback:
    D:\My Games\GTA NAMALSK\moonloader\Developer tools.lua:9: in main chunk
[16:59:17.775475] (error)    Developer tools.lua: Script died due to an error. (321E830C)

почему то не работает
 

Armya

Участник
32
13
Скрипт имба, еще бы активацию и деактивацию прикрутить))
 

P U L V I L I Z A T O R

Участник
83
29
Много полезной информации из плюсов. Из минусов функция "gotopos" принимает только целые значения, потому что её регулярка берет только "digits". Из-за этого нельзя тпхнутся на координаты, которые включают в себя отрицательные числа и числа с плавающей запятой.
Если брать таким образом, то может попасть мусор, понимаю, но сама функция "setCharCoordinates" если принимает не подходящее значение переводит его в "1" где то у себя под капотом там, поэтому исключений не возникает и все работает.

Lua:
sampRegisterChatCommand('gotopos', function(crd)
        local x, y, z = crd:match("(.+) (.+) (.+)")
        if x and y and z then
            setCharCoordinates(playerPed, x, y, z)
        end
end)
 
Последнее редактирование: