diff --git a/ambience.zip b/ambience.zip index f53cd7a..fc128d9 100644 Binary files a/ambience.zip and b/ambience.zip differ diff --git a/ambience/init.lua b/ambience/init.lua index c36362b..1f54fc5 100644 --- a/ambience/init.lua +++ b/ambience/init.lua @@ -1,5 +1,5 @@ -------------------------------------------------------------------------------------------------------- ---Ambiance Configuration for version .19 +--Ambiance Configuration for version .25 (bugfix, -20 on last minp for sea detection. local max_frequency_all = 1000 --the larger you make this number the lest frequent ALL sounds will happen recommended values between 100-2000. @@ -23,10 +23,15 @@ local beach_frequent_frequency = 1000 --waves local beach_frequent_volume = 1.0 local water_frequent_frequency = 1000 --water sounds local water_frequent_volume = 1.0 +local desert_frequency = 20 --coyote +local desert_volume = 1.0 +local desert_frequent_frequency = 700 --desertwind +local desert_frequent_volume = 1.0 local music_frequency = 7 --music (suggestion: keep this one low like around 6) local music_volume = 0.3 --End of Config ---------------------------------------------------------------------------------------------------- +local counter=0--***************** local played_on_start = false local night = { handler = {}, @@ -92,6 +97,18 @@ local beach_frequent = { {name="fiji_beach", length=43.5, gain=beach_frequent_volume} } +local desert = { + handler = {}, + frequency = desert_frequency, + {name="coyote2", length=2.5, gain=desert_volume}, + {name="RattleSnake", length=8, gain=desert_volume} +} + +local desert_frequent = { + handler = {}, + frequency = desert_frequent_frequency, + {name="DesertMonolithMed", length=34.5, gain=desert_frequent_volume} +} local water = { handler = {}, @@ -160,32 +177,62 @@ local is_daytime = function() return (minetest.env:get_timeofday() > 0.2 and minetest.env:get_timeofday() < 0.8) end ---[[old -local nodes_in_range = function(pos, search_distance, node_name) - local search_p = {x=0, y=0, z=0} - local nodes_found = 0 - for p_x=(pos.x-search_distance), (pos.x+search_distance) do - for p_y=(pos.y-search_distance), (pos.y+search_distance) do - for p_z=(pos.z-search_distance), (pos.z+search_distance) do - local search_n = minetest.env:get_node({x=p_x, y=p_y, z=p_z}) - if search_n.name == node_name then - nodes_found = nodes_found + 1 - end - end - end - end - return nodes_found - --minetest.chat_send_all("Range: " .. tostring(search_distance) .. " | Found (" .. node_name .. ": " .. nodes_found .. ")") -end --]] - local nodes_in_range = function(pos, search_distance, node_name) minp = {x=pos.x-search_distance,y=pos.y-search_distance, z=pos.z-search_distance} maxp = {x=pos.x+search_distance,y=pos.y+search_distance, z=pos.z+search_distance} nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) --- minetest.chat_send_all("Found (" .. node_name .. ": " .. #nodes .. ")") + --minetest.chat_send_all("Found (" .. node_name .. ": " .. #nodes .. ")") return #nodes end +local nodes_in_coords = function(minp, maxp, node_name) + nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) + --minetest.chat_send_all("Found (" .. node_name .. ": " .. #nodes .. ")") + return #nodes +end + +local atleast_nodes_in_grid = function(pos, search_distance, height, node_name, threshold) +-- counter = counter +1 +-- minetest.chat_send_all("counter: (" .. counter .. ")") + minp = {x=pos.x-search_distance,y=height, z=pos.z+20} + maxp = {x=pos.x+search_distance,y=height, z=pos.z+20} + nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) +-- minetest.chat_send_all("z+Found (" .. node_name .. ": " .. #nodes .. ")") + if #nodes >= threshold then + return true + end + totalnodes = #nodes + minp = {x=pos.x-search_distance,y=height, z=pos.z-20} + maxp = {x=pos.x+search_distance,y=height, z=pos.z-20} + nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) +-- minetest.chat_send_all("z-Found (" .. node_name .. ": " .. #nodes .. ")") + if #nodes >= threshold then + return true + end + totalnodes = totalnodes + #nodes + maxp = {x=pos.x+20,y=height, z=pos.z+search_distance} + minp = {x=pos.x+20,y=height, z=pos.z-search_distance} + nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) +-- minetest.chat_send_all("x+Found (" .. node_name .. ": " .. #nodes .. ")") + if #nodes >= threshold then + return true + end + totalnodes = totalnodes + #nodes + maxp = {x=pos.x-20,y=height, z=pos.z+search_distance} + minp = {x=pos.x-20,y=height, z=pos.z-search_distance} + nodes = minetest.env:find_nodes_in_area(minp, maxp, node_name) +-- minetest.chat_send_all("x+Found (" .. node_name .. ": " .. #nodes .. ")") + if #nodes >= threshold then + return true + end + totalnodes = totalnodes + #nodes +-- minetest.chat_send_all("Found total(" .. totalnodes .. ")") + if totalnodes >= threshold*2 then + return true + end + return false +end + local get_ambience = function(player) local pos = player:getpos() @@ -224,16 +271,32 @@ local get_ambience = function(player) return {flowing_water=flowing_water, flowing_water2=flowing_water2} end end - pos.y = pos.y-2 - nodename = minetest.env:get_node(pos).name - --minetest.chat_send_all("Found " .. nodename .. pos.y ) - if string.find(nodename, "default:sand") and pos.y < 5 then +--if we are near sea level and there is lots of water around the area + if pos.y < 7 and pos.y >0 and atleast_nodes_in_grid(pos, 60, 1, "default:water_source", 51 ) then if music then return {beach=beach, beach_frequent=beach_frequent, music=music} else return {beach=beach, beach_frequent=beach_frequent} end end + + + + desert_in_range = (nodes_in_range(pos, 6, "default:desert_sand")+nodes_in_range(pos, 6, "default:desert_stone")) + --minetest.chat_send_all("desertcount: " .. desert_in_range .. ",".. pos.y ) + if desert_in_range >250 then + if music then + return {desert=desert, desert_frequent=desert_frequent, music=music} + else + return {desert=desert, desert_frequent=desert_frequent} + end + end + + pos.y = pos.y-2 + nodename = minetest.env:get_node(pos).name +-- minetest.chat_send_all("Found " .. nodename .. pos.y ) + + if player:getpos().y < 0 then if music then return {cave=cave, cave_frequent=cave_frequent, music=music} @@ -322,7 +385,26 @@ local stop_sound = function(still_playing, player) list.handler[player_name] = nil end end - + if still_playing.desert == nil then + local list = desert + if list.handler[player_name] ~= nil then + if list.on_stop ~= nil then + minetest.sound_play(list.on_stop, {to_player=player:get_player_name()}) + end + minetest.sound_stop(list.handler[player_name]) + list.handler[player_name] = nil + end + end + if still_playing.desert_frequent == nil then + local list = desert_frequent + if list.handler[player_name] ~= nil then + if list.on_stop ~= nil then + minetest.sound_play(list.on_stop, {to_player=player:get_player_name()}) + end + minetest.sound_stop(list.handler[player_name]) + list.handler[player_name] = nil + end + end if still_playing.night == nil then local list = night if list.handler[player_name] ~= nil then diff --git a/ambience/sounds/Best Cardinal Bird.ogg b/ambience/sounds/Best Cardinal Bird.ogg index 876325f..4a93395 100644 Binary files a/ambience/sounds/Best Cardinal Bird.ogg and b/ambience/sounds/Best Cardinal Bird.ogg differ diff --git a/ambience/sounds/Crickets_At_NightCombo.ogg b/ambience/sounds/Crickets_At_NightCombo.ogg index cf06139..d0df327 100644 Binary files a/ambience/sounds/Crickets_At_NightCombo.ogg and b/ambience/sounds/Crickets_At_NightCombo.ogg differ diff --git a/ambience/sounds/DesertMonolithMed.ogg b/ambience/sounds/DesertMonolithMed.ogg new file mode 100644 index 0000000..93757b1 Binary files /dev/null and b/ambience/sounds/DesertMonolithMed.ogg differ diff --git a/ambience/sounds/FoamOfTheSea.ogg b/ambience/sounds/FoamOfTheSea.ogg index ec2c0f7..4590235 100644 Binary files a/ambience/sounds/FoamOfTheSea.ogg and b/ambience/sounds/FoamOfTheSea.ogg differ diff --git a/ambience/sounds/Mass_Effect_Uncharted_Worlds.ogg b/ambience/sounds/Mass_Effect_Uncharted_Worlds.ogg index e90875e..e5a231e 100644 Binary files a/ambience/sounds/Mass_Effect_Uncharted_Worlds.ogg and b/ambience/sounds/Mass_Effect_Uncharted_Worlds.ogg differ diff --git a/ambience/sounds/RattleSnake.ogg b/ambience/sounds/RattleSnake.ogg new file mode 100644 index 0000000..6cebf02 Binary files /dev/null and b/ambience/sounds/RattleSnake.ogg differ diff --git a/ambience/sounds/Single_Water_Droplet.ogg b/ambience/sounds/Single_Water_Droplet.ogg index fd4a91c..b732453 100644 Binary files a/ambience/sounds/Single_Water_Droplet.ogg and b/ambience/sounds/Single_Water_Droplet.ogg differ diff --git a/ambience/sounds/SoundLicenses.txt b/ambience/sounds/SoundLicenses.txt index c8f51b3..cbdfe78 100644 --- a/ambience/sounds/SoundLicenses.txt +++ b/ambience/sounds/SoundLicenses.txt @@ -71,8 +71,15 @@ ComboWind uses: --seagull, Attribution Noncommercial License., hazure, http://www.freesound.org/people/hazure/sounds/23707/, +desert: +coyote2, Attribution License, rogerforeman, http://www.freesound.org/people/rogerforeman/sounds/68068/ +http://www.freesound.org/people/Proxima4/sounds/104319/ +Desert Monolith.wav, Creative Commons 0 License, Proxima4, http://www.freesound.org/people/Proxima4/sounds/104319/ +Rattlesnake Rattle, Public Domain, fws.gov, http://soundbible.com/237-Rattlesnake-Rattle.html ----------------Not used yet: +desert: +Desert Simple.wav, Creative Commons 0 License, Proxima4, http://www.freesound.org/people/Proxima4/sounds/104320/ diff --git a/ambience/sounds/Splash.ogg b/ambience/sounds/Splash.ogg index bba1752..8a433a7 100644 Binary files a/ambience/sounds/Splash.ogg and b/ambience/sounds/Splash.ogg differ diff --git a/ambience/sounds/bird.ogg b/ambience/sounds/bird.ogg index af705f5..1ee96ad 100644 Binary files a/ambience/sounds/bird.ogg and b/ambience/sounds/bird.ogg differ diff --git a/ambience/sounds/birdsongnl.ogg b/ambience/sounds/birdsongnl.ogg index c2a67d1..89d262b 100644 Binary files a/ambience/sounds/birdsongnl.ogg and b/ambience/sounds/birdsongnl.ogg differ diff --git a/ambience/sounds/bluejay.ogg b/ambience/sounds/bluejay.ogg index a50675d..56b60e2 100644 Binary files a/ambience/sounds/bluejay.ogg and b/ambience/sounds/bluejay.ogg differ diff --git a/ambience/sounds/coyote2.ogg b/ambience/sounds/coyote2.ogg new file mode 100644 index 0000000..dc29674 Binary files /dev/null and b/ambience/sounds/coyote2.ogg differ diff --git a/ambience/sounds/craw.ogg b/ambience/sounds/craw.ogg index 6474b68..7b87a6b 100644 Binary files a/ambience/sounds/craw.ogg and b/ambience/sounds/craw.ogg differ diff --git a/ambience/sounds/dark_ambiance.ogg b/ambience/sounds/dark_ambiance.ogg index 5079572..e3099d1 100644 Binary files a/ambience/sounds/dark_ambiance.ogg and b/ambience/sounds/dark_ambiance.ogg differ diff --git a/ambience/sounds/dolphins.ogg b/ambience/sounds/dolphins.ogg deleted file mode 100644 index 9c2a17e..0000000 Binary files a/ambience/sounds/dolphins.ogg and /dev/null differ diff --git a/ambience/sounds/dolphins_screaming.ogg b/ambience/sounds/dolphins_screaming.ogg deleted file mode 100644 index 787b6f4..0000000 Binary files a/ambience/sounds/dolphins_screaming.ogg and /dev/null differ diff --git a/ambience/sounds/drippingwater_drip_c.ogg b/ambience/sounds/drippingwater_drip_c.ogg index f367406..ad2424a 100644 Binary files a/ambience/sounds/drippingwater_drip_c.ogg and b/ambience/sounds/drippingwater_drip_c.ogg differ diff --git a/ambience/sounds/drippingwater_lavadrip.1.ogg b/ambience/sounds/drippingwater_lavadrip.1.ogg deleted file mode 100644 index 681784c..0000000 Binary files a/ambience/sounds/drippingwater_lavadrip.1.ogg and /dev/null differ diff --git a/ambience/sounds/drippingwater_lavadrip.2.ogg b/ambience/sounds/drippingwater_lavadrip.2.ogg deleted file mode 100644 index 3a66367..0000000 Binary files a/ambience/sounds/drippingwater_lavadrip.2.ogg and /dev/null differ diff --git a/ambience/sounds/drippingwater_lavadrip.3.ogg b/ambience/sounds/drippingwater_lavadrip.3.ogg deleted file mode 100644 index 40be35a..0000000 Binary files a/ambience/sounds/drippingwater_lavadrip.3.ogg and /dev/null differ diff --git a/ambience/sounds/earth01a.ogg b/ambience/sounds/earth01a.ogg index 9e93379..d08740f 100644 Binary files a/ambience/sounds/earth01a.ogg and b/ambience/sounds/earth01a.ogg differ diff --git a/ambience/sounds/echos.ogg b/ambience/sounds/echos.ogg index d22bcd7..a089ee2 100644 Binary files a/ambience/sounds/echos.ogg and b/ambience/sounds/echos.ogg differ diff --git a/ambience/sounds/fiji_beach.ogg b/ambience/sounds/fiji_beach.ogg index a752d1e..f6831d6 100644 Binary files a/ambience/sounds/fiji_beach.ogg and b/ambience/sounds/fiji_beach.ogg differ diff --git a/ambience/sounds/lake_waves_2_calm.ogg b/ambience/sounds/lake_waves_2_calm.ogg index 80fb401..2616958 100644 Binary files a/ambience/sounds/lake_waves_2_calm.ogg and b/ambience/sounds/lake_waves_2_calm.ogg differ diff --git a/ambience/sounds/lake_waves_2_variety.ogg b/ambience/sounds/lake_waves_2_variety.ogg index 0297ca7..bd1dc6c 100644 Binary files a/ambience/sounds/lake_waves_2_variety.ogg and b/ambience/sounds/lake_waves_2_variety.ogg differ diff --git a/ambience/sounds/robin2.ogg b/ambience/sounds/robin2.ogg index 16c39e6..8bbb161 100644 Binary files a/ambience/sounds/robin2.ogg and b/ambience/sounds/robin2.ogg differ diff --git a/ambience/sounds/scuba1calm.ogg b/ambience/sounds/scuba1calm.ogg index 57b810d..e1e76cf 100644 Binary files a/ambience/sounds/scuba1calm.ogg and b/ambience/sounds/scuba1calm.ogg differ diff --git a/ambience/sounds/scuba1calm2.ogg b/ambience/sounds/scuba1calm2.ogg index e8a6f42..c1a348a 100644 Binary files a/ambience/sounds/scuba1calm2.ogg and b/ambience/sounds/scuba1calm2.ogg differ diff --git a/ambience/sounds/scuba1interestingbubbles.ogg b/ambience/sounds/scuba1interestingbubbles.ogg index 761cbf6..b17d33c 100644 Binary files a/ambience/sounds/scuba1interestingbubbles.ogg and b/ambience/sounds/scuba1interestingbubbles.ogg differ diff --git a/ambience/sounds/scuba1tubulentbubbles.ogg b/ambience/sounds/scuba1tubulentbubbles.ogg index 535c1a9..555edff 100644 Binary files a/ambience/sounds/scuba1tubulentbubbles.ogg and b/ambience/sounds/scuba1tubulentbubbles.ogg differ diff --git a/ambience/sounds/seagull.ogg b/ambience/sounds/seagull.ogg index 0f3d79d..9dab963 100644 Binary files a/ambience/sounds/seagull.ogg and b/ambience/sounds/seagull.ogg differ diff --git a/ambience/sounds/small_waterfall.ogg b/ambience/sounds/small_waterfall.ogg index 53ad7ee..4020830 100644 Binary files a/ambience/sounds/small_waterfall.ogg and b/ambience/sounds/small_waterfall.ogg differ diff --git a/ambience/sounds/water_swimming_splashing.ogg b/ambience/sounds/water_swimming_splashing.ogg deleted file mode 100644 index bc39374..0000000 Binary files a/ambience/sounds/water_swimming_splashing.ogg and /dev/null differ diff --git a/ambience/sounds/water_swimming_splashing_breath.ogg b/ambience/sounds/water_swimming_splashing_breath.ogg deleted file mode 100644 index 13a797e..0000000 Binary files a/ambience/sounds/water_swimming_splashing_breath.ogg and /dev/null differ diff --git a/ambienceOLD22.zip b/ambienceOLD22.zip new file mode 100644 index 0000000..d4b583e Binary files /dev/null and b/ambienceOLD22.zip differ