Исходник Информация SF.lua | v1.1-beta

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,365
2,552
1587231383282.png

v1.1-beta
SF.lua - это библиотека для MoonLoader для взаимодействия с SA:MP'ом. Данная библиотека не заменяет весь SAMPFUNCS, она лишь добавляет новые функции для Lua скрипта. На данный момент поддерживает версии 0.3.7-R1, 0.3.7-R3-1 и 0.3.7-R5-1.

Использование
В начале кода используйте:
Lua:
pcall(require, 'sflua')

Функционал
В SF.lua не будут функции:
  • Связаны с созданием/редактированием кастомных окон DXUT;
  • Взаимодействие с SAMPFUNCS/CLEO.
На данный момент SF.lua пока не реализовано:
  • События onSendRpc/onSendPacket/т.д;
  • Некоторые RakNet функции;
  • Собственный обработчик команд.
Так же имеются новые функции:
Lua:
sampAddChatMessageEx(type_msg, text, prefix, color, pcolor) -- Добавить сообщение в чат с определенным типом (CHAT/INFO/DEBUG)
sampAddDeathMessage(killer, killed, clkiller, clkilled, reason) -- Добавить сообщение о смерти (килл-лист)
sampGetLocalPlayerId() -- Получить ID локального игрока
sampGetLocalPlayerNickname() -- Получить имя локального игркоа
sampGetLocalPlayerColor() -- Получить цвет локального игрока
sampSetPlayerColor(id, color) -- Изменить цвет игрока (только на стороне клиента)
sampIsPlayerDefined(id) -- Проверка на существование хэндла игрока по его ID.
sampIsVehicleDefined(id) -- Проверка на существование хэндла машины по его ID.

Требования
SF.lua зависит от SAMP-API.lua.
Для RakNet событий рекомендую использовать RakLua.

Установка
Скачать библиотеку можно с репозитория: https://github.com/SF-lua/SF.lua.
Папку sflua скопировать в папку moonloader/lib.

Нашли ошибку в библиотеке? - Отпишите данную проблему здесь.
Хотите помочь в разработке? - Форкайте репозиторий и отправляйте изменения.
SF.lua - это библиотека для MoonLoader, которая предоставляет возможность взаимодействовать с SA-MP'ом. Данная библиотека не заменяет весь SAMPFUNCS, она всего-лишь добавляет новые функции для Lua скрипта.

История
Всё началось с данного поста, где @FYP захотел избавить поддержку SAMPFUNCS в MoonLoader. В то время я думал, что я смогу это сделать, ну и так началась разработка данного проекта. Через месяц, как только начал разработкой, ко мне присоединяется @DonHomka и мы создаем репозиторий в GitLab под названием "SAMPFUNCSLUA", чтобы нам было удобно разрабатывать библиотеку. Сначала шло очень хорошо, каждый день мы добавляли, как минимум, одну функцию, но потом что-то пошло не так. Мы периодично забивали на данный проект, добавлялись примерно 10 функций в пол года. Проходит год с момента разработки, проект переносится в GitHub и примерно в то же время приглашаем @FYP и @4el0ve4ik в разработку. В ноябре 2019 снова забили на SF.lua.
Март 2020, я в одном чате Telegram вспоминаю о SF.lua. Говорил, что надо снова взяться за него, но @memir предложил открыть репозиторий и залить Alpha версию на BlastHack. Изначально мы с @DonHomka были против, но потом всё-таки поняли, что лучше так. Перед открытием репозитория, решил сменить название на "SF.lua". И вот, вы видите данный проект тут.

Прогресс
На данный момент SF.lua сделан на 78%, из этого осталось:
  • События onSendRpc/onSendPacket/т.д;
  • Функции с отправкой RPC/Packet;
  • Собственный обработчик команд.

Функционал
В SF.lua не будут функции:
  • Связаны с созданием/редактированием кастомных окон DXUT;
  • Взаимодействие с SAMPFUNCS/CLEO.
Так же имеются новые функции для удобности взаимодействия.

Участники
Основные разработчики: @imring, @DonHomka, @FYP и @4el0ve4ik.
Отдельная благодарность:
  • @Akionka - помощь в разработке и тестировании;
  • @crybaby - создал логотип для SF.lua.

Установка
Скачать библиотеку можно с репозитория: https://github.com/SF-lua/SF.lua.
Папку SFlua скопировать в папку moonloader/lib.

Нашли ошибку в библиотеке? - Отпишите данную проблему здесь.
Хотите помочь в разработке? - Форкайте репозиторий и отправляйте изменения.
 
Последнее редактирование:

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,365
2,552
А смысл этой библиотеки, что то не очень понял.
будешь ждать обнову сф от фипа? ок жди (только этого никогда не будет)

а если честно, то завезены:
- полностью на луа (хотя наверн ракнет будет на си)
- опен-сурс!!!!
- добавление других версий сампа (037-р3 например, только этого щас не надо)
 

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,365
2,552
  • Нравится
Реакции: deleted-user-164854

AnWu

Известный
Всефорумный модератор
4,777
5,400
Это облегчает много чего. Годно, только качать какую-то новую библиотеку. Тратить время. + мало кто умеет что либо качать для луа
не тупи, с 1.0 версии будет на луарокс либа и от сф можно будет отказаться. либа будет через мз распространяться
 

_razor

t.me/sssecretway | ТГК: t.me/razor_code
Всефорумный модератор
1,952
3,223
Это облегчает много чего. Годно, только качать какую-то новую библиотеку. Тратить время. + мало кто умеет что либо качать для луа
файлы забыл как качать?
 

AnWu

Известный
Всефорумный модератор
4,777
5,400
Я про то, что ты к примеру выпускаешь луа скрипт, и люди, а это не работает, как установить, где установить. У меня все библиотеки стоят, а это не работает
а как самп.луа юзают. ваще дикари
 
  • Ха-ха
Реакции: Fott и imring

_razor

t.me/sssecretway | ТГК: t.me/razor_code
Всефорумный модератор
1,952
3,223
Я про то, что ты к примеру выпускаешь луа скрипт, и люди, а это не работает, как установить, где установить. У меня все библиотеки стоят, а это не работает
Если они не могут поставить либу и использовать ее, значит им еще далеко до нее
Кстати, сделать бы вывод куда-нибудь системных сообщений и сообщений от скриптов, как это сделано в print (выводит сообщение и лог, и в консоль СФ)
 
Последнее редактирование:
  • Нравится
Реакции: AnWu

|| NN - NoName ||

Известный
1,049
635
Хз, видно я тупой(так и есть).


1) SFlua\bitstream.lua:37: cannot resolve symbol 'malloc'
2)
\lib\SFlua\bitstream.lua:37: in main chunk
[C]: in function 'require'

3)
\lib\SFlua\037-r1\init.lua:13: in main chunk
[C]: in function 'require'
 

imring

Ride the Lightning
Автор темы
Всефорумный модератор
2,365
2,552
Да я тупой.
Ссылку на luajit.dll можно? И куда его устанавливать?
 
  • Нравится
Реакции: AnWu