Рандом координата

3211Marlon1123

Участник
Автор темы
130
12
Версия MoonLoader
.026-beta
Lua:
function sampev.onShowDialog(dialogId, style, title, button1, button2, text)
     if on == 1 then
        if dialogId == 248 then
            if text == '{FFFFFF}Тут пусто' then
                if button2 == 'Закрыть' then
                    lua_thread.create(function()
                        wait(math.random(1000, 2000))
                        sampSendDialogResponse(248, 1, nil, nil)
                    end)
                else
                    lua_thread.create(function()
                        wait(math.random(1000,2000))
                        sampSendDialogResponse(248, 0, nil, nil)

                        wait(3000 + math.random(7777))

                        local randott = math.random(1, #ott)

                        runToPoint(ott[randott][1], ott[randott][2])

                        local randdoo = math.random(1, #doo)

                        runToPoint(doo[randdoo][1], doo[randdoo][2])
                    end)
                end
            end
        end
     end
end

function runToPoint(tox, toy)
    local x, y, _ = getCharCoordinates(PLAYER_PED)
    local angle = getHeadingFromVector2d(tox - x, toy - y)
    local xAngle = math.random(-50, 50)/100
    setCameraPositionUnfixed(xAngle, math.rad(angle - 90))
    stopRun = false
    while getDistanceBetweenCoords2d(x, y, tox, toy) > 0.8 do
        setGameKeyState(1, -255)
        --setGameKeyState(16, 1)
        wait(1)
        x, y, z = getCharCoordinates(PLAYER_PED)
        angle = getHeadingFromVector2d(tox - x, toy - y)
        setCameraPositionUnfixed(xAngle, math.rad(angle - 90))
        if stopRun then
            stopRun = false
            break
        end
    end
end
Есть два списка с координатами вот такого формата (одинаковые форматы):
Lua:
ott = {{123, -222}, --[[и т.д.]]}
doo = {{-3534, 333}, --[[и т.д.]]}
Мне нужно чтобы оно каждый раз выбирало рандомный "подсписок" (в списках ott и doo есть ещё списки с двумя значениями, 1 - x, 2 - y) и бежало на рандомные корды из этого "подсписка" . В моём же случае персонаж начинает бегать в несколько мест, при чём после первой активации кода всё норм(
 
Последнее редактирование:

3211Marlon1123

Участник
Автор темы
130
12
Lua:
local ott = {{123, -222}, {222, 111}}
local doo = {{-3534, 333}, {1245, 3456}}

math.randomseed(os.time())
local rand = math.random(1, #ott)
print(ott[rand][1], ott[rand][2])
local rand = math.random(1, #doo)
print(doo[rand][1], doo[rand][2])
Это типо в onShowDialog пихать, только вместо принта runToPoint?