split the old "midi" noteskin into midi-note (formerly "midi") and midi-solo. [Midiman]
|
Before Width: | Height: | Size: 262 B After Width: | Height: | Size: 262 B |
|
Before Width: | Height: | Size: 264 B After Width: | Height: | Size: 264 B |
|
Before Width: | Height: | Size: 863 B After Width: | Height: | Size: 863 B |
|
Before Width: | Height: | Size: 835 B After Width: | Height: | Size: 835 B |
|
Before Width: | Height: | Size: 293 B After Width: | Height: | Size: 293 B |
|
Before Width: | Height: | Size: 273 B After Width: | Height: | Size: 273 B |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 332 B After Width: | Height: | Size: 332 B |
|
Before Width: | Height: | Size: 328 B After Width: | Height: | Size: 328 B |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
@@ -2,4 +2,7 @@ return Def.Sprite {
|
|||||||
Texture=NOTESKIN:GetPath( '_down', 'tap note' );
|
Texture=NOTESKIN:GetPath( '_down', 'tap note' );
|
||||||
Frames = Sprite.LinearFrames( 8, 1 );
|
Frames = Sprite.LinearFrames( 8, 1 );
|
||||||
InitCommand=cmd(setstate,2);
|
InitCommand=cmd(setstate,2);
|
||||||
|
DrawTapNoteMessageCommand=function(self,parent)
|
||||||
|
parent:spin();
|
||||||
|
end;
|
||||||
};
|
};
|
||||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 113 KiB |
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 262 B |
|
After Width: | Height: | Size: 264 B |
|
After Width: | Height: | Size: 863 B |
|
After Width: | Height: | Size: 835 B |
@@ -0,0 +1 @@
|
|||||||
|
Down Tap Explosion Bright
|
||||||
|
After Width: | Height: | Size: 293 B |
|
After Width: | Height: | Size: 273 B |
@@ -0,0 +1,26 @@
|
|||||||
|
local t = Def.ActorFrame {
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap Receptor' );
|
||||||
|
Frame0000=0;
|
||||||
|
Delay0000=1;
|
||||||
|
InitCommand=NOTESKIN:GetMetricA('ReceptorArrow', 'InitCommand');
|
||||||
|
NoneCommand=NOTESKIN:GetMetricA('ReceptorArrow', 'NoneCommand');
|
||||||
|
};
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap Receptor' );
|
||||||
|
Frame0000=0;
|
||||||
|
Delay0000=1;
|
||||||
|
InitCommand=NOTESKIN:GetMetricA('ReceptorArrowOverlay', 'InitCommand');
|
||||||
|
NoneCommand=NOTESKIN:GetMetricA('ReceptorArrowOverlay', 'NoneCommand');
|
||||||
|
};
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap Flash' );
|
||||||
|
Frame0000=0;
|
||||||
|
Delay0000=1;
|
||||||
|
InitCommand=NOTESKIN:GetMetricA('ReceptorOverlay', 'InitCommand');
|
||||||
|
PressCommand=NOTESKIN:GetMetricA('ReceptorOverlay', 'PressCommand');
|
||||||
|
LiftCommand=NOTESKIN:GetMetricA('ReceptorOverlay', 'LiftCommand');
|
||||||
|
NoneCommand=NOTESKIN:GetMetricA('ReceptorArrow', 'NoneCommand');
|
||||||
|
};
|
||||||
|
};
|
||||||
|
return t;
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 2.5 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
Down Tap Explosion Bright
|
||||||
|
After Width: | Height: | Size: 332 B |
|
After Width: | Height: | Size: 328 B |
|
After Width: | Height: | Size: 4.4 KiB |
@@ -0,0 +1 @@
|
|||||||
|
Down Tap Explosion Bright
|
||||||
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
local t = Def.ActorFrame {
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap mine' );
|
||||||
|
Frame0000=0;
|
||||||
|
Delay0000=1;
|
||||||
|
InitCommand=cmd(spin;effectclock,'beat';effectmagnitude,0,0,-180);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
return t;
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
return Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap note' );
|
||||||
|
Frames = Sprite.LinearFrames( 8, 1 );
|
||||||
|
InitCommand=cmd(setstate,2);
|
||||||
|
DrawTapNoteMessageCommand=function(self,parent)
|
||||||
|
parent:spin();
|
||||||
|
end;
|
||||||
|
};
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
-- Haggen Daze
|
||||||
|
|
||||||
|
local ret = ... or {};
|
||||||
|
|
||||||
|
ret.RedirTable =
|
||||||
|
{
|
||||||
|
Up = "Down",
|
||||||
|
Down = "Down",
|
||||||
|
Left = "Down",
|
||||||
|
Right = "Down",
|
||||||
|
UpLeft = "Down",
|
||||||
|
UpRight = "Down",
|
||||||
|
};
|
||||||
|
|
||||||
|
local OldRedir = ret.Redir;
|
||||||
|
ret.Redir = function(sButton, sElement)
|
||||||
|
sButton, sElement = OldRedir(sButton, sElement);
|
||||||
|
|
||||||
|
-- Instead of separate hold heads, use the tap note graphics.
|
||||||
|
if sElement == "Hold Head Inactive" or
|
||||||
|
sElement == "Hold Head Active" or
|
||||||
|
sElement == "Roll Head Inactive" or
|
||||||
|
sElement == "Roll Head Active"
|
||||||
|
then
|
||||||
|
sElement = "Tap Note";
|
||||||
|
end
|
||||||
|
|
||||||
|
sButton = ret.RedirTable[sButton];
|
||||||
|
|
||||||
|
return sButton, sElement;
|
||||||
|
end
|
||||||
|
|
||||||
|
-- To have separate graphics for each hold part:
|
||||||
|
--[[
|
||||||
|
local OldRedir = ret.Redir;
|
||||||
|
ret.Redir = function(sButton, sElement)
|
||||||
|
-- Redirect non-hold, non-roll parts.
|
||||||
|
if string.find(sElement, "hold") then
|
||||||
|
return sButton, sElement;
|
||||||
|
end
|
||||||
|
return OldRedir(sButton, sElement);
|
||||||
|
end
|
||||||
|
]]
|
||||||
|
|
||||||
|
local OldFunc = ret.Load;
|
||||||
|
function ret.Load()
|
||||||
|
local t = OldFunc();
|
||||||
|
|
||||||
|
-- The main "Explosion" part just loads other actors; don't rotate
|
||||||
|
-- it. The "Hold Explosion" part should not be rotated.
|
||||||
|
if Var "Element" == "Explosion" or
|
||||||
|
Var "Element" == "Roll Explosion" then
|
||||||
|
t.BaseRotationZ = nil;
|
||||||
|
end
|
||||||
|
return t;
|
||||||
|
end
|
||||||
|
|
||||||
|
ret.PartsToRotate =
|
||||||
|
{
|
||||||
|
["Receptor"] = true,
|
||||||
|
["Go Receptor"] = true,
|
||||||
|
["Ready Receptor"] = true,
|
||||||
|
["Tap Explosion Bright"] = true,
|
||||||
|
["Tap Explosion Dim"] = true,
|
||||||
|
["Tap Note"] = true,
|
||||||
|
["Tap Lift"] = true,
|
||||||
|
["Hold Head Active"] = true,
|
||||||
|
["Hold Head Inactive"] = true,
|
||||||
|
["Roll Head Active"] = true,
|
||||||
|
["Roll Head Inactive"] = true,
|
||||||
|
["Hold Explosion"] = true,
|
||||||
|
["Roll Explosion"] = true,
|
||||||
|
};
|
||||||
|
ret.Rotate =
|
||||||
|
{
|
||||||
|
Up = 180,
|
||||||
|
Down = 0,
|
||||||
|
Left = 90,
|
||||||
|
Right = -90,
|
||||||
|
UpLeft = 135,
|
||||||
|
UpRight = 225,
|
||||||
|
};
|
||||||
|
|
||||||
|
--
|
||||||
|
-- If a derived skin wants to have separate UpLeft graphics,
|
||||||
|
-- use this:
|
||||||
|
--
|
||||||
|
-- ret.RedirTable.UpLeft = "UpLeft";
|
||||||
|
-- ret.RedirTable.UpRight = "UpLeft";
|
||||||
|
-- ret.Rotate.UpLeft = 0;
|
||||||
|
-- ret.Rotate.UpRight = 90;
|
||||||
|
--
|
||||||
|
ret.Blank =
|
||||||
|
{
|
||||||
|
["Hold Topcap Active"] = true,
|
||||||
|
["Hold Topcap Inactive"] = true,
|
||||||
|
["Roll Topcap Active"] = true,
|
||||||
|
["Roll Topcap Inactive"] = true,
|
||||||
|
["Hold Tail Active"] = true,
|
||||||
|
["Hold Tail Inactive"] = true,
|
||||||
|
["Roll Tail Active"] = true,
|
||||||
|
["Roll Tail Inactive"] = true,
|
||||||
|
["Roll Explosion"] = true,
|
||||||
|
};
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
@@ -0,0 +1,81 @@
|
|||||||
|
[Global]
|
||||||
|
FallbackNoteSkin=default
|
||||||
|
|
||||||
|
[NoteDisplay]
|
||||||
|
TapNoteAnimationIsVivid=0
|
||||||
|
DrawHoldHeadForTapsOnSameRow=1
|
||||||
|
TapNoteAnimationLengthInBeats=4
|
||||||
|
TapAdditionAnimationLengthInBeats=4
|
||||||
|
TapMineAnimationLengthInBeats=1
|
||||||
|
TapLiftAnimationLengthInBeats=4
|
||||||
|
HoldHeadAnimationLengthInBeats=4 // doesn't matter. Only 1 frame anyway.
|
||||||
|
HoldTopCapAnimationLengthInBeats=4 // doesn't matter. Only 1 frame anyway.
|
||||||
|
HoldBottomCapAnimationLengthInBeats=4 // doesn't matter. Only 1 frame anyway.
|
||||||
|
HoldBodyAnimationLengthInBeats=4 // doesn't matter. Only 1 frame anyway.
|
||||||
|
HoldTailAnimationLengthInBeats=4 // doesn't matter. Only 1 frame anyway.
|
||||||
|
|
||||||
|
StartDrawingHoldBodyOffsetFromHead=0
|
||||||
|
StopDrawingHoldBodyOffsetFromTail=0
|
||||||
|
|
||||||
|
HoldLetGoGrayPercent=0.125
|
||||||
|
|
||||||
|
ReverseDrawOrder=1101
|
||||||
|
HoldHeadIsAboveWavyParts=1
|
||||||
|
HoldTailIsAboveWavyParts=1
|
||||||
|
TapNoteAdditionTextureCoordOffsetX=0
|
||||||
|
TapNoteAdditionTextureCoordOffsetY=0
|
||||||
|
FlipHeadAndTailWhenReverse=1
|
||||||
|
FlipHoldBodyWhenReverse=1
|
||||||
|
TopHoldAnchorWhenReverse=1
|
||||||
|
|
||||||
|
TapNoteNoteColorTextureCoordSpacingX=0
|
||||||
|
TapNoteNoteColorTextureCoordSpacingY=0.125
|
||||||
|
|
||||||
|
TapFakeNoteColorTextureCoordSpacingX=0
|
||||||
|
TapFakeNoteColorTextureCoordSpacingY=0.125
|
||||||
|
|
||||||
|
HoldHeadNoteColorTextureCoordSpacingX=0
|
||||||
|
HoldHeadNoteColorTextureCoordSpacingY=0.125
|
||||||
|
|
||||||
|
[GhostArrowDim]
|
||||||
|
NoneCommand=
|
||||||
|
HitMineCommand=blend,'BlendMode_Add';diffuse,1,1,1,0.875;zoom,1;rotationz,0;linear,0.3;rotationz,90;linear,0.3;rotationz,180;diffusealpha,0
|
||||||
|
MissCommand=blend,'BlendMode_Add';
|
||||||
|
W5Command=blend,'BlendMode_Add';diffuse,0.8,0.0,0.6,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W4Command=blend,'BlendMode_Add';diffuse,0.3,0.8,1.0,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W3Command=blend,'BlendMode_Add';diffuse,0.0,1.0,0.4,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W2Command=blend,'BlendMode_Add';diffuse,1.0,1.0,0.3,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W1Command=blend,'BlendMode_Add';diffuse,1.0,1.0,1.0,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
LetGoCommand=blend,'BlendMode_Add';
|
||||||
|
HeldCommand=blend,'BlendMode_Add';diffuse,1.0,1.0,0.3,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
|
||||||
|
[GhostArrowBright]
|
||||||
|
NoneCommand=blend,'BlendMode_Add';
|
||||||
|
HitMineCommand=blend,'BlendMode_Add';diffuse,1,1,1,0.875;zoom,1;rotationz,0;linear,0.3;rotationz,90;linear,0.3;rotationz,180;diffusealpha,0
|
||||||
|
MissCommand=blend,'BlendMode_Add';
|
||||||
|
W5Command=blend,'BlendMode_Add';diffuse,0.8,0.0,0.6,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W4Command=blend,'BlendMode_Add';diffuse,0.3,0.8,1.0,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W3Command=blend,'BlendMode_Add';diffuse,0.0,1.0,0.4,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W2Command=blend,'BlendMode_Add';diffuse,1.0,1.0,0.3,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
W1Command=blend,'BlendMode_Add';diffuse,1.0,1.0,1.0,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
LetGoCommand=blend,'BlendMode_Add';
|
||||||
|
HeldCommand=blend,'BlendMode_Add';diffuse,1.0,1.0,0.3,0.875;zoom,1;linear,0.06;zoom,1.1;linear,0.06;diffusealpha,0
|
||||||
|
|
||||||
|
[ReceptorArrow]
|
||||||
|
W3Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
W2Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
W1Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
InitCommand=
|
||||||
|
NoneCommand=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
PressCommand=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
[ReceptorArrowOverlay]
|
||||||
|
W3Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
W2Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
W1Command=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
InitCommand=blend,"BlendMode_Add";effectclock,"beat";diffuseramp;effectcolor1,color("1,1,1,0");effectcolor2,color("1,1,1,1");effecttiming,.2,0,.8,0;effectoffset,.05
|
||||||
|
NoneCommand=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
PressCommand=stoptweening;zoom,1.15;linear,0.12;zoom,1
|
||||||
|
[ReceptorOverlay]
|
||||||
|
InitCommand=diffusealpha,0;blend,"BlendMode_Add"
|
||||||
|
PressCommand=finishtweening;zoom,1.1;decelerate,0.12;zoom,1;diffusealpha,0.6;
|
||||||
|
LiftCommand=finishtweening;accelerate,0.12;diffusealpha,0;zoom,1.2
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
local t = Def.ActorFrame {
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap lift' );
|
||||||
|
InitCommand=cmd(diffusealpha,0.5);
|
||||||
|
};
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'tap lift' );
|
||||||
|
InitCommand=cmd(pulse;effectclock,"beat";effecttiming,0,0,0.75/2,0.25/2;effectmagnitude,1,1,1;effectcolor1,color("1,1,1,1");effectcolor2,color("1,1.25,1,1"));
|
||||||
|
};
|
||||||
|
Def.Sprite {
|
||||||
|
Texture=NOTESKIN:GetPath( '_down', 'lift fill' );
|
||||||
|
Frames = Sprite.LinearFrames( 4, 1 );
|
||||||
|
InitCommand=cmd(pulse;effectclock,"beat";effecttiming,0,0,0.75/4,0.25/4;effectmagnitude,1,1,1;effectcolor1,color("1,1,1,1");effectcolor2,color("1,1,1,1"));
|
||||||
|
};
|
||||||
|
};
|
||||||
|
return t;
|
||||||
|
Before Width: | Height: | Size: 2.7 KiB |