getpos to get_pos

This commit is contained in:
TenPlus1 2017-10-09 15:24:40 +01:00
parent 3146b0754b
commit 7c10fb7e27
2 changed files with 45 additions and 48 deletions

82
api.lua
View File

@ -360,7 +360,7 @@ local item_drop = function(self, cooked)
if self.child then return end
local obj, item, num
local pos = self.object:getpos()
local pos = self.object:get_pos()
self.drops = self.drops or {} -- nil check
@ -446,7 +446,7 @@ local check_for_death = function(self, cause, cmi_cause)
mob_sound(self, self.sounds.death)
local pos = self.object:getpos()
local pos = self.object:get_pos()
-- execute custom death function
if self.on_die then
@ -529,7 +529,7 @@ local is_at_cliff = function(self)
local yaw = self.object:get_yaw()
local dir_x = -sin(yaw) * (self.collisionbox[4] + 0.5)
local dir_z = cos(yaw) * (self.collisionbox[4] + 0.5)
local pos = self.object:getpos()
local pos = self.object:get_pos()
local ypos = pos.y + self.collisionbox[2] -- just above floor
if minetest.line_of_sight(
@ -576,7 +576,7 @@ local do_env_damage = function(self)
update_tag(self)
end
local pos = self.object:getpos()
local pos = self.object:get_pos()
self.time_of_day = minetest.get_timeofday()
@ -696,7 +696,7 @@ self.facing_fence = false
return false
end
local pos = self.object:getpos()
local pos = self.object:get_pos()
local yaw = self.object:get_yaw()
-- what is mob standing on?
@ -764,7 +764,7 @@ local entity_physics = function(pos, radius)
for n = 1, #objs do
obj_pos = objs[n]:getpos()
obj_pos = objs[n]:get_pos()
dist = get_distance(pos, obj_pos)
if dist < 1 then dist = 1 end
@ -864,7 +864,7 @@ local breed = function(self)
if self.horny == true
and self.hornytimer <= 40 then
local pos = self.object:getpos()
local pos = self.object:get_pos()
effect({x = pos.x, y = pos.y + 1, z = pos.z}, 8, "heart.png", 3, 4, 1, 0.1)
@ -1073,7 +1073,7 @@ local smart_mobs = function(self, s, p, dist, dtime)
s.y = sground.y + 1
end
local p1 = self.attack:getpos()
local p1 = self.attack:get_pos()
p1.x = floor(p1.x + 0.5)
p1.y = floor(p1.y + 0.5)
@ -1237,7 +1237,7 @@ local monster_attack = function(self)
return
end
local s = self.object:getpos()
local s = self.object:get_pos()
local p, sp, dist
local player, obj, min_player
local type, name = "", ""
@ -1271,8 +1271,8 @@ local monster_attack = function(self)
and (type == "player" or type == "npc"
or (type == "animal" and self.attack_animals == true)) then
s = self.object:getpos()
p = player:getpos()
s = self.object:get_pos()
p = player:get_pos()
sp = s
-- aim higher to make looking up hills more realistic
@ -1311,7 +1311,7 @@ local npc_attack = function(self)
end
local p, sp, obj, min_player
local s = self.object:getpos()
local s = self.object:get_pos()
local min_dist = self.view_range + 1
local objs = minetest.get_objects_inside_radius(s, self.view_range)
@ -1321,7 +1321,7 @@ local npc_attack = function(self)
if obj and obj.type == "monster" then
p = obj.object:getpos()
p = obj.object:get_pos()
dist = get_distance(p, s)
@ -1348,12 +1348,12 @@ local follow_flop = function(self)
and self.state ~= "attack"
and self.state ~= "runaway" then
local s = self.object:getpos()
local s = self.object:get_pos()
local players = minetest.get_connected_players()
for n = 1, #players do
if get_distance(players[n]:getpos(), s) < self.view_range
if get_distance(players[n]:get_pos(), s) < self.view_range
and not mobs.invis[ players[n]:get_player_name() ] then
self.following = players[n]
@ -1387,16 +1387,16 @@ local follow_flop = function(self)
-- follow that thing
if self.following then
local s = self.object:getpos()
local s = self.object:get_pos()
local p
if self.following:is_player() then
p = self.following:getpos()
p = self.following:get_pos()
elseif self.following.object then
p = self.following.object:getpos()
p = self.following.object:get_pos()
end
if p then
@ -1439,7 +1439,7 @@ local follow_flop = function(self)
-- swimmers flop when out of their element, and swim again when back in
if self.fly then
local s = self.object:getpos()
local s = self.object:get_pos()
if not flight_check(self, s) then
self.state = "flop"
@ -1494,13 +1494,13 @@ local do_states = function(self, dtime)
if random(1, 4) == 1 then
local lp = nil
local s = self.object:getpos()
local s = self.object:get_pos()
local objs = minetest.get_objects_inside_radius(s, 3)
for n = 1, #objs do
if objs[n]:is_player() then
lp = objs[n]:getpos()
lp = objs[n]:get_pos()
break
end
end
@ -1554,7 +1554,7 @@ local do_states = function(self, dtime)
elseif self.state == "walk" then
local s = self.object:getpos()
local s = self.object:get_pos()
local lp = nil
-- is there something I need to avoid?
@ -1674,14 +1674,14 @@ local do_states = function(self, dtime)
elseif self.state == "attack" then
-- calculate distance from mob and enemy
local s = self.object:getpos()
local p = self.attack:getpos() or s
local s = self.object:get_pos()
local p = self.attack:get_pos() or s
local dist = get_distance(p, s)
-- stop attacking if player or out of range
if dist > self.view_range
or not self.attack
or not self.attack:getpos()
or not self.attack:get_pos()
or self.attack:get_hp() <= 0
or (self.attack:is_player() and mobs.invis[ self.attack:get_player_name() ]) then
@ -1752,7 +1752,7 @@ local do_states = function(self, dtime)
if self.timer > 3 then
local pos = self.object:getpos()
local pos = self.object:get_pos()
local radius = self.explosion_radius or 1
local damage_radius = radius
@ -1995,7 +1995,7 @@ local do_states = function(self, dtime)
-- play shoot attack sound
mob_sound(self, self.sounds.shoot_attack)
local p = self.object:getpos()
local p = self.object:get_pos()
p.y = p.y + (self.collisionbox[2] + self.collisionbox[5]) / 2
@ -2073,7 +2073,7 @@ local falling = function(self, pos)
if self.fall_damage == 1
and self.object:getvelocity().y == 0 then
local d = (self.old_y or 0) - self.object:getpos().y
local d = (self.old_y or 0) - self.object:get_pos().y
if d > 5 then
@ -2086,7 +2086,7 @@ local falling = function(self, pos)
end
end
self.old_y = self.object:getpos().y
self.old_y = self.object:get_pos().y
end
end
end
@ -2117,7 +2117,7 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir)
-- is mob protected?
if self.protected and hitter:is_player()
and minetest.is_protected(self.object:getpos(), hitter:get_player_name()) then
and minetest.is_protected(self.object:get_pos(), hitter:get_player_name()) then
minetest.chat_send_player(hitter:get_player_name(), S("Mob has been protected!"))
return
end
@ -2216,7 +2216,7 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir)
if self.blood_amount > 0
and not disable_blood then
local pos = self.object:getpos()
local pos = self.object:get_pos()
pos.y = pos.y + (-self.collisionbox[2] + self.collisionbox[5]) * .5
@ -2286,8 +2286,8 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir)
-- if skittish then run away
if self.runaway == true then
local lp = hitter:getpos()
local s = self.object:getpos()
local lp = hitter:get_pos()
local s = self.object:get_pos()
local vec = {
x = lp.x - s.x,
y = lp.y - s.y,
@ -2320,7 +2320,7 @@ local mob_punch = function(self, hitter, tflp, tool_capabilities, dir)
do_attack(self, hitter)
-- alert others to the attack
local objs = minetest.get_objects_inside_radius(hitter:getpos(), self.view_range)
local objs = minetest.get_objects_inside_radius(hitter:get_pos(), self.view_range)
local obj = nil
for n = 1, #objs do
@ -2485,7 +2485,7 @@ local mob_activate = function(self, staticdata, def, dtime)
-- end init
self.object:set_armor_groups({immortal = 1, fleshy = self.armor})
self.old_y = self.object:getpos().y
self.old_y = self.object:get_pos().y
self.old_health = self.health
self.sounds.distance = self.sounds.distance or 10
self.textures = textures
@ -2526,7 +2526,7 @@ local mob_step = function(self, dtime)
cmi.notify_step(self.object, dtime)
end
local pos = self.object:getpos()
local pos = self.object:get_pos()
local yaw = 0
-- when lifetimer expires remove mob (except npc and tamed)
@ -3006,7 +3006,7 @@ function mobs:register_arrow(name, def)
self.timer = self.timer + 1
local pos = self.object:getpos()
local pos = self.object:get_pos()
if self.switch == 0
or self.timer > 150
@ -3349,7 +3349,7 @@ function mobs:capture_mob(self, clicker, chance_hand, chance_net, chance_lasso,
if inv:room_for_item("main", new_stack) then
inv:add_item("main", new_stack)
else
minetest.add_item(clicker:getpos(), new_stack)
minetest.add_item(clicker:get_pos(), new_stack)
end
self.object:remove()
@ -3396,10 +3396,10 @@ function mobs:protect(self, clicker)
self.protected = true
-- minetest.chat_send_player(name, S("Protected!"))
local pos = self.object:getpos()
local pos = self.object:get_pos()
pos.y = pos.y + self.collisionbox[2] + 0.5
effect(self.object:getpos(), 25, "mobs_protect_particle.png", 0.5, 4, 2, 15)
effect(self.object:get_pos(), 25, "mobs_protect_particle.png", 0.5, 4, 2, 15)
mob_sound(self, "mobs_spell")
@ -3574,7 +3574,7 @@ function mobs:alias_mob(old_name, new_name)
on_step = function(self)
local pos = self.object:getpos()
local pos = self.object:get_pos()
if minetest.registered_entities[new_name] then
minetest.add_entity(pos, new_name)

View File

@ -166,7 +166,7 @@ function mobs.detach(player, offset)
default.player_set_animation(player, "stand" , 30)
local pos = player:getpos()
local pos = player:get_pos()
pos = {x = pos.x + offset.x, y = pos.y + 0.2 + offset.y, z = pos.z + offset.z}
@ -212,7 +212,6 @@ function mobs.drive(entity, moving_anim, stand_anim, can_fly, dtime)
end
-- fix mob rotation
-- entity.object:setyaw(entity.driver:get_look_yaw() - entity.rotate)
entity.object:setyaw(entity.driver:get_look_horizontal() - entity.rotate)
if can_fly then
@ -290,7 +289,7 @@ function mobs.drive(entity, moving_anim, stand_anim, can_fly, dtime)
end
-- Set position, velocity and acceleration
local p = entity.object:getpos()
local p = entity.object:get_pos()
local new_velo = {x = 0, y = 0, z = 0}
local new_acce = {x = 0, y = -9.8, z = 0}
@ -344,7 +343,7 @@ function mobs.drive(entity, moving_anim, stand_anim, can_fly, dtime)
end
else
if math.abs(velo.y) < 1 then
local pos = entity.object:getpos()
local pos = entity.object:get_pos()
pos.y = math.floor(pos.y) + 0.5
entity.object:setpos(pos)
velo.y = 0
@ -389,7 +388,6 @@ function mobs.fly(entity, dtime, speed, shoots, arrow, moving_anim, stand_anim)
local ctrl = entity.driver:get_player_control()
local velo = entity.object:getvelocity()
local dir = entity.driver:get_look_dir()
-- local yaw = entity.driver:get_look_yaw()
local yaw = entity.driver:get_look_horizontal() + 1.57 -- offset fix between old and new commands
local rot_steer, rot_view = math.pi / 2, 0
@ -420,7 +418,7 @@ function mobs.fly(entity, dtime, speed, shoots, arrow, moving_anim, stand_anim)
-- firing arrows
if ctrl.LMB and ctrl.sneak and shoots then
local pos = entity.object:getpos()
local pos = entity.object:get_pos()
local obj = minetest.add_entity({
x = pos.x + 0 + dir.x * 2.5,
y = pos.y + 1.5 + dir.y,
@ -431,7 +429,6 @@ function mobs.fly(entity, dtime, speed, shoots, arrow, moving_anim, stand_anim)
ent.switch = 1 -- for mob specific arrows
ent.owner_id = tostring(entity.object) -- so arrows dont hurt entity you are riding
local vec = {x = dir.x * 6, y = dir.y * 6, z = dir.z * 6}
-- local yaw = entity.driver:get_look_yaw()
local yaw = entity.driver:get_look_horizontal()
obj:setyaw(yaw + math.pi / 2)
obj:setvelocity(vec)