water splash
authorhgn <hgodden00@gmail.com>
Tue, 4 Oct 2022 18:36:41 +0000 (19:36 +0100)
committerhgn <hgodden00@gmail.com>
Tue, 4 Oct 2022 18:36:41 +0000 (19:36 +0100)
audio.h
player.h
player_audio.h
player_physics.h
sound_src/gate_ambient.ogg
sound_src/gate_lap.ogg
sound_src/gate_pass.ogg
sound_src/splash.ogg [new file with mode: 0644]

diff --git a/audio.h b/audio.h
index 3e4fc77b7ba9c1fdc87a094d735f61856094b77d..25f3aa839020f8f3acb1e34896ca7c5a922d1eeb 100644 (file)
--- a/audio.h
+++ b/audio.h
@@ -18,8 +18,8 @@ audio_clip audio_board[] =
    {.path="sound/reverb.ogg",.source_mode=k_audio_source_compressed }
 };
 
-audio_clip audio_ding =
-{ .path = "sound/ding.ogg", .source_mode=k_audio_source_compressed };
+audio_clip audio_splash =
+{ .path = "sound/splash.ogg", .source_mode=k_audio_source_compressed };
 
 audio_clip audio_jumps[] = {
    { .path = "sound/jump0.ogg", .source_mode=k_audio_source_compressed, },
@@ -136,7 +136,7 @@ static void audio_init(void)
 
    audio_clip_loadn( audio_board, vg_list_size(audio_board) );
    audio_clip_loadn( audio_ambience, vg_list_size(audio_ambience) );
-   audio_clip_loadn( &audio_ding, 1 );
+   audio_clip_loadn( &audio_splash, 1 );
    audio_clip_loadn( &audio_gate_pass, 1 );
    audio_clip_loadn( &audio_gate_lap, 1 );
    audio_clip_loadn( &audio_gate_ambient, 1 );
index e4c0fced5366a51cbfa083bd514d53e030705629..fa9335cde0b1bd769f92b54b5a43edf5326b4d09 100644 (file)
--- a/player.h
+++ b/player.h
@@ -220,12 +220,13 @@ static void player_update(void)                                          /* 2 */
       phys->on_board ^= 0x1;
    }
 
-   if( (glfwGetKey( vg_window, GLFW_KEY_O ) || (phys->rb.co[1] < 0.0f)) &&
-       !player.is_dead)
+#if 0
+   if( (glfwGetKey( vg_window, GLFW_KEY_O ) ))
    {
       player_ragdoll_copy_model( phys->rb.v );
       player.is_dead = 1;
    }
+#endif
 
    if( player.is_dead )
    {
index b5ba7359fc85524c8b02f2c9b4d59d9c87a440db..5402b7a6d424db068532d2f537016aec19483266 100644 (file)
@@ -10,15 +10,6 @@ static void player_audio(void)
 {
    struct player_phys *phys = &player.phys;
 
-   static int _ding = 0;
-   
-   int last = _ding;
-   _ding = glfwGetKey(vg_window, GLFW_KEY_C);
-
-   int trigger_ding = 0;
-   if( _ding && !last )
-      trigger_ding = 1;
-
    static int _air = 0;
 
    int l2 = _air;
@@ -53,9 +44,6 @@ static void player_audio(void)
    float *cam = player.camera[3],
          *pos = phys->rb.co;
    
-   if( trigger_ding )
-      audio_player_playclip( &audio_player_extra, &audio_ding );
-
    audio_player_set_position( &audio_player0, phys->rb.co );
    audio_player_set_position( &audio_player1, phys->rb.co );
    audio_player_set_position( &audio_player2, phys->rb.co );
@@ -112,6 +100,7 @@ static void player_audio(void)
       audio_player_set_vol( &audio_player0, 0.0f );
       audio_player_set_vol( &audio_player1, 0.0f );
       audio_player_set_vol( &audio_player2, 0.0f );
+      audio_player_set_vol( &audio_player3, 0.0f );
 
       int walk_phase = 0;
       if( vg_fractf(player.walk_timer) > 0.5f )
index f9584a2cd3fb916d4e7c1b8305f08bc8c0dfad2d..ebcb55e32a3de4bacb70e7bdbbddf380e12c8edf 100644 (file)
@@ -547,7 +547,8 @@ static void player_physics(void)
          phys->jump = 0.0f;
 
          player.jump_time = vg_time;
-
+         
+         /* TODO: Move to audio file */
          audio_lock();
          audio_player_set_flags( &audio_player_extra, AUDIO_FLAG_SPACIAL_3D );
          audio_player_set_position( &audio_player_extra, phys->rb.co );
@@ -587,6 +588,18 @@ static void player_do_motion(void)
    float horizontal = vg_get_axis("horizontal"),
          vertical = vg_get_axis("vertical");
 
+   if( (phys->rb.co[1] < 0.0f) && !player.is_dead )
+   {
+      audio_lock();
+      audio_player_set_flags( &audio_player_extra, AUDIO_FLAG_SPACIAL_3D );
+      audio_player_set_position( &audio_player_extra, phys->rb.co );
+      audio_player_set_vol( &audio_player_extra, 20.0f );
+      audio_player_playclip( &audio_player_extra, &audio_splash );
+      audio_unlock();
+
+      player_kill();
+   }
+
    if( phys->on_board )
       player_physics();
    else
@@ -659,7 +672,7 @@ static void player_do_motion(void)
          player_save_frame();
 
          audio_lock();
-         audio_play_oneshot( &audio_gate_lap, 1.0f );
+         audio_play_oneshot( &audio_gate_pass, 1.0f );
          audio_unlock();
          break;
       }
index 3cf2dd738922572e336814e8de73edaa1eae1986..b30ff3c32f80802ecf62903cee824e3031f36195 100644 (file)
Binary files a/sound_src/gate_ambient.ogg and b/sound_src/gate_ambient.ogg differ
index 5bc5d73ac706af2e22c8e9fbe287cf1e00b5dd5d..85a3cdc667da150fd0a80fdfeaa0729638efb364 100644 (file)
Binary files a/sound_src/gate_lap.ogg and b/sound_src/gate_lap.ogg differ
index 9cbb487b82646f0c1c93ab5c224fe2bc8139d542..8067a12e68e8acfec8851ce0f773ad1b735081b9 100644 (file)
Binary files a/sound_src/gate_pass.ogg and b/sound_src/gate_pass.ogg differ
diff --git a/sound_src/splash.ogg b/sound_src/splash.ogg
new file mode 100644 (file)
index 0000000..2af25f4
Binary files /dev/null and b/sound_src/splash.ogg differ