asyncimageloader.luac.lua

来自「htc manila 2 sourcecode」· LUA 代码 · 共 105 行

LUA
105
字号
-- Decompiled using luadec 1.0 by sztupy (http://winmo.sztupy.hu)
-- Command line was: -l2 ;;;;;;;;;;;;;;;9-32; 5c4eef72_manila.luac 

require("class")
require("io_svc")
trace("Async Image Loader Loaded\n")
AsyncImageLoaderClass = class()
AsyncImageLoaderClass.__init = function(l_1_0, l_1_1, l_1_2, l_1_3)
   l_1_0.ImagePath = l_1_1
   l_1_0.Rescale = l_1_2
   l_1_0.Resize = l_1_3
   l_1_0.UseImagingFactory = false
   l_1_0:SetCollectGarbageOnCompletion(true)
end

AsyncImageLoaderClass.SetImage = function(l_2_0, l_2_1)
   l_2_0.Image = l_2_1
end

AsyncImageLoaderClass.GetImage = function(l_3_0)
   return l_3_0.Image
end

AsyncImageLoaderClass.SetPriority = function(l_4_0, l_4_1)
   l_4_0.Priority = l_4_1
end

AsyncImageLoaderClass.SetUseImagingFactory = function(l_5_0, l_5_1)
   l_5_0.UseImagingFactory = l_5_1
end

AsyncImageLoaderClass.SetCallback = function(l_6_0, l_6_1)
   l_6_0.Callback = l_6_1
end

AsyncImageLoaderClass.GetCallback = function(l_7_0)
   return l_7_0.Callback
end

AsyncImageLoaderClass.SetContext = function(l_8_0, l_8_1)
   l_8_0.Context = l_8_1
end

AsyncImageLoaderClass.GetContext = function(l_9_0)
   return l_9_0.Context
end

AsyncImageLoaderClass.SetCollectGarbageOnCompletion = function(l_10_0, l_10_1)
   l_10_0.CollectGarbageOnCompletion = l_10_1
end

AsyncImageLoaderClass.GetCollectGarbageOnCompletion = function(l_11_0)
   return l_11_0.CollectGarbageOnCompletion
end

AsyncImageLoaderClass.IsRunning = function(l_12_0)
   if l_12_0.ImageLoader == nil then
      return false
   else
      return l_12_0.ImageLoader:IsRunning()
   end
end

AsyncImageLoaderClass.Cancel = function(l_13_0)
   if l_13_0.ImageLoader ~= nil and l_13_0.ImageLoader:IsRunning() then
      l_13_0.ImageLoader:Cancel()
      l_13_0.ImageLoader = nil
      if l_13_0.CollectGarbageOnCompletion == true then
         collectgarbage("collect")
      end
   end
end

AsyncImageLoaderClass.BeginLoadFile = function(l_14_0)
   l_14_0:Cancel()
   l_14_0.ImageLoader = AsyncImageLoader()
   if l_14_0.Priority ~= nil then
      l_14_0.ImageLoader.Priority = l_14_0.Priority
   end
   if l_14_0.UseImagingFactory ~= nil then
      l_14_0.ImageLoader.UseImagingFactory = l_14_0.UseImagingFactory
   end
   l_14_0.ImageLoader.OnComplete:connect(l_14_0.HandleImageLoaded, l_14_0)
   l_14_0.ImageLoader:BeginLoadFile(l_14_0.ImagePath, l_14_0.Rescale, l_14_0.Resize)
end

AsyncImageLoaderClass.HandleImageLoaded = function(l_15_0, l_15_1, l_15_2)
   if l_15_0.Image ~= nil and l_15_2 == 1 then
      if l_15_0.Resize == true then
         l_15_0.Image.TextureCoords.width = l_15_1.TextureCoords.width == 0 and 1 or l_15_1.TextureCoords.width
         l_15_0.Image.TextureCoords.height = l_15_1.TextureCoords.height == 0 and 1 or l_15_1.TextureCoords.height
      end
      l_15_0.Image:SetTexture(l_15_1.Image)
   end
   if l_15_0.Callback ~= nil then
      l_15_0.Callback(l_15_0.Context, l_15_1, l_15_2, l_15_0)
   end
   l_15_0.ImageLoader = nil
   if l_15_0.CollectGarbageOnCompletion == true then
      collectgarbage("collect")
   end
end


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?