SA:MP Lua Arizona [Lua] PodarkiMAP | Карта подарков на сервере Arizona RP

HarikAng

Новичок
Автор темы
6
2
Версия SA-MP
  1. Любая
[Lua] PodarkiMAP | Автоматическая карта подарков на сервере
Модификация для удобного поиска подарков от HarikAng.​
[line]
ВНИМАНИЕ: Скрипт находится в стадии активной разработки (BETA). Некоторые координаты могут работать некорректно или временно отсутствовать. База точек будет дополняться!​

[line]
Описание:
Скрипт автоматически отмечает на вашей карте и радаре места появления подарков. Модификация оптимизирована: метки (блипы) появляются динамически в радиусе 5000 метров от вашего персонажа, чтобы не засорять карту и не нагружать игру лишним спавном иконок при большом количестве точек.
Особенности модификации:


    • [] Цвет меток изменен на зеленый, чтобы визуально выделять их на карте среди стандартных чекпоинтов.
      [
      ] В базу занесены актуальные координаты точек спавна подарков (26 уникальных точек).
    • Автоматическая очистка всех меток с карты при выгрузке скрипта или его отключении.
Активация и команды:

    • /rppod — Включить / Выключить отображение подарков на карте. При переключении на экране отображается статус ~g~ON или ~r~OFF.
Требования:


    • [] MoonLoader 0.26
      [
      ] Библиотека SAMP.Lua
Установка:


    • [] Скачать готовый файл MapPodarki.lua во вложениях темы.
      [
      ] Переместить файл в папку папка_с_игрой/moonloader/.
script_name('MapPodarki')
script_author('HarikAng')

local state = false
local radius = 5000
local blipColor = 2 -- Зеленый цвет меток
local pool = {}

function main()
while not isSampAvailable() do wait(100) end
sampAddChatMessage(' >>{FFFFFF} Скрипт на подарки активирован | {FF7070}Команда: /rppod', 0xFF7070)
sampRegisterChatCommand('rppod', function()
state = not state
printStyledString(state and '~g~ON' or '~r~OFF', 1000, 6)
if not state then remove_all() end
end)
addEventHandler('onScriptTerminate', function(script, quit)
if script == thisScript() then
remove_all()
end
end)
while true do
if state then
local myX, myY, myZ = getCharCoordinates(PLAYER_PED)
for i, B in ipairs(coords) do
local dist = getDistanceBetweenCoords3d(myX, myY, myZ, B[1], B[2], B[3])
if dist <= radius and pool == nil then
pool = addBlipForCoord(B[1], B[2], B[3])
changeBlipColour(pool, blipColor)
elseif dist > radius and pool ~= nil then
removeBlip(pool)
pool = nil
end
end
end
wait(0)
end
end

function remove_all()
for i = 1, #coords do
if pool ~= nil then
removeBlip(pool)
pool = nil
end
end
end

coords = {
{ -79.74, -1552.09, 1.61 },
{ -1715.23, 394.07, 6.18 },
{ -1520.32, 2572.53, 54.84 },
{ -2084.52, 62.20, 33.42 },
{ -2133.10, 174.52, 34.31 },
{ -2102.55, 654.57, 51.37 },
{ -1949.50, 792.37, 54.72 },
{ -1980.59, 884.79, 44.20 },
{ -1705.20, 1222.28, 29.08 },
{ -1556.53, 968.99, 6.27 },
{ -1496.46, 590.32, 41.26 },
{ 2074.26, 1786.78, 9.82 },
{ 2249.12, 2255.41, 9.82 },
{ 1599.32, -1780.98, 12.44 },
{ 2641.56, 1603.39, 9.82 },
{ 2177.47, 2049.24, 15.32 },
{ 2013.58, 2342.81, 9.82 },
{ 2060.67, 2435.75, 18.42 },
{ 1765.95, 2793.28, 7.34 },
{ 2209.72, 2744.23, 9.82 },
{ 1594.26, 1170.62, 13.22 },
{ 1787.81, 349.06, 18.03 },
{ 378.24, -1308.38, 13.74 },
{ 816.01, -1096.52, 24.79 },
{ 1990.58, -2063.77, 12.37 },
{ -2318.09, 324.29, 38.24 }
}
Поскольку скрипт находится на стадии разработки, некоторые точки могут работать некорректно. Если у вас появятся новые или исправленные координаты точек — оставляйте их ниже в комментариях к теме. Скрипт будет своевременно обновляться.
 

Вложения

  • RpMappod.lua
    2.2 KB · Просмотры: 6
Последнее редактирование:

HarikAng

Новичок
Автор темы
6
2
Ты в этом уверен?) По моим наблюдениям changeBlipColour не так работает. Там нельзя цвет задать статичный.
Да не, всё норм работает для обычных квадратных меток от addBlipForCoord спокойно ставит цвет по ID. Специально тестил в игре маркеры стабильно зеленые.
 

TheMY3

Известный
202
112
Да не, всё норм работает для обычных квадратных меток от addBlipForCoord спокойно ставит цвет по ID. Специально тестил в игре маркеры стабильно зеленые.
Ну у меня вот так это выглядит. Говорю же, что сам намучался с этими блипами в другом скрипте приватном, так и не поборол и теперь постоянно цвета разные)

P.S. Ещё и подарок не скрине не показывал на карте, может в базе нет просто.

image.png
 
Ну у меня вот так это выглядит. Говорю же, что сам намучался с этими блипами в другом скрипте приватном, так и не поборол и теперь постоянно цвета разные)

P.S. Ещё и подарок не скрине не показывал на карте, может в базе нет просто.

image.png
Это из-за большого скопления фарма на вашем аккаунте.
 

HarikAng

Новичок
Автор темы
6
2
Ну у меня вот так это выглядит. Говорю же, что сам намучался с этими блипами в другом скрипте приватном, так и не поборол и теперь постоянно цвета разные)

P.S. Ещё и подарок не скрине не показывал на карте, может в базе нет просто.

image.png
скрипт еще в разработке я все точки сам ставлю по этому не все еще подарки есть в базе