# NAKET Coder Revolution X by NAKET Team for sm-ssc.
# distributed by StepMania Underground [http://smug.boxorroxors.net/]
# OpenITG/NotITG Conversion by Jose_Varela
##
## SM base classes #############################################################
################################################################################
[Common]
WindowTitle=NAKET Coder Revolution X
InitialScreen=ScreenCompany
AutoSetStyle=1

[ScreenTitleMenu]
HeaderOnCommand=hidden,1
HelpOnCommand=hidden,1

ChoiceNames=1,2,3,4
Choice1=applydefaultoptions;screen,ScreenProfileLoad;
Choice2=screen,ScreenOptionsMenu;
Choice3=screen,ScreenEditMenu;
Choice4=screen,ScreenExit;
Choice5=screen,ScreenPlayerOptionsMain;style,single;playmode,regular;song,Goreshit/Beautiful Loli Thing;steps,expert;

ScrollerX=SCREEN_CENTER_X
ScrollerOnCommand=zoomx,0;sleep,0.75;accelerate,0.25;zoomx,1;fov,45
ScrollerOffCommand=
ScrollerCancelCommand=accelerate,1;zoomx,SCREEN_WIDTH
ScrollerY=SCREEN_CENTER_Y+1
ScrollerTransform=function(self,offset,itemIndex,numItems) self:x( offset * 200 ); self:y( math.cos(offset / (math.pi*2)) * 20); end
ScrollerSecondsPerItem=0.06
LoopScroller=1
WrapScroller=1

HeaderOnCommand=hidden,1
FooterOnCommand=hidden,1

[ScreenCompany]
Class=ScreenAttract
Fallback=ScreenAttract
NextScreen=ScreenTitleIntro
PrevScreen=ScreenTitleIntro

[ScreenTitleIntro]
Class=ScreenAttract
Fallback=ScreenAttract
SecondsToShow=30
NextScreen=ScreenTitleMenu
PrevScreen=ScreenTitleMenu
StartScreen=ScreenTitleMenu

[ScreenSystemLayer]
CreditsP1X=-SCREEN_WIDTH
CreditsP2X=-SCREEN_WIDTH

################################################################################
## end SM base classes #########################################################
##   /\  / /¯¯¯ /¯¯/ \ / NAKET  Coder | copyright © 2008-2010 NAKET Team.
##  /  \/ /___ / ¯\  / \ Revolution X | all redistributions of this theme must
## ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| include this copyright notice & message.
## http://smug.boxorroxors.net/       | Distributed by the StepMania Underground.
## base screen classes #########################################################
### (and options too, just because we can) #####################################
################################################################################

[ScreenEvaluationStage]
# config
ShowDetailArea=1

# fix sm4:
ShowGradeArea=0
ShowPointsArea=0
ShowScoreArea=0
ShowStageAward=0

# fix sm4: decorations that aren't used anymore but are forced off anyways
ShowStageDisplay=0
ShowStageFrame=0
ShowModIconRows=0

[ScreenOptionsMenu]
ExplanationTogetherX=SCREEN_CENTER_X
ExplanationTogetherY=SCREEN_CENTER_Y*1.625
ExplanationTogetherOnCommand=shadowlength,0;maxwidth,SCREEN_WIDTH*0.785;wrapwidthpixels,SCREEN_WIDTH*0.785;zoom,0.9;cropright,1;decelerate,0.25;cropright,0

NumRowsShown=10
RowPositionTransformFunction=function(self,offset,itemIndex,numItems) \
	if offset == 9 then \
		self:x(0); \
		self:y( SCREEN_CENTER_Y*1.35 ); \
	elseif offset < 9 and offset > 5 then \
		self:x( (offset-7) * 200 ); \
		self:y( SCREEN_CENTER_Y*1.1 ); \
	elseif offset < 6 and offset > 2 then \
		self:x( (offset-4) * 200 ); \
		self:y( SCREEN_CENTER_Y*0.85 ); \
	else \
		self:x( (offset-1) * 200 ); \
		self:y( SCREEN_CENTER_Y*0.6 ); \
	end; \
end

[ScreenWithMenuElements]
CancelTransitionsOut=0

ShowHeader=1
HeaderX=SCREEN_CENTER_X
HeaderY=SCREEN_TOP+24
HeaderOnCommand=draworder,90;
HeaderOffCommand=

ShowFooter=1
FooterX=SCREEN_CENTER_X
FooterY=SCREEN_BOTTOM
FooterOnCommand=draworder,90

[ScreenProfileLoad]
# sm4
Fallback=ScreenSelectMaster
Class=ScreenSelectMaster
ChoiceNames=1
Choice1=
ChoiceOnCommand=zoom,0
HelpOnCommand=hidden,1

NextScreen=ScreenSelectGameMode
PrevScreen=ScreenTitleMenu
#
PrepareScreens=ScreenSelectGameMode
#
ShowHeader=1
ShowFooter=1

# Neccesary.
# Otherwise, custom scrollers for custom screens won't show up.
[ScreenSelectMaster]
DefaultChoice=1
StyleIcon=0
MemoryCardIcons=0
OverrideSleepAfterTweenOffSeconds=1
OverrideLockInputSeconds=1

OptionOrderLeft=4:3,3:2,2:1
OptionOrderRight=1:2,2:3,3:4
OptionOrderAuto=1:2,2:3,3:4
NumIconParts=0
NumCursorParts=0
NumPreviewParts=1
ShowScroller=1
WrapScroller=0
ScrollerFastCatchup=1

PreviewPart1X=SCREEN_CENTER_X-8000
PreviewPart1Y=SCREEN_CENTER_Y+130
PreviewPart2X=SCREEN_CENTER_X-8000
PreviewPart2Y=SCREEN_CENTER_Y+130
PreviewPart3X=SCREEN_CENTER_X-8000
PreviewPart3Y=SCREEN_CENTER_Y+130
PreviewPart4X=SCREEN_CENTER_X-8000
PreviewPart4Y=SCREEN_CENTER_Y+130

ScrollerOffCommand=
ScrollerNumItemsToDraw=15
ScrollGainFocusCommand=zoomz,1.1
ScrollLoseFocusCommand=zoomz,1
NumChoicesOnPage1=4
SharedPreviewAndCursor=1
CursorPart1P1OffsetXFromIcon=0
CursorPart1P1OffsetYFromIcon=0
CursorPart1P2OffsetXFromIcon=0
CursorPart1P2OffsetYFromIcon=0
CursorPart1OnCommand=draworder,1;zoom,0;sleep,.4;linear,.2;zoom,1
CursorPart1ChangeCommand=
PreSwitchPageSeconds=0
PostSwitchPageSeconds=0
DisabledColor=.5,.5,.5,0
ExplanationPage1X=-1000
ExplanationPage1Y=-1000
ExplanationPage1SwitchToPage1Command=
ExplanationPage1SwitchToPage2Command=
ExplanationPage1OnCommand=hidden,1
ExplanationPage1OffCommand=
ExplanationPage2X=-1000
ExplanationPage2Y=-1000
ExplanationPage2SwitchToPage1Command=
ExplanationPage2SwitchToPage2Command=
ExplanationPage2OnCommand=hidden,1
ExplanationPage2OffCommand=
MorePage1X=SCREEN_CENTER_X-180
MorePage1Y=SCREEN_CENTER_Y-100
MorePage1SwitchToPage1Command=
MorePage1SwitchToPage2Command=
MorePage1OnCommand=
MorePage1OffCommand=
MorePage2X=SCREEN_CENTER_X-180
MorePage2Y=SCREEN_CENTER_Y-100
MorePage2SwitchToPage1Command=
MorePage2SwitchToPage2Command=
MorePage2OnCommand=
MorePage2OffCommand=
IdleCommentSeconds=0
IdleTimeoutSeconds=0

[ScreenSelectGameMode]
Class=ScreenSelectMaster
Fallback=ScreenSelectMaster
PrevScreen=ScreenTitleMenu
TimerSeconds=60
# ugh
ShowHeader=1
ShowFooter=1
FooterToSelectMusicMessageCommand=decelerate,0.25;addy,SCREEN_CENTER_Y
HeaderCancelCommand=decelerate,0.25;addy,-SCREEN_CENTER_Y
FooterCancelCommand=decelerate,0.25;addy,SCREEN_CENTER_Y
HelpCancelCommand=decelerate,0.25;addy,SCREEN_CENTER_Y

# decorations
ShowNetworkStatus=IsNetConnected()
NetworkStatusX=SCREEN_CENTER_X*1.2375
NetworkStatusY=SCREEN_TOP+24

# scrollables and items and junk
ShowIcon=1
UseIconMetrics=1

ScrollerX=SCREEN_CENTER_X-245
ScrollerOnCommand=addy,-SCREEN_HEIGHT;linear,0.25;addy,SCREEN_HEIGHT
ScrollerOffCommand=
ScrollerCancelCommand=accelerate,1;zoomx,SCREEN_WIDTH
ScrollerY=SCREEN_CENTER_Y+1
ScrollerTransform=function(self,offset,itemIndex,numItems) self:x( offset * 240 ); self:y( math.cos(offset / (math.pi*2)) * 20); end

# choices
ChoiceNames=1,2,3
DefaultChoice=1
NumChoicesOnPage1=3
# todo: possibly use the player's preferred difficulty instead of forcing Hard?
# difficulty,hard;
Choice1=@'playmode,regular;screen,ScreenSelectMusic;style,'..PlayModeCheck()
Choice2=screen,ScreenTitleMenu;
Choice3=screen,ScreenTitleMenu

[ScreenSelectMusic]
##### Banner #####
# thanks midi :(
BannerX=
BannerY=
# last good scaletoclipped,264,82.5; rotationx,25;
#BannerOnCommand=scaletoclipped,256,80;visible,false;rotationx,50;fov,70;zoom,1.15
BannerOnCommand=hidden,0;
BannerOffCommand=

OptionsNextScreen=ScreenPlayerOptionsMain

BPMDisplayOnCommand=horizalign,right;
BPMDisplayOffCommand=

MusicWheelX=WideScale(SCREEN_CENTER_X*1.2375,SCREEN_CENTER_X*1.25)
MusicWheelY=SCREEN_CENTER_Y
MusicWheelOnCommand=draworder,-1;fov,90;zoomx,0;bounceend,0.25;zoomx,1
MusicWheelOffCommand=linear,1;zoomx,0;rotationx,-65
##### StepsDisplay #####
ShowPaneDisplayP1=GAMESTATE:IsHumanPlayer(PLAYER_1)
PaneDisplayP1X=WideScale(SCREEN_WIDTH*0.225,SCREEN_WIDTH*0.264583)
PaneDisplayP1Y=SCREEN_CENTER_Y*1.0625
PaneDisplayP1OnCommand=addy,SCREEN_CENTER_Y;decelerate,0.35;addy,-SCREEN_CENTER_Y
PaneDisplayP1OffCommand=bouncebegin,0.15;zoomx,0;
#--#
ShowPaneDisplayP2=GAMESTATE:IsHumanPlayer(PLAYER_2)
PaneDisplayP2X=WideScale(SCREEN_WIDTH*0.225,SCREEN_WIDTH*0.264583)
PaneDisplayP2Y=SCREEN_CENTER_Y*1.77
PaneDisplayP2OnCommand=addy,SCREEN_CENTER_Y;decelerate,0.35;addy,-SCREEN_CENTER_Y
PaneDisplayP2OffCommand=bouncebegin,0.15;zoomx,0;

ShowPanes=0

##### CDTitle #####
CDTitleX=0
CDTitleY=0
CDTitleOnCommand=

MusicWheelUnderOnCommand=zoom,0

[FadingBanner]
BannerOnCommand=
BannerResetFadeCommand=fadeleft,0;cropleft,0;

# other banner goes away
BannerFadeOffCommand=fadeleft,0;cropleft,0;stoptweening;linear,0.25;fadeleft,1;cropleft,1;
# to the real banner
BannerFadeFromCachedCommand=fadeleft,0;cropleft,0;stoptweening;linear,0.125;fadeleft,1;cropleft,1;

[MusicWheel]
Use3D=0
ShowPortal=1
ShowRoulette=0
ShowRandom=0

HighlightOnCommand=
HighlightOffCommand=
HighlightSortOnCommand=
HighlightSortOffCommand=

ItemCurveX=0
ItemSpacingY=36

NumWheelItems=17

NumSectionColors=7
SectionColor1=Colors.Red
SectionColor2=Colors.Orange
SectionColor3=Colors.Yellow
SectionColor4=Colors.Green
SectionColor5=Colors.Blue
SectionColor6=Colors.Indigo
SectionColor7=Colors.Violet

ScrollBarOnCommand=hidden,1

MusicWheelSortOnCommand=
MusicWheelSortOffCommand=
MusicWheelItemSortOnCommand=linear,0.25;zoomy,1
MusicWheelItemSortOffCommand=linear,0.25;zoomy,0
MusicWheelItemStartOnCommand=
MusicWheelItemFinishOnCommand=
MusicWheelItemStartOffCommand=
MusicWheelItemFinishOffCommand=
HighlightStartOnCommand=
HighlightFinishOnSortCommand=
HighlightFinishOnCommand=
HighlightStartOffCommand=
HighlightFinishOffCommand=
HighlightFinishOffSortCommand=

[MusicWheelItem]
SongNameX=0
SongNameY=0
SongNameOnCommand=

CourseX=30
CourseY=0
CourseOnCommand=zoom,0.75;shadowlength,1;maxwidth,308;

SectionCollapsedX=-92
SectionCollapsedY=0
SectionCollapsedOnCommand=zoom,0.625;horizalign,left;shadowlength,1;maxwidth,308;skewx,0

SectionExpandedX=-92
SectionExpandedY=0
SectionExpandedOnCommand=zoom,0.625;horizalign,left;shadowlength,1;maxwidth,308;skewx,-0.125

SectionCountX=150
SectionCountY=0
SectionCountOnCommand=zoom,0.625;horizalign,right;shadowlength,1;diffusebottomedge,0.9,0.9,0.9,1

SortX=22
SortY=0
SortOnCommand=shadowlength,0;zoom,1;maxwidth,256

RouletteX=22
RouletteY=0
RouletteOnCommand=shadowlength,1;zoom,1;

SongNameOnCommand=

[TextBanner]
TitleOnCommand=horizalign,right;x,132;skewx,-0.1;shadowlength,1;maxwidth,308
SubtitleOnCommand=horizalign,right;x,140;skewx,-0.1;shadowlength,1;maxwidth,308
ArtistOnCommand=hidden,1
ArtistPrependString=""
AfterSetCommand=%TextBannerNCRX

[ScreenSongOptions]
Class=ScreenSongOptions
Fallback=ScreenOptions
PrevScreen=@SelectFirstOptionsScreen()
NextScreen=ScreenPlayerOptions
Game=Change the current game type with this option.
TimerSeconds=30
StyleIcon=0
PlayMusic=0
LineNames=1,2,3,4,5,6,7,8
OptionMenuFlags=
Line1=list,LifeType
Line2=list,BarDrain
Line3=list,BatLives
Line4=list,Fail
Line5=list,AssistTick
Line6=list,Rate
Line7=list,AutoAdjust
Line8=list,SaveScores
StopMusicOnBack=0

[ScreenGameplay]
CompareScores=0
StageOnCommand=zoom,0

# and now for something completely different
LifeP1OnCommand=hidden,1
LifeP2OnCommand=hidden,1
ScoreP1OnCommand=hidden,1
ScoreP2OnCommand=hidden,1

[ScreenPlayerOptionsMods]
Fallback=ScreenOptions
Class=ScreenPlayerOptions
NextScreen=ScreenTitleMenu
PrevScreen=ScreenSelectMusic
PlayMusic=0
TimerSeconds=30
StyleIcon=0
LineNames=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
OptionMenuFlags=
Line1=list,Speed
Line2=list,Accel
Line3=list,Effect
Line4=list,Appearance
Line5=list,Turn
Line6=list,Insert
Line7=list,Scroll
Line8=list,NoteSkins
Line9=list,Holds
Line10=list,Mines
Line11=list,Hide
Line12=list,Persp
Line13=list,ScoreDisplay
Line14=list,Steps
Line15=list,Characters
CancelAllP1X=
CancelAllP1Y=
CancelAllP1OnCommand=
CancelAllP1ShowCommand=
CancelAllP2X=
CancelAllP2Y=
CancelAllP2OnCommand=
CancelAllP2ShowCommand=

[Judgment]
BooOddCommand=
GoodOddCommand=
GreatOddCommand=
MarvelousOddCommand=
MissOddCommand=
PerfectOddCommand=
BooEvenCommand=
GoodEvenCommand=
GreatEvenCommand=
MarvelousEvenCommand=
MissEvenCommand=
PerfectEvenCommand=
MarvelousCommand=%function(self) JudgmentTween(self) end
PerfectCommand=%function(self) JudgmentTween(self) end
GreatCommand=%function(self) JudgmentTween(self) end
GoodCommand=%function(self) JudgmentTween(self) end
BooCommand=%function(self) JudgmentTween(self) end
MissCommand=%function(self) JudgmentTween(self) end

[Combo]
ShowComboAt=4
LabelX=0
LabelY=SCREEN_CENTER_Y-190
LabelOnCommand=shadowlength,4;VertAlign,bottom
NumberX=0
NumberY=SCREEN_CENTER_Y-220
NumberOnCommand=shadowlength,4;VertAlign,bottom
NumberMinZoom=0.5
NumberMaxZoom=0.9
NumberMaxZoomAt=300
PulseCommand=%function(self) ComboTween(self) end
FullComboGreatsCommand=
FullComboPerfectsCommand=
FullComboMarvelousesCommand=
FullComboBrokenCommand=
ShowMissCombo=0

[ScreenPlayerOptionsSystem]
Fallback=ScreenOptions
Class=ScreenPlayerOptions
NextScreen=ScreenPlayerOptions
PrevScreen=ScreenPlayerOptions
LineNames=3,4,5,6,7,11
OptionMenuFlags=explanations
Line3=conf,JudgeDifficulty
Line4=conf,LifeDifficulty
Line5=conf,ProgressiveLifebar
Line6=conf,ProgressiveStageLifebar
Line7=conf,ProgressiveNonstopLifebar
Line11=conf,MarvelousTiming

[ScreenPlayerOptions]
Fallback=ScreenSelectMaster
Class=ScreenSelectMaster
PlayMusic=1
ChoiceNames=1,2,3,4
Choice1=screen,ScreenPlayerOptionsMods
Choice2=screen,ScreenSongOptions
Choice3=screen,ScreenPlayerOptionsSystem
#Choice4=stopmusic;Style,single;song,Goreshit/Beautiful Loli Thing;steps,expert;screen,ScreenStage
Choice4=stopmusic;screen,ScreenGameplay
ChoiceOnCommand=zoom,0
HelpOnCommand=hidden,1

NextScreen=ScreenTitleMenu
PrevScreen=ScreenSelectMusic
#
PrepareScreens=ScreenGameplay
#
ShowHeader=1
ShowFooter=1

ScrollerX=SCREEN_CENTER_X-295
ScrollerOnCommand=addy,-SCREEN_HEIGHT;linear,0.25;addy,SCREEN_HEIGHT
ScrollerOffCommand=
ScrollerCancelCommand=accelerate,1;zoomx,SCREEN_WIDTH
ScrollerY=SCREEN_CENTER_Y-150
ScrollerTransform=function(self,offset,itemIndex,numItems) self:x( offset * 200 ); self:y( math.cos(offset / (math.pi*2)) * 20); end
