54 lines
1.4 KiB
Lua
54 lines
1.4 KiB
Lua
local c;
|
|
local player = Var "Player";
|
|
|
|
local JudgeCmds = {
|
|
TapNoteScore_W1 = THEME:GetMetric( "Judgment", "JudgmentW1Command" );
|
|
TapNoteScore_W2 = THEME:GetMetric( "Judgment", "JudgmentW2Command" );
|
|
TapNoteScore_W3 = THEME:GetMetric( "Judgment", "JudgmentW3Command" );
|
|
TapNoteScore_W4 = THEME:GetMetric( "Judgment", "JudgmentW4Command" );
|
|
TapNoteScore_W5 = THEME:GetMetric( "Judgment", "JudgmentW5Command" );
|
|
TapNoteScore_Miss = THEME:GetMetric( "Judgment", "JudgmentMissCommand" );
|
|
};
|
|
|
|
local TNSFrames = {
|
|
TapNoteScore_W1 = 0;
|
|
TapNoteScore_W2 = 1;
|
|
TapNoteScore_W3 = 2;
|
|
TapNoteScore_W4 = 3;
|
|
TapNoteScore_W5 = 4;
|
|
TapNoteScore_Miss = 5;
|
|
};
|
|
|
|
local t = Def.ActorFrame {
|
|
LoadActor("_judgments") .. {
|
|
Name="Judgment";
|
|
InitCommand=cmd(pause;visible,false);
|
|
ResetCommand=cmd(finishtweening;x,0;y,0;stopeffect;visible,false);
|
|
};
|
|
InitCommand = function(self)
|
|
c = self:GetChildren();
|
|
end;
|
|
|
|
JudgmentMessageCommand=function(self, param)
|
|
if param.Player ~= player then return end;
|
|
if param.HoldNoteScore then return end;
|
|
|
|
local iNumStates = c.Judgment:GetNumStates();
|
|
local iFrame = TNSFrames[param.TapNoteScore];
|
|
if not iFrame then return end
|
|
if iNumStates == 12 then
|
|
iFrame = iFrame * 2;
|
|
if not param.Early then
|
|
iFrame = iFrame + 1;
|
|
end
|
|
end
|
|
self:playcommand("Reset");
|
|
|
|
c.Judgment:visible( true );
|
|
c.Judgment:setstate( iFrame );
|
|
JudgeCmds[param.TapNoteScore](c.Judgment);
|
|
end;
|
|
};
|
|
|
|
return t;
|