diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2025-03-28 19:04:21 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2025-03-28 19:04:21 +0000 |
commit | 508ffe80c9991cc76f4fa37dd2fa21746abe3a89 (patch) | |
tree | fe5ca4a08a246191432c304708ce76fe1c3905d6 /game/network | |
parent | Create the last group in jsonParse.ll (diff) | |
parent | Fix check for bulk removal (diff) | |
download | ilt-main.tar.bz2 ilt-main.tar.xz ilt-main.zip |
Diffstat (limited to 'game/network')
-rw-r--r-- | game/network/network.h | 2 | ||||
-rw-r--r-- | game/network/network.impl.h | 8 | ||||
-rw-r--r-- | game/network/rail.cpp | 4 |
3 files changed, 7 insertions, 7 deletions
diff --git a/game/network/network.h b/game/network/network.h index 291c4ec..73c3788 100644 --- a/game/network/network.h +++ b/game/network/network.h @@ -77,7 +77,7 @@ class NetworkOf : public Network, public Renderable, public NetworkLinkHolder<Li protected: using Network::Network; - Collection<T> links; + SharedCollection<T> links; void joinLinks(const Link::Ptr &) const; protected: diff --git a/game/network/network.impl.h b/game/network/network.impl.h index 0a2f9ca..294f696 100644 --- a/game/network/network.impl.h +++ b/game/network/network.impl.h @@ -8,7 +8,7 @@ template<typename T, typename... Links> void NetworkOf<T, Links...>::joinLinks(const Link::Ptr & l) const { - for (const auto & ol : links.objects) { + for (const auto & ol : links) { Network::joinLinks(l, ol); } } @@ -18,11 +18,11 @@ Link::Ptr NetworkOf<T, Links...>::intersectRayLinks(const Ray<GlobalPosition3D> & ray) const { // Click link - if (const auto link = std::find_if(links.objects.begin(), links.objects.end(), + if (const auto link = std::find_if(links.begin(), links.end(), [&ray](const std::shared_ptr<T> & link) { return link->intersectRay(ray); }); - link != links.objects.end()) { + link != links.end()) { return *link; } return {}; @@ -32,7 +32,7 @@ template<typename T, typename... Links> float NetworkOf<T, Links...>::findNodeDirection(Node::AnyCPtr n) const { - for (const auto & l : links.objects) { + for (const auto & l : links) { for (const auto & e : l->ends) { // cppcheck-suppress useStlAlgorithm if (e.node.get() == n.get()) { diff --git a/game/network/rail.cpp b/game/network/rail.cpp index 2a18b9a..dfe1dca 100644 --- a/game/network/rail.cpp +++ b/game/network/rail.cpp @@ -168,7 +168,7 @@ namespace { void RailLinks::render(const SceneShader & shader, const Frustum &) const { - if (!links.objects.empty()) { + if (!links.empty()) { texture->bind(); glEnable(GL_POLYGON_OFFSET_FILL); glPolygonOffset(-1, 0); @@ -182,7 +182,7 @@ RailLinks::render(const SceneShader & shader, const Frustum &) const const Surface * RailLinks::getBaseSurface() const { - return std::dynamic_pointer_cast<Surface>(gameState->assets.at("terrain.surface.gravel")).get(); + return gameState->assets.at("terrain.surface.gravel").dynamicCast<const Surface>().get(); } RelativeDistance |