aboutsummaryrefslogtreecommitdiff
path: root/games/minimal/mods/default/textures/default_clay_brick.png
diff options
context:
space:
mode:
authorMuhammad Nur Hidayat Yasuyoshi <mnh48mail@gmail.com>2020-02-17 05:06:52 +0000
committersfan5 <sfan5@live.de>2020-04-03 23:15:52 +0200
commit4d3e2f8d692dbde6d61d50f31039005e22e03c69 (patch)
tree393a29552cb8f965ab7a8691e4856c96e46d475e /games/minimal/mods/default/textures/default_clay_brick.png
parent2a1ad6a903ebc321c43f2939193e0245ffc9da10 (diff)
downloadminetest-4d3e2f8d692dbde6d61d50f31039005e22e03c69.tar.gz
minetest-4d3e2f8d692dbde6d61d50f31039005e22e03c69.tar.bz2
minetest-4d3e2f8d692dbde6d61d50f31039005e22e03c69.zip
Translated using Weblate (Malay)
Currently translated at 100.0% (1288 of 1288 strings)
Diffstat (limited to 'games/minimal/mods/default/textures/default_clay_brick.png')
0 files changed, 0 insertions, 0 deletions
com">*/ #include <log.h> #include "profiler.h" #include "activeobjectmgr.h" namespace client { void ActiveObjectMgr::clear() { // delete active objects for (auto &active_object : m_active_objects) { delete active_object.second; } } void ActiveObjectMgr::step( float dtime, const std::function<void(ClientActiveObject *)> &f) { g_profiler->avg("Client::ActiveObjectMgr: num of objects", m_active_objects.size()); for (auto &ao_it : m_active_objects) { f(ao_it.second); } } // clang-format off bool ActiveObjectMgr::registerObject(ClientActiveObject *obj) { assert(obj); // Pre-condition if (obj->getId() == 0) { u16 new_id = getFreeId(); if (new_id == 0) { infostream << "Client::ActiveObjectMgr::registerObject(): " << "no free id available" << std::endl; delete obj; return false; } obj->setId(new_id); } if (!isFreeId(obj->getId())) { infostream << "Client::ActiveObjectMgr::registerObject(): " << "id is not free (" << obj->getId() << ")" << std::endl; delete obj; return false; } infostream << "Client::ActiveObjectMgr::registerObject(): " << "added (id=" << obj->getId() << ")" << std::endl; m_active_objects[obj->getId()] = obj; return true; } void ActiveObjectMgr::removeObject(u16 id) { verbosestream << "Client::ActiveObjectMgr::removeObject(): " << "id=" << id << std::endl; ClientActiveObject *obj = getActiveObject(id); if (!obj) { infostream << "Client::ActiveObjectMgr::removeObject(): " << "id=" << id << " not found" << std::endl; return; } m_active_objects.erase(id); obj->removeFromScene(true); delete obj; } // clang-format on void ActiveObjectMgr::getActiveObjects(const v3f &origin, f32 max_d, std::vector<DistanceSortedActiveObject> &dest) { for (auto &ao_it : m_active_objects) { ClientActiveObject *obj = ao_it.second; f32 d = (obj->getPosition() - origin).getLength(); if (d > max_d) continue; dest.emplace_back(obj, d); } } } // namespace client