Preload plugin assets at start.

Closes #121.
This commit is contained in:
Lucien Greathouse
2019-02-11 13:47:49 -08:00
parent 91d1ba1910
commit ca0aabd814
3 changed files with 32 additions and 3 deletions

View File

@@ -1,9 +1,7 @@
local sheetAsset = "rbxassetid://2738712459"
local Assets = {
Sprites = {
WhiteCross = {
asset = sheetAsset,
asset = "rbxassetid://2738712459",
offset = Vector2.new(190, 318),
size = Vector2.new(18, 18),
},

View File

@@ -8,6 +8,7 @@ local Config = require(Plugin.Config)
local Version = require(Plugin.Version)
local Logging = require(Plugin.Logging)
local DevSettings = require(Plugin.DevSettings)
local preloadAssets = require(Plugin.preloadAssets)
local ConnectPanel = require(Plugin.Components.ConnectPanel)
local ConnectionActivePanel = require(Plugin.Components.ConnectionActivePanel)
@@ -177,6 +178,8 @@ function App:didMount()
})
end
end)
preloadAssets()
end
function App:didUpdate()

View File

@@ -0,0 +1,28 @@
local ContentProvider = game:GetService("ContentProvider")
local Logging = require(script.Parent.Logging)
local Assets = require(script.Parent.Assets)
local function preloadAssets()
local contentUrls = {}
for _, sprite in pairs(Assets.Sprites) do
table.insert(contentUrls, sprite.asset)
end
for _, slice in pairs(Assets.Slices) do
table.insert(contentUrls, slice.asset)
end
for _, url in pairs(Assets.Images) do
table.insert(contentUrls, url)
end
Logging.trace("Preloading assets: %s", table.concat(contentUrls, ", "))
coroutine.wrap(function()
ContentProvider:PreloadAsync(contentUrls)
end)()
end
return preloadAssets