Lua [Flin Role Play] Рендер подарков новогоднего обновления 2024

donateralex

Новичок
Автор темы
10
2
Данный скрипт помогает найти все подарки на карте. Всего их 25 штук на карте.

Квесты проходить можно с 1 лвла, то есть подарки на 1 лвле будут собираться (проверенно)

Команды:
/podarok - телепорт, метки на карте
/rend - рендер на подарки

Для установки переместить в папку moonloader

upd: исправил баг со второй координатой

Начальный код взят: https://www.blast.hk/threads/125684/
 

Вложения

  • render.lua
    11.3 KB · Просмотры: 68
Последнее редактирование:
  • Грустно
  • Bug
  • Нравится
Реакции: rand0mas, XRLM и LaFSanill

Jatara

Потрачен
84
29
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
я так думаю скрипты на флин рп это очень полезно
 

|Il|Il|

Активный
407
70
обход какой-то нужен чтобы на флин зайти ? или там с пк тоже можно входить ?
 

rand0mas

Участник
23
23
в целом, для новичка сойдет, но помни правило - DRY(не повторяйся)

1. это:
Lua:
                if num == 19056  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19054  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19055  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19058  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19057  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
заменить на это:
Lua:
                if num == 19056 or 19054 or 19055 or 19057 or 19058 then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
2.
Lua:
function setMarker(type, x, y, z)
    bs = raknetNewBitStream()
    raknetBitStreamWriteInt8(bs, type)
    raknetBitStreamWriteFloat(bs, x)
    raknetBitStreamWriteFloat(bs, y)
    raknetBitStreamWriteFloat(bs, z)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 2)
    raknetEmulRpcReceiveBitStream(38, bs)
    raknetDeleteBitStream(bs)
    addOneOffSound(0, 0, 0, 1149)
end
используем цикл и таблицу для записи:
Lua:
function setMarker(type, x, y, z)
    local bs = raknetNewBitStream()
    raknetBitStreamWriteInt8(bs, type)
    local tempArr = {x, y, z, 0, 0, 0, 2}
    for i = 1, #tempArr do
        raknetBitStreamWriteFloat(bs, tempArr[i])
    end
    raknetEmulRpcReceiveBitStream(38, bs)
    raknetDeleteBitStream(bs)
    addOneOffSound(0, 0, 0, 1149)
end
 
  • Нравится
Реакции: |Il|Il| и donateralex

|Il|Il|

Активный
407
70
в целом, для новичка сойдет, но помни правило - DRY(не повторяйся)

1. это:
Lua:
                if num == 19056  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19054  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19055  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19058  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
                if num == 19057  then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
заменить на это:
Lua:
                if num == 19056 or 19054 or 19055 or 19057 or 19058 then
                    local res, px, py, pz = getObjectCoordinates(v)
                    local x2, y2, z2 = getCharCoordinates(playerPed)
                    local wX, wY = convert3DCoordsToScreen(px, py, pz)
                    local myPosX, myPosY = convert3DCoordsToScreen(getCharCoordinates(PLAYER_PED))
                    local distance = string.format("%.0f", getDistanceBetweenCoords3d(px, py, pz, x2, y2, z2))
                    renderFontDrawText(font, '{ff74fb}Podarok {ffffff}['..distance..']', wX, wY , 0xFFFFFFFF)
                    renderDrawLine(myPosX, myPosY, wX, wY, 2.0, 0xFF74FBBB)
                end
2.
Lua:
function setMarker(type, x, y, z)
    bs = raknetNewBitStream()
    raknetBitStreamWriteInt8(bs, type)
    raknetBitStreamWriteFloat(bs, x)
    raknetBitStreamWriteFloat(bs, y)
    raknetBitStreamWriteFloat(bs, z)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 0)
    raknetBitStreamWriteFloat(bs, 2)
    raknetEmulRpcReceiveBitStream(38, bs)
    raknetDeleteBitStream(bs)
    addOneOffSound(0, 0, 0, 1149)
end
используем цикл и таблицу для записи:
Lua:
function setMarker(type, x, y, z)
    local bs = raknetNewBitStream()
    raknetBitStreamWriteInt8(bs, type)
    local tempArr = {x, y, z, 0, 0, 0, 2}
    for i = 1, #tempArr do
        raknetBitStreamWriteFloat(bs, tempArr[i])
    end
    raknetEmulRpcReceiveBitStream(38, bs)
    raknetDeleteBitStream(bs)
    addOneOffSound(0, 0, 0, 1149)
end
аж глаза радует
 
  • Нравится
Реакции: rand0mas