function autoupdate(json_url)
local dlstatus = require('moonloader').download_status
local json = getWorkingDirectory() .. '\\'..thisScript().name..'-version.json'
if doesFileExist(json) then os.remove(json) end
downloadUrlToFile(json_url, json,
function(id, status, p1, p2)
if status == dlstatus.STATUSEX_ENDDOWNLOAD then
if doesFileExist(json) then
local f = io.open(json, 'r')
if f then
local info = decodeJson(f:read('*a'))
updatelink = info.updateurl
updateversion = info.latest
f:close()
os.remove(json)
if updateversion ~= thisScript().version then
update = false...
function autoupdate(json_url)
local dlstatus = require('moonloader').download_status
local json = getWorkingDirectory() .. '\\'..thisScript().name..'-version.json'
if doesFileExist(json) then os.remove(json) end
downloadUrlToFile(json_url, json,
function(id, status, p1, p2)
if status == dlstatus.STATUSEX_ENDDOWNLOAD then
if doesFileExist(json) then
local f = io.open(json, 'r')
if f then
local info = decodeJson(f:read('*a'))
updatelink = info.updateurl
updateversion = info.latest
f:close()
os.remove(json)
if updateversion ~= thisScript().version then
update = false
sampAddChatMessage('Обнаружено обновление с версии ' .. thisScript().version .. ' на ' .. updateversion), -1)
else
update = false
print('v'..thisScript().version..': Обновление не требуется.')
end
end
else
print('v'..thisScript().version..': Не могу проверить обновление.')
update = false
end
end
end
)
while update ~= false do wait(100) end
end
и как, работает?![]()
Исходник - Гайд - Lua || Как сделать нормальное автообновление вашего скрипта?
Старый гайд и более подробная информация находятся ниже под спойлером. В новом гайде меньше воды и больше кода, а так же всё немного проще. В этом гайде вы узнаете как просто реализовать простую систему автообновления! Нужен только moonloader и sampfuncs (для сообщений в чат), никаких других...blast.hk
Lua:function autoupdate(json_url, prefix, url) local dlstatus = require('moonloader').download_status local json = getWorkingDirectory() .. '\\'..thisScript().name..'-version.json' if doesFileExist(json) then os.remove(json) end downloadUrlToFile(json_url, json, function(id, status, p1, p2) if status == dlstatus.STATUSEX_ENDDOWNLOAD then if doesFileExist(json) then local f = io.open(json, 'r') if f then local info = decodeJson(f:read('*a')) updatelink = info.updateurl updateversion = info.latest f:close() os.remove(json) if updateversion ~= thisScript().version then update = false sampAddChatMessage('Обнаружено обновление с версии ' .. thisScript().version .. ' на ' .. updateversion), -1) else update = false print('v'..thisScript().version..': Обновление не требуется.') end end else print('v'..thisScript().version..': Не могу проверить обновление. Смиритесь или проверьте самостоятельно на '..url) update = false end end end ) while update ~= false do wait(100) end end
а собсна, куда мне свою ссылку вставить, и как записывать НЕСКОЛЬКО версий в .json?да, работает
Если там не поймешь, попробуй как тут сделатьи как, работает?
json_url - ссылка на сайт с версией.а собсна, куда мне свою ссылку вставить, и как записывать НЕСКОЛЬКО версий в .json?
{
"latest1": "01.01.2019",
"latest2": "05.05.2020",
"latest3": "03.03.2021"
}
function autoupdate(json_url)
local dlstatus = require('moonloader').download_status
local json = getWorkingDirectory() .. '\\'..thisScript().name..'-version.json'
if doesFileExist(json) then os.remove(json) end
downloadUrlToFile(json_url, json,
function(id, status, p1, p2)
if status == dlstatus.STATUSEX_ENDDOWNLOAD then
if doesFileExist(json) then
local f = io.open(json, 'r')
if f then
local info = decodeJson(f:read('*a'))
updateversion1 = info.latest1
updateversion2 = info.latest2
updateversion3 = info.latest3
f:close()
os.remove(json)
if updateversion ~= thisScript().version then
update = false
sampAddChatMessage('Обнаружено обновление с версии ' .. thisScript().version .. ' на ' .. updateversion1), -1)
sampAddChatMessage('Так же ещё обнаружены некоторые версии: ' .. updateversion2 .. ', ' .. updateversion3), -1)
else
update = false
print('v'..thisScript().version..': Обновление не требуется.')
end
end
else
print('v'..thisScript().version..': Не могу проверить обновление.')
update = false
end
end
end
)
while update ~= false do wait(100) end
end
т.е после того как код втавил писать![]()
Исходник - Гайд - Lua || Как сделать нормальное автообновление вашего скрипта?
Старый гайд и более подробная информация находятся ниже под спойлером. В новом гайде меньше воды и больше кода, а так же всё немного проще. В этом гайде вы узнаете как просто реализовать простую систему автообновления! Нужен только moonloader и sampfuncs (для сообщений в чат), никаких других...blast.hk
Lua:function autoupdate(json_url) local dlstatus = require('moonloader').download_status local json = getWorkingDirectory() .. '\\'..thisScript().name..'-version.json' if doesFileExist(json) then os.remove(json) end downloadUrlToFile(json_url, json, function(id, status, p1, p2) if status == dlstatus.STATUSEX_ENDDOWNLOAD then if doesFileExist(json) then local f = io.open(json, 'r') if f then local info = decodeJson(f:read('*a')) updatelink = info.updateurl updateversion = info.latest f:close() os.remove(json) if updateversion ~= thisScript().version then update = false sampAddChatMessage('Обнаружено обновление с версии ' .. thisScript().version .. ' на ' .. updateversion), -1) else update = false print('v'..thisScript().version..': Обновление не требуется.') end end else print('v'..thisScript().version..': Не могу проверить обновление.') update = false end end end ) while update ~= false do wait(100) end end
дааат.е после того как код втавил писать
autoupdate('ссылка на мой json') ?