void game_switch_state(Game *game, Game_state state)
{
+ game->cursor.style = CURSOR_STYLE_POINTER;
if (state == GAME_STATE_LEVEL_PICKER) {
level_picker_clean_selection(&game->level_picker);
}
SDL_BLENDFACTOR_ONE,
SDL_BLENDFACTOR_ZERO,
SDL_BLENDOPERATION_ADD)) < 0) {
- log_warn("SDL error: %s\n", SDL_GetError());
+ log_warn("SDL error while setting blending mode for `%s': %s\n",
+ cursor_style_tex_files[style],
+ SDL_GetError());
}
}
} break;
case GAME_STATE_LEVEL_PICKER: {
- if (level_picker_update(&game->level_picker, delta_time) < 0) {
+ if (level_picker_update(&game->level_picker, &game->camera, delta_time) < 0) {
return -1;
}
} break;
case SDL_KEYDOWN: {
- if (event->key.keysym.sym == SDLK_q && event->key.keysym.mod & KMOD_CTRL) {
+ if ((event->key.keysym.sym == SDLK_q && event->key.keysym.mod & KMOD_CTRL) ||
+ (event->key.keysym.sym == SDLK_F4 && event->key.keysym.mod & KMOD_ALT)) {
game_switch_state(game, GAME_STATE_QUIT);
return 0;
}