diff options
Diffstat (limited to 'frontends')
| -rw-r--r-- | frontends/gl/main.c | 8 | ||||
| -rw-r--r-- | frontends/gl/skin.c | 11 | ||||
| -rw-r--r-- | frontends/gl/skin.h | 1 |
3 files changed, 18 insertions, 2 deletions
diff --git a/frontends/gl/main.c b/frontends/gl/main.c index 90dbfa5..ca2db71 100644 --- a/frontends/gl/main.c +++ b/frontends/gl/main.c @@ -138,6 +138,14 @@ void handle_game_events(cetris_ui *ui, tetris_board_t *board) { SDL_PauseAudioDevice(ui->audio_device, 0); board->game.lock_event--; } + + if (board->game.move_event > 0) { + SDL_QueueAudio(ui->audio_device, board->skin.move_sound.wav_buffer, + board->skin.move_sound.wav_length); + + SDL_PauseAudioDevice(ui->audio_device, 0); + board->game.move_event--; + } } diff --git a/frontends/gl/skin.c b/frontends/gl/skin.c index 661f815..a38ec4c 100644 --- a/frontends/gl/skin.c +++ b/frontends/gl/skin.c @@ -47,6 +47,8 @@ void load_skin(char* name, cetris_skin_t* skin) { load_element(&skin->playboard, "playboard.png", dir_name); load_element(&skin->border, "border.png", dir_name); + char file[125]; + int clear_count = 5; skin->clear_sound = (audio_clip_t *)malloc(sizeof(audio_clip_t) * 5); @@ -59,9 +61,14 @@ void load_skin(char* name, cetris_skin_t* skin) { load_multiple_audio("four_clear", dir_name, &tetris_count, skin->tetris_sound); - format_str(name, 120, "%s/lock.wav", dir_name); - SDL_LoadWAV(name, &skin->lock_sound.wav_spec, + format_str(file, 125, "%s/lock.wav", dir_name); + SDL_LoadWAV(file, &skin->lock_sound.wav_spec, &skin->lock_sound.wav_buffer, &skin->lock_sound.wav_length); + + format_str(file, 125, "%s/move.wav", dir_name); + SDL_LoadWAV(file, &skin->move_sound.wav_spec, + &skin->move_sound.wav_buffer, &skin->move_sound.wav_length); + } diff --git a/frontends/gl/skin.h b/frontends/gl/skin.h index b7aa994..ed0e82b 100644 --- a/frontends/gl/skin.h +++ b/frontends/gl/skin.h @@ -13,6 +13,7 @@ typedef struct { audio_clip_t *clear_sound; audio_clip_t *tetris_sound; audio_clip_t lock_sound; + audio_clip_t move_sound; } cetris_skin_t; void load_skin(char* name, cetris_skin_t* skin); |