]> git.lizzy.rs Git - Crafter.git/commitdiff
Make tnt throw players and items
authorOilboi <oil.boi.minetest@gmail.com>
Sun, 16 Feb 2020 16:38:37 +0000 (11:38 -0500)
committerOilboi <oil.boi.minetest@gmail.com>
Sun, 16 Feb 2020 16:38:37 +0000 (11:38 -0500)
mods/tnt/init.lua
todo.txt

index b6db25107bc6670d830e3bdbd8ba3c7ebca3d3ac..add09c1b8e50e446dfe57335110a003323649988 100644 (file)
@@ -2,7 +2,26 @@
 
 local function tnt(pos,range)
        local pos = vector.floor(vector.add(pos,0.5))
-
+       
+       --throw players and items
+       for _,object in ipairs(minetest.get_objects_inside_radius(pos, range)) do
+               if  object:is_player() then 
+                       local ppos = object:getpos()
+                       local power = (range - vector.distance(pos,ppos))*2
+                       local distance = vector.subtract(ppos,pos)
+                       local force = vector.multiply(distance,power)
+                       object:add_player_velocity(force)
+               elseif object:get_luaentity() and object:get_luaentity().name == "__builtin:item" then
+                       local ppos = object:getpos()
+                       local power = (range - vector.distance(pos,ppos))*2
+                       local distance = vector.subtract(pos,ppos)
+                       local force = vector.multiply(distance,power)
+                       object:setvelocity(force)
+               end
+       end
+                       
+       
+       
        local min = vector.add(pos,range)
        local max = vector.subtract(pos,range)
        local vm = minetest.get_voxel_manip()   
index 3976b96ba8acb2ad93f91d0572845940b4cd8e98..f2400a54e2c3ab287602de2cf1da8fe25b4776b1 100644 (file)
--- a/todo.txt
+++ b/todo.txt
@@ -14,8 +14,8 @@
 --beds - set respawn point - only sleep at night
 --make treecapitator cut down whole tree if using axe - make trees drop items on treecapitator
 --tnt
-sand fall down
-tnt throw player
+--sand fall down
+--tnt throw player - and items
 water flow faster
 torches with particle
 crafting bench