/* 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 )
+static 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; i<AUDIO_CHANNELS; i++ ){
/*
* Trace out a random point, near the player to try and determine water areas
*/
-VG_STATIC
+static
enum audio_sprite_type world_audio_sample_sprite_random(v3f origin, v3f output)
{
v3f chance = { (vg_randf64()-0.5f) * 30.0f,
world_instance *world = world_current_instance();
- if( ray_world( world, pos, (v3f){0.0f,-1.0f,0.0f}, &contact ) ){
+ if( ray_world( world, pos, (v3f){0.0f,-1.0f,0.0f}, &contact,
+ k_material_flag_ghosts ) ){
struct world_surface *mat = ray_hit_surface( world, &contact );
if( mat->info.surface_prop == k_surface_prop_grass){
return k_audio_sprite_type_none;
}
-VG_STATIC void world_audio_sample_distances( v3f co, int *index, float *value )
+static void world_audio_sample_distances( v3f co, int *index, float *value )
{
float inr3 = 0.57735027,
inr2 = 0.70710678118;
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;
}