bullet -> RowFrame, separate normal row and exit row graphics, break cursor and underline into per-player graphics (don't hard-code players numbers)
This commit is contained in:
+40
-29
@@ -84,8 +84,8 @@ void OptionRowType::Load( const RString &sType, Actor *pParent )
|
|||||||
{
|
{
|
||||||
m_sType = sType;
|
m_sType = sType;
|
||||||
|
|
||||||
BULLET_X .Load(sType,"BulletX");
|
ROWFRAME_X .Load(sType,"RowFrameX");
|
||||||
BULLET_ON_COMMAND .Load(sType,"BulletOnCommand");
|
ROWFRAME_ON_COMMAND .Load(sType,"RowFrameOnCommand");
|
||||||
TITLE_X .Load(sType,"TitleX");
|
TITLE_X .Load(sType,"TitleX");
|
||||||
TITLE_ON_COMMAND .Load(sType,"TitleOnCommand");
|
TITLE_ON_COMMAND .Load(sType,"TitleOnCommand");
|
||||||
TITLE_GAIN_FOCUS_COMMAND .Load(sType,"TitleGainFocusCommand");
|
TITLE_GAIN_FOCUS_COMMAND .Load(sType,"TitleGainFocusCommand");
|
||||||
@@ -111,11 +111,15 @@ void OptionRowType::Load( const RString &sType, Actor *pParent )
|
|||||||
SHOW_OPTION_ICONS .Load(sType,"ShowOptionIcons");
|
SHOW_OPTION_ICONS .Load(sType,"ShowOptionIcons");
|
||||||
SHOW_UNDERLINES .Load(sType,"ShowUnderlines");
|
SHOW_UNDERLINES .Load(sType,"ShowUnderlines");
|
||||||
|
|
||||||
m_textItemParent.LoadFromFont( THEME->GetPathF(sType,"item") );
|
m_textItem.LoadFromFont( THEME->GetPathF(sType,"item") );
|
||||||
if( SHOW_UNDERLINES )
|
if( SHOW_UNDERLINES )
|
||||||
m_UnderlineParent.Load( sType, OptionsCursor::underline );
|
{
|
||||||
|
FOREACH_PlayerNumber( p )
|
||||||
|
m_Underline[p].Load( sType, OptionsCursor::underline, p );
|
||||||
|
}
|
||||||
m_textTitle.LoadFromFont( THEME->GetPathF(sType,"title") );
|
m_textTitle.LoadFromFont( THEME->GetPathF(sType,"title") );
|
||||||
m_sprBullet.Load( ActorUtil::MakeActor( THEME->GetPathG(sType,"bullet"), pParent ) );
|
m_sprRowFrameNormal.Load( ActorUtil::MakeActor( THEME->GetPathG(sType,"RowFrameNormal"), pParent ) );
|
||||||
|
m_sprRowFrameExit.Load( ActorUtil::MakeActor( THEME->GetPathG(sType,"RowFrameExit"), pParent ) );
|
||||||
if( SHOW_OPTION_ICONS )
|
if( SHOW_OPTION_ICONS )
|
||||||
m_OptionIcon.Load( sType );
|
m_OptionIcon.Load( sType );
|
||||||
}
|
}
|
||||||
@@ -129,7 +133,7 @@ void OptionRow::LoadNormal( OptionRowHandler *pHand, bool bFirstItemGoesDown )
|
|||||||
FOREACH_CONST( RString, m_pHand->m_vsReloadRowMessages, m )
|
FOREACH_CONST( RString, m_pHand->m_vsReloadRowMessages, m )
|
||||||
MESSAGEMAN->Subscribe( this, *m );
|
MESSAGEMAN->Subscribe( this, *m );
|
||||||
|
|
||||||
ChoicesChanged();
|
ChoicesChanged( RowType_Normal );
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionRow::LoadExit()
|
void OptionRow::LoadExit()
|
||||||
@@ -143,10 +147,10 @@ void OptionRow::LoadExit()
|
|||||||
pHand->m_Def.m_bOneChoiceForAllPlayers = true;
|
pHand->m_Def.m_bOneChoiceForAllPlayers = true;
|
||||||
m_pHand = pHand;
|
m_pHand = pHand;
|
||||||
|
|
||||||
ChoicesChanged();
|
ChoicesChanged( RowType_Exit );
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionRow::ChoicesChanged()
|
void OptionRow::ChoicesChanged( RowType type )
|
||||||
{
|
{
|
||||||
ASSERT( !m_pHand->m_Def.m_vsChoices.empty() );
|
ASSERT( !m_pHand->m_Def.m_vsChoices.empty() );
|
||||||
|
|
||||||
@@ -177,7 +181,7 @@ void OptionRow::ChoicesChanged()
|
|||||||
m_vbSelected[p].insert( m_vbSelected[p].begin(), false );
|
m_vbSelected[p].insert( m_vbSelected[p].begin(), false );
|
||||||
}
|
}
|
||||||
|
|
||||||
InitText();
|
InitText( type );
|
||||||
|
|
||||||
/* When choices change, the old focus position is meaningless; reset it. */
|
/* When choices change, the old focus position is meaningless; reset it. */
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
@@ -235,7 +239,7 @@ RString OptionRow::GetRowTitle() const
|
|||||||
|
|
||||||
/* Set up text, underlines and titles for options. This can be called
|
/* Set up text, underlines and titles for options. This can be called
|
||||||
* as soon as m_pHand->m_Def is available. */
|
* as soon as m_pHand->m_Def is available. */
|
||||||
void OptionRow::InitText()
|
void OptionRow::InitText( RowType type )
|
||||||
{
|
{
|
||||||
/* If we have elements already, we're being updated from a new set of options.
|
/* If we have elements already, we're being updated from a new set of options.
|
||||||
* Delete the old ones. */
|
* Delete the old ones. */
|
||||||
@@ -247,9 +251,18 @@ void OptionRow::InitText()
|
|||||||
m_textTitle = new BitmapText( m_pParentType->m_textTitle );
|
m_textTitle = new BitmapText( m_pParentType->m_textTitle );
|
||||||
m_Frame.AddChild( m_textTitle );
|
m_Frame.AddChild( m_textTitle );
|
||||||
|
|
||||||
m_sprBullet = m_pParentType->m_sprBullet->Copy();
|
switch( type )
|
||||||
m_sprBullet->SetDrawOrder(-1); // under title
|
{
|
||||||
m_Frame.AddChild( m_sprBullet );
|
DEFAULT_FAIL( type );
|
||||||
|
case RowType_Normal:
|
||||||
|
m_sprRowFrame = m_pParentType->m_sprRowFrameNormal->Copy();
|
||||||
|
break;
|
||||||
|
case RowType_Exit:
|
||||||
|
m_sprRowFrame = m_pParentType->m_sprRowFrameExit->Copy();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
m_sprRowFrame->SetDrawOrder(-1); // under title
|
||||||
|
m_Frame.AddChild( m_sprRowFrame );
|
||||||
|
|
||||||
if( m_pParentType->SHOW_OPTION_ICONS )
|
if( m_pParentType->SHOW_OPTION_ICONS )
|
||||||
{
|
{
|
||||||
@@ -276,7 +289,7 @@ void OptionRow::InitText()
|
|||||||
// If the items will go off the edge of the screen, then force LAYOUT_SHOW_ONE_IN_ROW.
|
// If the items will go off the edge of the screen, then force LAYOUT_SHOW_ONE_IN_ROW.
|
||||||
float fBaseZoom = 1.0f;
|
float fBaseZoom = 1.0f;
|
||||||
{
|
{
|
||||||
BitmapText bt( m_pParentType->m_textItemParent );
|
BitmapText bt( m_pParentType->m_textItem );
|
||||||
bt.RunCommands( m_pParentType->ITEMS_ON_COMMAND );
|
bt.RunCommands( m_pParentType->ITEMS_ON_COMMAND );
|
||||||
|
|
||||||
/* Figure out the width of the row. */
|
/* Figure out the width of the row. */
|
||||||
@@ -313,7 +326,7 @@ void OptionRow::InitText()
|
|||||||
// init text
|
// init text
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
{
|
{
|
||||||
BitmapText *pText = new BitmapText( m_pParentType->m_textItemParent );
|
BitmapText *pText = new BitmapText( m_pParentType->m_textItem );
|
||||||
m_textItems.push_back( pText );
|
m_textItems.push_back( pText );
|
||||||
|
|
||||||
pText->RunCommands( m_pParentType->ITEMS_ON_COMMAND );
|
pText->RunCommands( m_pParentType->ITEMS_ON_COMMAND );
|
||||||
@@ -335,10 +348,9 @@ void OptionRow::InitText()
|
|||||||
// init underlines
|
// init underlines
|
||||||
if( m_pParentType->SHOW_UNDERLINES && GetRowType() != OptionRow::RowType_Exit )
|
if( m_pParentType->SHOW_UNDERLINES && GetRowType() != OptionRow::RowType_Exit )
|
||||||
{
|
{
|
||||||
OptionsCursor *pCursor = new OptionsCursor( m_pParentType->m_UnderlineParent );
|
OptionsCursor *pCursor = new OptionsCursor( m_pParentType->m_Underline[p] );
|
||||||
m_Underline[p].push_back( pCursor );
|
m_Underline[p].push_back( pCursor );
|
||||||
|
|
||||||
pCursor->Set( p );
|
|
||||||
int iWidth, iX, iY;
|
int iWidth, iX, iY;
|
||||||
GetWidthXY( p, 0, iWidth, iX, iY );
|
GetWidthXY( p, 0, iWidth, iX, iY );
|
||||||
pCursor->SetX( float(iX) );
|
pCursor->SetX( float(iX) );
|
||||||
@@ -353,7 +365,7 @@ void OptionRow::InitText()
|
|||||||
for( unsigned c=0; c<m_pHand->m_Def.m_vsChoices.size(); c++ )
|
for( unsigned c=0; c<m_pHand->m_Def.m_vsChoices.size(); c++ )
|
||||||
{
|
{
|
||||||
// init text
|
// init text
|
||||||
BitmapText *bt = new BitmapText( m_pParentType->m_textItemParent );
|
BitmapText *bt = new BitmapText( m_pParentType->m_textItem );
|
||||||
m_textItems.push_back( bt );
|
m_textItems.push_back( bt );
|
||||||
RString sText = GetThemedItemText( c );
|
RString sText = GetThemedItemText( c );
|
||||||
bt->SetText( sText );
|
bt->SetText( sText );
|
||||||
@@ -371,9 +383,8 @@ void OptionRow::InitText()
|
|||||||
{
|
{
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
{
|
{
|
||||||
OptionsCursor *ul = new OptionsCursor( m_pParentType->m_UnderlineParent );
|
OptionsCursor *ul = new OptionsCursor( m_pParentType->m_Underline[p] );
|
||||||
m_Underline[p].push_back( ul );
|
m_Underline[p].push_back( ul );
|
||||||
ul->Set( p );
|
|
||||||
ul->SetX( fX );
|
ul->SetX( fX );
|
||||||
ul->SetBarWidth( int(fItemWidth) );
|
ul->SetBarWidth( int(fItemWidth) );
|
||||||
}
|
}
|
||||||
@@ -403,11 +414,11 @@ void OptionRow::InitText()
|
|||||||
switch( GetRowType() )
|
switch( GetRowType() )
|
||||||
{
|
{
|
||||||
case OptionRow::RowType_Normal:
|
case OptionRow::RowType_Normal:
|
||||||
m_sprBullet->SetX( m_pParentType->BULLET_X );
|
m_sprRowFrame->SetX( m_pParentType->ROWFRAME_X );
|
||||||
m_sprBullet->RunCommands( m_pParentType->BULLET_ON_COMMAND );
|
m_sprRowFrame->RunCommands( m_pParentType->ROWFRAME_ON_COMMAND );
|
||||||
break;
|
break;
|
||||||
case OptionRow::RowType_Exit:
|
case OptionRow::RowType_Exit:
|
||||||
m_sprBullet->SetVisible( false );
|
m_sprRowFrame->SetVisible( false );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -579,9 +590,9 @@ void OptionRow::UpdateEnabledDisabled()
|
|||||||
else if( bRowEnabled ) color = m_pParentType->COLOR_NOT_SELECTED;
|
else if( bRowEnabled ) color = m_pParentType->COLOR_NOT_SELECTED;
|
||||||
else color = m_pParentType->COLOR_DISABLED;
|
else color = m_pParentType->COLOR_DISABLED;
|
||||||
|
|
||||||
if( m_sprBullet != NULL )
|
if( m_sprRowFrame != NULL )
|
||||||
m_sprBullet->SetGlobalDiffuseColor( color );
|
m_sprRowFrame->SetGlobalDiffuseColor( color );
|
||||||
m_sprBullet->PlayCommand( bThisRowHasFocusByAny ? "GainFocus" : "LoseFocus" );
|
m_sprRowFrame->PlayCommand( bThisRowHasFocusByAny ? "GainFocus" : "LoseFocus" );
|
||||||
m_textTitle->SetGlobalDiffuseColor( color );
|
m_textTitle->SetGlobalDiffuseColor( color );
|
||||||
|
|
||||||
|
|
||||||
@@ -662,10 +673,10 @@ void OptionRow::Update( float fDeltaTime )
|
|||||||
|
|
||||||
void OptionRow::SetOptionIcon( PlayerNumber pn, const RString &sText, GameCommand &gc )
|
void OptionRow::SetOptionIcon( PlayerNumber pn, const RString &sText, GameCommand &gc )
|
||||||
{
|
{
|
||||||
// update bullet
|
// update row frame
|
||||||
Message msg( "Refresh" );
|
Message msg( "Refresh" );
|
||||||
msg.SetParam( "GameCommand", &gc );
|
msg.SetParam( "GameCommand", &gc );
|
||||||
m_sprBullet->HandleMessage( msg );
|
m_sprRowFrame->HandleMessage( msg );
|
||||||
if( m_OptionIcons[pn] != NULL )
|
if( m_OptionIcons[pn] != NULL )
|
||||||
m_OptionIcons[pn]->Set( sText );
|
m_OptionIcons[pn]->Set( sText );
|
||||||
}
|
}
|
||||||
@@ -839,7 +850,7 @@ void OptionRow::Reload()
|
|||||||
|
|
||||||
case OptionRowHandler::RELOAD_CHANGED_ALL:
|
case OptionRowHandler::RELOAD_CHANGED_ALL:
|
||||||
{
|
{
|
||||||
ChoicesChanged();
|
ChoicesChanged( m_RowType );
|
||||||
|
|
||||||
vector<PlayerNumber> vpns;
|
vector<PlayerNumber> vpns;
|
||||||
FOREACH_HumanPlayer( p )
|
FOREACH_HumanPlayer( p )
|
||||||
|
|||||||
+14
-13
@@ -22,15 +22,16 @@ public:
|
|||||||
private:
|
private:
|
||||||
RString m_sType;
|
RString m_sType;
|
||||||
|
|
||||||
BitmapText m_textItemParent;
|
BitmapText m_textItem;
|
||||||
OptionsCursor m_UnderlineParent;
|
OptionsCursor m_Underline[NUM_PLAYERS];
|
||||||
AutoActor m_sprBullet;
|
AutoActor m_sprRowFrameNormal;
|
||||||
|
AutoActor m_sprRowFrameExit;
|
||||||
BitmapText m_textTitle;
|
BitmapText m_textTitle;
|
||||||
OptionIcon m_OptionIcon;
|
OptionIcon m_OptionIcon;
|
||||||
|
|
||||||
// metrics
|
// metrics
|
||||||
ThemeMetric<float> BULLET_X;
|
ThemeMetric<float> ROWFRAME_X;
|
||||||
ThemeMetric<apActorCommands> BULLET_ON_COMMAND;
|
ThemeMetric<apActorCommands> ROWFRAME_ON_COMMAND;
|
||||||
ThemeMetric<float> TITLE_X;
|
ThemeMetric<float> TITLE_X;
|
||||||
ThemeMetric<apActorCommands> TITLE_ON_COMMAND;
|
ThemeMetric<apActorCommands> TITLE_ON_COMMAND;
|
||||||
ThemeMetric<apActorCommands> TITLE_GAIN_FOCUS_COMMAND;
|
ThemeMetric<apActorCommands> TITLE_GAIN_FOCUS_COMMAND;
|
||||||
@@ -75,10 +76,15 @@ public:
|
|||||||
void ImportOptions( const vector<PlayerNumber> &vpns );
|
void ImportOptions( const vector<PlayerNumber> &vpns );
|
||||||
int ExportOptions( const vector<PlayerNumber> &vpns, bool bRowHasFocus[NUM_PLAYERS] );
|
int ExportOptions( const vector<PlayerNumber> &vpns, bool bRowHasFocus[NUM_PLAYERS] );
|
||||||
|
|
||||||
void InitText();
|
enum RowType
|
||||||
|
{
|
||||||
|
RowType_Normal,
|
||||||
|
RowType_Exit
|
||||||
|
};
|
||||||
|
void InitText( RowType type );
|
||||||
void AfterImportOptions( PlayerNumber pn );
|
void AfterImportOptions( PlayerNumber pn );
|
||||||
|
|
||||||
void ChoicesChanged();
|
void ChoicesChanged( RowType type );
|
||||||
void PositionUnderlines( PlayerNumber pn );
|
void PositionUnderlines( PlayerNumber pn );
|
||||||
void PositionIcons( PlayerNumber pn );
|
void PositionIcons( PlayerNumber pn );
|
||||||
void UpdateText( PlayerNumber pn );
|
void UpdateText( PlayerNumber pn );
|
||||||
@@ -99,11 +105,6 @@ public:
|
|||||||
bool GetSelected( PlayerNumber pn, int iChoice ) const;
|
bool GetSelected( PlayerNumber pn, int iChoice ) const;
|
||||||
void SetSelected( PlayerNumber pn, int iChoice, bool b );
|
void SetSelected( PlayerNumber pn, int iChoice, bool b );
|
||||||
|
|
||||||
enum RowType
|
|
||||||
{
|
|
||||||
RowType_Normal,
|
|
||||||
RowType_Exit
|
|
||||||
};
|
|
||||||
const OptionRowDefinition &GetRowDef() const;
|
const OptionRowDefinition &GetRowDef() const;
|
||||||
OptionRowDefinition &GetRowDef();
|
OptionRowDefinition &GetRowDef();
|
||||||
RowType GetRowType() const { return m_RowType; }
|
RowType GetRowType() const { return m_RowType; }
|
||||||
@@ -139,7 +140,7 @@ protected:
|
|||||||
vector<BitmapText *> m_textItems; // size depends on m_bRowIsLong and which players are joined
|
vector<BitmapText *> m_textItems; // size depends on m_bRowIsLong and which players are joined
|
||||||
vector<OptionsCursor *> m_Underline[NUM_PLAYERS]; // size depends on m_bRowIsLong and which players are joined
|
vector<OptionsCursor *> m_Underline[NUM_PLAYERS]; // size depends on m_bRowIsLong and which players are joined
|
||||||
|
|
||||||
Actor *m_sprBullet;
|
Actor *m_sprRowFrame;
|
||||||
BitmapText *m_textTitle;
|
BitmapText *m_textTitle;
|
||||||
OptionIcon *m_OptionIcons[NUM_PLAYERS];
|
OptionIcon *m_OptionIcons[NUM_PLAYERS];
|
||||||
|
|
||||||
|
|||||||
@@ -37,9 +37,10 @@ OptionsCursorPlus::OptionsCursorPlus( const OptionsCursorPlus &cpy ):
|
|||||||
this->AddChild( m_sprCanGoRight );
|
this->AddChild( m_sprCanGoRight );
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionsCursor::Load( const RString &sType, Element elem )
|
void OptionsCursor::Load( const RString &sType, Element elem, PlayerNumber pn )
|
||||||
{
|
{
|
||||||
RString sPath = THEME->GetPathG( sType, ssprintf("%s 3x2",elem==cursor?"cursor":"underline") );
|
RString sElem = ssprintf( "%s %s 3x1", elem==cursor?"cursor":"underline", PlayerNumberToString(pn).c_str() );
|
||||||
|
RString sPath = THEME->GetPathG( sType, sElem );
|
||||||
|
|
||||||
m_sprMiddle.Load( sPath );
|
m_sprMiddle.Load( sPath );
|
||||||
m_sprLeft.Load( sPath );
|
m_sprLeft.Load( sPath );
|
||||||
@@ -48,11 +49,15 @@ void OptionsCursor::Load( const RString &sType, Element elem )
|
|||||||
m_sprMiddle.StopAnimating();
|
m_sprMiddle.StopAnimating();
|
||||||
m_sprLeft.StopAnimating();
|
m_sprLeft.StopAnimating();
|
||||||
m_sprRight.StopAnimating();
|
m_sprRight.StopAnimating();
|
||||||
|
|
||||||
|
m_sprLeft.SetState( 0 );
|
||||||
|
m_sprMiddle.SetState( 1 );
|
||||||
|
m_sprRight.SetState( 2 );
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionsCursorPlus::Load( const RString &sType, Element elem )
|
void OptionsCursorPlus::Load( const RString &sType, Element elem, PlayerNumber pn )
|
||||||
{
|
{
|
||||||
OptionsCursor::Load( sType, elem );
|
OptionsCursor::Load( sType, elem, pn );
|
||||||
|
|
||||||
m_sprCanGoLeft.Load( THEME->GetPathG(sType,"CanGoLeft") );
|
m_sprCanGoLeft.Load( THEME->GetPathG(sType,"CanGoLeft") );
|
||||||
m_sprCanGoRight.Load( THEME->GetPathG(sType,"CanGoRight") );
|
m_sprCanGoRight.Load( THEME->GetPathG(sType,"CanGoRight") );
|
||||||
@@ -63,20 +68,6 @@ void OptionsCursorPlus::Load( const RString &sType, Element elem )
|
|||||||
SetCanGo( false, false );
|
SetCanGo( false, false );
|
||||||
}
|
}
|
||||||
|
|
||||||
void OptionsCursor::Set( PlayerNumber pn )
|
|
||||||
{
|
|
||||||
int iBaseFrameNo;
|
|
||||||
switch( pn )
|
|
||||||
{
|
|
||||||
case PLAYER_1: iBaseFrameNo = 0; break;
|
|
||||||
case PLAYER_2: iBaseFrameNo = 3; break;
|
|
||||||
default: ASSERT(0); return;
|
|
||||||
}
|
|
||||||
m_sprLeft.SetState( iBaseFrameNo+0 );
|
|
||||||
m_sprMiddle.SetState( iBaseFrameNo+1 );
|
|
||||||
m_sprRight.SetState( iBaseFrameNo+2 );
|
|
||||||
}
|
|
||||||
|
|
||||||
void OptionsCursorPlus::SetCanGo( bool bCanGoLeft, bool bCanGoRight )
|
void OptionsCursorPlus::SetCanGo( bool bCanGoLeft, bool bCanGoRight )
|
||||||
{
|
{
|
||||||
m_sprCanGoLeft->EnableAnimation( bCanGoLeft );
|
m_sprCanGoLeft->EnableAnimation( bCanGoLeft );
|
||||||
|
|||||||
@@ -16,8 +16,7 @@ public:
|
|||||||
OptionsCursor( const OptionsCursor &cpy );
|
OptionsCursor( const OptionsCursor &cpy );
|
||||||
|
|
||||||
enum Element { cursor, underline };
|
enum Element { cursor, underline };
|
||||||
void Load( const RString &sType, Element elem );
|
void Load( const RString &sType, Element elem, PlayerNumber pn );
|
||||||
void Set( PlayerNumber pn );
|
|
||||||
|
|
||||||
void StopTweening();
|
void StopTweening();
|
||||||
void BeginTweening( float fSecs );
|
void BeginTweening( float fSecs );
|
||||||
@@ -37,7 +36,7 @@ public:
|
|||||||
OptionsCursorPlus();
|
OptionsCursorPlus();
|
||||||
OptionsCursorPlus( const OptionsCursorPlus &cpy );
|
OptionsCursorPlus( const OptionsCursorPlus &cpy );
|
||||||
|
|
||||||
void Load( const RString &sType, Element elem );
|
void Load( const RString &sType, Element elem, PlayerNumber pn );
|
||||||
|
|
||||||
void StopTweening();
|
void StopTweening();
|
||||||
void BeginTweening( float fSecs );
|
void BeginTweening( float fSecs );
|
||||||
|
|||||||
@@ -133,8 +133,7 @@ void ScreenOptions::Init()
|
|||||||
// init cursors
|
// init cursors
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
{
|
{
|
||||||
m_Cursor[p].Load( m_sName, OptionsCursorPlus::cursor );
|
m_Cursor[p].Load( m_sName, OptionsCursorPlus::cursor, p );
|
||||||
m_Cursor[p].Set( p );
|
|
||||||
m_Cursor[p].SetName( "Cursor" );
|
m_Cursor[p].SetName( "Cursor" );
|
||||||
LOAD_ALL_COMMANDS( m_Cursor[p] );
|
LOAD_ALL_COMMANDS( m_Cursor[p] );
|
||||||
m_framePage.AddChild( &m_Cursor[p] );
|
m_framePage.AddChild( &m_Cursor[p] );
|
||||||
|
|||||||
Reference in New Issue
Block a user