require "lib.moonloader"
local sampev = require 'samp.events'
myNick = ""
grtefjkogbtfjtkl = false
function main()
if not isSampLoaded() then return end
while not isSampAvailable() do wait(100) end
sampAddChatMessage('test')
local configFile = io.open(getGameDirectory()..'//moonloader//MHelper//MHelper2.json', "r")
get_configFile = configFile:read("*a")
configFile:close()
CONFIG = decodeJson(get_configFile)
myID = select(2, sampGetPlayerIdByCharHandle(1))
myNick = sampGetPlayerNickname(myID)
while true do
wait(0)
end
end
function onReceivePacket(id, bs)
if id ~= 215 then return end
local _style = raknetBitStreamReadInt16(bs)
local _type = raknetBitStreamReadInt32(bs)
local l = raknetBitStreamReadInt8(bs)
local style3 = raknetBitStreamReadInt8(bs)
local length = raknetBitStreamReadInt32(bs)
if length > 0 and length < 5000 then
bitstreamtext = raknetBitStreamReadString(bs, length)
else
bitstreamtext = nil
end
if bitstreamtext then
print(bitstreamtext)
if bitstreamtext:match("Authorization") and CONFIG["acc"][myNick] then
emulateAuthorization(CONFIG["Config"][myNick])
end
end
end
function sampev.onSendClientJoin()
grtefjkogbtfjtkl = true
myID = select(2, sampGetPlayerIdByCharHandle(1))
myNick = sampGetPlayerNickname(myID)
end
function emulateAuthorization(pass)
if pass ~= nil then
if grtefjkogbtfjtkl then
local bs = raknetNewBitStream();
raknetBitStreamWriteInt8(bs,215)
raknetBitStreamWriteInt16(bs,2)
raknetBitStreamWriteInt32(bs, 0)
raknetBitStreamWriteInt32(bs,#'OnAuthorizationStart')
raknetBitStreamWriteString(bs,'OnAuthorizationStart')
raknetBitStreamWriteInt32(bs, 2)
raknetBitStreamWriteInt8(bs, 115)
raknetBitStreamWriteInt32(bs, #pass)
raknetBitStreamWriteString(bs, pass)
raknetSendBitStream(bs);
raknetDeleteBitStream(bs);
grtefjkogbtfjtkl = false
end
else
sampAddChatMessage('err in emulateAuthorization (pass nil)')
end
end