summaryrefslogtreecommitdiff
path: root/application
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2025-05-12 04:03:25 +0100
committerDan Goodliffe <dan@randomdan.homeip.net>2025-05-12 04:03:25 +0100
commit58ee1221d47fbcd3b86ad85f26f6eb65579999fa (patch)
tree112665ad2ef7ad9d7946c52074c11fdff3d993fc /application
parentAdd network helpers for easily adding a chain of links (diff)
downloadilt-58ee1221d47fbcd3b86ad85f26f6eb65579999fa.tar.bz2
ilt-58ee1221d47fbcd3b86ad85f26f6eb65579999fa.tar.xz
ilt-58ee1221d47fbcd3b86ad85f26f6eb65579999fa.zip
Update test link creation code to use new interface(s)
Diffstat (limited to 'application')
-rw-r--r--application/main.cpp17
1 files changed, 3 insertions, 14 deletions
diff --git a/application/main.cpp b/application/main.cpp
index 3536cf7..2afe2cb 100644
--- a/application/main.cpp
+++ b/application/main.cpp
@@ -62,21 +62,10 @@ public:
return terrain->positionAt(n);
}));
- Link::Ptr l3;
- for (std::optional<Angle> previousDir; const auto [fromPos, toPos] : std::views::pairwise(nodes)) {
- const auto links = railLinks->create(gameState->terrain.get(),
- {
- .fromEnd = {.position = fromPos, .direction = previousDir},
- .toEnd = {.position = toPos, .direction = std::nullopt},
- });
- for (const auto & link : links) {
- railLinks->add(terrain.get(), link);
- }
- l3 = links.back();
- previousDir = links.back()->endAt(toPos)->dir;
- }
+ const auto chain = railLinks->createChain(gameState->terrain.get(), nodes);
+ railLinks->add(gameState->terrain.get(), chain);
- const std::shared_ptr<Train> train = world.create<Train>(l3, 0);
+ const std::shared_ptr<Train> train = world.create<Train>(chain.front(), 0);
auto b47 = assets.at("brush-47").dynamicCast<RailVehicleClass>();
for (int N = 0; N < 6; N++) {
train->create<RailVehicle>(b47);