various theme things

This commit is contained in:
AJ Kelly
2010-02-20 16:44:59 -06:00
parent cbda9d7914
commit 051f224ff1
11 changed files with 254 additions and 58 deletions
+8
View File
@@ -9,6 +9,14 @@ Not all changes are documented, for various reasons.
supported but exist anyways.)
_____________________________________________________________________________
20100219
--------
* sm4svn r28313: don't filter NoteSkins at a PrefsManager/NoteSkinManager level.
Leave the NoteSkin sorting and filtering up to the theme. [Chris Danford]
* load lighting from ActorFrame xnodes (in addition to Lua commands)
* add Cancel command on ScreenWithMenuElements, so other things can react
to Screen cancel.
20100218
--------
* Added Fonts/ScreenReloadSongs LoadingText, making the text on
+5 -2
View File
@@ -154,8 +154,11 @@ Colors = {
Saturation(hInput)
Alpha(hInput)
HSV(iHue,fSaturation,fValue or any other overload) --]]
Alpha = function(cColor,fAlpha)
local c = cColor;
return { c[1],c[2],c[3],fAlpha };
end,
}
--[[ Fallbacks ]]
function Color(c)
return Colors[c];
@@ -164,7 +167,7 @@ end;
function BoostColor( cColor, fBoost )
local c = cColor;
return { c[1]*fBoost, c[2]*fBoost, c[3]*fBoost, c[4] };
end
end;
function ColorLightTone(c)
return { c[1]+(c[1]/2), c[2]+(c[2]/2), c[3]+(c[3]/2), c[4] };
@@ -39,11 +39,10 @@ function Actor:xy(actorX,actorY)
self:y(actorY);
end;
-- MaskSource()
-- Sets an actor up as the source for a mask.
-- todo: pass in a variable that states whether or not to clearzbuffer
function Actor:MaskSource()
self:clearzbuffer(true);
-- MaskSource([clearzbuffer])
-- Sets an actor up as the source for a mask. Clears zBuffer by default.
function Actor:MaskSource(_)
self:clearzbuffer(_ or true);
self:zwrite(true);
self:blend('BlendMode_NoEffect');
end;
@@ -130,8 +129,7 @@ end
--[[ end helper functions ]]
-- this code is in the public domain.
--[[ Lists & Functions (sm-ssc specific code) ]]
--[[ these should probably be moved into another file: ]]
function GameCompatibleModes()
sGame = GAMESTATE:GetCurrentGame():GetName();
local Modes = {
+176 -31
View File
@@ -1,3 +1,7 @@
# This probably is hard to understand from the way it was made in the first
# place, so instead just pay attention to each group, which has tons of
# notes
# 01 # Global
# 02 # Managers
# 03 # Singletons
@@ -8,52 +12,74 @@
# 01 #
[Global]
# This basically means that all other themes get information from this theme.
# It's really awesome for making mods n stuff
IsBaseTheme=1
[Common]
# How big the design of the theme is. for example, if a theme was designed for
# 1080p, it would be shrunken for 640x480, as well as that, if it was designed
# for 480p, it would be enlarged for bigger screens!
ScreenWidth=640
ScreenHeight=480
#
# Allows you to pick all available game modes for your gametype: for example,
# inserting enough coins for 1p would let you choose between solo, single
# and double before each game
AutoSetStyle=true
#
# Default modifiers and noteskin.
DefaultModifiers="1.5x"
DefaultNoteSkinName="default"
#
# Difficulties to show. Useful for custom games where you want to hide these.
DifficultiesToShow="beginner,easy,medium,hard,challenge"
# Same as above, but for courses.
CourseDifficultiesToShow="easy,medium,hard"
# Things to hide. You couldn't play cabinet nayways.
StepsTypesToHide="lights-cabinet"
#~ StepsTypesToHide="dance-couple,dance-solo,pump-halfdouble,lights-cabinet"
# Useless?
MaxCourseEntriesBeforeShowVarious=10
#
# Legacy metric: The first screen that shows up when you take forever to press
# start.
FirstAttractScreen="ScreenInit"
# First screen that pops up when you start the game. ScreenInit in particular
# shows the theme information before going to the title screen.
InitialScreen="ScreenInit"
# Screens that show over everything else. you shouldn't worry bout this, since
# it wont matter much.
OverlayScreens="ScreenSystemLayer,ScreenSyncOverlay,ScreenStatsOverlay,ScreenDebugOverlay"
#
# Legacy metric: Percentage Scoring shows this many decimals ( 00.00% ).
PercentScoreDecimalPlaces=2
#
# What should certain player-only elements do. we usually just color them to
# show who's stuff is who's. you'd best leave this alone too.
ColorP1Command=diffuse,PlayerColor(PLAYER_1)
ColorP2Command=diffuse,PlayerColor(PLAYER_2)
# 02 #
[LightsManager]
# Mostly useless since it doesn't work, as well as that barely anyone has
# lights to play around with.
GameButtonsToShow=""
LightEffectRiseSeconds=0.075
LightEffectFallOffSeconds=0.35
LightEffectPulseTime=0.100
[ProfileManager]
# I wouldn't change this either.
FixedProfiles=false
NumFixedProfiles=1
[SongManager]
# How many different colors you can have in the MusicWheel
NumSongGroupColors=10
NumCourseGroupColors=1
#
# Legacy metric: how difficult a song has to be for it to glow.
ExtraColorMeter=10
# The maximum difficulty a OMES stage can be.
ExtraStage2DifficultyMax=8
#
# Allow special colors for unlocks and 'preffered' sort
UseUnlockColor=false
UsePreferredSortColor=false
# Unlocks go at the end so they're easy to find.
MoveUnlocksToBottomOfPreferredSort=false
# Lots of themes want more than one group color, so let them have this.
SongGroupColor1=color("#00aeef") -- blue
@@ -66,16 +92,31 @@ SongGroupColor7=color("#00aeef") -- blue
SongGroupColor8=color("#00aeef") -- blue
SongGroupColor9=color("#00aeef") -- blue
SongGroupColor10=color("#00aeef") -- blue
CourseGroupColor1=color("1,1,1,1")
# Lots of themes want more than one course color, too
CourseGroupColor1=color("1,1,1,1") -- white
CourseGroupColor2=color("1,1,1,1") -- white
CourseGroupColor3=color("1,1,1,1") -- white
CourseGroupColor4=color("1,1,1,1") -- white
CourseGroupColor5=color("1,1,1,1") -- white
CourseGroupColor6=color("1,1,1,1") -- white
CourseGroupColor7=color("1,1,1,1") -- white
CourseGroupColor8=color("1,1,1,1") -- white
CourseGroupColor9=color("1,1,1,1") -- white
CourseGroupColor10=color("1,1,1,1") -- white
# as they say.
UnlockColor=color("1,0.5,0,1")
ExtraColor=color("#ff0000") -- red
[UnlockManager]
# Unlock specific things. we'll go in-depth with this one day, but it really
# isnt what sm-ssc was designed for.
AutoLockChallengeSteps=false
UnlockNames=""
# 03 #
[ArrowEffects]
# Complicated stuff you probably shouldnt ever mess with or else you'll
# destroy mods completely!
FrameWidthEffectsPixelsPerSecond=400
FrameWidthEffectsMinMultiplier=0.5
FrameWidthEffectsMaxMultiplier=1.2
@@ -84,7 +125,8 @@ FrameWidthLockEffectsTweenPixels=25
ArrowSpacing=64
[Background]
#
# Background stuff. again, its usually a better idea to leave this alone
# unless you truly need to change it, in which case you'd know what it does.
ShowDancingCharacters=true
UseStaticBackground=true
#
@@ -96,10 +138,12 @@ TopEdge=SCREEN_TOP
BottomEdge=SCREEN_BOTTOM
[Banner]
# Scroll stuff when you roll over it, DDR Extreme style.
ScrollRandom=false
ScrollRoulette=false
[BitmapText]
# The colors in the 'roulette' text. you can have alot!
NumRainbowColors=7
RainbowColor1=color("1.0,1.0,1.0,1") -- red
RainbowColor2=color("0.8,0.2,0.6,1") -- pink
@@ -110,18 +154,28 @@ RainbowColor6=color("0.2,0.8,0.4,1") -- green
RainbowColor7=color("1.0,0.8,0.2,1") -- orange
[BPMDisplay]
# Various commands for the BPMDisplay, ranging from no bpm, a non changing bpm,
# a bpm that changes, one that is 'random' ( boss songs ) and when a song is
# an es/omes!
SetNoBpmCommand=diffusetopedge,color("#777777");diffusebottomedge,color("#666666")
SetNormalCommand=diffusetopedge,color("#fbfb57");diffusebottomedge,color("#fb9c57")
SetChangeCommand=diffusetopedge,color("#fb9c57");diffusebottomedge,color("#fb5757")
SetRandomCommand=diffusetopedge,color("#fb9c57");diffusebottomedge,color("#fb5757")
SetExtraCommand=diffusetopedge,color("#fb5757");diffusebottomedge,color("#9c4242")
# Determines if it shows both bpms ( 000-100 ) or cycles between the min and
# max.
Cycle=true
# Text when there is no BPM
NoBpmText="000"
RandomCycleSpeed=0.2 -- smaller numbers mean the bpm cycles faster
# How fast it cycles, smaller is faster
RandomCycleSpeed=0.2
# Seperator between both bpms ( 100-200 ).
Separator="-"
# ??? when it cycles.
ShowQMarksInRandomCycle=true
[CodeDetector]
# Codes on the MusicWheel that change stuff!
PrevSteps1="Up,Up"
PrevSteps2="MenuUp,MenuUp"
NextSteps1="Down,Down"
@@ -149,10 +203,12 @@ HoldNotes="Right,Left,Down,Up"
Mines=""
Dark=""
CancelAll="Left,Right,Left,Right,Left,Right,Left,Right"
# Codes on the title screen.
NextTheme="Left,Left,Left,Right,Right,Right,Left,Right"
NextTheme2="MenuLeft,MenuLeft,MenuLeft,MenuRight,MenuRight,MenuRight,MenuLeft,MenuRight"
NextAnnouncer="Left,Left,Right,Right,Left,Left,Right,Right"
NextAnnouncer2="MenuLeft,MenuLeft,MenuRight,MenuRight,MenuLeft,MenuLeft,MenuRight,MenuRight"
# Various.
NextBannerGroup="MenuUp,MenuRight,MenuRight"
NextBannerGroup2="MenuUp,MenuDown,MenuUp,MenuDown"
Hidden=""
@@ -163,35 +219,39 @@ CancelAllPlayerOptions="Left,Right,Left,Right,Left,Right"
BackInEventMode=""
[CombinedLifeMeterTug]
# We dont use it.
MeterWidth=0.0
MeterHeight=0.0
[Combo]
# System Direction
ShowComboAt=HitCombo()
ShowMissesAt=MissCombo()
# Shrink and Grow the combo, DDR Style
NumberMinZoom=0.8
NumberMaxZoom=1
NumberMaxZoomAt=100
# Things the combo does when you bang on it, and what the text does
PulseCommand=%function(self,param) self:stoptweening(); self:zoom(1.4*param.Zoom); self:linear(0.05); self:zoom(param.Zoom); end
NumberOnCommand=y,240-216-2;shadowlength,1;horizalign,right;vertalign,bottom;
LabelOnCommand=x,6;y,22;shadowlength,1;horizalign,left;vertalign,bottom
[HoldJudgment]
# !!! #
# System Direction
HoldJudgmentLetGoCommand=HoldJudgmentFail()
HoldJudgmentHeldCommand=HoldJudgmentPass()
[HelpDisplay]
# The help display on the menus, and what it does.
# How fast it changes between texts
TipShowTime=4
# The Command when its made
TipOnCommand=shadowlength,0;diffuseblink
[Judgment]
# New #
JudgmentOnCommand=
# !!! #
# Things the judgment does when you bang on it.
JudgmentW1Command=shadowlength,0;diffusealpha,1;zoom,1.3;linear,0.05;zoom,1;sleep,0.8;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0;glowblink;effectperiod,0.05;effectcolor1,1,1,1,0;effectcolor2,1,1,1,0.8
JudgmentW2Command=shadowlength,0;diffusealpha,1;zoom,1.3;linear,0.05;zoom,1;sleep,0.8;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0
JudgmentW3Command=shadowlength,0;diffusealpha,1;zoom,1.2;linear,0.05;zoom,1;sleep,0.8;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0;
@@ -200,8 +260,8 @@ JudgmentW5Command=shadowlength,0;diffusealpha,1;zoom,1.0;vibrate;effectmagnitude
JudgmentMissCommand=shadowlength,0;diffusealpha,1;zoom,1;y,-20;linear,0.8;y,20;sleep,0.8;linear,0.1;zoomy,0.5;zoomx,2;diffusealpha,0
[Protiming]
# Protiming isnt invented yet.
ProtimingOnCommand=y,24
ProtimingW1Command=
ProtimingW2Command=
ProtimingW3Command=
@@ -210,6 +270,7 @@ ProtimingW5Command=
ProtimingMissCommand=
[Course]
# What.. are these anyways?
SortPreferredColor=color("1,1,1,1") -- Preferred is both for when courses are in preferred sort, or are autogen
SortLevel1Color=color("1,0,0,1")
SortLevel2Color=color("1,1,0,1")
@@ -218,8 +279,12 @@ SortLevel4Color=color("1,1,0,1")
SortLevel5Color=color("0,1,0,1")
[CustomDifficulty]
# Custom system that lets you rename certain classes of difficulties to
# something else. Mostly for custom games and game emulation, PIU for example.
# The names of which
Names="DanceCoupleBeginner,DanceCoupleEasy,DanceCoupleMedium,DanceCoupleHard,DanceCoupleExpert"
#
# That get remapped to
DanceCoupleBeginnerStepsType="StepsType_Dance_Couple"
DanceCoupleBeginnerDifficulty="Difficulty_Beginner"
DanceCoupleBeginnerString="Beginner"
@@ -237,6 +302,9 @@ DanceCoupleExpertDifficulty="Difficulty_Expert"
DanceCoupleExpertString="Expert"
[CustomScoring]
# Custom scoring, usually good for custom games.
# Various tweakers
ComboAboveThresholdAddsToScoreBonus=0
ComboScoreBonusThreshold=50
ComboScoreBonusValue=+1000
@@ -246,7 +314,7 @@ ComboMultiplier=0.0
DoubleNoteScoreMultiplier=2.0
TripleNoteScoreMultiplier=3.0
QuadOrHigherNoteScoreMultiplier=4.0
# And what they award you
PointsW1=+50
PointsW2=+20
PointsW3=+10
@@ -260,49 +328,65 @@ PointsNone=0
PointsHoldHeld=+5
PointsHoldLetGo=-5
[DifficultyList]
# A list that shows difficulties in a song.
CapitalizeDifficultyNames=false
#
# How far away and how many items there are
ItemsSpacingY=40
NumShownItems=5
#
MoveCommand=decelerate,0.3
[FadingBanner]
# The banner on MusicWheel.
BannerOnCommand=
# When it loads
BannerFadeFromCachedCommand=diffusealpha,1;stoptweening;linear,0.25;diffusealpha,0
# When it loads into clarity
BannerFadeOffCommand=diffusealpha,1;stoptweening;linear,0.25;diffusealpha,0
# ?
BannerResetFadeCommand=diffusealpha,1
[Gameplay]
# todo: make some of these play nice with other gametypes
# System Direction
ComboIsPerRow=ComboPerRow()
MinScoreToContinueCombo=ComboContinue()
MinScoreToMaintainCombo=ComboMaintain()
# When you hit it, you know.
ToastyTriggersAt=250
[GameState]
# Default song and sort. these don't really matter
DefaultSong=""
DefaultSort="Group"
#
# How good of a grade you have to get to get an ES/OMES. Locked to an 'AA'
GradeTierForExtra1="Grade_Tier02"
GradeTierForExtra2="Grade_Tier02"
# and how difficult that song you go thas to be
MinDifficultyForExtra="Difficulty_Hard"
#
# System Direction
AreStagePlayerModsForced=AreStagePlayerModsForced
AreStageSongModsForced=AreStageSongModsForced
#
# Let players join while you play if they put in some coins
AllowLateJoin=true
# Various feats that you can earn
ProfileRecordFeats=true
CategoryRecordFeats=true
# Disallow bad names
UseNameBlacklist=false
# Alow OMES
AllowExtra2=true
#
# Don't let the player change difficulties on an ES/OMES
LockExtraStageSelection=true
[GrooveRadar]
# Polar graph that shows difficulty stuff in depth
# how thick the line is
EdgeWidth=2
# ?
LabelOnDelay=0
# How visible the middle is
CenterAlpha=0.25
# what to do with each players part of the graph
RadarValueMapP1OnCommand=diffuse,PlayerColor(PLAYER_1)
RadarValueMapP2OnCommand=diffuse,PlayerColor(PLAYER_2)
@@ -314,19 +398,31 @@ StartX=0
StartY=0
[HighScore]
# Default highscore name for no entries ( like how street fighter has ' CAP ' )
EmptyName="SSC!"
[Inventory]
# ?
ItemUseRateSeconds=0.0
[LifeMeterBar]
# The default life bar you see in gameplay
# Percentage in which the game starts yelling at you to stop sucking
DangerThreshold=0.2
# And how much it starts up at.
InitialValue=0.5
# And how much it takes to get ravin'
HotValue=1.0
# And how much there is to fill up ( only for debug )
LifeMultiplier=1.0
# How good you gotta hit it to keep it alive. ( W3 is 'Great' );
MinStayAlive="TapNoteScore_W3"
FlashHotOnNoteHit=false
MinScoreToFlash="TapNoteScore_W3"
# Freiza Hack. Ugh
# FlashHotOnNoteHit=false
# MinScoreToFlash="TapNoteScore_W3"
# How much it changes
LifePercentChangeW1=0.008
LifePercentChangeW2=0.008
LifePercentChangeW3=0.004
@@ -338,6 +434,8 @@ LifePercentChangeHeld=0.008
LifePercentChangeLetGo=-0.080
LifePercentChangeCheckpointMiss=-0.002
LifePercentChangeCheckpointHit=0.002
# And various positionings
UnderX=0
UnderY=0
DangerX=0
@@ -347,19 +445,24 @@ StreamY=0
OverX=0
OverY=0
[LifeMeterBattery]
# The bar that shows up in Oni mode.
# How long it flashes when you lose a life.
BatteryBlinkTime=1.2
#
# Where the batteries are
BatteryP1X=-92
BatteryP1Y=2
BatteryP2X=92
BatteryP2Y=2
#
# Where your live count is
NumLivesP1X=-92
NumLivesP1Y=0
NumLivesP2X=92
NumLivesP2Y=0
[LifeMeterBattery Percent]
# The percentage on the bar. I wouldn't even bother changing this, because I
# havent and I *made* this theme :\
Format=
PercentUseRemainder=false
ApplyScoreDisplayOptions=true
@@ -386,10 +489,15 @@ DancePointsP2OffCommand=
[LifeMeterTime]
# The Lifemeter that shows up when you're playing survival.
# When it starts telling you to stop sucking.
DangerThreshold=0.3
# How good it's filled up when you start
InitialValue=0.5
MeterWidth=0.0
MeterHeight=0.0
# How little there is to fill?
MinLifeTime=25.5
[LyricDisplay]
@@ -716,7 +824,7 @@ HoldJudgmentYStandard=-90
HoldJudgmentYReverse=90
BrightGhostComboThreshold=100
DrawDistanceBeforeTargetsPixels=400
DrawDistanceAfterTargetsPixels=-60
DrawDistanceAfterTargetsPixels=-128
TapJudgmentsUnderField=false
HoldJudgmentsUnderField=false
ComboUnderField=true
@@ -761,8 +869,44 @@ ApproachSeconds=1
[ScoreDisplayNormal]
FrameX=
FrameY=
FrameOnCommand=
FrameOffCommand=
TextX=
TextY=
TextOnCommand=
TextOffCommand=
[ScoreDisplayLifeTime]
FrameX=
FrameY=
FrameOnCommand=
FrameOffCommand=
#
TextX=
TextY=
TextOnCommand=
TextOffCommand=
#
TimeRemainingX=
TimeRemainingY=
TimeRemainingOnCommand=
TimeRemainingOffCommand=
#
DeltaSecondsOnCommand=
DeltaSecondsNoneCommand=
DeltaSecondsHitMineCommand=
DeltaSecondsAvoidMineCommand=
DeltaSecondsCheckpointMissCommand=
DeltaSecondsCheckpointHitCommand=
DeltaSecondsMissCommand=
DeltaSecondsW5Command=
DeltaSecondsW4Command=
DeltaSecondsW3Command=
DeltaSecondsW2Command=
DeltaSecondsW1Command=
DeltaSecondsLetGoCommand=
DeltaSecondsHeldCommand=
DeltaSecondsGainLifeCommand=
[ScoreDisplayPercentage Percent]
PercentP1X=0
@@ -1542,6 +1686,7 @@ NextSort2=
NextSort3=
NextSort4=
[StepsDisplay]
FrameX=0
FrameY=0
@@ -2555,7 +2700,7 @@ MinSecondsToStep=6.0
MinSecondsToMusic=2.0
MinSecondsToStepNextSong=2.0
MusicFadeOutSeconds=0.5
OutTransitionLength=2
OutTransitionLength=5
CourseTransitionLength=0.5
BeginFailedDelay=1.0
#
@@ -0,0 +1,6 @@
return Def.ActorFrame{
Def.Quad{
InitCommand=cmd(FullScreen;diffuse,color("0,0,0,0"));
OnCommand=cmd(linear,5;diffusealpha,1);
};
};
@@ -47,7 +47,8 @@ t[#t+1] = StandardDecorationFromFileOptional("BPMDisplay","BPMDisplay");
t[#t+1] = StandardDecorationFromFileOptional("BPMLabel","BPMLabel");
t[#t+1] = StandardDecorationFromFileOptional("SongTime","SongTime") .. {
SetCommand=function(self)
local curSelection, length = nil;
local curSelection = nil;
local length = 0.0;
if GAMESTATE:IsCourseMode() then
curSelection = GAMESTATE:GetCurrentCourse();
self:playcommand("Reset");
@@ -61,16 +62,17 @@ t[#t+1] = StandardDecorationFromFileOptional("SongTime","SongTime") .. {
self:playcommand("Reset");
if curSelection then
length = curSelection:MusicLengthSeconds();
if curSelection:IsLong() then
self:playcommand("Long");
elseif curSelection:IsMarathon() then
self:playcommand("Marathon");
else
self:playcommand("Reset");
end
else
length = 0.0;
end;
if curSelection:IsLong() then
self:playcommand("Long");
elseif curSelection:IsMarathon() then
self:playcommand("Marathon");
else
self:playcommand("Reset");
end
end;
end;
self:settext( SecondsToMSS(length) );
end;
@@ -99,8 +101,29 @@ if not GAMESTATE:IsCourseMode() then
end;
};
t[#t+1] = StandardDecorationFromFileOptional("StageDisplay","StageDisplay");
end;
if GAMESTATE:IsCourseMode() then
t[#t+1] = StandardDecorationFromFileOptional("NumCourseSongs","NumCourseSongs")..{
InitCommand=cmd(horizalign,right);
SetCommand=function(self)
local curSelection= nil;
local sAppend = "";
if GAMESTATE:IsCourseMode() then
curSelection = GAMESTATE:GetCurrentCourse();
if curSelection then
sAppend = (curSelection:GetEstimatedNumStages() == 1) and "Stage" or "Stages";
self:visible(true);
self:settext( curSelection:GetEstimatedNumStages() .. " " .. sAppend);
else
self:visible(false);
end;
else
self:visible(false);
end;
end;
CurrentCourseChangedMessageCommand=cmd(playcommand,"Set");
};
end
t[#t+1] = StandardDecorationFromFileOptional("SortOrder","SortOrderText") .. {
BeginCommand=cmd(playcommand,"Set");
SortOrderChangedMessageCommand=cmd(playcommand,"Set";);
@@ -5,7 +5,7 @@ t[#t+1] = Def.Quad {
t[#t+1] = Def.Sprite {
InitCommand=cmd(Center);
BeginCommand=function(self)
if not GAMESTATE:IsCourseMode() then
if GAMESTATE:GetCurrentSong() then
self:LoadBackground( GAMESTATE:GetCurrentSong():GetBackgroundPath() );
end;
end;
@@ -0,0 +1 @@
ScoreDisplayNormal frame
@@ -1,6 +1,6 @@
return Def.CourseContentsList {
MaxSongs = 4;
NumItemsToDraw = 8; -- Doesn't scroll anymore.
NumItemsToDraw = 8; -- xxx: Doesn't scroll anymore.
--[[ InitCommand=cmd(x,SCREEN_CENTER_X+160;y,SCREEN_CENTER_Y+91);
OnCommand=cmd(zoomy,0;bounceend,0.3;zoom,1);
OffCommand=cmd(zoomy,1;bouncebegin,0.3;zoomy,0); --]]
@@ -9,15 +9,15 @@ return Def.CourseContentsList {
SetCommand=function(self)
self:SetFromGameState();
self:SetCurrentAndDestinationItem(0);
self:SetLoop(false);
self:SetMask(270,44);
self:SetLoop(false);
self:SetMask(270,44);
end;
CurrentTrailP1ChangedMessageCommand=cmd(playcommand,"Set");
CurrentTrailP2ChangedMessageCommand=cmd(playcommand,"Set");
Display = Def.ActorFrame {
InitCommand=cmd(setsize,270,44);
LoadActor(THEME:GetPathG("CourseEntryDisplay","bar")) .. {
SetSongCommand=function(self, params)
if params.Song then
@@ -27,7 +27,7 @@ return Def.CourseContentsList {
self:diffuse( color("#FFFFFF") );
self:diffuseleftedge( Colors.CourseDifficultyColors[params.Difficulty] );
end
(cmd(finishtweening;diffusealpha,0;sleep,0.125*params.Number;linear,0.125;diffusealpha,1;linear,0.05;glow,color("1,1,1,0.5");decelerate,0.1;glow,color("1,1,1,0")))(self);
end;
};
@@ -53,7 +53,7 @@ return Def.CourseContentsList {
InitCommand=cmd(x,-114-8;y,-12;shadowlength,1);
SetSongCommand=function(self, params)
self:settext(string.format("#%i", params.Number));
(cmd(finishtweening;zoom,0.5;zoomy,0.5*1.5;diffusealpha,0;sleep,0.125*params.Number;linear,0.125;diffusealpha,1;linear,0.05;zoomy,0.5*1;zoomx,0.5*1.1;glow,color("1,1,1,0.5");decelerate,0.1;zoom,0.5;glow,color("1,1,1,0")))(self);
end;
};
@@ -81,6 +81,5 @@ return Def.CourseContentsList {
SetSongCommand=function(self, params) self:settext(params.Modifiers); end;
}; --]]
};
};
@@ -0,0 +1,2 @@
return LoadFont("Common Normal") .. {
};
+12 -1
View File
@@ -43,7 +43,7 @@ LabelOnCommand=x,6;y,22;shadowlength,1;horizalign,left;vertalign,bottom
[FadingBanner]
BannerOnCommand=
BannerFadeFromCachedCommand=diffusealpha,1;stoptweening;accelerate,0.05;glow,Color("White");decelerate,0.175;diffusealpha,0;glow,Color("Invisible");
BannerFadeFromCachedCommand=diffusealpha,1;stoptweening;accelerate,0.05;glow,Colors.Alpha( Color("White"), 0.45 );decelerate,0.175;diffusealpha,0;glow,Color("Invisible");
BannerFadeOffCommand=diffusealpha,1;stoptweening;linear,0.25;diffusealpha,0
BannerResetFadeCommand=diffusealpha,1
@@ -897,6 +897,7 @@ SongTimeY=SCREEN_TOP+160+(36/2)+8
SongTimeOnCommand=zoom,0.75;strokecolor,Color("Outline");shadowlength,1
SongTimeOffCommand=bouncebegin,0.15;zoom,0;diffusealpha,0;
SongTimeResetCommand=diffuse,Color("White");
SongTimeAutogenCommand=diffuse,Color("Green");
SongTimeLongCommand=diffusebottomedge,Color("Blue");
SongTimeMarathonCommand=diffuse,Color("Yellow");diffusebottomedge,Color("Orange");
#
@@ -960,6 +961,12 @@ CourseContentsListY=SCREEN_TOP+216+6
CourseContentsListOnCommand=addx,-SCREEN_CENTER_X;decelerate,0.35;addx,SCREEN_CENTER_X
CourseContentsListOffCommand=bouncebegin,0.15;zoomx,0;
#
ShowNumCourseSongs=false
NumCourseSongsX=SCREEN_CENTER_X-160+128
NumCourseSongsY=SCREEN_TOP+160+(36/2)+8
NumCourseSongsOnCommand=zoom,0.75;strokecolor,Color("Outline");shadowlength,1
NumCourseSongsOffCommand=bouncebegin,0.15;zoom,0;diffusealpha,0;
#
ShowSongOptions=true
SongOptionsX=SCREEN_CENTER_X
SongOptionsY=SCREEN_CENTER_Y
@@ -1032,6 +1039,10 @@ DefaultSort="Nonstop"
#
ShowDifficultyList=false
ShowCourseContentsList=true
ShowNumCourseSongs=true
#
UsePlayerSelectMenu=false
SelectMenuAvailable=false
[ScreenNetSelectMusic]
StepsDisplayP1X=SCREEN_CENTER_X-240