iw7-mod/data/cdata/ui_scripts/Mods/ModDownload.lua
2024-08-06 12:52:32 +03:00

41 lines
1.2 KiB
Lua

function ModDownloadCancel(arg0, arg1)
download.abort()
LUI.FlowManager.RequestLeaveMenu(arg0)
end
function ModDownloadPopup(arg0, arg1)
local popup = MenuBuilder.BuildRegisteredType("FenceDialogPopup", {
message = "Downloading files...",
controllerIndex = arg1.controllerIndex,
onCancel = ModDownloadCancel
})
popup.id = "ModDownloadPopup"
local file = ""
popup:registerEventHandler("mod_download_set_file", function(element, event)
file = event.request.name
popup.Message:setText(string.format("Downloading %s...", file))
end)
popup:registerEventHandler("mod_download_progress", function(element, event)
popup.Message:setText(string.format("Downloading %s (%i%%)...", file, math.floor(event.fraction * 100)))
end)
popup:registerEventHandler("mod_download_done", function()
LUI.FlowManager.RequestLeaveMenu(popup)
end)
return popup
end
MenuBuilder.registerType("ModDownloadPopup", ModDownloadPopup)
local function reg_func()
Engine.GetLuiRoot():registerEventHandler("mod_download_start", function(element, event)
LUI.FlowManager.RequestPopupMenu(element, "ModDownloadPopup", true, event.controller, false)
end)
end
scheduler.once(reg_func)