This commit is contained in:
Jonathan Payne
2014-09-04 20:23:28 -07:00
3 changed files with 34 additions and 16 deletions
@@ -25,10 +25,10 @@ t[#t+1] = LoadActor("Header") .. {
};
t[#t+1] = LoadFont("Common Bold") .. {
Name="HeaderText";
Name="HeaderShadow";
Text=Screen.String("HeaderText");
InitCommand=cmd(x,-SCREEN_CENTER_X+24;y,26;zoom,1;horizalign,left;shadowlength,0;maxwidth,200);
OnCommand=cmd(visible,IsVisible();skewx,-0.125;diffuse,color("#ffd400");shadowlength,2;shadowcolor,BoostColor(color("#ffd40077"),0.25));
InitCommand=cmd(x,-SCREEN_CENTER_X+26;y,28;zoom,1;horizalign,left;maxwidth,200);
OnCommand=cmd(visible,IsVisible();skewx,-0.125;diffuse,BoostColor(color("#ffd40077"),0.375););
UpdateScreenHeaderMessageCommand=function(self,param)
self:settext(param.Header);
end;
@@ -40,6 +40,16 @@ t[#t+1] = Def.Quad {
OnCommand=cmd(diffuse,color("#ffd400");shadowlength,2;shadowcolor,BoostColor(color("#ffd40077"),0.25);linear,0.25;zoomtowidth,192;faderight,0.5);
};
t[#t+1] = LoadFont("Common Bold") .. {
Name="HeaderText";
Text=Screen.String("HeaderText");
InitCommand=cmd(x,-SCREEN_CENTER_X+24;y,26;zoom,1;horizalign,left;shadowlength,0;maxwidth,200);
OnCommand=cmd(visible,IsVisible();skewx,-0.125;diffuse,color("#ffd400"););
UpdateScreenHeaderMessageCommand=function(self,param)
self:settext(param.Header);
end;
};
t.BeginCommand=function(self)
self:SetUpdateFunction( Update );
end
+19 -13
View File
@@ -429,34 +429,29 @@ bool ScreenMapControllers::Input( const InputEventPlus &input )
}
break;
case KEY_LEFT: // Move the selection left, wrapping up.
if(CursorOnAction())
if(!CursorCanGoLeft())
{
break;
}
if( m_CurSlot == 0 && m_CurController == 0 )
{
break; // can't go left any more
}
BeforeChangeFocus();
m_CurSlot--;
if( m_CurSlot < 0 )
if(m_CurSlot == 0)
{
m_CurSlot = NUM_CHANGABLE_SLOTS-1;
m_CurController--;
--m_CurController;
}
else
{
--m_CurSlot;
}
AfterChangeFocus();
m_soundChange.Play();
bHandled = true;
break;
case KEY_RIGHT: // Move the selection right, wrapping down.
if(CursorOnAction())
if(!CursorCanGoRight())
{
break;
}
if( m_CurSlot == NUM_CHANGABLE_SLOTS-1 && m_CurController == NUM_GameController-1 )
{
break; // can't go right any more
}
BeforeChangeFocus();
m_CurSlot++;
if( m_CurSlot > NUM_CHANGABLE_SLOTS-1 )
@@ -625,6 +620,17 @@ bool ScreenMapControllers::CursorCanGoDown()
return m_CurButton < m_KeysToMap.size() + m_Actions.size();
}
bool ScreenMapControllers::CursorCanGoLeft()
{
return !CursorOnAction() && (m_CurSlot > 0 || m_CurController > 0);
}
bool ScreenMapControllers::CursorCanGoRight()
{
return !CursorOnAction() && (m_CurSlot < NUM_CHANGABLE_SLOTS-1 ||
m_CurController < NUM_GameController-1);
}
int ScreenMapControllers::CurKeyIndex()
{
// The header row is at 0, so subtract 1 from m_CurButton.
+2
View File
@@ -34,6 +34,8 @@ private:
bool CursorOnKey();
bool CursorCanGoUp();
bool CursorCanGoDown();
bool CursorCanGoLeft();
bool CursorCanGoRight();
int CurKeyIndex();
int CurActionIndex();
void SetCursorFromSetListCurrent();