Fix possible segfault
This commit is contained in:
+17
-12
@@ -316,6 +316,11 @@ void handleKeyDownMain( SDL_Keycode key, SDLPP::Scene &scene ) {
|
||||
g_cur_shadow->rotate();
|
||||
updateShadow(scene);
|
||||
break;
|
||||
case SDLK_SPACE:
|
||||
if(!g_cur_object)
|
||||
break;
|
||||
g_cur_object->setPos(g_cur_shadow->getPos());
|
||||
break;
|
||||
case SDLK_r:
|
||||
scene.getRenderer().setRenderColiders(
|
||||
!scene.getRenderer().getRenderColiders() );
|
||||
@@ -565,6 +570,16 @@ void gameOverSceneInput( std::shared_ptr< SDLPP::Scene > /*UNUSED*/, int /*UNUSE
|
||||
pollEventsGameOver();
|
||||
}
|
||||
|
||||
void saveOptions() {
|
||||
g_update_colors = true;
|
||||
if(g_cur_shadow)
|
||||
g_cur_shadow->setHidden(!g_show_shadow);
|
||||
g_pause = 0;
|
||||
g_main_scene->setPrevTicks( SDL_GetTicks() );
|
||||
g_active_scenes.pop_back();
|
||||
g_input_functions.pop_back();
|
||||
}
|
||||
|
||||
void handleKeyDownOptions( SDL_Keycode key ) {
|
||||
switch ( key ) {
|
||||
case SDLK_r:
|
||||
@@ -626,24 +641,14 @@ void handleKeyDownOptions( SDL_Keycode key ) {
|
||||
case SDLK_RETURN:
|
||||
switch ( g_options_select ) {
|
||||
case 2:
|
||||
g_update_colors = true;
|
||||
g_cur_shadow->setHidden(!g_show_shadow);
|
||||
g_pause = 0;
|
||||
g_main_scene->setPrevTicks( SDL_GetTicks() );
|
||||
g_active_scenes.pop_back();
|
||||
g_input_functions.pop_back();
|
||||
saveOptions();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case SDLK_ESCAPE:
|
||||
g_update_colors = true;
|
||||
g_cur_shadow->setHidden(!g_show_shadow);
|
||||
g_pause = 0;
|
||||
g_main_scene->setPrevTicks( SDL_GetTicks() );
|
||||
g_active_scenes.pop_back();
|
||||
g_input_functions.pop_back();
|
||||
saveOptions();
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user