add labels for P1's and P2's groups of slots
This commit is contained in:
@@ -1033,6 +1033,7 @@ HelpText=&UP; &DOWN; to change line &LEFT; &RIGHT; to select between options::
|
|||||||
[ScreenMapControllers]
|
[ScreenMapControllers]
|
||||||
HelpText=Use arrow keys to navigate, ENTER to assign, SPACE to clear, ESCAPE when done.
|
HelpText=Use arrow keys to navigate, ENTER to assign, SPACE to clear, ESCAPE when done.
|
||||||
InvalidButton=That key can not be mapped.
|
InvalidButton=That key can not be mapped.
|
||||||
|
%s slots=%s slots
|
||||||
|
|
||||||
[ScreenMiniMenu]
|
[ScreenMiniMenu]
|
||||||
HelpText=
|
HelpText=
|
||||||
@@ -1465,3 +1466,7 @@ Finish >=Finish >
|
|||||||
Cancel=Cancel
|
Cancel=Cancel
|
||||||
< Back=< Back
|
< Back=< Back
|
||||||
Install a package=Install a package
|
Install a package=Install a package
|
||||||
|
|
||||||
|
[PlayerNumber]
|
||||||
|
P1=P1
|
||||||
|
P2=P2
|
||||||
|
|||||||
@@ -2584,7 +2584,11 @@ LineOffCommand=%function(self) local LeftToRight = math.mod(self.ItemIndex, 2) =
|
|||||||
ErrorX=SCREEN_CENTER_X
|
ErrorX=SCREEN_CENTER_X
|
||||||
ErrorY=SCREEN_CENTER_Y
|
ErrorY=SCREEN_CENTER_Y
|
||||||
ErrorOnCommand=diffuse,#00FF00;zoom,0.8
|
ErrorOnCommand=diffuse,#00FF00;zoom,0.8
|
||||||
TitleOnCommand=x,SCREEN_CENTER_X;y,-6;zoom,0.7;shadowlength,2
|
LabelP1OnCommand=x,SCREEN_CENTER_X-195;zoom,0.7;shadowlength,2;diffusealpha,0;linear,0.5;diffusealpha,1
|
||||||
|
LabelP1OffCommand=linear,0.5;diffusealpha,0
|
||||||
|
LabelP2OnCommand=x,SCREEN_CENTER_X+195;zoom,0.7;shadowlength,2;diffusealpha,0;linear,0.5;diffusealpha,1
|
||||||
|
LabelP2OffCommand=linear,0.5;diffusealpha,0
|
||||||
|
PrimaryOnCommand=x,SCREEN_CENTER_X;y,-6;zoom,0.7;shadowlength,2
|
||||||
SecondaryOnCommand=x,SCREEN_CENTER_X;y,6;zoom,0.5;shadowlength,2
|
SecondaryOnCommand=x,SCREEN_CENTER_X;y,6;zoom,0.5;shadowlength,2
|
||||||
MappedToP1S1Command=x,SCREEN_CENTER_X-270
|
MappedToP1S1Command=x,SCREEN_CENTER_X-270
|
||||||
MappedToP1S2Command=x,SCREEN_CENTER_X-195
|
MappedToP1S2Command=x,SCREEN_CENTER_X-195
|
||||||
@@ -2593,9 +2597,9 @@ MappedToP2S1Command=x,SCREEN_CENTER_X+120
|
|||||||
MappedToP2S2Command=x,SCREEN_CENTER_X+195
|
MappedToP2S2Command=x,SCREEN_CENTER_X+195
|
||||||
MappedToP2S3Command=x,SCREEN_CENTER_X+270
|
MappedToP2S3Command=x,SCREEN_CENTER_X+270
|
||||||
MappedToOnCommand=diffuse,#808080;zoom,0.5;shadowlength,0
|
MappedToOnCommand=diffuse,#808080;zoom,0.5;shadowlength,0
|
||||||
MappedToWaitingCommand=diffuse,#FF8080;pulse;effectperiod,0.5;effectmagnitude,0.5,0.6,1
|
MappedToWaitingCommand=diffuse,#FF8080;pulse;effectperiod,0.5;effectmagnitude,0.8,1.3,1
|
||||||
MappedToMappedInputCommand=diffuse,#FFFFFF;stopeffect
|
MappedToMappedInputCommand=diffuse,#808080;diffuseshift;effectcolor2,#808080;effectcolor1,#FFFFFF
|
||||||
MappedToGainFocusCommand=diffuse,#FFFFFF;stopeffect
|
MappedToGainFocusCommand=diffuse,#808080;diffuseshift;effectcolor2,#808080;effectcolor1,#FFFFFF
|
||||||
MappedToLoseFocusCommand=diffuse,#808080;stopeffect
|
MappedToLoseFocusCommand=diffuse,#808080;stopeffect
|
||||||
|
|
||||||
[ScreenCenterImage]
|
[ScreenCenterImage]
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ static const int NUM_CHANGABLE_SLOTS = NUM_SHOWN_GAME_TO_DEVICE_SLOTS-1;
|
|||||||
|
|
||||||
REGISTER_SCREEN_CLASS( ScreenMapControllers );
|
REGISTER_SCREEN_CLASS( ScreenMapControllers );
|
||||||
|
|
||||||
|
static LocalizedString PLAYER_SLOTS( "ScreenMapControllers", "%s slots" );
|
||||||
void ScreenMapControllers::Init()
|
void ScreenMapControllers::Init()
|
||||||
{
|
{
|
||||||
ScreenWithMenuElements::Init();
|
ScreenWithMenuElements::Init();
|
||||||
@@ -56,18 +57,39 @@ void ScreenMapControllers::Init()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int iRow = 0;
|
||||||
|
|
||||||
|
// header row
|
||||||
|
{
|
||||||
|
for( int c=0; c<MAX_GAME_CONTROLLERS; c++ )
|
||||||
|
{
|
||||||
|
BitmapText &text = m_textLabel[c];
|
||||||
|
text.LoadFromFont( THEME->GetPathF("Common","title") );
|
||||||
|
PlayerNumber pn = (PlayerNumber)c;
|
||||||
|
text.SetName( "Label"+PlayerNumberToString(pn) );
|
||||||
|
RString sText = ssprintf(PLAYER_SLOTS.GetValue(), PlayerNumberToLocalizedString(pn).c_str());
|
||||||
|
text.SetText( sText );
|
||||||
|
ActorUtil::LoadAllCommands( text, m_sName );
|
||||||
|
m_Line[iRow].AddChild( &m_textLabel[c] );
|
||||||
|
}
|
||||||
|
m_LineScroller.AddChild( &m_Line[iRow] );
|
||||||
|
|
||||||
|
iRow++;
|
||||||
|
}
|
||||||
|
|
||||||
|
// normal rows
|
||||||
for( unsigned b=0; b<m_KeysToMap.size(); b++ )
|
for( unsigned b=0; b<m_KeysToMap.size(); b++ )
|
||||||
{
|
{
|
||||||
KeyToMap *pKey = &m_KeysToMap[b];
|
KeyToMap *pKey = &m_KeysToMap[b];
|
||||||
|
|
||||||
{
|
{
|
||||||
BitmapText *pName = new BitmapText;
|
BitmapText *pName = new BitmapText;
|
||||||
pName->SetName( "Title" );
|
pName->SetName( "Primary" );
|
||||||
pName->LoadFromFont( THEME->GetPathF("Common","title") );
|
pName->LoadFromFont( THEME->GetPathF("Common","title") );
|
||||||
RString sText = GameButtonToLocalizedString( GAMESTATE->GetCurrentGame(), pKey->m_GameButton );
|
RString sText = GameButtonToLocalizedString( GAMESTATE->GetCurrentGame(), pKey->m_GameButton );
|
||||||
pName->SetText( sText );
|
pName->SetText( sText );
|
||||||
ActorUtil::LoadAllCommands( *pName, m_sName );
|
ActorUtil::LoadAllCommands( *pName, m_sName );
|
||||||
m_Line[b].AddChild( pName );
|
m_Line[iRow].AddChild( pName );
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
BitmapText *pSecondary = new BitmapText;
|
BitmapText *pSecondary = new BitmapText;
|
||||||
@@ -79,35 +101,39 @@ void ScreenMapControllers::Init()
|
|||||||
sText = MenuButtonToLocalizedString( mb );
|
sText = MenuButtonToLocalizedString( mb );
|
||||||
ActorUtil::LoadAllCommands( *pSecondary, m_sName );
|
ActorUtil::LoadAllCommands( *pSecondary, m_sName );
|
||||||
pSecondary->SetText( sText );
|
pSecondary->SetText( sText );
|
||||||
m_Line[b].AddChild( pSecondary );
|
m_Line[iRow].AddChild( pSecondary );
|
||||||
}
|
}
|
||||||
|
|
||||||
for( int p=0; p<MAX_GAME_CONTROLLERS; p++ )
|
for( int c=0; c<MAX_GAME_CONTROLLERS; c++ )
|
||||||
{
|
{
|
||||||
for( int s=0; s<NUM_SHOWN_GAME_TO_DEVICE_SLOTS; s++ )
|
for( int s=0; s<NUM_SHOWN_GAME_TO_DEVICE_SLOTS; s++ )
|
||||||
{
|
{
|
||||||
pKey->m_textMappedTo[p][s] = new BitmapText;
|
pKey->m_textMappedTo[c][s] = new BitmapText;
|
||||||
pKey->m_textMappedTo[p][s]->SetName( "MappedTo" );
|
pKey->m_textMappedTo[c][s]->SetName( "MappedTo" );
|
||||||
pKey->m_textMappedTo[p][s]->LoadFromFont( THEME->GetPathF(m_sName,"entry") );
|
pKey->m_textMappedTo[c][s]->LoadFromFont( THEME->GetPathF(m_sName,"entry") );
|
||||||
pKey->m_textMappedTo[p][s]->RunCommands( MAPPED_TO_COMMAND(p,s) );
|
pKey->m_textMappedTo[c][s]->RunCommands( MAPPED_TO_COMMAND(c,s) );
|
||||||
ActorUtil::LoadAllCommands( *pKey->m_textMappedTo[p][s], m_sName );
|
ActorUtil::LoadAllCommands( *pKey->m_textMappedTo[c][s], m_sName );
|
||||||
m_Line[b].AddChild( pKey->m_textMappedTo[p][s] );
|
m_Line[iRow].AddChild( pKey->m_textMappedTo[c][s] );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
m_Line[b].DeleteChildrenWhenDone();
|
m_Line[iRow].DeleteChildrenWhenDone();
|
||||||
m_Line[b].SetName( "Line" );
|
m_Line[iRow].SetName( "Line" );
|
||||||
ActorUtil::LoadAllCommands( m_Line[b], m_sName );
|
ActorUtil::LoadAllCommands( m_Line[iRow], m_sName );
|
||||||
m_LineScroller.AddChild( &m_Line[b] );
|
m_LineScroller.AddChild( &m_Line[iRow] );
|
||||||
|
|
||||||
|
iRow++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// exit row
|
||||||
{
|
{
|
||||||
m_pExit = ActorUtil::MakeActor( THEME->GetPathG(m_sName,"exit") );
|
m_pExit = ActorUtil::MakeActor( THEME->GetPathG(m_sName,"exit") );
|
||||||
m_pExit->SetName( "Exit" );
|
m_pExit->SetName( "Exit" );
|
||||||
ActorUtil::LoadAllCommands( *m_pExit, m_sName );
|
ActorUtil::LoadAllCommands( *m_pExit, m_sName );
|
||||||
|
|
||||||
unsigned b = m_KeysToMap.size();
|
m_Line[iRow].AddChild( m_pExit );
|
||||||
m_Line[b].AddChild( m_pExit );
|
m_LineScroller.AddChild( &m_Line[iRow] );
|
||||||
m_LineScroller.AddChild( &m_Line[b] );
|
|
||||||
|
iRow++;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_LineScroller.SetName( "LineScroller" );
|
m_LineScroller.SetName( "LineScroller" );
|
||||||
|
|||||||
@@ -44,10 +44,13 @@ private:
|
|||||||
BitmapText *m_textMappedTo[MAX_GAME_CONTROLLERS][NUM_SHOWN_GAME_TO_DEVICE_SLOTS];
|
BitmapText *m_textMappedTo[MAX_GAME_CONTROLLERS][NUM_SHOWN_GAME_TO_DEVICE_SLOTS];
|
||||||
};
|
};
|
||||||
vector<KeyToMap> m_KeysToMap;
|
vector<KeyToMap> m_KeysToMap;
|
||||||
|
|
||||||
|
BitmapText m_textLabel[MAX_GAME_CONTROLLERS];
|
||||||
|
|
||||||
// owned by m_Line
|
// owned by m_Line
|
||||||
Actor *m_pExit;
|
Actor *m_pExit;
|
||||||
|
|
||||||
ActorFrame m_Line[MAX_GAME_BUTTONS+1]; // XXX
|
ActorFrame m_Line[MAX_GAME_BUTTONS+2]; // label, normal lines, exit
|
||||||
ActorScroller m_LineScroller;
|
ActorScroller m_LineScroller;
|
||||||
|
|
||||||
RageSound m_soundChange;
|
RageSound m_soundChange;
|
||||||
|
|||||||
Reference in New Issue
Block a user