Files
itgmania212121/NoteSkins/beat/default/Fallback Explosion.lua
T
2011-03-17 01:47:30 -04:00

55 lines
2.0 KiB
Lua

local t = Def.ActorFrame { };
t[#t+1] = NOTESKIN:LoadActor( Var "Button", "Hold Explosion" ) .. {
HoldingOnCommand=cmd(visible,true);
HoldingOffCommand=cmd(visible,false);
InitCommand=cmd(visible,false;finishtweening;blend,"BlendMode_Add");
Frames = Sprite.LinearFrames(
NOTESKIN:GetMetricF( "GhostArrowDim", "HoldFrames" ),
NOTESKIN:GetMetricF( "GhostArrowDim", "HoldSeconds" ) );
};
t[#t+1] = NOTESKIN:LoadActor( Var "Button", "Roll Explosion" ) .. {
RollOnCommand=cmd(visible,true);
RollOffCommand=cmd(visible,false);
InitCommand=cmd(visible,false;finishtweening;blend,"BlendMode_Add");
Frames = Sprite.LinearFrames(
NOTESKIN:GetMetricF( "GhostArrowDim", "HoldFrames" ),
NOTESKIN:GetMetricF( "GhostArrowDim", "HoldSeconds" ) );
};
t[#t+1] = NOTESKIN:LoadActor( Var "Button", "Tap Explosion Dim" ) .. {
InitCommand=cmd(diffusealpha,0;blend,"BlendMode_Add");
HeldCommand=cmd(zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0);
ColumnJudgmentCommand=function(self, params)
if params.TapNoteScore == "TapNoteScore_HitMine" then return; end
(cmd(finishtweening;loop,0;diffusealpha,1;setstate,0;sleep,self:GetAnimationLengthSeconds()-0.001;diffusealpha,0))(self);
end;
Frames = Sprite.LinearFrames(
NOTESKIN:GetMetricF( "GhostArrowDim", "JudgmentFrames" ),
NOTESKIN:GetMetricF( "GhostArrowDim", "JudgmentSeconds" ) );
};
local mine = NOTESKIN:LoadActor( Var "Button", "HitMine Explosion" ) .. {
InitCommand=cmd(diffusealpha,0);
Frames = Sprite.LinearFrames(
NOTESKIN:GetMetricF( "GhostArrowDim", "MineFrames" ),
NOTESKIN:GetMetricF( "GhostArrowDim", "MineSeconds" ) );
};
local Next = "1";
t[#t+1] = Def.ActorFrame {
mine .. { Name="1"; };
mine .. { Name="2"; };
ColumnJudgmentCommand=function(self, params)
if params.TapNoteScore ~= "TapNoteScore_HitMine" then return; end
local c = self:GetChild(Next);
Next = Next == "1" and "2" or "1";
(cmd(stoptweening;setstate,0;diffusealpha,1;sleep,self:GetAnimationLengthSeconds()-0.001;diffusealpha,0))(c);
end;
};
return t;