X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=world_audio.c;h=b33d62fd30ee80d678e214583424037d3e6bb57c;hb=95f6ef1a859423a0d9554ac6a9f4c6cbd8bb540c;hp=510a13401726753e9ab669558bdcbd62d0a15bb2;hpb=73adac381b2c72f08293416a960942dc40db3c7f;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/world_audio.c b/world_audio.c index 510a134..b33d62f 100644 --- a/world_audio.c +++ b/world_audio.c @@ -1,19 +1,16 @@ -#ifndef WORLD_AUDIO_C -#define WORLD_AUDIO_C - #include "audio.h" #include "world_audio.h" /* finds any active playing in world and fades them out, we can only do this * while unloading */ -VG_STATIC void world_fadeout_audio( world_instance *world ) +void world_fadeout_audio( world_instance *world ) { if( world->status != k_world_status_unloading ){ vg_fatal_error( "World status must be set to 'unloading', to fadeout" " audio.\n" ); } - u8 world_id = (world - world_static.worlds) + 1; + u8 world_id = (world - world_static.instances) + 1; audio_lock(); for( u32 i=0; iinfo.surface_prop == k_surface_prop_grass){ @@ -62,13 +59,13 @@ enum audio_sprite_type world_audio_sample_sprite_random(v3f origin, v3f output) float dist = fabsf(output[1] - origin[1]); - if( world->water.enabled && dist<=40.0f ) + if( world->water.enabled && dist<=40.0f && !(world->info.flags&0x2) ) return k_audio_sprite_type_water; else return k_audio_sprite_type_none; } -VG_STATIC void world_audio_sample_distances( v3f co, int *index, float *value ) +void world_audio_sample_distances( v3f co, int *index, float *value ) { float inr3 = 0.57735027, inr2 = 0.70710678118; @@ -104,7 +101,8 @@ VG_STATIC void world_audio_sample_distances( v3f co, int *index, float *value ) float dist = 200.0f; for( int i=0; i<10; i++ ){ - if( ray_world( world_current_instance(), rc, rd, &ray ) ){ + if( ray_world( world_current_instance(), rc, rd, &ray, + k_material_flag_ghosts ) ){ dist = (float)i*5.0f + ray.dist; break; } @@ -115,7 +113,7 @@ VG_STATIC void world_audio_sample_distances( v3f co, int *index, float *value ) distances[si] = dist; - if( vg_audio.debug_ui && vg_lines.draw ){ + if( vg_audio.debug_ui && vg_lines.enabled ){ for( int i=0; i<14; i++ ){ if( distances[i] != 200.0f ){ u32 colours[] = { VG__RED, VG__BLUE, VG__GREEN, @@ -139,5 +137,3 @@ VG_STATIC void world_audio_sample_distances( v3f co, int *index, float *value ) if( si >= 14 ) si = 0; } - -#endif /* WORLD_AUDIO_C */