initial_properties update
This commit is contained in:
parent
a9c0bfda01
commit
7fe8aabb2c
@ -27,7 +27,7 @@ local function spears_shot(itemstack, player)
|
||||
end
|
||||
|
||||
local drag = .3
|
||||
local playerpos = player:getpos()
|
||||
local playerpos = player:get_pos()
|
||||
local dir = player:get_look_dir()
|
||||
local obj = minetest.add_entity({
|
||||
x = playerpos.x,
|
||||
@ -55,13 +55,18 @@ local function spears_set_entity(kind, eq, toughness, breadth)
|
||||
breadth = breadth or 1
|
||||
|
||||
local SPEAR_ENTITY = {
|
||||
physical = false,
|
||||
|
||||
initial_properties = {
|
||||
|
||||
physical = false,
|
||||
visual = "wielditem",
|
||||
visual_size = {x = 0.15, y = 0.1},
|
||||
textures = {spearname},
|
||||
collisionbox = {0,0,0,0,0,0},
|
||||
},
|
||||
|
||||
timer = 0,
|
||||
visual = "wielditem",
|
||||
visual_size = {x = 0.15, y = 0.1},
|
||||
textures = {spearname},
|
||||
lastpos = {},
|
||||
collisionbox = {0,0,0,0,0,0},
|
||||
|
||||
on_punch = function(self, puncher)
|
||||
|
||||
@ -88,7 +93,7 @@ local function spears_set_entity(kind, eq, toughness, breadth)
|
||||
|
||||
self.timer = self.timer + dtime
|
||||
|
||||
local pos = self.object:getpos()
|
||||
local pos = self.object:get_pos()
|
||||
local node = minetest.get_node(pos)
|
||||
|
||||
if not self.wear then
|
||||
@ -134,7 +139,7 @@ local function spears_set_entity(kind, eq, toughness, breadth)
|
||||
and obj:get_luaentity().shooter:get_player_name()
|
||||
== obj:get_player_name() ) then
|
||||
|
||||
local speed = vector.length(self.object:getvelocity())
|
||||
local speed = vector.length(self.object:get_velocity())
|
||||
local damage = (speed + eq) ^ 1.12 - 20
|
||||
|
||||
obj:punch(self.object, 1.0, {
|
||||
|
@ -384,7 +384,10 @@ Function to register new weapons: parameters:
|
||||
local function nssm_register_weapon(name, def)
|
||||
|
||||
minetest.register_entity("nssm:"..name, {
|
||||
textures = {name..".png"},
|
||||
|
||||
initial_properties = {
|
||||
textures = {name..".png"},
|
||||
},
|
||||
|
||||
on_step = function(self, dtime)
|
||||
def.on_step(self, dtime)
|
||||
@ -506,8 +509,6 @@ local function nssm_register_throwitem(name, descr, def)
|
||||
local dir = placer:get_look_dir()
|
||||
local playerpos = placer:get_pos()
|
||||
|
||||
posthrow = playerpos
|
||||
|
||||
local obj = minetest.add_entity({
|
||||
x = playerpos.x + dir.x,
|
||||
y = playerpos.y + 2 + dir.y,
|
||||
@ -520,6 +521,8 @@ local function nssm_register_throwitem(name, descr, def)
|
||||
obj:set_velocity(vec)
|
||||
obj:set_acceleration(acc)
|
||||
|
||||
local ent = obj:get_luaentity() ; ent.posthrow = playerpos
|
||||
|
||||
itemstack:take_item()
|
||||
|
||||
return itemstack
|
||||
@ -527,9 +530,13 @@ local function nssm_register_throwitem(name, descr, def)
|
||||
})
|
||||
|
||||
minetest.register_entity("nssm:" .. name .. "_bomb_flying", {
|
||||
textures = {name .. "_bomb.png"},
|
||||
hp_max = 20,
|
||||
collisionbox = {-0.1,-0.1,-0.1, 0.1,0.1,0.1},
|
||||
|
||||
initial_properties = {
|
||||
|
||||
textures = {name .. "_bomb.png"},
|
||||
hp_max = 20,
|
||||
collisionbox = {-0.1,-0.1,-0.1, 0.1,0.1,0.1}
|
||||
},
|
||||
|
||||
on_step = function(self, dtime)
|
||||
|
||||
@ -898,7 +905,7 @@ minetest.register_craft({
|
||||
|
||||
nssm_register_throwitem("teleport", "Teleport Bomb", {
|
||||
|
||||
hit_node = function(self,pos,placer)
|
||||
hit_node = function(self, pos, placer)
|
||||
|
||||
local pos1 = {x = pos.x, y = pos.y + 1, z = pos.z}
|
||||
local pos2 = {x = pos.x, y = pos.y + 2, z = pos.z}
|
||||
@ -907,6 +914,8 @@ nssm_register_throwitem("teleport", "Teleport Bomb", {
|
||||
or not minetest.get_item_group(
|
||||
minetest.get_node(pos1).name, "unbreakable") == 1 then
|
||||
|
||||
local posthrow = self.posthrow ; if not posthrow then return end
|
||||
|
||||
for _,obj in ipairs(minetest.get_objects_inside_radius(posthrow, 2)) do
|
||||
|
||||
if obj:is_player() then
|
||||
|
Loading…
Reference in New Issue
Block a user