like when a enity constantly need to check that it is not hitting it self.
Code: Select all
for _, ob in pairs(minetest.get_objects_inside_radius(pos,1)) do
local en = ob:get_luaentity()
if not (en and en.id == self.id) then
...
end
end
Code: Select all
for _, ob in pairs(minetest.get_objects_inside_radius(pos,3)) do
local en = ob:get_luaentity()
if not (en and en.id == self.id or (ob:is_player() and self.driver:get_player_name() == ob:get_player_name())) then
...
end
end
Code: Select all
for _, ob in pairs(minetest.get_objects_inside_radius(pos,3)) do
local id = ob:get_id()
if self.object:get_id() ~= id and self.driverid:get_id() ~= id then
...
end
end
and a method like minetest.get_object_by_id(id) could also make things easyer.
and because the id is stored in the object, you can acces the object wihtout using minetest.get_objects_inside_radius()
would probability fix lots of problems.
what do you think?