"Welcome back to <del>Celebrity Jeopardy</del> sm-ssc. I thought I was done with this, but <del>Regis Philbin</del> ScreenSelectMaster Cursor, that mongrel idiot, decided to <del>do a Celebrity Millionaire</del> crash, and <del>network</del> theming competition being what it is, I stand before you, a broken and miserable man."

For people who hate comedy in their commit logs, this makes it so ScreenSelectMaster only runs commands on cursors for human players (hopefully avoiding Access Violation in the process).
This commit is contained in:
AJ Kelly
2011-01-30 16:37:47 -06:00
parent f889228af8
commit f60d27afb7
2 changed files with 20 additions and 9 deletions
+4
View File
@@ -13,6 +13,10 @@ _____________________________________________________________________________
sm-ssc v1.2.1 | 2011011? sm-ssc v1.2.1 | 2011011?
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
20110130
--------
* [ScreenSelectMaster] Only run cursor commands on players if they exist. [AJ]
20110118 20110118
-------- --------
* [ScreenEdit] Move editing Timing Data to their own mini menu. [Wolfman2000] * [ScreenEdit] Move editing Timing Data to their own mini menu. [Wolfman2000]
+7
View File
@@ -550,6 +550,8 @@ bool ScreenSelectMaster::ChangePage( int iNewChoice )
MESSAGEMAN->Broadcast( msg ); MESSAGEMAN->Broadcast( msg );
FOREACH( PlayerNumber, vpns, p ) FOREACH( PlayerNumber, vpns, p )
{
if( GAMESTATE->IsHumanPlayer(*p) )
{ {
if( SHOW_CURSOR ) if( SHOW_CURSOR )
{ {
@@ -560,6 +562,7 @@ bool ScreenSelectMaster::ChangePage( int iNewChoice )
if( SHOW_SCROLLER ) if( SHOW_SCROLLER )
m_vsprScroll[*p][m_iChoice[*p]]->HandleMessage( msg ); m_vsprScroll[*p][m_iChoice[*p]]->HandleMessage( msg );
} }
}
if( newPage == PAGE_2 ) if( newPage == PAGE_2 )
{ {
@@ -648,10 +651,13 @@ bool ScreenSelectMaster::ChangeSelection( PlayerNumber pn, MenuDir dir, int iNew
} }
if( SHOW_CURSOR ) if( SHOW_CURSOR )
{
if( GAMESTATE->IsHumanPlayer(*p) )
{ {
m_sprCursor[*p]->PlayCommand( "Change" ); m_sprCursor[*p]->PlayCommand( "Change" );
m_sprCursor[*p]->SetXY( GetCursorX(*p), GetCursorY(*p) ); m_sprCursor[*p]->SetXY( GetCursorX(*p), GetCursorY(*p) );
} }
}
if( SHOW_SCROLLER ) if( SHOW_SCROLLER )
{ {
@@ -880,6 +886,7 @@ void ScreenSelectMaster::TweenOnScreen()
{ {
FOREACH( PlayerNumber, vpns, p ) FOREACH( PlayerNumber, vpns, p )
{ {
if( GAMESTATE->IsHumanPlayer(*p) )
m_sprCursor[*p]->SetXY( GetCursorX(*p), GetCursorY(*p) ); m_sprCursor[*p]->SetXY( GetCursorX(*p), GetCursorY(*p) );
} }
} }