From cc5afc5bd754c609db797338ff96939ea6014031 Mon Sep 17 00:00:00 2001 From: Juraj Vajda Date: Wed, 12 Jul 2023 15:21:53 -0400 Subject: [PATCH] Add arrow fly by sounds --- LICENSE.txt | 6 ++++++ api.lua | 27 ++++++++++++++++++++++++++- sounds/x_bows_arrow_flyby.1.ogg | Bin 0 -> 6032 bytes sounds/x_bows_arrow_flyby.2.ogg | Bin 0 -> 6250 bytes sounds/x_bows_arrow_flyby.3.ogg | Bin 0 -> 6351 bytes 5 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 sounds/x_bows_arrow_flyby.1.ogg create mode 100644 sounds/x_bows_arrow_flyby.2.ogg create mode 100644 sounds/x_bows_arrow_flyby.3.ogg diff --git a/LICENSE.txt b/LICENSE.txt index a6ab12c..0cc4900 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -543,6 +543,12 @@ GNU Lesser General Public License v2.1 or later - x_bows_quiver.8.ogg - x_bows_quiver.9.ogg +**CC0-1.0, Kinoton**, https://freesound.org/people/Kinoton/sounds/427979/ + +- x_bows_arrow_flyby.1.ogg +- x_bows_arrow_flyby.2.ogg +- x_bows_arrow_flyby.3.ogg + ### Models **CC-BY-SA-4.0, by SaKeL** diff --git a/api.lua b/api.lua index 3376b8e..89e6d2f 100644 --- a/api.lua +++ b/api.lua @@ -924,6 +924,9 @@ function XBowsEntityDef.on_activate(self, selfObj, staticdata, dtime_s) selfObj._arrow_particle_effect = x_bows_registered_arrow_def.custom.particle_effect selfObj._arrow_particle_effect_crit = x_bows_registered_arrow_def.custom.particle_effect_crit selfObj._arrow_particle_effect_fast = x_bows_registered_arrow_def.custom.particle_effect_fast + selfObj._flyby_sound_played = { + ['player_name'] = true + } ---Bow Def local x_bows_registered_bow_def = self.registered_bows[selfObj._bow_name] @@ -994,7 +997,7 @@ function XBowsEntityDef.on_activate(self, selfObj, staticdata, dtime_s) ---idle animation if x_bows_registered_entity_def and x_bows_registered_entity_def._custom.animations.idle then - selfObj.object:set_animation(unpack(x_bows_registered_entity_def._custom.animations.idle)--[[@as table]] ) + selfObj.object:set_animation(unpack(x_bows_registered_entity_def._custom.animations.idle)--[[@as table]]) end ---counter, e.g. for initial values set `on_step` @@ -1119,6 +1122,28 @@ function XBowsEntityDef.on_step(self, selfObj, dtime) local in_pos = pointed_thing.intersection_normal selfObj.pointed_thing = pointed_thing + if not selfObj._attached then + for _, object in ipairs(minetest.get_objects_inside_radius(selfObj.object:get_pos(), 5)) do + if object:is_player() + and object:get_hp() > 0 + and object:get_player_name() ~= selfObj._user:get_player_name() + and not selfObj._flyby_sound_played[object:get_player_name()] + then + selfObj._flyby_sound_played[object:get_player_name()] = true + + local p1 = selfObj.object:get_pos() + local p2 = object:get_pos() + local distance = math.round(vector.distance(p1, p2)) + local gain = 1 / distance + + minetest.sound_play('x_bows_arrow_flyby', { + to_player = object:get_player_name(), + gain = gain + }, true) + end + end + end + if pointed_thing.type == 'object' and pointed_thing.ref ~= selfObj.object and pointed_thing.ref:get_hp() > 0 diff --git a/sounds/x_bows_arrow_flyby.1.ogg b/sounds/x_bows_arrow_flyby.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..45a99d3018b58a1b3f8066cf714050d9b5a182b7 GIT binary patch literal 6032 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 JPouWN{{VrsDsun; literal 0 HcmV?d00001 diff --git a/sounds/x_bows_arrow_flyby.2.ogg b/sounds/x_bows_arrow_flyby.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..779948a1ff9a9ca2df1c9ebea62cb0fdee9f0a69 GIT binary patch literal 6250 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 S+NxA9J@WisrnOj)(Ek9AeS(+( literal 0 HcmV?d00001 diff --git a/sounds/x_bows_arrow_flyby.3.ogg b/sounds/x_bows_arrow_flyby.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8af73ca40ae8389a0f924defd5272b0c272b5ae4 GIT binary patch literal 6351 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 aQM>Ue3I%n%-?kJbKWjYYw5BOt@_zv3*{@^( literal 0 HcmV?d00001