Skip to content
Permalink
Browse files

TNT: Allow a custom explosion sound to be used

  • Loading branch information
tenplus1 authored and paramat committed Aug 18, 2017
1 parent 20687a6 commit bb084294cee94af63954dc765c6d16e7af90b010
Showing with 4 additions and 1 deletion.
  1. +1 −0 game_api.txt
  2. +3 −1 mods/tnt/init.lua
@@ -348,6 +348,7 @@ TNT API
* `description` A description for your TNT.
* `radius` The radius within which the TNT can destroy nodes. The default is 3.
* `damage_radius` The radius within which the TNT can damage players and mobs. By default it is twice the `radius`.
* `sound` The sound played when explosion occurs. By default it is `tnt_explode`.
* `disable_drops` Disable drops. By default it is set to false.
* `ignore_protection` Don't check `minetest.is_protected` before removing a node.
* `ignore_on_blast` Don't call `on_blast` even if a node has one.
@@ -384,7 +384,9 @@ end
function tnt.boom(pos, def)
local meta = minetest.get_meta(pos)
local owner = meta:get_string("owner")
minetest.sound_play("tnt_explode", {pos = pos, gain = 1.5, max_hear_distance = 2*64})
local sound = def.sound or "tnt_explode"
minetest.sound_play(sound, {pos = pos, gain = 1.5,
max_hear_distance = math.min(def.radius * 20, 128)})
minetest.set_node(pos, {name = "tnt:boom"})
local drops, radius = tnt_explode(pos, def.radius, def.ignore_protection,
def.ignore_on_blast, owner)

0 comments on commit bb08429

Please sign in to comment.