SC22 Lua Прочее Subway-CJ

Keyboard

Участник
61
15
Сделать бы Connect Sandbox когда ты уже на сервере, например в лавке сидишь и в афк у других а у тебя как в connect sandbox
 

Rikxix

Известный
251
110
А вы что ждали? Приватные моментальные фри телепорты? Сливы багов? Ага - щас... Этот один скрипт уничтожает всю карьеру BTP.
 

imring

Ride the Lightning
Всефорумный модератор
2,365
2,552
Lua:
setmetatable(Object, {
    __index = function(self, key)
        if key == 'Add' then
            return function(Tag, modelId, pos, scale, rotate, heading, nocollision)
                -- ...
можно вместо if key == value then превратить метаметод __index в таблицу с методами.
Lua:
local NewObject_mt = {}
NewObject_mt.__index = NewObject_mt

function NewObject_mt:Delete()
    for k, v in ipairs(Object.Pool) do
        if v.Handle == self.Handle then
            table.remove(Object.Pool, k)
        end
    end
    deleteObject(self.Handle)
end

function NewObject_mt:SetHeading(angle)
    setObjectHeading(self.Handle, angle)
end

function NewObject_mt:SetRotation(rotationVector)
    setObjectRotation(self.Handle, rotationVector.x, rotationVector.y, rotationVector.z)
end

function NewObject_mt:GetPos()
    local result, x, y, z = getObjectCoordinates(self.Handle)
    return result and Vec3(x, y, z) or Vec3(0, 0, 0)
end

local Object_mt = {}
Object_mt.__index = Object_mt
setmetatable(Object, Object_mt)

function Object_mt:Add(Tag, modelId, pos, scale, rotate, heading, nocollision)
    local Result, Handle = pcall(createObject, modelId, pos.x, pos.y, pos.z)
    assert(Result, 'Error creating object with tag "'..Tag..'": '..Handle)
    if Result then
        if scale then setObjectScale(Handle, scale) end
        if rotate then setObjectRotation(Handle, rotate.x or 0, rotate.y or 0, rotate.z or 0) end
        if heading then setObjectHeading(Handle, heading) end
        if nocollision then setObjectCollision(Handle, not nocollision) end
        local NewObject = { Handle = Handle, Tag = Tag or '__none__', Pos = pos }
        setmetatable(NewObject, NewObject_mt)
        table.insert(Object.Pool, NewObject)
        return Object.Pool[#Object.Pool]
    else
        print('ERROR CREATING OBJECT:', Handle)
    end
end

function Object_mt::DestroyAll()
    -->> Delete objects
    for k, v in ipairs(getAllObjects()) do
        for ind, data in ipairs(Object.Pool) do
            if v == data.Handle then
                table.remove(Object.Pool, ind)
                deleteObject(v)
                break
            end
        end
    end
    
    -->> Delete bot
    if doesCharExist(Map.Bot) then
        deleteChar(Map.Bot)
    end
end

function Object_mt::GetByTag(tag)
    local result = {}
    for k, v in ipairs(Object.Pool) do
        if v.Tag:find(tag) then
            table.insert(result, v)
        end
    end
    return result
end

function Object_mt::GetByFullTag()
    local result = {}
    for k, v in ipairs(Object.Pool) do
        if v.Tag == tag then
            return v
        end
    end
    return nil
end
как по мне, так будет читабельней

а так, прикольный скрипт. удачи выиграть в конкурсе! и ещё, попробуй убрать зависимость от сампа, чтобы можно было запускать в одиночной гта.
 
  • Влюблен
  • Нравится
Реакции: YarikVL и chapo

TheBrox

Известный
973
202
12.20.14.500.jpg

как зайти в забвей сёрф то? не подключаеться при реконекте
 

#SameLine

Активный
421
38
Subway-CJ - скрипт с помощью которого вы можете отдохнуть от заебавшего сампа и хорошо провести свое время!
Скрипт позволяет вам играть в игру Subway Surfers в SA:MP!
unknown.png

unknown.png

unknown.png

unknown.png
Активация: /subwaycj
Установка:
  1. скачать файл Subway-CJ.lua из вложений
  2. переместить файл Subway-CJ.lua в папку moonloader
  3. скачать архив (ссылка ниже)
  4. переместить архив в папку moonloader (с заменой, если она потребуется)
СКАЧАТЬ АРХИВ
(!) Скрипт отлично работает с ConnectSandbox
(!) Препятствия генерируются рандомно
(!) Во время игры в мини игру вы встаете в афк для других игроков
Все звуки хранятся в папке moonloader\resource\Subway-CJ by chapo.
Дефолтные звуки:
MAIN_PLAY.mp3 - фоновая музыка
SOUND_COIN.mp3 - звук поднятия монеты
SOUND_LOBBY_PLAY_CLICK.mp3 - звук начала игры (когда игрок нажимает на пробел)

Рандомные звуки:
Рандомные звуки проигрываются когда игрок подбирает "наушники". Звук выбирается рандомно, однако название файла должно быть "SOUND_RAND_*ЦИФРА*.mp3"
Делитесь своими результатами!
Что происходит когда подрубаешь это? ты стоишь на месте или afk?