[default -> sm130futures] Update the branch.
This commit is contained in:
@@ -15,6 +15,12 @@ sm-ssc $NEXTVERSION | 2011????
|
|||||||
It depends on who you ask.
|
It depends on who you ask.
|
||||||
It could be v1.2.5, it could be v1.3.0, it could even be StepMania 5.
|
It could be v1.2.5, it could be v1.3.0, it could even be StepMania 5.
|
||||||
|
|
||||||
|
20110402
|
||||||
|
--------
|
||||||
|
* Fix a crash (issue 247) when exiting Practice mode from dance-solo,
|
||||||
|
dance-threepanel, and popn-nine (all of which can only have one player).
|
||||||
|
If you find any other modes this crashes on, let us know. [AJ]
|
||||||
|
|
||||||
20110329
|
20110329
|
||||||
--------
|
--------
|
||||||
* [ScreenEdit] Changed sample playback button to L. [AJ]
|
* [ScreenEdit] Changed sample playback button to L. [AJ]
|
||||||
|
|||||||
@@ -64,6 +64,7 @@ OverlayScreens="ScreenSystemLayer,ScreenSyncOverlay,ScreenStatsOverlay,ScreenDeb
|
|||||||
PercentScoreDecimalPlaces=2
|
PercentScoreDecimalPlaces=2
|
||||||
|
|
||||||
# 02 #
|
# 02 #
|
||||||
|
|
||||||
[LightsManager]
|
[LightsManager]
|
||||||
# Mostly useless since it doesn't work, as well as that barely anyone has
|
# Mostly useless since it doesn't work, as well as that barely anyone has
|
||||||
# lights to play around with.
|
# lights to play around with.
|
||||||
@@ -128,6 +129,7 @@ AutoLockChallengeSteps=false
|
|||||||
UnlockNames=""
|
UnlockNames=""
|
||||||
|
|
||||||
# 03 #
|
# 03 #
|
||||||
|
|
||||||
[ArrowEffects]
|
[ArrowEffects]
|
||||||
# Complicated stuff you probably shouldn't ever mess with or else you'll
|
# Complicated stuff you probably shouldn't ever mess with or else you'll
|
||||||
# destroy mods completely!
|
# destroy mods completely!
|
||||||
@@ -233,6 +235,11 @@ FormatString="%03.0f"
|
|||||||
|
|
||||||
[CodeDetector]
|
[CodeDetector]
|
||||||
# Codes on the MusicWheel that change stuff!
|
# Codes on the MusicWheel that change stuff!
|
||||||
|
# For Future Reference:
|
||||||
|
# @ = Holding
|
||||||
|
# - = In Conjuction With / Then
|
||||||
|
# ~ = Released
|
||||||
|
# + = At The Same Time
|
||||||
PrevSteps1="Up,Up"
|
PrevSteps1="Up,Up"
|
||||||
PrevSteps2="MenuUp,MenuUp"
|
PrevSteps2="MenuUp,MenuUp"
|
||||||
NextSteps1="Down,Down"
|
NextSteps1="Down,Down"
|
||||||
@@ -279,6 +286,7 @@ SaveScreenshot1="MenuLeft-MenuRight"
|
|||||||
SaveScreenshot2=""
|
SaveScreenshot2=""
|
||||||
CancelAllPlayerOptions="Left,Right,Left,Right,Left,Right"
|
CancelAllPlayerOptions="Left,Right,Left,Right,Left,Right"
|
||||||
BackInEventMode=""
|
BackInEventMode=""
|
||||||
|
|
||||||
[CodeDetectorOnline]
|
[CodeDetectorOnline]
|
||||||
Fallback="CodeDetector"
|
Fallback="CodeDetector"
|
||||||
PrevSteps1="MenuUp,MenuUp"
|
PrevSteps1="MenuUp,MenuUp"
|
||||||
@@ -337,6 +345,7 @@ TipShowTime=4
|
|||||||
TipSwitchTime=1
|
TipSwitchTime=1
|
||||||
# The Command when its made
|
# The Command when its made
|
||||||
TipOnCommand=shadowlength,0;diffuseblink
|
TipOnCommand=shadowlength,0;diffuseblink
|
||||||
|
|
||||||
[Judgment]
|
[Judgment]
|
||||||
# New #
|
# New #
|
||||||
JudgmentOnCommand=
|
JudgmentOnCommand=
|
||||||
@@ -438,6 +447,7 @@ PumpRoutineString="Routine"
|
|||||||
# Difficulty_Edit-StepsType_Pump_Halfdouble=Edit
|
# Difficulty_Edit-StepsType_Pump_Halfdouble=Edit
|
||||||
# Difficulty_Edit-StepsType_Pump_Double=Edit
|
# Difficulty_Edit-StepsType_Pump_Double=Edit
|
||||||
# Course=Progressive
|
# Course=Progressive
|
||||||
|
|
||||||
[CustomScoring]
|
[CustomScoring]
|
||||||
# Custom scoring, usually good for custom games.
|
# Custom scoring, usually good for custom games.
|
||||||
|
|
||||||
@@ -464,6 +474,7 @@ PointsCheckpointMiss=-5
|
|||||||
PointsNone=0
|
PointsNone=0
|
||||||
PointsHoldHeld=+5
|
PointsHoldHeld=+5
|
||||||
PointsHoldLetGo=-5
|
PointsHoldLetGo=-5
|
||||||
|
|
||||||
[DifficultyList]
|
[DifficultyList]
|
||||||
# A list that shows difficulties in a song.
|
# A list that shows difficulties in a song.
|
||||||
CapitalizeDifficultyNames=false
|
CapitalizeDifficultyNames=false
|
||||||
@@ -585,6 +596,7 @@ StreamX=0
|
|||||||
StreamY=0
|
StreamY=0
|
||||||
OverX=0
|
OverX=0
|
||||||
OverY=0
|
OverY=0
|
||||||
|
|
||||||
[LifeMeterBattery]
|
[LifeMeterBattery]
|
||||||
# The bar that shows up in Oni mode.
|
# The bar that shows up in Oni mode.
|
||||||
|
|
||||||
@@ -627,7 +639,6 @@ DancePointsP2Y=0
|
|||||||
DancePointsP2OnCommand=zoom,0.7;shadowlength,0;diffuse,PlayerColor(PLAYER_2)
|
DancePointsP2OnCommand=zoom,0.7;shadowlength,0;diffuse,PlayerColor(PLAYER_2)
|
||||||
DancePointsP2OffCommand=
|
DancePointsP2OffCommand=
|
||||||
|
|
||||||
|
|
||||||
[LifeMeterTime]
|
[LifeMeterTime]
|
||||||
# The Lifemeter that shows up when you're playing survival.
|
# The Lifemeter that shows up when you're playing survival.
|
||||||
|
|
||||||
@@ -838,16 +849,19 @@ PortalColor=color("1,0,0,1")
|
|||||||
|
|
||||||
SortOrders={ "SortOrder_Preferred", "SortOrder_Group", "SortOrder_Title", "SortOrder_BPM", "SortOrder_Artist", "SortOrder_Genre" }
|
SortOrders={ "SortOrder_Preferred", "SortOrder_Group", "SortOrder_Title", "SortOrder_BPM", "SortOrder_Artist", "SortOrder_Genre" }
|
||||||
# SortOrders={ "SortOrder_Preferred", "SortOrder_Group", "SortOrder_Title", "SortOrder_BPM", "SortOrder_Popularity", "SortOrder_Artist", "SortOrder_Genre" }
|
# SortOrders={ "SortOrder_Preferred", "SortOrder_Group", "SortOrder_Title", "SortOrder_BPM", "SortOrder_Popularity", "SortOrder_Artist", "SortOrder_Genre" }
|
||||||
#
|
|
||||||
ShowRoulette=true
|
ShowRoulette=true
|
||||||
ShowRandom=false
|
ShowRandom=false
|
||||||
ShowPortal=false
|
ShowPortal=false
|
||||||
#
|
|
||||||
|
SortBPMDivision=20
|
||||||
|
SortLengthDivision=5
|
||||||
|
|
||||||
MostPlayedSongsToShow=30
|
MostPlayedSongsToShow=30
|
||||||
RecentSongsToShow=30
|
RecentSongsToShow=30
|
||||||
#
|
|
||||||
UseEasyMarkerFlag=false
|
UseEasyMarkerFlag=false
|
||||||
#
|
|
||||||
ModeMenuChoiceNames="Preferred,Group,Title,Bpm,Popularity,TopGrades,Artist,EasyMeter,MediumMeter,HardMeter,ChallengeMeter,DoubleEasyMeter,DoubleMediumMeter,DoubleHardMeter,DoubleChallengeMeter,Genre,Length,Recent"
|
ModeMenuChoiceNames="Preferred,Group,Title,Bpm,Popularity,TopGrades,Artist,EasyMeter,MediumMeter,HardMeter,ChallengeMeter,DoubleEasyMeter,DoubleMediumMeter,DoubleHardMeter,DoubleChallengeMeter,Genre,Length,Recent"
|
||||||
# ModeMenuChoiceNames="Preferred,Group,Title,Bpm,Popularity,TopGrades,Artist,EasyMeter,MediumMeter,HardMeter,ChallengeMeter,DoubleEasyMeter,DoubleMediumMeter,DoubleHardMeter,DoubleChallengeMeter,Genre,Length,Recent,NormalMode,BattleMode"
|
# ModeMenuChoiceNames="Preferred,Group,Title,Bpm,Popularity,TopGrades,Artist,EasyMeter,MediumMeter,HardMeter,ChallengeMeter,DoubleEasyMeter,DoubleMediumMeter,DoubleHardMeter,DoubleChallengeMeter,Genre,Length,Recent,NormalMode,BattleMode"
|
||||||
ChoicePreferred="sort,Preferred"
|
ChoicePreferred="sort,Preferred"
|
||||||
@@ -870,7 +884,7 @@ ChoiceLength="sort,Length"
|
|||||||
ChoiceRecent="sort,Recent"
|
ChoiceRecent="sort,Recent"
|
||||||
ChoiceNormalMode="playmode,regular"
|
ChoiceNormalMode="playmode,regular"
|
||||||
ChoiceBattleMode="playmode,battle"
|
ChoiceBattleMode="playmode,battle"
|
||||||
#
|
|
||||||
CustomWheelItemNames=""
|
CustomWheelItemNames=""
|
||||||
|
|
||||||
[CourseWheel]
|
[CourseWheel]
|
||||||
@@ -1098,7 +1112,6 @@ TextOffCommand=
|
|||||||
|
|
||||||
[ScoreDisplayOni]
|
[ScoreDisplayOni]
|
||||||
|
|
||||||
|
|
||||||
[ScoreDisplayLifeTime]
|
[ScoreDisplayLifeTime]
|
||||||
FrameX=
|
FrameX=
|
||||||
FrameY=
|
FrameY=
|
||||||
@@ -1248,6 +1261,7 @@ SoundProperty="Pitch"
|
|||||||
PropertyMin=7/8
|
PropertyMin=7/8
|
||||||
PropertyCenter=1.0
|
PropertyCenter=1.0
|
||||||
PropertyMax=9/8
|
PropertyMax=9/8
|
||||||
|
|
||||||
[StepsDisplayListRow]
|
[StepsDisplayListRow]
|
||||||
FrameX=0
|
FrameX=0
|
||||||
FrameY=0
|
FrameY=0
|
||||||
@@ -1324,6 +1338,7 @@ ShowTraining=false
|
|||||||
BlinkPlayersBest=true
|
BlinkPlayersBest=true
|
||||||
|
|
||||||
# 04 #
|
# 04 #
|
||||||
|
|
||||||
[Screen]
|
[Screen]
|
||||||
ScreenInitCommand=
|
ScreenInitCommand=
|
||||||
ScreenOnCommand=
|
ScreenOnCommand=
|
||||||
@@ -1374,6 +1389,7 @@ HeaderTextOffCommand=
|
|||||||
|
|
||||||
LineOnCommand=zoom,0.75
|
LineOnCommand=zoom,0.75
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenSystemLayer]
|
[ScreenSystemLayer]
|
||||||
Class="ScreenSystemLayer"
|
Class="ScreenSystemLayer"
|
||||||
Fallback="Screen"
|
Fallback="Screen"
|
||||||
@@ -1424,6 +1440,7 @@ Fallback="Screen"
|
|||||||
StatusOnCommand=x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y+150;shadowlength,2;strokecolor,color("#000000");
|
StatusOnCommand=x,SCREEN_CENTER_X;y,SCREEN_CENTER_Y+150;shadowlength,2;strokecolor,color("#000000");
|
||||||
AdjustmentsOnCommand=x,SCREEN_CENTER_X+160;y,SCREEN_CENTER_Y;
|
AdjustmentsOnCommand=x,SCREEN_CENTER_X+160;y,SCREEN_CENTER_Y;
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenStatsOverlay]
|
[ScreenStatsOverlay]
|
||||||
Class="ScreenStatsOverlay"
|
Class="ScreenStatsOverlay"
|
||||||
Fallback="Screen"
|
Fallback="Screen"
|
||||||
@@ -1437,6 +1454,7 @@ SkipOnCommand=zoom,0.5
|
|||||||
SkipWidth=190
|
SkipWidth=190
|
||||||
SkipSpacingY=14
|
SkipSpacingY=14
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenWithMenuElements]
|
[ScreenWithMenuElements]
|
||||||
Class="ScreenWithMenuElements"
|
Class="ScreenWithMenuElements"
|
||||||
Fallback="Screen"
|
Fallback="Screen"
|
||||||
@@ -1831,6 +1849,7 @@ PerChoiceIconElement=false
|
|||||||
ShowScroller=true
|
ShowScroller=true
|
||||||
WrapScroller=true
|
WrapScroller=true
|
||||||
ShowIcon=false
|
ShowIcon=false
|
||||||
|
|
||||||
[ScreenGameInformation]
|
[ScreenGameInformation]
|
||||||
Class="ScreenSelectMaster"
|
Class="ScreenSelectMaster"
|
||||||
Fallback="ScreenSelectMaster"
|
Fallback="ScreenSelectMaster"
|
||||||
@@ -1955,6 +1974,7 @@ ScreenModsCommand=setupcoursestagemods
|
|||||||
#
|
#
|
||||||
MusicWheelType="CourseWheel"
|
MusicWheelType="CourseWheel"
|
||||||
Codes="CourseCodeDetector"
|
Codes="CourseCodeDetector"
|
||||||
|
|
||||||
[CourseCodeDetector]
|
[CourseCodeDetector]
|
||||||
Fallback="CodeDetector"
|
Fallback="CodeDetector"
|
||||||
NextSort1=
|
NextSort1=
|
||||||
@@ -1962,7 +1982,6 @@ NextSort2=
|
|||||||
NextSort3=
|
NextSort3=
|
||||||
NextSort4=
|
NextSort4=
|
||||||
|
|
||||||
|
|
||||||
[StepsDisplay]
|
[StepsDisplay]
|
||||||
FrameX=0
|
FrameX=0
|
||||||
FrameY=0
|
FrameY=0
|
||||||
@@ -2516,6 +2535,7 @@ ExplanationTogetherOffCommand=
|
|||||||
|
|
||||||
[ScreenOptionsServiceExtendedChild]
|
[ScreenOptionsServiceExtendedChild]
|
||||||
Fallback="ScreenOptionsServiceChild"
|
Fallback="ScreenOptionsServiceChild"
|
||||||
|
|
||||||
[ScreenMiniMenu]
|
[ScreenMiniMenu]
|
||||||
Class="ScreenMiniMenu"
|
Class="ScreenMiniMenu"
|
||||||
Fallback="ScreenOptions"
|
Fallback="ScreenOptions"
|
||||||
@@ -2835,12 +2855,14 @@ Line16="list,Steps"
|
|||||||
Line17="list,Characters"
|
Line17="list,Characters"
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenPlayerOptionsRestricted]
|
[ScreenPlayerOptionsRestricted]
|
||||||
Fallback="ScreenPlayerOptions"
|
Fallback="ScreenPlayerOptions"
|
||||||
NextScreen="ScreenStageInformation"
|
NextScreen="ScreenStageInformation"
|
||||||
LineNames="1,8,16,17"
|
LineNames="1,8,16,17"
|
||||||
|
|
||||||
# funny
|
# funny
|
||||||
|
|
||||||
[ScreenSongOptions]
|
[ScreenSongOptions]
|
||||||
Fallback="ScreenOptions"
|
Fallback="ScreenOptions"
|
||||||
Class="ScreenSongOptions"
|
Class="ScreenSongOptions"
|
||||||
@@ -2875,6 +2897,7 @@ AllowStartToSkip=false
|
|||||||
PrepareScreen=
|
PrepareScreen=
|
||||||
|
|
||||||
# 05 # A
|
# 05 # A
|
||||||
|
|
||||||
[ScreenExit]
|
[ScreenExit]
|
||||||
# Midiman:
|
# Midiman:
|
||||||
# Fun fact, if you don't enable this screen, Force Crashing will hang
|
# Fun fact, if you don't enable this screen, Force Crashing will hang
|
||||||
@@ -3287,6 +3310,7 @@ DisqualifiedP2OffCommand=
|
|||||||
#
|
#
|
||||||
DetailLineFormat="%3d/%3d"
|
DetailLineFormat="%3d/%3d"
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenEvaluationNormal]
|
[ScreenEvaluationNormal]
|
||||||
Fallback="ScreenEvaluation"
|
Fallback="ScreenEvaluation"
|
||||||
#
|
#
|
||||||
@@ -3339,11 +3363,13 @@ NextScreen=Branch.AfterProfileSave()
|
|||||||
PrevScreen=Branch.TitleMenu()
|
PrevScreen=Branch.TitleMenu()
|
||||||
#
|
#
|
||||||
TimerSeconds=-1
|
TimerSeconds=-1
|
||||||
|
|
||||||
[ScreenProfileSaveSummary]
|
[ScreenProfileSaveSummary]
|
||||||
Fallback="ScreenProfileSave"
|
Fallback="ScreenProfileSave"
|
||||||
#
|
#
|
||||||
NextScreen="ScreenGameOver"
|
NextScreen="ScreenGameOver"
|
||||||
PrevScreen="ScreenGameOver"
|
PrevScreen="ScreenGameOver"
|
||||||
|
|
||||||
[ScreenGameOver]
|
[ScreenGameOver]
|
||||||
Class="ScreenEnding"
|
Class="ScreenEnding"
|
||||||
Fallback="ScreenAttract"
|
Fallback="ScreenAttract"
|
||||||
@@ -3406,6 +3432,7 @@ Answer3Of3OffCommand=
|
|||||||
#
|
#
|
||||||
# stuff for edit mode:
|
# stuff for edit mode:
|
||||||
#
|
#
|
||||||
|
|
||||||
[ScreenOptionsEdit]
|
[ScreenOptionsEdit]
|
||||||
Class="ScreenOptionsMaster"
|
Class="ScreenOptionsMaster"
|
||||||
Fallback="ScreenOptionsSimpleService"
|
Fallback="ScreenOptionsSimpleService"
|
||||||
@@ -3534,6 +3561,7 @@ TimerSeconds=-1
|
|||||||
HelpText=Screen.String("HelpTextOptionsAndBack")
|
HelpText=Screen.String("HelpTextOptionsAndBack")
|
||||||
|
|
||||||
# could use a redo but whatever
|
# could use a redo but whatever
|
||||||
|
|
||||||
[ScreenEdit]
|
[ScreenEdit]
|
||||||
Class="ScreenEdit"
|
Class="ScreenEdit"
|
||||||
Fallback="ScreenWithMenuElementsBlank"
|
Fallback="ScreenWithMenuElementsBlank"
|
||||||
@@ -3639,6 +3667,7 @@ OutCancelCommand=
|
|||||||
Fallback="StepsDisplay"
|
Fallback="StepsDisplay"
|
||||||
|
|
||||||
# oh, right, minimenus.
|
# oh, right, minimenus.
|
||||||
|
|
||||||
[ScreenMiniMenuEditHelp]
|
[ScreenMiniMenuEditHelp]
|
||||||
Fallback="ScreenMiniMenu"
|
Fallback="ScreenMiniMenu"
|
||||||
ShowFooter=false
|
ShowFooter=false
|
||||||
@@ -3700,6 +3729,7 @@ Fallback="ScreenMiniMenu"
|
|||||||
Fallback="ScreenMiniMenu"
|
Fallback="ScreenMiniMenu"
|
||||||
|
|
||||||
# Export Packages
|
# Export Packages
|
||||||
|
|
||||||
[ScreenOptionsExportPackage]
|
[ScreenOptionsExportPackage]
|
||||||
Class="ScreenOptionsExportPackage"
|
Class="ScreenOptionsExportPackage"
|
||||||
Fallback="ScreenOptionsSimpleService"
|
Fallback="ScreenOptionsSimpleService"
|
||||||
@@ -3717,6 +3747,7 @@ Fallback="OptionRowService"
|
|||||||
TitleX=SCREEN_CENTER_X-150
|
TitleX=SCREEN_CENTER_X-150
|
||||||
|
|
||||||
# Manage Courses
|
# Manage Courses
|
||||||
|
|
||||||
[OptionRowCourseOverview]
|
[OptionRowCourseOverview]
|
||||||
Fallback="OptionRowService"
|
Fallback="OptionRowService"
|
||||||
ItemsLongRowSharedX=SCREEN_CENTER_X-100
|
ItemsLongRowSharedX=SCREEN_CENTER_X-100
|
||||||
@@ -3765,6 +3796,7 @@ EditScreen="ScreenOptionsEditCourse"
|
|||||||
OptionRowNormalMetricsGroup="OptionRowCourseOverview"
|
OptionRowNormalMetricsGroup="OptionRowCourseOverview"
|
||||||
|
|
||||||
# visual/interactive syncing
|
# visual/interactive syncing
|
||||||
|
|
||||||
[ScreenGameplaySyncMachine]
|
[ScreenGameplaySyncMachine]
|
||||||
Class="ScreenGameplaySyncMachine"
|
Class="ScreenGameplaySyncMachine"
|
||||||
Fallback="ScreenGameplay"
|
Fallback="ScreenGameplay"
|
||||||
@@ -3794,6 +3826,7 @@ Fallback="Player"
|
|||||||
ComboOnCommand=visible,false
|
ComboOnCommand=visible,false
|
||||||
|
|
||||||
# sm-ssc helper screens
|
# sm-ssc helper screens
|
||||||
|
|
||||||
[ScreenHowToInstallSongs]
|
[ScreenHowToInstallSongs]
|
||||||
Class="ScreenSplash"
|
Class="ScreenSplash"
|
||||||
Fallback="ScreenSplash"
|
Fallback="ScreenSplash"
|
||||||
@@ -3804,6 +3837,7 @@ TimerSeconds=-1
|
|||||||
ShowHelp=false
|
ShowHelp=false
|
||||||
|
|
||||||
# stuff for online mode:
|
# stuff for online mode:
|
||||||
|
|
||||||
[ScreenSMOnlineLogin]
|
[ScreenSMOnlineLogin]
|
||||||
Class="ScreenSMOnlineLogin"
|
Class="ScreenSMOnlineLogin"
|
||||||
Fallback="ScreenOptionsServiceChild"
|
Fallback="ScreenOptionsServiceChild"
|
||||||
@@ -4048,6 +4082,7 @@ UserOnCommand=
|
|||||||
UserOffCommand=
|
UserOffCommand=
|
||||||
|
|
||||||
# Arcade
|
# Arcade
|
||||||
|
|
||||||
[ScreenLogo]
|
[ScreenLogo]
|
||||||
Fallback="ScreenAttract"
|
Fallback="ScreenAttract"
|
||||||
#
|
#
|
||||||
@@ -4111,6 +4146,7 @@ ChoiceNames="1"
|
|||||||
IdleCommentSeconds=-1
|
IdleCommentSeconds=-1
|
||||||
IdleTimeoutSeconds=-1
|
IdleTimeoutSeconds=-1
|
||||||
IdleTimeoutScreen=Branch.AfterInit()
|
IdleTimeoutScreen=Branch.AfterInit()
|
||||||
|
|
||||||
[ScreenDemonstration]
|
[ScreenDemonstration]
|
||||||
Fallback="ScreenGameplay"
|
Fallback="ScreenGameplay"
|
||||||
Class="ScreenDemonstration"
|
Class="ScreenDemonstration"
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
[Screen]
|
[Screen]
|
||||||
HelpText=&BACK; Exit &START; Select &SELECT; Options &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move
|
HelpText=&BACK; Exit &START; Select &SELECT; Options &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move
|
||||||
|
|
||||||
[ScreenWithMenuElements]
|
[ScreenWithMenuElements]
|
||||||
HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move
|
HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move
|
||||||
|
|
||||||
[ScreenTitleMenu]
|
[ScreenTitleMenu]
|
||||||
HelpText=&BACK; Exit &START; Select &MENUUP;&MENUDOWN; Move
|
HelpText=&BACK; Exit &START; Select &MENUUP;&MENUDOWN; Move
|
||||||
Network OK=Network OK
|
Network OK=Network OK
|
||||||
@@ -10,6 +12,7 @@ Connected to %s=Connected to %s
|
|||||||
CurrentGametype=Current Gametype: %s
|
CurrentGametype=Current Gametype: %s
|
||||||
LifeDifficulty=Life Difficulty: %s
|
LifeDifficulty=Life Difficulty: %s
|
||||||
TimingDifficulty=Timing Difficulty: %s
|
TimingDifficulty=Timing Difficulty: %s
|
||||||
|
|
||||||
[ScreenTitleJoin]
|
[ScreenTitleJoin]
|
||||||
HelpText=Press &START; to Play
|
HelpText=Press &START; to Play
|
||||||
HelpTextJoin=Press &START; to Play
|
HelpTextJoin=Press &START; to Play
|
||||||
@@ -19,16 +22,22 @@ JointPremiumMain=Joint Premium
|
|||||||
JointPremiumSecondary=Two players can play with one credit!
|
JointPremiumSecondary=Two players can play with one credit!
|
||||||
DoublesPremiumMain=Doubles Premium
|
DoublesPremiumMain=Doubles Premium
|
||||||
DoublesPremiumSecondary=Play doubles for one credit!
|
DoublesPremiumSecondary=Play doubles for one credit!
|
||||||
|
|
||||||
[ScreenDemonstration]
|
[ScreenDemonstration]
|
||||||
Demonstration=Demonstration
|
Demonstration=Demonstration
|
||||||
|
|
||||||
[ScreenQuickSetupOverview]
|
[ScreenQuickSetupOverview]
|
||||||
Explanation=Quick Setup provides a easy way to set commonly-changed and useful preferences.
|
Explanation=Quick Setup provides a easy way to set commonly-changed and useful preferences.
|
||||||
|
|
||||||
[ScreenProfileLoad]
|
[ScreenProfileLoad]
|
||||||
HelpText=... Loading profiles, please wait ...
|
HelpText=... Loading profiles, please wait ...
|
||||||
|
|
||||||
[ScreenSelectProfile]
|
[ScreenSelectProfile]
|
||||||
HelpText=&MENUUP;&MENUDOWN; Switch Profile &START; Choose/Join &BACK; Unselect
|
HelpText=&MENUUP;&MENUDOWN; Switch Profile &START; Choose/Join &BACK; Unselect
|
||||||
|
|
||||||
[ScreenSelectMaster]
|
[ScreenSelectMaster]
|
||||||
HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move
|
HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move
|
||||||
|
|
||||||
[ScreenSelectPlayMode]
|
[ScreenSelectPlayMode]
|
||||||
HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move
|
HelpText=&BACK; Exit &START; Select / Join &MENULEFT;&MENURIGHT; Move
|
||||||
EasyExplanation=A mode for beginners.
|
EasyExplanation=A mode for beginners.
|
||||||
@@ -39,31 +48,40 @@ RaveExplanation=Battle against friend or foe.
|
|||||||
ExtendedExplanation=Several Songs in a row
|
ExtendedExplanation=Several Songs in a row
|
||||||
OniExplanation=A true test of skill.
|
OniExplanation=A true test of skill.
|
||||||
EndlessExplanation=It don't stop, it keep rollin'.
|
EndlessExplanation=It don't stop, it keep rollin'.
|
||||||
|
|
||||||
[ScreenSelectPlayStyle]
|
[ScreenSelectPlayStyle]
|
||||||
HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move
|
HelpText=&BACK; Exit &START; Select &MENULEFT;&MENURIGHT; Move
|
||||||
|
|
||||||
[ScreenGameInformation]
|
[ScreenGameInformation]
|
||||||
HelpText=&BACK; Exit &START; Skip
|
HelpText=&BACK; Exit &START; Skip
|
||||||
|
|
||||||
[ScreenSelectMusic]
|
[ScreenSelectMusic]
|
||||||
HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&AUXWHITE;+[KEY] Sort To [KEY]
|
HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&AUXWHITE;+[KEY] Sort To [KEY]
|
||||||
AlternateHelpText=&SELECT;+&MENULEFT;&MENURIGHT; Change Difficulties &SELECT;+&START; Quick Sort
|
AlternateHelpText=&SELECT;+&MENULEFT;&MENURIGHT; Change Difficulties &SELECT;+&START; Quick Sort
|
||||||
|
|
||||||
[ScreenSelectCourse]
|
[ScreenSelectCourse]
|
||||||
HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&UP;&DOWN;&UP;&DOWN; for other course types
|
HelpText=&BACK; Exit &START; Select / Join &SELECT; Magic Codes &MENULEFT;&MENURIGHT; Move::&UP;&DOWN;&UP;&DOWN; for other course types
|
||||||
|
|
||||||
[ScreenOptions]
|
[ScreenOptions]
|
||||||
HelpText=&BACK; Exit &START; Choose &SELECT; Go Up &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move
|
HelpText=&BACK; Exit &START; Choose &SELECT; Go Up &MENULEFT;&MENURIGHT;&MENUUP;&MENUDOWN; Move
|
||||||
|
|
||||||
[ScreenStageInformation]
|
[ScreenStageInformation]
|
||||||
HelpText=
|
HelpText=
|
||||||
|
|
||||||
[ScreenGameplay]
|
[ScreenGameplay]
|
||||||
HelpText=
|
HelpText=
|
||||||
|
|
||||||
[ScreenEvaluation]
|
[ScreenEvaluation]
|
||||||
HelpText=&BACK; Exit &START; Move On &MENULEFT;+&MENURIGHT; or &SELECT; Snapshot
|
HelpText=&BACK; Exit &START; Move On &MENULEFT;+&MENURIGHT; or &SELECT; Snapshot
|
||||||
LifeDifficulty=Life Difficulty: %s
|
LifeDifficulty=Life Difficulty: %s
|
||||||
TimingDifficulty=Timing Difficulty: %s
|
TimingDifficulty=Timing Difficulty: %s
|
||||||
|
|
||||||
[OptionTitles]
|
[OptionTitles]
|
||||||
GamePrefAutoSetStyle=Auto Set Style
|
UserPrefAutoSetStyle=Auto Set Style
|
||||||
UserPrefSpecialScoringMode=Special Scoring Mode
|
UserPrefSpecialScoringMode=Special Scoring Mode
|
||||||
GamePrefNotePosition=Note Positions
|
UserPrefNotePosition=Note Positions
|
||||||
GamePrefComboOnRolls=Rolls Increment Combo
|
UserPrefComboOnRolls=Rolls Increment Combo
|
||||||
GamePrefComboUnderField=Combo Under Field
|
UserPrefComboUnderField=Combo Under Field
|
||||||
|
|
||||||
UserPrefGameplayShowScore=Show Score
|
UserPrefGameplayShowScore=Show Score
|
||||||
UserPrefGameplayShowStepsDisplay=Show Steps
|
UserPrefGameplayShowStepsDisplay=Show Steps
|
||||||
@@ -71,11 +89,12 @@ UserPrefShowLotsaOptions=Options Density
|
|||||||
UserPrefLongFail=Fail Length
|
UserPrefLongFail=Fail Length
|
||||||
UserPrefFlashyCombo=Flashy Combo
|
UserPrefFlashyCombo=Flashy Combo
|
||||||
UserPrefGameplayFooter=Gameplay Footer
|
UserPrefGameplayFooter=Gameplay Footer
|
||||||
|
|
||||||
[OptionExplanations]
|
[OptionExplanations]
|
||||||
GamePrefAutoSetStyle=Allow the game to list all one player and two player modes at once instead of one style only. This might require a restart of StepMania\n( or alternatively hit F2! )
|
UserPrefAutoSetStyle=Allow the game to list all one player and two player modes at once instead of one style only. This might require a restart of StepMania\n( or alternatively hit F2! )
|
||||||
GamePrefNotePosition=Determines where the arrow receptors are placed in gameplay.
|
UserPrefNotePosition=Determines where the arrow receptors are placed in gameplay.
|
||||||
GamePrefComboOnRolls=Choose if rolls should increment the combo or not.
|
UserPrefComboOnRolls=Choose if rolls should increment the combo or not.
|
||||||
GamePrefComboUnderField=Determine if the combo should display under the notes or not.
|
UserPrefComboUnderField=Determine if the combo should display under the notes or not.
|
||||||
|
|
||||||
UserPrefGameplayShowScore=Show or Hide the score display in gameplay.
|
UserPrefGameplayShowScore=Show or Hide the score display in gameplay.
|
||||||
UserPrefSpecialScoringMode=Select the scoring mode to be used if the Special scoring type is selected.
|
UserPrefSpecialScoringMode=Select the scoring mode to be used if the Special scoring type is selected.
|
||||||
@@ -107,6 +126,7 @@ Steps=Adjust the difficulty of the steps.
|
|||||||
Characters=Dancing buddies.
|
Characters=Dancing buddies.
|
||||||
SaveToProfileHelp=Requires profile or memory card.
|
SaveToProfileHelp=Requires profile or memory card.
|
||||||
MusicRateHelp=Play the music at a faster rate.
|
MusicRateHelp=Play the music at a faster rate.
|
||||||
|
|
||||||
[StepsListDisplayRow StepsType]
|
[StepsListDisplayRow StepsType]
|
||||||
Dance_Single=4
|
Dance_Single=4
|
||||||
Dance_Double=8
|
Dance_Double=8
|
||||||
|
|||||||
+764
-719
File diff suppressed because it is too large
Load Diff
@@ -142,7 +142,7 @@ static void StartMusic( MusicToPlay &ToPlay )
|
|||||||
{
|
{
|
||||||
LOG->Trace( "Found '%s'", ToPlay.m_sTimingFile.c_str() );
|
LOG->Trace( "Found '%s'", ToPlay.m_sTimingFile.c_str() );
|
||||||
Song song;
|
Song song;
|
||||||
if( GetExtension(ToPlay.m_sTimingFile.c_str()) == ".ssc" &&
|
if( GetExtension(ToPlay.m_sTimingFile) == ".ssc" &&
|
||||||
SSCLoader::LoadFromSSCFile(ToPlay.m_sTimingFile, song) )
|
SSCLoader::LoadFromSSCFile(ToPlay.m_sTimingFile, song) )
|
||||||
{
|
{
|
||||||
ToPlay.HasTiming = true;
|
ToPlay.HasTiming = true;
|
||||||
@@ -152,7 +152,7 @@ static void StartMusic( MusicToPlay &ToPlay )
|
|||||||
if( pStepsCabinetLights )
|
if( pStepsCabinetLights )
|
||||||
pStepsCabinetLights->GetNoteData( ToPlay.m_LightsData );
|
pStepsCabinetLights->GetNoteData( ToPlay.m_LightsData );
|
||||||
}
|
}
|
||||||
else if( GetExtension(ToPlay.m_sTimingFile.c_str()) == ".sm" &&
|
else if( GetExtension(ToPlay.m_sTimingFile) == ".sm" &&
|
||||||
SMLoader::LoadFromSMFile(ToPlay.m_sTimingFile, song) )
|
SMLoader::LoadFromSMFile(ToPlay.m_sTimingFile, song) )
|
||||||
{
|
{
|
||||||
ToPlay.HasTiming = true;
|
ToPlay.HasTiming = true;
|
||||||
|
|||||||
+7
-2
@@ -355,9 +355,14 @@ void GameState::JoinPlayer( PlayerNumber pn )
|
|||||||
if( ALLOW_LATE_JOIN && m_pCurStyle != NULL )
|
if( ALLOW_LATE_JOIN && m_pCurStyle != NULL )
|
||||||
{
|
{
|
||||||
const Style *pStyle;
|
const Style *pStyle;
|
||||||
// only use one player for StyleType_OnePlayerTwoSides.
|
// Only use one player for StyleType_OnePlayerTwoSides and StepsTypes
|
||||||
|
// that can only be played by one player (e.g. dance-solo,
|
||||||
|
// dance-threepanel, popn-nine). -aj
|
||||||
// XXX?: still shows joined player as "Insert Card". May not be an issue? -aj
|
// XXX?: still shows joined player as "Insert Card". May not be an issue? -aj
|
||||||
if( m_pCurStyle->m_StyleType == StyleType_OnePlayerTwoSides )
|
if( m_pCurStyle->m_StyleType == StyleType_OnePlayerTwoSides ||
|
||||||
|
m_pCurStyle->m_StepsType == StepsType_dance_solo ||
|
||||||
|
m_pCurStyle->m_StepsType == StepsType_dance_threepanel ||
|
||||||
|
m_pCurStyle->m_StepsType == StepsType_popn_nine )
|
||||||
pStyle = GAMEMAN->GetFirstCompatibleStyle( m_pCurGame, 1, m_pCurStyle->m_StepsType );
|
pStyle = GAMEMAN->GetFirstCompatibleStyle( m_pCurGame, 1, m_pCurStyle->m_StepsType );
|
||||||
else
|
else
|
||||||
pStyle = GAMEMAN->GetFirstCompatibleStyle( m_pCurGame, GetNumSidesJoined(), m_pCurStyle->m_StepsType );
|
pStyle = GAMEMAN->GetFirstCompatibleStyle( m_pCurGame, GetNumSidesJoined(), m_pCurStyle->m_StepsType );
|
||||||
|
|||||||
+13
-11
@@ -542,7 +542,7 @@ void NoteDisplay::DrawHoldBody( const TapNote& tn, int iCol, float fBeat, bool b
|
|||||||
DISPLAY->SetZTestMode( bWavyPartsNeedZBuffer?ZTEST_WRITE_ON_PASS:ZTEST_OFF );
|
DISPLAY->SetZTestMode( bWavyPartsNeedZBuffer?ZTEST_WRITE_ON_PASS:ZTEST_OFF );
|
||||||
DISPLAY->SetZWrite( bWavyPartsNeedZBuffer );
|
DISPLAY->SetZWrite( bWavyPartsNeedZBuffer );
|
||||||
|
|
||||||
/* Hack: Z effects need a finer grain step. */
|
// Hack: Z effects need a finer grain step.
|
||||||
const int fYStep = bWavyPartsNeedZBuffer? 4: 16; // use small steps only if wavy
|
const int fYStep = bWavyPartsNeedZBuffer? 4: 16; // use small steps only if wavy
|
||||||
|
|
||||||
if( bFlipHoldBody )
|
if( bFlipHoldBody )
|
||||||
@@ -641,16 +641,18 @@ void NoteDisplay::DrawHold( const TapNote &tn, int iCol, int iRow, bool bIsBeing
|
|||||||
/* The body and caps should have no overlap, so their order doesn't matter.
|
/* The body and caps should have no overlap, so their order doesn't matter.
|
||||||
* Draw the head last, so it appears on top. */
|
* Draw the head last, so it appears on top. */
|
||||||
float fBeat = NoteRowToBeat(iRow);
|
float fBeat = NoteRowToBeat(iRow);
|
||||||
//if( !cache->m_bHoldHeadIsAboveWavyParts )
|
/*
|
||||||
//{
|
if( !cache->m_bHoldHeadIsAboveWavyParts )
|
||||||
// Actor *pActor = GetHoldActor( m_HoldHead, NotePart_HoldHead, NoteRowToBeat(iRow), tn.subType == TapNote::hold_head_roll, bIsBeingHeld );
|
{
|
||||||
// DrawActor( tn, pActor, NotePart_HoldHead, iCol, bFlipHeadAndTail ? fEndYOffset : fStartYOffset, fBeat, bIsAddition, fPercentFadeToFail, fReverseOffsetPixels, fColorScale, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
Actor *pActor = GetHoldActor( m_HoldHead, NotePart_HoldHead, NoteRowToBeat(iRow), tn.subType == TapNote::hold_head_roll, bIsBeingHeld );
|
||||||
//}
|
DrawActor( tn, pActor, NotePart_HoldHead, iCol, bFlipHeadAndTail ? fEndYOffset : fStartYOffset, fBeat, bIsAddition, fPercentFadeToFail, fReverseOffsetPixels, fColorScale, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
||||||
//if( !cache->m_bHoldTailIsAboveWavyParts )
|
}
|
||||||
//{
|
if( !cache->m_bHoldTailIsAboveWavyParts )
|
||||||
// Actor *pActor = GetHoldActor( m_HoldTail, NotePart_HoldTail, NoteRowToBeat(iRow), tn.subType == TapNote::hold_head_roll, bIsBeingHeld );
|
{
|
||||||
// DrawActor( tn, pActor, NotePart_HoldTail, iCol, bFlipHeadAndTail ? fStartYOffset : fEndYOffset, fBeat, bIsAddition, fPercentFadeToFail, fReverseOffsetPixels, fColorScale, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
Actor *pActor = GetHoldActor( m_HoldTail, NotePart_HoldTail, NoteRowToBeat(iRow), tn.subType == TapNote::hold_head_roll, bIsBeingHeld );
|
||||||
//}
|
DrawActor( tn, pActor, NotePart_HoldTail, iCol, bFlipHeadAndTail ? fStartYOffset : fEndYOffset, fBeat, bIsAddition, fPercentFadeToFail, fReverseOffsetPixels, fColorScale, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
DrawHoldBody( tn, iCol, fBeat, bIsBeingHeld, fYHead, fYTail, bIsAddition, fPercentFadeToFail, fColorScale, false, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
DrawHoldBody( tn, iCol, fBeat, bIsBeingHeld, fYHead, fYTail, bIsAddition, fPercentFadeToFail, fColorScale, false, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
||||||
DrawHoldBody( tn, iCol, fBeat, bIsBeingHeld, fYHead, fYTail, bIsAddition, fPercentFadeToFail, fColorScale, true, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
DrawHoldBody( tn, iCol, fBeat, bIsBeingHeld, fYHead, fYTail, bIsAddition, fPercentFadeToFail, fColorScale, true, fDrawDistanceAfterTargetsPixels, fDrawDistanceBeforeTargetsPixels, fFadeInPercentOfDrawFar );
|
||||||
|
|||||||
+3
-3
@@ -2598,7 +2598,7 @@ void Player::UpdateJudgedRows()
|
|||||||
{
|
{
|
||||||
int iRow = iter.Row();
|
int iRow = iter.Row();
|
||||||
|
|
||||||
// if row is within a warp section, ignore it. -aj
|
// If row is within a warp section, ignore it. -aj
|
||||||
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow(iRow) )
|
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow(iRow) )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -2933,7 +2933,7 @@ void Player::HandleTapRowScore( unsigned row )
|
|||||||
bNoCheating = false;
|
bNoCheating = false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// more warp hackery. -aj
|
// Warp hackery. -aj
|
||||||
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow( row ) )
|
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow( row ) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@@ -3037,7 +3037,7 @@ void Player::HandleHoldCheckpoint( int iRow, int iNumHoldsHeldThisRow, int iNumH
|
|||||||
bNoCheating = false;
|
bNoCheating = false;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// more warp hackery. -aj
|
// More warp hackery. -aj
|
||||||
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow( iRow ) )
|
if( GAMESTATE->m_pCurSong->m_Timing.IsWarpAtRow( iRow ) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|||||||
+8
-5
@@ -85,11 +85,12 @@ public:
|
|||||||
m_iNumExtraStagesPassed(0), m_iNumExtraStagesFailed(0),
|
m_iNumExtraStagesPassed(0), m_iNumExtraStagesFailed(0),
|
||||||
m_iNumToasties(0), m_iTotalTapsAndHolds(0), m_iTotalJumps(0),
|
m_iNumToasties(0), m_iTotalTapsAndHolds(0), m_iTotalJumps(0),
|
||||||
m_iTotalHolds(0), m_iTotalRolls(0), m_iTotalMines(0),
|
m_iTotalHolds(0), m_iTotalRolls(0), m_iTotalMines(0),
|
||||||
m_iTotalHands(0), m_iTotalLifts(0), m_UnlockedEntryIDs(),
|
m_iTotalHands(0), m_iTotalLifts(0), m_bNewProfile(false),
|
||||||
m_sLastPlayedMachineGuid(""), m_LastPlayedDate(),
|
m_UnlockedEntryIDs(), m_sLastPlayedMachineGuid(""),
|
||||||
m_iNumSongsPlayedByStyle(), m_iNumTotalSongsPlayed(0),
|
m_LastPlayedDate(),m_iNumSongsPlayedByStyle(),
|
||||||
m_UserData(), m_SongHighScores(), m_CourseHighScores(),
|
m_iNumTotalSongsPlayed(0), m_UserData(), m_SongHighScores(),
|
||||||
m_vScreenshots(), m_mapDayToCaloriesBurned()
|
m_CourseHighScores(), m_vScreenshots(),
|
||||||
|
m_mapDayToCaloriesBurned()
|
||||||
{
|
{
|
||||||
m_lastSong.Unset();
|
m_lastSong.Unset();
|
||||||
m_lastCourse.Unset();
|
m_lastCourse.Unset();
|
||||||
@@ -182,6 +183,8 @@ public:
|
|||||||
int m_iTotalMines;
|
int m_iTotalMines;
|
||||||
int m_iTotalHands;
|
int m_iTotalHands;
|
||||||
int m_iTotalLifts;
|
int m_iTotalLifts;
|
||||||
|
/** @brief Is this a brand new profile? */
|
||||||
|
bool m_bNewProfile;
|
||||||
set<RString> m_UnlockedEntryIDs;
|
set<RString> m_UnlockedEntryIDs;
|
||||||
/**
|
/**
|
||||||
* @brief Which machine did we play on last, based on the Guid?
|
* @brief Which machine did we play on last, based on the Guid?
|
||||||
|
|||||||
@@ -97,6 +97,7 @@ void ProfileManager::Init()
|
|||||||
m_bLastLoadWasTamperedOrCorrupt[p] = false;
|
m_bLastLoadWasTamperedOrCorrupt[p] = false;
|
||||||
m_bLastLoadWasFromLastGood[p] = false;
|
m_bLastLoadWasFromLastGood[p] = false;
|
||||||
m_bNeedToBackUpLastLoad[p] = false;
|
m_bNeedToBackUpLastLoad[p] = false;
|
||||||
|
m_bNewProfile[p] = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
LoadMachineProfile();
|
LoadMachineProfile();
|
||||||
@@ -222,6 +223,7 @@ bool ProfileManager::LoadProfileFromMemoryCard( PlayerNumber pn, bool bLoadEdits
|
|||||||
|
|
||||||
vector<RString> asDirsToTry;
|
vector<RString> asDirsToTry;
|
||||||
GetMemoryCardProfileDirectoriesToTry( asDirsToTry );
|
GetMemoryCardProfileDirectoriesToTry( asDirsToTry );
|
||||||
|
m_bNewProfile[pn] = true;
|
||||||
|
|
||||||
for( unsigned i = 0; i < asDirsToTry.size(); ++i )
|
for( unsigned i = 0; i < asDirsToTry.size(); ++i )
|
||||||
{
|
{
|
||||||
@@ -239,6 +241,7 @@ bool ProfileManager::LoadProfileFromMemoryCard( PlayerNumber pn, bool bLoadEdits
|
|||||||
ProfileLoadResult res = LoadProfile( pn, sDir, true );
|
ProfileLoadResult res = LoadProfile( pn, sDir, true );
|
||||||
if( res == ProfileLoadResult_Success )
|
if( res == ProfileLoadResult_Success )
|
||||||
{
|
{
|
||||||
|
m_bNewProfile[pn] = false;
|
||||||
/* If importing, store the directory we imported from, for display purposes. */
|
/* If importing, store the directory we imported from, for display purposes. */
|
||||||
if( i > 0 )
|
if( i > 0 )
|
||||||
m_sProfileDirImportedFrom[pn] = asDirsToTry[i];
|
m_sProfileDirImportedFrom[pn] = asDirsToTry[i];
|
||||||
@@ -246,8 +249,11 @@ bool ProfileManager::LoadProfileFromMemoryCard( PlayerNumber pn, bool bLoadEdits
|
|||||||
}
|
}
|
||||||
|
|
||||||
if( res == ProfileLoadResult_FailedTampered )
|
if( res == ProfileLoadResult_FailedTampered )
|
||||||
|
{
|
||||||
|
m_bNewProfile[pn] = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* If we imported a profile fallback directory, change the memory card
|
/* If we imported a profile fallback directory, change the memory card
|
||||||
* directory back to the preferred directory: never write over imported
|
* directory back to the preferred directory: never write over imported
|
||||||
@@ -544,6 +550,11 @@ bool ProfileManager::ProfileWasLoadedFromMemoryCard( PlayerNumber pn ) const
|
|||||||
return !m_sProfileDir[pn].empty() && m_bWasLoadedFromMemoryCard[pn];
|
return !m_sProfileDir[pn].empty() && m_bWasLoadedFromMemoryCard[pn];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool ProfileManager::ProfileFromMemoryCardIsNew( PlayerNumber pn ) const
|
||||||
|
{
|
||||||
|
return GetProfile(pn) && m_bWasLoadedFromMemoryCard[pn] && m_bNewProfile[pn];
|
||||||
|
}
|
||||||
|
|
||||||
bool ProfileManager::LastLoadWasTamperedOrCorrupt( PlayerNumber pn ) const
|
bool ProfileManager::LastLoadWasTamperedOrCorrupt( PlayerNumber pn ) const
|
||||||
{
|
{
|
||||||
return !m_sProfileDir[pn].empty() && m_bLastLoadWasTamperedOrCorrupt[pn];
|
return !m_sProfileDir[pn].empty() && m_bLastLoadWasTamperedOrCorrupt[pn];
|
||||||
|
|||||||
@@ -77,6 +77,7 @@ public:
|
|||||||
|
|
||||||
RString GetPlayerName( PlayerNumber pn ) const;
|
RString GetPlayerName( PlayerNumber pn ) const;
|
||||||
bool ProfileWasLoadedFromMemoryCard( PlayerNumber pn ) const;
|
bool ProfileWasLoadedFromMemoryCard( PlayerNumber pn ) const;
|
||||||
|
bool ProfileFromMemoryCardIsNew( PlayerNumber pn ) const;
|
||||||
bool LastLoadWasTamperedOrCorrupt( PlayerNumber pn ) const;
|
bool LastLoadWasTamperedOrCorrupt( PlayerNumber pn ) const;
|
||||||
bool LastLoadWasFromLastGood( PlayerNumber pn ) const;
|
bool LastLoadWasFromLastGood( PlayerNumber pn ) const;
|
||||||
|
|
||||||
@@ -117,6 +118,7 @@ private:
|
|||||||
bool m_bLastLoadWasTamperedOrCorrupt[NUM_PLAYERS]; // true if Stats.xml was present, but failed to load (probably because of a signature failure)
|
bool m_bLastLoadWasTamperedOrCorrupt[NUM_PLAYERS]; // true if Stats.xml was present, but failed to load (probably because of a signature failure)
|
||||||
bool m_bLastLoadWasFromLastGood[NUM_PLAYERS]; // if true, then m_bLastLoadWasTamperedOrCorrupt is also true
|
bool m_bLastLoadWasFromLastGood[NUM_PLAYERS]; // if true, then m_bLastLoadWasTamperedOrCorrupt is also true
|
||||||
mutable bool m_bNeedToBackUpLastLoad[NUM_PLAYERS]; // if true, back up profile on next save
|
mutable bool m_bNeedToBackUpLastLoad[NUM_PLAYERS]; // if true, back up profile on next save
|
||||||
|
bool m_bNewProfile[NUM_PLAYERS];
|
||||||
|
|
||||||
Profile *m_pMemoryCardProfile[NUM_PLAYERS]; // holds Profile for the currently inserted card
|
Profile *m_pMemoryCardProfile[NUM_PLAYERS]; // holds Profile for the currently inserted card
|
||||||
Profile *m_pMachineProfile;
|
Profile *m_pMachineProfile;
|
||||||
|
|||||||
@@ -151,7 +151,6 @@ bool RoomWheel::Select()
|
|||||||
{
|
{
|
||||||
// Since this is not actually an option outside of this wheel, NULL is a good idea.
|
// Since this is not actually an option outside of this wheel, NULL is a good idea.
|
||||||
m_LastSelection = NULL;
|
m_LastSelection = NULL;
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry( SM_BackFromRoomName, ENTER_ROOM_NAME, "", 255 );
|
ScreenTextEntry::TextEntry( SM_BackFromRoomName, ENTER_ROOM_NAME, "", 255 );
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -3531,7 +3531,6 @@ void ScreenEdit::HandleStepsInformationChoice( StepsInformationChoice c, const v
|
|||||||
switch( c )
|
switch( c )
|
||||||
{
|
{
|
||||||
case description:
|
case description:
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry(
|
ScreenTextEntry::TextEntry(
|
||||||
SM_None,
|
SM_None,
|
||||||
ENTER_NEW_DESCRIPTION,
|
ENTER_NEW_DESCRIPTION,
|
||||||
@@ -3580,8 +3579,6 @@ void ScreenEdit::HandleSongInformationChoice( SongInformationChoice c, const vec
|
|||||||
{
|
{
|
||||||
Song* pSong = GAMESTATE->m_pCurSong;
|
Song* pSong = GAMESTATE->m_pCurSong;
|
||||||
|
|
||||||
// todo: Call a screen with class ScreenTextEntry instead.
|
|
||||||
// multiple times in this section, so I'm only saying it here. -aj
|
|
||||||
switch( c )
|
switch( c )
|
||||||
{
|
{
|
||||||
DEFAULT_FAIL(c);
|
DEFAULT_FAIL(c);
|
||||||
@@ -3628,7 +3625,6 @@ void ScreenEdit::HandleTimingDataInformationChoice( TimingDataInformationChoice
|
|||||||
{
|
{
|
||||||
DEFAULT_FAIL( c );
|
DEFAULT_FAIL( c );
|
||||||
case bpm:
|
case bpm:
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry(
|
ScreenTextEntry::TextEntry(
|
||||||
SM_BackFromBPMChange,
|
SM_BackFromBPMChange,
|
||||||
ENTER_BPM_VALUE,
|
ENTER_BPM_VALUE,
|
||||||
@@ -3637,7 +3633,6 @@ void ScreenEdit::HandleTimingDataInformationChoice( TimingDataInformationChoice
|
|||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case stop:
|
case stop:
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry(
|
ScreenTextEntry::TextEntry(
|
||||||
SM_BackFromStopChange,
|
SM_BackFromStopChange,
|
||||||
ENTER_STOP_VALUE,
|
ENTER_STOP_VALUE,
|
||||||
@@ -3646,7 +3641,6 @@ void ScreenEdit::HandleTimingDataInformationChoice( TimingDataInformationChoice
|
|||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case delay:
|
case delay:
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry(
|
ScreenTextEntry::TextEntry(
|
||||||
SM_BackFromDelayChange,
|
SM_BackFromDelayChange,
|
||||||
ENTER_DELAY_VALUE,
|
ENTER_DELAY_VALUE,
|
||||||
@@ -3687,7 +3681,6 @@ void ScreenEdit::HandleTimingDataInformationChoice( TimingDataInformationChoice
|
|||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case warp:
|
case warp:
|
||||||
// todo: Call a screen with class ScreenTextEntry instead. -aj
|
|
||||||
ScreenTextEntry::TextEntry(
|
ScreenTextEntry::TextEntry(
|
||||||
SM_BackFromWarpChange,
|
SM_BackFromWarpChange,
|
||||||
ENTER_WARP_VALUE,
|
ENTER_WARP_VALUE,
|
||||||
|
|||||||
@@ -35,6 +35,7 @@ void ScreenGameplaySyncMachine::Init()
|
|||||||
SongUtil::GetPlayableSteps( &m_Song, vpSteps );
|
SongUtil::GetPlayableSteps( &m_Song, vpSteps );
|
||||||
ASSERT_M(vpSteps.size() > 0, "No playable steps for ScreenGameplaySyncMachine");
|
ASSERT_M(vpSteps.size() > 0, "No playable steps for ScreenGameplaySyncMachine");
|
||||||
Steps *pSteps = vpSteps[0];
|
Steps *pSteps = vpSteps[0];
|
||||||
|
// TODO: Either detect which player accessed this file, or FOREACH all of them. -Wolfman2000
|
||||||
GAMESTATE->m_pCurSteps[0].Set( pSteps );
|
GAMESTATE->m_pCurSteps[0].Set( pSteps );
|
||||||
|
|
||||||
GamePreferences::m_AutoPlay.Set( PC_HUMAN );
|
GamePreferences::m_AutoPlay.Set( PC_HUMAN );
|
||||||
|
|||||||
@@ -81,7 +81,8 @@ void ScreenNameEntryTraditional::BeginScreen()
|
|||||||
GAMESTATE->GetRankingFeats( pn, aFeats );
|
GAMESTATE->GetRankingFeats( pn, aFeats );
|
||||||
|
|
||||||
bool bNoStagesLeft = GAMESTATE->m_iPlayerStageTokens[pn] <= 0;
|
bool bNoStagesLeft = GAMESTATE->m_iPlayerStageTokens[pn] <= 0;
|
||||||
m_bEnteringName[pn] = aFeats.size() > 0 && bNoStagesLeft;
|
m_bEnteringName[pn] = ( aFeats.size() > 0 ||
|
||||||
|
PROFILEMAN->ProfileFromMemoryCardIsNew(pn) ) && bNoStagesLeft;
|
||||||
m_bFinalized[pn] = !m_bEnteringName[pn];
|
m_bFinalized[pn] = !m_bEnteringName[pn];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,8 +25,8 @@ void ScreenOptionsExportPackage::Init()
|
|||||||
void ScreenOptionsExportPackage::BeginScreen()
|
void ScreenOptionsExportPackage::BeginScreen()
|
||||||
{
|
{
|
||||||
// Fill m_vsPossibleDirsToExport
|
// Fill m_vsPossibleDirsToExport
|
||||||
// todo: split these out over multiple screens so the scroller
|
// todo: Split these out over multiple screens so the scroller
|
||||||
// isn't so overloaded. -freem
|
// isn't so overloaded. (See ScreenOptionsToggleSongs) -freem
|
||||||
{
|
{
|
||||||
// Add themes
|
// Add themes
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -809,8 +809,7 @@ void ScreenSelectMaster::MenuStart( const InputEventPlus &input )
|
|||||||
mc.ApplyToAllPlayers();
|
mc.ApplyToAllPlayers();
|
||||||
// We want to be able to broadcast a Start message to the theme, in
|
// We want to be able to broadcast a Start message to the theme, in
|
||||||
// case a themer wants to handle something. -aj
|
// case a themer wants to handle something. -aj
|
||||||
// TODO: Find a way to differentiate this from the message below, for
|
// TODO: Add a param to differentiate this from the message below.
|
||||||
// less ambiguousness?
|
|
||||||
MESSAGEMAN->Broadcast( (MessageID)(Message_MenuStartP1+pn) );
|
MESSAGEMAN->Broadcast( (MessageID)(Message_MenuStartP1+pn) );
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -485,7 +485,7 @@ void ScreenSelectMusic::Input( const InputEventPlus &input )
|
|||||||
m_bStepsChosen[input.pn] )
|
m_bStepsChosen[input.pn] )
|
||||||
return; // ignore
|
return; // ignore
|
||||||
|
|
||||||
// todo: use mousewheel to scroll MusicWheel -aj
|
// todo: Allow mousewheel to scroll MusicWheel -aj
|
||||||
|
|
||||||
if( USE_PLAYER_SELECT_MENU )
|
if( USE_PLAYER_SELECT_MENU )
|
||||||
{
|
{
|
||||||
@@ -1528,9 +1528,8 @@ void ScreenSelectMusic::AfterStepsOrTrailChange( const vector<PlayerNumber> &vpn
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// I don't like how numbers just stay up there if the current
|
// The numbers shouldn't stay if the current selection is NULL.
|
||||||
// selection is NULL.
|
// todo: Let themers set the text value instead of just using 0. -aj
|
||||||
// todo: Let themers set the text instead of just using 0. -aj
|
|
||||||
m_textHighScore[pn].SetText( ssprintf("%*i", NUM_SCORE_DIGITS, 0) );
|
m_textHighScore[pn].SetText( ssprintf("%*i", NUM_SCORE_DIGITS, 0) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-4
@@ -19,6 +19,9 @@
|
|||||||
#include "LuaBinding.h"
|
#include "LuaBinding.h"
|
||||||
#include "EnumHelper.h"
|
#include "EnumHelper.h"
|
||||||
|
|
||||||
|
ThemeMetric<int> SORT_BPM_DIVISION ( "MusicWheel", "SortBPMDivision" );
|
||||||
|
ThemeMetric<int> SORT_LENGTH_DIVISION ( "MusicWheel", "SortLengthDivision" );
|
||||||
|
|
||||||
bool SongCriteria::Matches( const Song *pSong ) const
|
bool SongCriteria::Matches( const Song *pSong ) const
|
||||||
{
|
{
|
||||||
if( !m_sGroupName.empty() && m_sGroupName != pSong->m_sGroupName )
|
if( !m_sGroupName.empty() && m_sGroupName != pSong->m_sGroupName )
|
||||||
@@ -595,8 +598,7 @@ RString SongUtil::GetSectionNameFromSongAndSort( const Song* pSong, SortOrder so
|
|||||||
return SORT_NOT_AVAILABLE.GetValue();
|
return SORT_NOT_AVAILABLE.GetValue();
|
||||||
case SORT_BPM:
|
case SORT_BPM:
|
||||||
{
|
{
|
||||||
// todo: make this a theme metric? -aj
|
const int iBPMGroupSize = SORT_BPM_DIVISION;
|
||||||
const int iBPMGroupSize = 20;
|
|
||||||
DisplayBpms bpms;
|
DisplayBpms bpms;
|
||||||
pSong->GetDisplayBpms( bpms );
|
pSong->GetDisplayBpms( bpms );
|
||||||
int iMaxBPM = (int)bpms.GetMax();
|
int iMaxBPM = (int)bpms.GetMax();
|
||||||
@@ -605,8 +607,7 @@ RString SongUtil::GetSectionNameFromSongAndSort( const Song* pSong, SortOrder so
|
|||||||
}
|
}
|
||||||
case SORT_LENGTH:
|
case SORT_LENGTH:
|
||||||
{
|
{
|
||||||
// todo: make this a theme metric? -aj
|
const int iSortLengthSize = SORT_LENGTH_DIVISION;
|
||||||
const int iSortLengthSize = 5;
|
|
||||||
int iMaxLength = (int)pSong->m_fMusicLengthSeconds;
|
int iMaxLength = (int)pSong->m_fMusicLengthSeconds;
|
||||||
iMaxLength += (iSortLengthSize - (iMaxLength%iSortLengthSize) - 1);
|
iMaxLength += (iSortLengthSize - (iMaxLength%iSortLengthSize) - 1);
|
||||||
int iMinLength = iMaxLength - (iSortLengthSize-1);
|
int iMinLength = iMaxLength - (iSortLengthSize-1);
|
||||||
|
|||||||
@@ -331,7 +331,6 @@ static BOOL CALLBACK DIMouse_EnumDevObjectsProc(LPCDIDEVICEOBJECTINSTANCE dev, L
|
|||||||
|
|
||||||
in.ofs = dev->dwOfs;
|
in.ofs = dev->dwOfs;
|
||||||
|
|
||||||
// xxx: does this check for scrollwheels? -aj
|
|
||||||
if(dev->dwType & DIDFT_BUTTON)
|
if(dev->dwType & DIDFT_BUTTON)
|
||||||
{
|
{
|
||||||
in.type = in.BUTTON;
|
in.type = in.BUTTON;
|
||||||
|
|||||||
@@ -398,7 +398,7 @@ void InputHandler_Linux_Event::InputThread()
|
|||||||
DeviceButton neg = g_apEventDevices[i]->aiAbsMappingLow[event.code];
|
DeviceButton neg = g_apEventDevices[i]->aiAbsMappingLow[event.code];
|
||||||
DeviceButton pos = g_apEventDevices[i]->aiAbsMappingHigh[event.code];
|
DeviceButton pos = g_apEventDevices[i]->aiAbsMappingHigh[event.code];
|
||||||
|
|
||||||
float l = SCALE( int(event.value), (float) g_apEventDevices[i]->aiAbsMin[i], (float) g_apEventDevices[i]->aiAbsMax[i], -1.0f, 1.0f );
|
float l = SCALE( int(event.value), (float) g_apEventDevices[i]->aiAbsMin[event.code], (float) g_apEventDevices[i]->aiAbsMax[event.code], -1.0f, 1.0f );
|
||||||
ButtonPressed( DeviceInput(g_apEventDevices[i]->m_Dev, neg, max(-l,0), now) );
|
ButtonPressed( DeviceInput(g_apEventDevices[i]->m_Dev, neg, max(-l,0), now) );
|
||||||
ButtonPressed( DeviceInput(g_apEventDevices[i]->m_Dev, pos, max(+l,0), now) );
|
ButtonPressed( DeviceInput(g_apEventDevices[i]->m_Dev, pos, max(+l,0), now) );
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ void run()
|
|||||||
CHECK( test.GetElapsedTimeFromBeat(15.0f), 14.5f ); // stopped
|
CHECK( test.GetElapsedTimeFromBeat(15.0f), 14.5f ); // stopped
|
||||||
CHECK( test.GetElapsedTimeFromBeat(16), 20.0f );
|
CHECK( test.GetElapsedTimeFromBeat(16), 20.0f );
|
||||||
|
|
||||||
/* todo: add warp tests once the warp code is done */
|
// todo: add warp tests -aj
|
||||||
|
|
||||||
RageTimer foobar;
|
RageTimer foobar;
|
||||||
/* We can look up the time of any given beat, then look up the beat of that
|
/* We can look up the time of any given beat, then look up the beat of that
|
||||||
@@ -124,10 +124,10 @@ int q = 0;
|
|||||||
}
|
}
|
||||||
LOG->Trace("... %i in %f", q, foobar.GetDeltaTime());
|
LOG->Trace("... %i in %f", q, foobar.GetDeltaTime());
|
||||||
|
|
||||||
// todo: add warp segments
|
|
||||||
TimingData test2;
|
TimingData test2;
|
||||||
test2.AddBPMSegment( BPMSegment(0, 60) );
|
test2.AddBPMSegment( BPMSegment(0, 60) );
|
||||||
test2.AddStopSegment( StopSegment(0, 1) );
|
test2.AddStopSegment( StopSegment(0, 1) );
|
||||||
|
//test2.AddWarpSegment( WarpSegment() );
|
||||||
CHECK( test2.GetBeatFromElapsedTime(-1), -1.0f );
|
CHECK( test2.GetBeatFromElapsedTime(-1), -1.0f );
|
||||||
CHECK( test2.GetBeatFromElapsedTime(0), 0.0f );
|
CHECK( test2.GetBeatFromElapsedTime(0), 0.0f );
|
||||||
CHECK( test2.GetBeatFromElapsedTime(1), 0.0f );
|
CHECK( test2.GetBeatFromElapsedTime(1), 0.0f );
|
||||||
|
|||||||
Reference in New Issue
Block a user