diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/_particleLoader.lua b/Themes/default/BGAnimations/ScreenWithMenuElements background/_particleLoader.lua new file mode 100644 index 0000000000..ac142b1ad2 --- /dev/null +++ b/Themes/default/BGAnimations/ScreenWithMenuElements background/_particleLoader.lua @@ -0,0 +1,72 @@ +local Params = { + NumParticles = 80, + VelocityXMin = 100, + VelocityXMax = 400, + VelocityYMin = 0, + VelocityYMax = 0, + VelocityZMin = 0, + VelocityZMax = 0, + BobRateZMin = 0.4, + BobRateZMax = 0.7, + ZoomMin = 0.5, + ZoomMax = 1, + SpinZ = 0, + BobZ = 52, + File = "_particle normal", +}; + +local t = Def.ActorFrame{}; + +local tParticleInfo = {} + +for i=1,Params.NumParticles do + tParticleInfo[i] = { + X = math.random(Params.VelocityXMin, Params.VelocityXMax), + Y = math.random(Params.VelocityYMin, Params.VelocityYMax), + Z = math.random(Params.VelocityZMin, Params.VelocityZMax), + Zoom = math.random(Params.ZoomMin*1000,Params.ZoomMax*1000) / 1000, + BobZRate = math.random(Params.BobRateZMin*1000,Params.BobRateZMax*1000) / 1000, + Age = 0, + }; + t[#t+1] = LoadActor( Params.File )..{ + Name="Particle"..i; + InitCommand=function(self) + self:basezoom(tParticleInfo[i].Zoom); + self:x(math.random(SCREEN_LEFT+(self:GetWidth()/2),SCREEN_RIGHT-(self:GetWidth()/2))); + self:y(math.random(SCREEN_TOP+(self:GetHeight()/2),SCREEN_BOTTOM-(self:GetHeight()/2))); +-- self:z(math.random(-64,0)); + end; + OnCommand=cmd(diffuse,ColorLightTone(color("#ffd400"));diffusealpha,0.8); + }; +end + +local function UpdateParticles(self,DeltaTime) + tParticles = self:GetChildren(); + for i=1, Params.NumParticles do + local p = tParticles["Particle"..i]; + local vX = tParticleInfo[i].X; + local vY = tParticleInfo[i].Y; + local vZ = tParticleInfo[i].Z; + tParticleInfo[i].Age = tParticleInfo[i].Age + DeltaTime; + p:x(p:GetX() + (vX * DeltaTime)); + p:y(p:GetY() + (vY * DeltaTime)); + p:z(p:GetZ() + (vZ * DeltaTime)); +-- p:zoom( 1 + math.cos( +-- (tParticleInfo[i].Age * math.pi*2) +-- ) * 0.125 ); + if p:GetX() > SCREEN_RIGHT + (p:GetWidth()/2 - p:GetZ()) then + p:x(SCREEN_LEFT - (p:GetWidth()/2)); + elseif p:GetX() < SCREEN_LEFT - (p:GetWidth()/2 - p:GetZ()) then + p:x(SCREEN_RIGHT + (p:GetWidth()/2)); + end + if p:GetY() > SCREEN_BOTTOM + (p:GetHeight()/2 - p:GetZ()) then + p:y(SCREEN_TOP - (p:GetHeight()/2)); + elseif p:GetY() < SCREEN_TOP - (p:GetHeight()/2 - p:GetZ()) then + p:y(SCREEN_BOTTOM + (p:GetHeight()/2)); + end + end; +end; + +t.InitCommand = cmd(fov,90;SetUpdateFunction,UpdateParticles); + +return t; diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/_particles/1 ParticlesFloatUp.png b/Themes/default/BGAnimations/ScreenWithMenuElements background/_particles/1 ParticlesFloatUp.png deleted file mode 100644 index dfbdda9d56..0000000000 Binary files a/Themes/default/BGAnimations/ScreenWithMenuElements background/_particles/1 ParticlesFloatUp.png and /dev/null differ diff --git a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua index b7eff20bac..1068252b85 100644 --- a/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua +++ b/Themes/default/BGAnimations/ScreenWithMenuElements background/default.lua @@ -7,6 +7,9 @@ t[#t+1] = Def.ActorFrame { InitCommand=cmd(scaletoclipped,SCREEN_WIDTH,SCREEN_HEIGHT); OnCommand=cmd(diffuse,color("#FFCB05");diffusebottomedge,color("#F0BA00")); }; + LoadActor("_particleLoader") .. { + InitCommand=cmd(x,-SCREEN_CENTER_X;y,-SCREEN_CENTER_Y); + }; --[[ LoadActor("_particles") .. { InitCommand=cmd(x,-SCREEN_CENTER_X;y,-SCREEN_CENTER_Y); }; --]] diff --git a/Themes/default/Graphics/Player judgment/default.lua b/Themes/default/Graphics/Player judgment/default.lua index bd03507f6e..d56628f5f4 100644 --- a/Themes/default/Graphics/Player judgment/default.lua +++ b/Themes/default/Graphics/Player judgment/default.lua @@ -139,7 +139,7 @@ t[#t+1] = Def.ActorFrame { JudgeCmds[param.TapNoteScore](c.Judgment); c.ProtimingDisplay:visible( bShowProtiming ); - c.ProtimingDisplay:settextf("%i%%",clamp(100 - math.floor(fTapNoteOffset * 1000) ,-100,100)); + c.ProtimingDisplay:settextf("%i",math.abs(fTapNoteOffset * 1000)); ProtimingCmds[param.TapNoteScore](c.ProtimingDisplay); c.ProtimingAverage:visible( bShowProtiming ); diff --git a/Themes/default/Graphics/ScreenTitleMenu TimingDifficulty.lua b/Themes/default/Graphics/ScreenTitleMenu TimingDifficulty.lua index a705c86e76..ff86920f41 100644 --- a/Themes/default/Graphics/ScreenTitleMenu TimingDifficulty.lua +++ b/Themes/default/Graphics/ScreenTitleMenu TimingDifficulty.lua @@ -27,7 +27,7 @@ return Def.ActorFrame { InitCommand=cmd(x,72*0.75;zoom,0.875); OnCommand=function(self) (cmd(shadowlength,1;skewx,-0.125))(self); - if GetTimingDifficulty() == 7 then + if GetTimingDifficulty() == 9 then self:settext("Justice"); (cmd(zoom,0.5;diffuse,ColorLightTone( Color("Orange")) ))(self); else diff --git a/Themes/default/metrics.ini b/Themes/default/metrics.ini index 969cb912f4..3630c91878 100644 --- a/Themes/default/metrics.ini +++ b/Themes/default/metrics.ini @@ -1191,7 +1191,7 @@ CDTitleX=SCREEN_CENTER_X-160+90 CDTitleY=SCREEN_TOP+160+(36/2)+8 CDTitleFrontCommand=visible,false CDTitleBackCommand= -CDTitleOnCommand=zoom,0.75;diffusealpha,0.7;zoom,0;bounceend,0.35;zoom,0.75 +CDTitleOnCommand=draworder,106;zoom,0.75;diffusealpha,0.7;zoom,0;bounceend,0.35;zoom,0.75 CDTitleOffCommand=bouncebegin,0.15;zoomx,0; # ScoreFrameP1X=