summaryrefslogtreecommitdiff
path: root/game/network/network.impl.h
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2022-10-25 17:53:16 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2022-10-28 02:10:47 +0100
commitf2954a08d726c3c94212fb848adc3fe3cf298cf1 (patch)
tree343dd4e525c786c069a4eaf4dc6029f9d44b603e /game/network/network.impl.h
parentAdd AnyPtr for accepting pointers of any kind into a function (diff)
downloadilt-f2954a08d726c3c94212fb848adc3fe3cf298cf1.tar.bz2
ilt-f2954a08d726c3c94212fb848adc3fe3cf298cf1.tar.xz
ilt-f2954a08d726c3c94212fb848adc3fe3cf298cf1.zip
Move findDir into member function findNodeDirection
Diffstat (limited to 'game/network/network.impl.h')
-rw-r--r--game/network/network.impl.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/game/network/network.impl.h b/game/network/network.impl.h
index d112bf7..cee8155 100644
--- a/game/network/network.impl.h
+++ b/game/network/network.impl.h
@@ -38,6 +38,21 @@ NetworkOf<T>::intersectRayLinks(const Ray & ray) const
}
template<typename T>
+float
+NetworkOf<T>::findNodeDirection(Node::AnyCPtr n) const
+{
+ for (const auto & l : links.objects) {
+ for (const auto & e : l->ends) {
+ // cppcheck-suppress useStlAlgorithm
+ if (e.node.get() == n.get()) {
+ return e.dir;
+ }
+ }
+ }
+ throw std::runtime_error("Node exists but couldn't find it");
+}
+
+template<typename T>
Link::CCollection
NetworkOf<T>::candidateStraight(glm::vec3 n1, glm::vec3 n2)
{