Optimize some OWM ending animations (#648)
* Optimize some OWM ending animations * wait hang on i forgot something
After Width: | Height: | Size: 534 KiB |
Before Width: | Height: | Size: 112 KiB |
Before Width: | Height: | Size: 148 KiB |
Before Width: | Height: | Size: 164 KiB |
Before Width: | Height: | Size: 29 KiB |
@ -10,11 +10,19 @@
|
||||
--func:SetScale(xscale, yscale, "filename")
|
||||
--func:SetColor(r, g, b, "filename")
|
||||
|
||||
--local Tex = { posx = 0, posy = 0, x = 0, y = 0, w = 0, h = 0 }
|
||||
|
||||
local animeCounter = 0
|
||||
|
||||
local x = 960
|
||||
local y = 540
|
||||
|
||||
local flowerLeftTex = { posx = 757.5, posy = 532.5, x = 1083, y = 1, w = 587, h = 903 }
|
||||
local flowerRightTex = { posx = 1173, posy = 524, x = 1054, y = 905, w = 616, h = 938 }
|
||||
local flowerGlowTex = { posx = 972.5, posy = 525.5, x = 1, y = 1, w = 1081, h = 1011 }
|
||||
local textTex = { posx = 985.5, posy = 415, x = 1, y = 1385, w = 907, h = 458 }
|
||||
local expressionTex = { posx = 1267, posy = 356, x = 885, y = 1013, w = 168, h = 392 }
|
||||
|
||||
function clearIn(player)
|
||||
end
|
||||
|
||||
@ -26,11 +34,7 @@ function playEndAnime(player)
|
||||
end
|
||||
|
||||
function init()
|
||||
func:AddGraph("BaseLeft.png")
|
||||
func:AddGraph("BaseRight.png")
|
||||
func:AddGraph("BaseGlow.png")
|
||||
func:AddGraph("Text.png")
|
||||
func:AddGraph("Overlay.png")
|
||||
func:AddGraph("Assets.png")
|
||||
end
|
||||
|
||||
function update(player)
|
||||
@ -46,15 +50,18 @@ function draw(player)
|
||||
baseSplit = (math.min(math.max(animeCounter - 1.0, 0), 0.1) * 10)^0.25 * 30
|
||||
overlayIn = math.min(math.max(animeCounter - 1.35, 0), 0.2) * 5
|
||||
|
||||
func:SetOpacity(baseIn * 255, "BaseLeft.png")
|
||||
func:SetOpacity(baseIn * 255, "BaseRight.png")
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "BaseGlow.png")
|
||||
func:SetOpacity(baseIn * 255, "Text.png")
|
||||
func:SetOpacity(overlayIn * 255, "Overlay.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Left Flower
|
||||
func:DrawGraphRectCenter(flowerLeftTex.posx - baseSplit, flowerLeftTex.posy, flowerLeftTex.x, flowerLeftTex.y, flowerLeftTex.w, flowerLeftTex.h, "Assets.png")
|
||||
|
||||
func:DrawGraphCenter(x - baseSplit, y, "BaseLeft.png")
|
||||
func:DrawGraphCenter(x + baseSplit, y, "BaseRight.png")
|
||||
func:DrawGraphCenter(x, y + ((overlayIn - 1) * 20), "Overlay.png")
|
||||
func:DrawGraphCenter(x, y, "Text.png")
|
||||
func:DrawGraphCenter(x, y, "BaseGlow.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Right Flower
|
||||
func:DrawGraphRectCenter(flowerRightTex.posx + baseSplit, flowerRightTex.posy, flowerRightTex.x, flowerRightTex.y, flowerRightTex.w, flowerRightTex.h, "Assets.png")
|
||||
|
||||
func:SetOpacity(overlayIn * 255, "Assets.png") -- Expression
|
||||
func:DrawGraphRectCenter(expressionTex.posx, expressionTex.posy + ((overlayIn - 1) * 20), expressionTex.x, expressionTex.y, expressionTex.w, expressionTex.h, "Assets.png")
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Text
|
||||
func:DrawGraphRectCenter(textTex.posx, textTex.posy, textTex.x, textTex.y, textTex.w, textTex.h, "Assets.png")
|
||||
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "Assets.png") -- Flower Glow
|
||||
func:DrawGraphRectCenter(flowerGlowTex.posx, flowerGlowTex.posy, flowerGlowTex.x, flowerGlowTex.y, flowerGlowTex.w, flowerGlowTex.h, "Assets.png")
|
||||
end
|
||||
|
Before Width: | Height: | Size: 122 KiB |
After Width: | Height: | Size: 661 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 504 B |
Before Width: | Height: | Size: 203 KiB |
Before Width: | Height: | Size: 139 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 37 KiB |
@ -10,11 +10,28 @@
|
||||
--func:SetScale(xscale, yscale, "filename")
|
||||
--func:SetColor(r, g, b, "filename")
|
||||
|
||||
--local Tex = { posx = 0, posy = 0, x = 0, y = 0, w = 0, h = 0 }
|
||||
|
||||
local animeCounter = 0
|
||||
|
||||
local x = 960
|
||||
local y = 540
|
||||
|
||||
local flowerTex = { posx = 972.5, posy = 524, x = 1, y = 1, w = 1017, h = 938 }
|
||||
local textTex = { posx = 951, posy = 413, x = 1083, y = 1082, w = 900, h = 642 }
|
||||
local flowerGlowTex = { posx = 972.5, posy = 525, x = 1, y = 940, w = 1081, h = 1010 }
|
||||
local waterDropTex = { posx = 960, posy = 540, x = 1019, y = 1, w = 1080, h = 1080 }
|
||||
|
||||
local star1Tex = { posx = 649, posy = 226.5, x = 1083, y = 1725, w = 104, h = 137 }
|
||||
local star2Tex = { posx = 1259.5, posy = 178.5, x = 1188, y = 1725, w = 79, h = 103 }
|
||||
local star3Tex = { posx = 503, posy = 687.5, x = 1268, y = 1725, w = 104, h = 137 }
|
||||
local star4Tex = { posx = 1372.5, posy = 753, x = 1373, y = 1725, w = 79, h = 104 }
|
||||
local star1GlowTex = { posx = 650, posy = 226.5, x = 1453, y = 1725, w = 164, h = 199 }
|
||||
local star2GlowTex = { posx = 1259, posy = 178, x = 1618, y = 1725, w = 136, h = 162 }
|
||||
local star3GlowTex = { posx = 504, posy = 687.5, x = 1755, y = 1725, w = 164, h = 199 }
|
||||
local star4GlowTex = { posx = 1372, posy = 753, x = 1920, y = 1725, w = 136, h = 162 }
|
||||
|
||||
|
||||
function clearIn(player)
|
||||
end
|
||||
|
||||
@ -26,12 +43,7 @@ function playEndAnime(player)
|
||||
end
|
||||
|
||||
function init()
|
||||
func:AddGraph("Base.png")
|
||||
func:AddGraph("BaseGlow.png")
|
||||
func:AddGraph("WaterDrop.png")
|
||||
func:AddGraph("Text.png")
|
||||
func:AddGraph("Overlay.png")
|
||||
func:AddGraph("OverlayGlow.png")
|
||||
func:AddGraph("Assets.png")
|
||||
func:AddGraph("Background.png")
|
||||
end
|
||||
|
||||
@ -56,37 +68,33 @@ function draw(player)
|
||||
|
||||
outPos = glowOut^0.25 * 20
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Base.png")
|
||||
func:SetScale(scale, scale, "Base.png")
|
||||
func:SetOpacity(baseIn * 255, "Text.png")
|
||||
func:SetScale(scale, scale, "Text.png")
|
||||
func:SetOpacity(baseIn * 255, "Overlay.png")
|
||||
func:SetScale(scale, scale, "Overlay.png")
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png") -- Background
|
||||
func:DrawRectGraph(0, 0, 0, 0, 1920, 1080, "Background.png")
|
||||
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "BaseGlow.png")
|
||||
func:SetScale(scale, scale, "BaseGlow.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "WaterDrop.png")
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "OverlayGlow.png")
|
||||
func:SetScale(scale, scale, "OverlayGlow.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "Assets.png") -- Water Drop
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "Assets.png")
|
||||
func:DrawGraphRectCenter(waterDropTex.posx, waterDropTex.posy, waterDropTex.x, waterDropTex.y, waterDropTex.w, waterDropTex.h, "Assets.png")
|
||||
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1Tex.posx + 20 - outPos, star1Tex.posy + 20 - outPos, star1Tex.x, star1Tex.y, star1Tex.w, star1Tex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2Tex.posx - 20 + outPos, star2Tex.posy + 20 - outPos, star2Tex.x, star2Tex.y, star2Tex.w, star2Tex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3Tex.posx + 20 - outPos, star3Tex.posy - 20 + outPos, star3Tex.x, star3Tex.y, star3Tex.w, star3Tex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4Tex.posx - 20 + outPos, star4Tex.posy - 20 + outPos, star4Tex.x, star4Tex.y, star4Tex.w, star4Tex.h, "Assets.png") -- 4
|
||||
|
||||
func:DrawGraphCenter(x, y, "Background.png")
|
||||
func:DrawGraphCenter(x, y, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "Assets.png") -- Glowing Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1GlowTex.posx + 20 - outPos, star1GlowTex.posy + 20 - outPos, star1GlowTex.x, star1GlowTex.y, star1GlowTex.w, star1GlowTex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2GlowTex.posx - 20 + outPos, star2GlowTex.posy + 20 - outPos, star2GlowTex.x, star2GlowTex.y, star2GlowTex.w, star2GlowTex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3GlowTex.posx + 20 - outPos, star3GlowTex.posy - 20 + outPos, star3GlowTex.x, star3GlowTex.y, star3GlowTex.w, star3GlowTex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4GlowTex.posx - 20 + outPos, star4GlowTex.posy - 20 + outPos, star4GlowTex.x, star4GlowTex.y, star4GlowTex.w, star4GlowTex.h, "Assets.png") -- 4
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "Overlay.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Flower & Text
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerTex.posx, flowerTex.posy, flowerTex.x, flowerTex.y, flowerTex.w, flowerTex.h, "Assets.png") -- Flower
|
||||
func:DrawGraphRectCenter(textTex.posx, textTex.posy, textTex.x, textTex.y, textTex.w, textTex.h, "Assets.png") -- Text
|
||||
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "OverlayGlow.png")
|
||||
|
||||
func:DrawGraphCenter(x, y, "Base.png")
|
||||
func:DrawGraphCenter(x, y, "Text.png")
|
||||
func:DrawGraphCenter(x, y, "BaseGlow.png")
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "Assets.png") -- Glowing Flower
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerGlowTex.posx, flowerGlowTex.posy, flowerGlowTex.x, flowerGlowTex.y, flowerGlowTex.w, flowerGlowTex.h, "Assets.png")
|
||||
end
|
||||
|
Before Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 504 B |
Before Width: | Height: | Size: 203 KiB |
Before Width: | Height: | Size: 139 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 37 KiB |
@ -10,11 +10,34 @@
|
||||
--func:SetScale(xscale, yscale, "filename")
|
||||
--func:SetColor(r, g, b, "filename")
|
||||
|
||||
--local Tex = { posx = 0, posy = 0, x = 0, y = 0, w = 0, h = 0 }
|
||||
|
||||
local animeCounter = 0
|
||||
|
||||
local x = 960
|
||||
local y = 540
|
||||
|
||||
local flowerTex = { posx = 972.5, posy = 524, x = 1, y = 1, w = 1017, h = 938 }
|
||||
local textTex = { posx = 951, posy = 413, x = 1083, y = 1082, w = 900, h = 642 }
|
||||
local flowerGlowTex = { posx = 972.5, posy = 525, x = 1, y = 940, w = 1081, h = 1010 }
|
||||
local waterDropTex = { posx = 960, posy = 540, x = 1019, y = 1, w = 1080, h = 1080 }
|
||||
|
||||
local star1Tex = { posx = 649, posy = 226.5, x = 1083, y = 1725, w = 104, h = 137 }
|
||||
local star2Tex = { posx = 1259.5, posy = 178.5, x = 1188, y = 1725, w = 79, h = 103 }
|
||||
local star3Tex = { posx = 503, posy = 687.5, x = 1268, y = 1725, w = 104, h = 137 }
|
||||
local star4Tex = { posx = 1372.5, posy = 753, x = 1373, y = 1725, w = 79, h = 104 }
|
||||
local star1GlowTex = { posx = 650, posy = 226.5, x = 1453, y = 1725, w = 164, h = 199 }
|
||||
local star2GlowTex = { posx = 1259, posy = 178, x = 1618, y = 1725, w = 136, h = 162 }
|
||||
local star3GlowTex = { posx = 504, posy = 687.5, x = 1755, y = 1725, w = 164, h = 199 }
|
||||
local star4GlowTex = { posx = 1372, posy = 753, x = 1920, y = 1725, w = 136, h = 162 }
|
||||
|
||||
local fcTex = { posx = 536, posy = 689, x = 19, y = 1951, w = 873, h = 202 }
|
||||
local fcGlowTex = { posx = 518, posy = 689, x = 1083, y = 1925, w = 873, h = 202 }
|
||||
|
||||
function clamp(value, min, max) -- why isn't this part of lua's math library? :(
|
||||
return math.min(math.max(value, min), max)
|
||||
end
|
||||
|
||||
function clearIn(player)
|
||||
end
|
||||
|
||||
@ -26,12 +49,7 @@ function playEndAnime(player)
|
||||
end
|
||||
|
||||
function init()
|
||||
func:AddGraph("Base.png")
|
||||
func:AddGraph("BaseGlow.png")
|
||||
func:AddGraph("WaterDrop.png")
|
||||
func:AddGraph("Text.png")
|
||||
func:AddGraph("Overlay.png")
|
||||
func:AddGraph("OverlayGlow.png")
|
||||
func:AddGraph("Assets.png")
|
||||
func:AddGraph("Background.png")
|
||||
end
|
||||
|
||||
@ -44,49 +62,54 @@ function draw(player)
|
||||
scale = 2 - value
|
||||
|
||||
--ordered by timeline of appearance
|
||||
glowIn = math.min(math.max(animeCounter - 0, 0), 0.25) * 4
|
||||
baseIn = math.min(math.max(animeCounter - 0.25, 0), 0.1) * 10
|
||||
glowOut = math.min(math.max(animeCounter - 0.35, 0), 0.25) * 4
|
||||
glowIn = clamp(animeCounter - 0, 0, 0.25) * 4
|
||||
baseIn = clamp(animeCounter - 0.25, 0, 0.1) * 10
|
||||
glowOut = clamp(animeCounter - 0.35, 0, 0.25) * 4
|
||||
if animeCounter >= 0.35 then
|
||||
dropIn = 0.5
|
||||
else
|
||||
dropIn = 0
|
||||
end
|
||||
dropOut = math.min(math.max(animeCounter - 0.35, 0), 2) / 2
|
||||
dropOut = clamp(animeCounter - 0.35, 0, 2) / 2
|
||||
|
||||
outPos = glowOut^0.25 * 20
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Base.png")
|
||||
func:SetScale(scale, scale, "Base.png")
|
||||
func:SetOpacity(baseIn * 255, "Text.png")
|
||||
func:SetScale(scale, scale, "Text.png")
|
||||
func:SetOpacity(baseIn * 255, "Overlay.png")
|
||||
func:SetScale(scale, scale, "Overlay.png")
|
||||
textProgress = clamp(animeCounter - 1.5, 0, 0.4) * 2.5
|
||||
textProgress2 = clamp(animeCounter - 1.51, 0, 0.4) * 2.5
|
||||
flowerGlowProgress = clamp(animeCounter - 1.5, 0, 0.2) - clamp(animeCounter - 1.7, 0, 0.2)
|
||||
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "BaseGlow.png")
|
||||
func:SetScale(scale, scale, "BaseGlow.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "WaterDrop.png")
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "OverlayGlow.png")
|
||||
func:SetScale(scale, scale, "OverlayGlow.png")
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png") -- Background
|
||||
func:DrawRectGraph(0, 0, 0, 0, 1920, 1080, "Background.png")
|
||||
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "Assets.png") -- Water Drop
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "Assets.png")
|
||||
func:DrawGraphRectCenter(waterDropTex.posx, waterDropTex.posy, waterDropTex.x, waterDropTex.y, waterDropTex.w, waterDropTex.h, "Assets.png")
|
||||
|
||||
func:DrawGraphCenter(x, y, "Background.png")
|
||||
func:DrawGraphCenter(x, y, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1Tex.posx + 20 - outPos, star1Tex.posy + 20 - outPos, star1Tex.x, star1Tex.y, star1Tex.w, star1Tex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2Tex.posx - 20 + outPos, star2Tex.posy + 20 - outPos, star2Tex.x, star2Tex.y, star2Tex.w, star2Tex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3Tex.posx + 20 - outPos, star3Tex.posy - 20 + outPos, star3Tex.x, star3Tex.y, star3Tex.w, star3Tex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4Tex.posx - 20 + outPos, star4Tex.posy - 20 + outPos, star4Tex.x, star4Tex.y, star4Tex.w, star4Tex.h, "Assets.png") -- 4
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "Overlay.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "Assets.png") -- Glowing Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1GlowTex.posx + 20 - outPos, star1GlowTex.posy + 20 - outPos, star1GlowTex.x, star1GlowTex.y, star1GlowTex.w, star1GlowTex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2GlowTex.posx - 20 + outPos, star2GlowTex.posy + 20 - outPos, star2GlowTex.x, star2GlowTex.y, star2GlowTex.w, star2GlowTex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3GlowTex.posx + 20 - outPos, star3GlowTex.posy - 20 + outPos, star3GlowTex.x, star3GlowTex.y, star3GlowTex.w, star3GlowTex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4GlowTex.posx - 20 + outPos, star4GlowTex.posy - 20 + outPos, star4GlowTex.x, star4GlowTex.y, star4GlowTex.w, star4GlowTex.h, "Assets.png") -- 4
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Flower & Text
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerTex.posx, flowerTex.posy, flowerTex.x, flowerTex.y, flowerTex.w, flowerTex.h, "Assets.png") -- Flower
|
||||
func:DrawGraphRectCenter(textTex.posx, textTex.posy, textTex.x, textTex.y, textTex.w, textTex.h, "Assets.png") -- Text
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "OverlayGlow.png")
|
||||
func:SetOpacity((glowIn - glowOut + flowerGlowProgress) * 255, "Assets.png") -- Glowing Flower
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerGlowTex.posx, flowerGlowTex.posy, flowerGlowTex.x, flowerGlowTex.y, flowerGlowTex.w, flowerGlowTex.h, "Assets.png")
|
||||
|
||||
func:DrawGraphCenter(x, y, "Base.png")
|
||||
func:DrawGraphCenter(x, y, "Text.png")
|
||||
func:DrawGraphCenter(x, y, "BaseGlow.png")
|
||||
func:SetOpacity(255, "Assets.png") -- Full Combo Text
|
||||
func:SetScale(1, 1, "Assets.png")
|
||||
func:DrawRectGraph(fcTex.posx, fcTex.posy, fcTex.x, fcTex.y, fcTex.w * textProgress, fcTex.h, "Assets.png")
|
||||
func:DrawRectGraph(fcGlowTex.posx + (fcGlowTex.w * textProgress), fcGlowTex.posy, fcGlowTex.x + (fcGlowTex.w * textProgress), fcGlowTex.y, fcGlowTex.w * (textProgress - textProgress2), fcGlowTex.h, "Assets.png")
|
||||
end
|
||||
|
Before Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 131 KiB |
After Width: | Height: | Size: 816 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 504 B |
Before Width: | Height: | Size: 203 KiB |
Before Width: | Height: | Size: 139 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 37 KiB |
@ -10,11 +10,34 @@
|
||||
--func:SetScale(xscale, yscale, "filename")
|
||||
--func:SetColor(r, g, b, "filename")
|
||||
|
||||
--local Tex = { posx = 0, posy = 0, x = 0, y = 0, w = 0, h = 0 }
|
||||
|
||||
local animeCounter = 0
|
||||
|
||||
local x = 960
|
||||
local y = 540
|
||||
|
||||
local flowerTex = { posx = 972.5, posy = 524, x = 1, y = 1, w = 1017, h = 938 }
|
||||
local textTex = { posx = 951, posy = 413, x = 1083, y = 1082, w = 900, h = 642 }
|
||||
local flowerGlowTex = { posx = 972.5, posy = 525, x = 1, y = 940, w = 1081, h = 1010 }
|
||||
local waterDropTex = { posx = 960, posy = 540, x = 1019, y = 1, w = 1080, h = 1080 }
|
||||
|
||||
local star1Tex = { posx = 649, posy = 226.5, x = 1083, y = 1725, w = 104, h = 137 }
|
||||
local star2Tex = { posx = 1259.5, posy = 178.5, x = 1188, y = 1725, w = 79, h = 103 }
|
||||
local star3Tex = { posx = 503, posy = 687.5, x = 1268, y = 1725, w = 104, h = 137 }
|
||||
local star4Tex = { posx = 1372.5, posy = 753, x = 1373, y = 1725, w = 79, h = 104 }
|
||||
local star1GlowTex = { posx = 650, posy = 226.5, x = 1453, y = 1725, w = 164, h = 199 }
|
||||
local star2GlowTex = { posx = 1259, posy = 178, x = 1618, y = 1725, w = 136, h = 162 }
|
||||
local star3GlowTex = { posx = 504, posy = 687.5, x = 1755, y = 1725, w = 164, h = 199 }
|
||||
local star4GlowTex = { posx = 1372, posy = 753, x = 1920, y = 1725, w = 136, h = 162 }
|
||||
|
||||
local pfcTex = { posx = 591, posy = 717, x = 1, y = 1951, w = 712, h = 174 }
|
||||
local pfcGlowTex = { posx = 591, posy = 717, x = 1083, y = 1925, w = 712, h = 174 }
|
||||
|
||||
function clamp(value, min, max) -- why isn't this part of lua's math library? :(
|
||||
return math.min(math.max(value, min), max)
|
||||
end
|
||||
|
||||
function clearIn(player)
|
||||
end
|
||||
|
||||
@ -26,12 +49,7 @@ function playEndAnime(player)
|
||||
end
|
||||
|
||||
function init()
|
||||
func:AddGraph("Base.png")
|
||||
func:AddGraph("BaseGlow.png")
|
||||
func:AddGraph("WaterDrop.png")
|
||||
func:AddGraph("Text.png")
|
||||
func:AddGraph("Overlay.png")
|
||||
func:AddGraph("OverlayGlow.png")
|
||||
func:AddGraph("Assets.png")
|
||||
func:AddGraph("Background.png")
|
||||
end
|
||||
|
||||
@ -44,49 +62,54 @@ function draw(player)
|
||||
scale = 2 - value
|
||||
|
||||
--ordered by timeline of appearance
|
||||
glowIn = math.min(math.max(animeCounter - 0, 0), 0.25) * 4
|
||||
baseIn = math.min(math.max(animeCounter - 0.25, 0), 0.1) * 10
|
||||
glowOut = math.min(math.max(animeCounter - 0.35, 0), 0.25) * 4
|
||||
glowIn = clamp(animeCounter - 0, 0, 0.25) * 4
|
||||
baseIn = clamp(animeCounter - 0.25, 0, 0.1) * 10
|
||||
glowOut = clamp(animeCounter - 0.35, 0, 0.25) * 4
|
||||
if animeCounter >= 0.35 then
|
||||
dropIn = 0.5
|
||||
else
|
||||
dropIn = 0
|
||||
end
|
||||
dropOut = math.min(math.max(animeCounter - 0.35, 0), 2) / 2
|
||||
dropOut = clamp(animeCounter - 0.35, 0, 2) / 2
|
||||
|
||||
outPos = glowOut^0.25 * 20
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Base.png")
|
||||
func:SetScale(scale, scale, "Base.png")
|
||||
func:SetOpacity(baseIn * 255, "Text.png")
|
||||
func:SetScale(scale, scale, "Text.png")
|
||||
func:SetOpacity(baseIn * 255, "Overlay.png")
|
||||
func:SetScale(scale, scale, "Overlay.png")
|
||||
textProgress = clamp(animeCounter - 1.5, 0, 0.4) * 2.5
|
||||
textProgress2 = clamp(animeCounter - 1.51, 0, 0.4) * 2.5
|
||||
flowerGlowProgress = (clamp(animeCounter - 1.5, 0, 0.2) * 2) - (clamp(animeCounter - 1.7, 0, 0.2) * 2)
|
||||
|
||||
func:SetOpacity((glowIn - glowOut) * 255, "BaseGlow.png")
|
||||
func:SetScale(scale, scale, "BaseGlow.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "WaterDrop.png")
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "OverlayGlow.png")
|
||||
func:SetScale(scale, scale, "OverlayGlow.png")
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png") -- Background
|
||||
func:DrawRectGraph(0, 0, 0, 0, 1920, 1080, "Background.png")
|
||||
|
||||
func:SetOpacity((baseIn - glowOut) * 255, "Background.png")
|
||||
func:SetOpacity((dropIn - dropOut)^0.4 * 255, "Assets.png") -- Water Drop
|
||||
func:SetScale((dropIn + dropOut)^0.4, (dropIn + dropOut)^0.4, "Assets.png")
|
||||
func:DrawGraphRectCenter(waterDropTex.posx, waterDropTex.posy, waterDropTex.x, waterDropTex.y, waterDropTex.w, waterDropTex.h, "Assets.png")
|
||||
|
||||
func:DrawGraphCenter(x, y, "Background.png")
|
||||
func:DrawGraphCenter(x, y, "WaterDrop.png")
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1Tex.posx + 20 - outPos, star1Tex.posy + 20 - outPos, star1Tex.x, star1Tex.y, star1Tex.w, star1Tex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2Tex.posx - 20 + outPos, star2Tex.posy + 20 - outPos, star2Tex.x, star2Tex.y, star2Tex.w, star2Tex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3Tex.posx + 20 - outPos, star3Tex.posy - 20 + outPos, star3Tex.x, star3Tex.y, star3Tex.w, star3Tex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4Tex.posx - 20 + outPos, star4Tex.posy - 20 + outPos, star4Tex.x, star4Tex.y, star4Tex.w, star4Tex.h, "Assets.png") -- 4
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "Overlay.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "Overlay.png")
|
||||
func:SetOpacity(baseIn * math.sin(animeCounter)^2 * 255, "Assets.png") -- Glowing Stars
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(star1GlowTex.posx + 20 - outPos, star1GlowTex.posy + 20 - outPos, star1GlowTex.x, star1GlowTex.y, star1GlowTex.w, star1GlowTex.h, "Assets.png") -- 1
|
||||
func:DrawGraphRectCenter(star2GlowTex.posx - 20 + outPos, star2GlowTex.posy + 20 - outPos, star2GlowTex.x, star2GlowTex.y, star2GlowTex.w, star2GlowTex.h, "Assets.png") -- 2
|
||||
func:DrawGraphRectCenter(star3GlowTex.posx + 20 - outPos, star3GlowTex.posy - 20 + outPos, star3GlowTex.x, star3GlowTex.y, star3GlowTex.w, star3GlowTex.h, "Assets.png") -- 3
|
||||
func:DrawGraphRectCenter(star4GlowTex.posx - 20 + outPos, star4GlowTex.posy - 20 + outPos, star4GlowTex.x, star4GlowTex.y, star4GlowTex.w, star4GlowTex.h, "Assets.png") -- 4
|
||||
|
||||
func:SetOpacity(baseIn * 255, "Assets.png") -- Flower & Text
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerTex.posx, flowerTex.posy, flowerTex.x, flowerTex.y, flowerTex.w, flowerTex.h, "Assets.png") -- Flower
|
||||
func:DrawGraphRectCenter(textTex.posx, textTex.posy, textTex.x, textTex.y, textTex.w, textTex.h, "Assets.png") -- Text
|
||||
|
||||
func:DrawRectGraph(20 - outPos, 20 - outPos, 0, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, 20 - outPos, x, 0, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(20 - outPos, y - 20 + outPos, 0, y, x, y, "OverlayGlow.png")
|
||||
func:DrawRectGraph(x - 20 + outPos, y - 20 + outPos, x, y, x, y, "OverlayGlow.png")
|
||||
func:SetOpacity((glowIn - glowOut + flowerGlowProgress) * 255, "Assets.png") -- Glowing Flower
|
||||
func:SetScale(scale, scale, "Assets.png")
|
||||
func:DrawGraphRectCenter(flowerGlowTex.posx, flowerGlowTex.posy, flowerGlowTex.x, flowerGlowTex.y, flowerGlowTex.w, flowerGlowTex.h, "Assets.png")
|
||||
|
||||
func:DrawGraphCenter(x, y, "Base.png")
|
||||
func:DrawGraphCenter(x, y, "Text.png")
|
||||
func:DrawGraphCenter(x, y, "BaseGlow.png")
|
||||
func:SetOpacity(255, "Assets.png") -- Full Combo Text
|
||||
func:SetScale(1, 1, "Assets.png")
|
||||
func:DrawRectGraph(pfcTex.posx, pfcTex.posy, pfcTex.x, pfcTex.y, pfcTex.w * textProgress, pfcTex.h, "Assets.png")
|
||||
func:DrawRectGraph(pfcGlowTex.posx + (pfcGlowTex.w * textProgress), pfcGlowTex.posy, pfcGlowTex.x + (pfcGlowTex.w * textProgress), pfcGlowTex.y, pfcGlowTex.w * (textProgress - textProgress2), pfcGlowTex.h, "Assets.png")
|
||||
end
|
||||
|
Before Width: | Height: | Size: 150 KiB |
Before Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 32 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 272 KiB After Width: | Height: | Size: 272 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 315 KiB After Width: | Height: | Size: 315 KiB |
Before Width: | Height: | Size: 379 KiB After Width: | Height: | Size: 379 KiB |
Before Width: | Height: | Size: 282 KiB After Width: | Height: | Size: 282 KiB |
Before Width: | Height: | Size: 382 KiB After Width: | Height: | Size: 382 KiB |
Before Width: | Height: | Size: 398 KiB After Width: | Height: | Size: 398 KiB |
Before Width: | Height: | Size: 355 KiB After Width: | Height: | Size: 355 KiB |
Before Width: | Height: | Size: 334 KiB After Width: | Height: | Size: 334 KiB |
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 234 KiB |
Before Width: | Height: | Size: 236 KiB After Width: | Height: | Size: 236 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 237 KiB After Width: | Height: | Size: 237 KiB |
Before Width: | Height: | Size: 238 KiB After Width: | Height: | Size: 238 KiB |
Before Width: | Height: | Size: 239 KiB After Width: | Height: | Size: 239 KiB |
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 242 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 241 KiB After Width: | Height: | Size: 241 KiB |
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 234 KiB |
Before Width: | Height: | Size: 231 KiB After Width: | Height: | Size: 231 KiB |
Before Width: | Height: | Size: 231 KiB After Width: | Height: | Size: 231 KiB |
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 232 KiB |
Before Width: | Height: | Size: 229 KiB After Width: | Height: | Size: 229 KiB |
Before Width: | Height: | Size: 225 KiB After Width: | Height: | Size: 225 KiB |
Before Width: | Height: | Size: 226 KiB After Width: | Height: | Size: 226 KiB |
Before Width: | Height: | Size: 228 KiB After Width: | Height: | Size: 228 KiB |
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 223 KiB |
Before Width: | Height: | Size: 223 KiB After Width: | Height: | Size: 223 KiB |
Before Width: | Height: | Size: 227 KiB After Width: | Height: | Size: 227 KiB |
Before Width: | Height: | Size: 229 KiB After Width: | Height: | Size: 229 KiB |
Before Width: | Height: | Size: 233 KiB After Width: | Height: | Size: 233 KiB |
Before Width: | Height: | Size: 235 KiB After Width: | Height: | Size: 235 KiB |
Before Width: | Height: | Size: 242 KiB After Width: | Height: | Size: 242 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 243 KiB After Width: | Height: | Size: 243 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 54 KiB |