+ new particle ssytem & + green dot 1 and 2, blue ring, large rainbow ring and red ball particles back
This commit is contained in:
parent
a13fed652a
commit
ce407e6adf
|
@ -10,14 +10,14 @@ local enterFlarePinkImage = gfx.CreateSkinImage("gameplay/track_end/flares/pink_
|
||||||
local trackCompImage = gfx.CreateSkinImage("gameplay/track_end/track_comp.png", 0)
|
local trackCompImage = gfx.CreateSkinImage("gameplay/track_end/track_comp.png", 0)
|
||||||
local trackCompBlurImage = gfx.CreateSkinImage("gameplay/track_end/track_comp_blur.png", 0)
|
local trackCompBlurImage = gfx.CreateSkinImage("gameplay/track_end/track_comp_blur.png", 0)
|
||||||
|
|
||||||
local particleRedBall = gfx.CreateSkinImage("gameplay/track_end/particles/red_ball.png", 0)
|
-- new
|
||||||
local particleRedRing = gfx.CreateSkinImage("gameplay/track_end/particles/red_ring.png", 0)
|
local particleGreenDot1Image = gfx.CreateSkinImage("gameplay/track_end/particles/green_dot_1.png", 0)
|
||||||
local particleYellowRing = gfx.CreateSkinImage("gameplay/track_end/particles/yellow_ring.png", 0)
|
local particleGreenDot2Image = gfx.CreateSkinImage("gameplay/track_end/particles/green_dot_2.png", 0)
|
||||||
|
|
||||||
local particleSmallRainbowRing = gfx.CreateSkinImage("gameplay/track_end/particles/small_rainbow_ring.png", 0)
|
local particleBlueRingImage = gfx.CreateSkinImage("gameplay/track_end/particles/blue_ring.png", 0)
|
||||||
local particleSmYellowRingA = gfx.CreateSkinImage("gameplay/track_end/particles/small_yellow_ring_1.png", 0)
|
local particleLargeRainbowRingImage = gfx.CreateSkinImage("gameplay/track_end/particles/large_rainbow_ring.png", 0)
|
||||||
local particleSmYellowRingB = gfx.CreateSkinImage("gameplay/track_end/particles/small_yellow_ring_2.png", 0)
|
|
||||||
local particleSmYellowRingC = gfx.CreateSkinImage("gameplay/track_end/particles/small_yellow_ring_4.png", 0)
|
local particleRedBallImage = gfx.CreateSkinImage("gameplay/track_end/particles/red_ball.png", 0)
|
||||||
|
|
||||||
|
|
||||||
local outroTransitionScale = 0;
|
local outroTransitionScale = 0;
|
||||||
|
@ -28,12 +28,64 @@ local outroTransitionTextCutX = 0;
|
||||||
local outroTransitionTextAlpha = 1;
|
local outroTransitionTextAlpha = 1;
|
||||||
local outroTransitionTextBlurAlpha = 0;
|
local outroTransitionTextBlurAlpha = 0;
|
||||||
|
|
||||||
local outroTransitionParticleRedX = -500;
|
local particles = {
|
||||||
|
green_dot_one = {
|
||||||
|
texture = particleGreenDot1Image,
|
||||||
|
startX = 1280,
|
||||||
|
finishX = 380,
|
||||||
|
currentX = 1280,
|
||||||
|
yPos = 660,
|
||||||
|
width = 235*0.5,
|
||||||
|
height = 235*0.5,
|
||||||
|
startTime = 0.25,
|
||||||
|
duration = 0.6
|
||||||
|
},
|
||||||
|
green_dot_two = {
|
||||||
|
texture = particleGreenDot2Image,
|
||||||
|
startX = 1280,
|
||||||
|
finishX = 70,
|
||||||
|
currentX = 1280,
|
||||||
|
yPos = 610,
|
||||||
|
width = 128*0.5,
|
||||||
|
height = 128*0.5,
|
||||||
|
startTime = 0.25,
|
||||||
|
duration = 0.6
|
||||||
|
},
|
||||||
|
blue_ring = {
|
||||||
|
texture = particleBlueRingImage,
|
||||||
|
startX = 1280,
|
||||||
|
finishX = 65,
|
||||||
|
currentX = 1280,
|
||||||
|
yPos = 620,
|
||||||
|
width = 229*0.5,
|
||||||
|
height = 229*0.5,
|
||||||
|
startTime = 0.25,
|
||||||
|
duration = 0.6
|
||||||
|
},
|
||||||
|
large_rainbow_ring = { -- needs opacity and scale transitions
|
||||||
|
texture = particleLargeRainbowRingImage,
|
||||||
|
startX = (1080/2-(2160*0.675)/2),
|
||||||
|
finishX = (1080/2-(2160*0.675)/2),
|
||||||
|
currentX = (1080/2-(2160*0.675)/2),
|
||||||
|
yPos = (680-(2273*0.675)/2) + 100,
|
||||||
|
width = 2160*0.675,
|
||||||
|
height = 2273*0.675,
|
||||||
|
startTime = 0.25,
|
||||||
|
duration = 0.6
|
||||||
|
},
|
||||||
|
red_ball = { -- needs opacity transition
|
||||||
|
texture = particleRedBallImage,
|
||||||
|
startX = -150,
|
||||||
|
finishX = -150,
|
||||||
|
currentX = -150,
|
||||||
|
yPos = 500,
|
||||||
|
width = 787*0.5,
|
||||||
|
height = 818*0.5,
|
||||||
|
startTime = 0.25,
|
||||||
|
duration = 0.6
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
local outroTransitionParticleSmallRainbowX = 1080;
|
|
||||||
local outroTransitionParticleSmallYellowRingAX = 1080;
|
|
||||||
local outroTransitionParticleSmallYellowRingBX = 1080;
|
|
||||||
local outroTransitionParticleSmallYellowRingCX = 1080;
|
|
||||||
|
|
||||||
if (game.GetSkinSetting('audio_systemVoice')) then
|
if (game.GetSkinSetting('audio_systemVoice')) then
|
||||||
game.LoadSkinSample('gameplay/track_comp_rasis.wav');
|
game.LoadSkinSample('gameplay/track_comp_rasis.wav');
|
||||||
|
@ -66,27 +118,20 @@ local tickTransitions = function (deltaTime)
|
||||||
(outroTransitionScale-0.25)/0.2) -- Last from 0.25 transition scale for 0.2 transition scale, ending at 0.45 TS
|
(outroTransitionScale-0.25)/0.2) -- Last from 0.25 transition scale for 0.2 transition scale, ending at 0.45 TS
|
||||||
)
|
)
|
||||||
|
|
||||||
outroTransitionParticleRedX = math.min(1080+150, (
|
for particleName, particle in pairs(particles) do
|
||||||
particleTransitionScale*
|
if (outroTransitionScale < particle.startTime) then
|
||||||
(1080+150)
|
particle.currentX = particle.startX;
|
||||||
)-500);
|
elseif (outroTransitionScale >= particle.startTime + particle.duration) then
|
||||||
|
particle.currentX = particle.finishX;
|
||||||
|
else
|
||||||
|
local transScale = Easing.outQuad(math.min(1, (outroTransitionScale-particle.startTime)/particle.duration));
|
||||||
|
|
||||||
|
local xDiff = particle.finishX - particle.startX;
|
||||||
|
particle.currentX = particle.startX + xDiff*transScale;
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
outroTransitionParticleSmallRainbowX = math.max(-1080-250, (
|
|
||||||
particleTransitionScale*
|
|
||||||
(-1080-250)
|
|
||||||
)+1080);
|
|
||||||
outroTransitionParticleSmallYellowRingAX = math.max(-1080+0, (
|
|
||||||
particleTransitionScale*
|
|
||||||
(-1080+0)
|
|
||||||
)+1080);
|
|
||||||
outroTransitionParticleSmallYellowRingBX = math.max(-1080+250, (
|
|
||||||
particleTransitionScale*
|
|
||||||
(-1080+250)
|
|
||||||
)+1080);
|
|
||||||
outroTransitionParticleSmallYellowRingCX = math.max(-1080+200, (
|
|
||||||
particleTransitionScale*
|
|
||||||
(-1080+200)
|
|
||||||
)+1080);
|
|
||||||
|
|
||||||
-- if (outroTransitionScale > 0.45 and outroTransitionScale < 0.5) then
|
-- if (outroTransitionScale > 0.45 and outroTransitionScale < 0.5) then
|
||||||
-- if (outroTransitionScale <= 0.475) then
|
-- if (outroTransitionScale <= 0.475) then
|
||||||
|
@ -100,78 +145,92 @@ local tickTransitions = function (deltaTime)
|
||||||
end
|
end
|
||||||
|
|
||||||
local drawParticles = function ()
|
local drawParticles = function ()
|
||||||
|
for particleName, particle in pairs(particles) do
|
||||||
gfx.BeginPath();
|
gfx.BeginPath();
|
||||||
gfx.ImageRect(
|
gfx.ImageRect(
|
||||||
outroTransitionParticleRedX-80,
|
particle.currentX,
|
||||||
510-80,
|
particle.yPos,
|
||||||
787*0.7,
|
particle.width,
|
||||||
818*0.7,
|
particle.height,
|
||||||
particleYellowRing,
|
particle.texture,
|
||||||
1,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
gfx.BeginPath();
|
|
||||||
gfx.ImageRect(
|
|
||||||
outroTransitionParticleRedX,
|
|
||||||
510,
|
|
||||||
787*0.5,
|
|
||||||
818*0.5,
|
|
||||||
particleRedBall,
|
|
||||||
1,
|
|
||||||
0
|
|
||||||
);
|
|
||||||
gfx.BeginPath();
|
|
||||||
gfx.ImageRect(
|
|
||||||
outroTransitionParticleRedX,
|
|
||||||
510,
|
|
||||||
787*0.5,
|
|
||||||
818*0.5,
|
|
||||||
particleRedRing,
|
|
||||||
1,
|
1,
|
||||||
0
|
0
|
||||||
);
|
);
|
||||||
|
-- game.Log(particle.currentX, game.LOGGER_ERROR)
|
||||||
|
end
|
||||||
|
|
||||||
-- Right side
|
-- gfx.BeginPath();
|
||||||
gfx.BeginPath();
|
-- gfx.ImageRect(
|
||||||
gfx.ImageRect(
|
-- outroTransitionParticleRedX-80,
|
||||||
outroTransitionParticleSmallRainbowX,
|
-- 510-80,
|
||||||
465,
|
-- 787*0.7,
|
||||||
1117*0.5,
|
-- 818*0.7,
|
||||||
1117*0.5,
|
-- particleYellowRing,
|
||||||
particleSmallRainbowRing,
|
-- 1,
|
||||||
1,
|
-- 0
|
||||||
0
|
-- );
|
||||||
);
|
-- gfx.BeginPath();
|
||||||
gfx.BeginPath();
|
-- gfx.ImageRect(
|
||||||
gfx.ImageRect(
|
-- outroTransitionParticleRedX,
|
||||||
outroTransitionParticleSmallYellowRingAX,
|
-- 510,
|
||||||
575,
|
-- 787*0.5,
|
||||||
579*0.5,
|
-- 818*0.5,
|
||||||
557*0.5,
|
-- particleRedBall,
|
||||||
particleSmYellowRingA,
|
-- 1,
|
||||||
1,
|
-- 0
|
||||||
0
|
-- );
|
||||||
);
|
-- gfx.BeginPath();
|
||||||
gfx.BeginPath();
|
-- gfx.ImageRect(
|
||||||
gfx.ImageRect(
|
-- outroTransitionParticleRedX,
|
||||||
outroTransitionParticleSmallYellowRingBX,
|
-- 510,
|
||||||
585,
|
-- 787*0.5,
|
||||||
436*0.5,
|
-- 818*0.5,
|
||||||
392*0.5,
|
-- particleRedRing,
|
||||||
particleSmYellowRingB,
|
-- 1,
|
||||||
1,
|
-- 0
|
||||||
0
|
-- );
|
||||||
);
|
|
||||||
gfx.BeginPath();
|
-- -- Right side
|
||||||
gfx.ImageRect(
|
-- gfx.BeginPath();
|
||||||
outroTransitionParticleSmallYellowRingCX,
|
-- gfx.ImageRect(
|
||||||
625,
|
-- outroTransitionParticleSmallRainbowX,
|
||||||
275*0.5,
|
-- 465,
|
||||||
275*0.5,
|
-- 1117*0.5,
|
||||||
particleSmYellowRingC,
|
-- 1117*0.5,
|
||||||
1,
|
-- particleSmallRainbowRing,
|
||||||
0
|
-- 1,
|
||||||
);
|
-- 0
|
||||||
|
-- );
|
||||||
|
-- gfx.BeginPath();
|
||||||
|
-- gfx.ImageRect(
|
||||||
|
-- outroTransitionParticleSmallYellowRingAX,
|
||||||
|
-- 575,
|
||||||
|
-- 579*0.5,
|
||||||
|
-- 557*0.5,
|
||||||
|
-- particleSmYellowRingA,
|
||||||
|
-- 1,
|
||||||
|
-- 0
|
||||||
|
-- );
|
||||||
|
-- gfx.BeginPath();
|
||||||
|
-- gfx.ImageRect(
|
||||||
|
-- outroTransitionParticleSmallYellowRingBX,
|
||||||
|
-- 585,
|
||||||
|
-- 436*0.5,
|
||||||
|
-- 392*0.5,
|
||||||
|
-- particleSmYellowRingB,
|
||||||
|
-- 1,
|
||||||
|
-- 0
|
||||||
|
-- );
|
||||||
|
-- gfx.BeginPath();
|
||||||
|
-- gfx.ImageRect(
|
||||||
|
-- outroTransitionParticleSmallYellowRingCX,
|
||||||
|
-- 625,
|
||||||
|
-- 275*0.5,
|
||||||
|
-- 275*0.5,
|
||||||
|
-- particleSmYellowRingC,
|
||||||
|
-- 1,
|
||||||
|
-- 0
|
||||||
|
-- );
|
||||||
end
|
end
|
||||||
|
|
||||||
local handleSounds = function ()
|
local handleSounds = function ()
|
||||||
|
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
Loading…
Reference in New Issue