17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-11-01 23:59:12 +01:00

fix(sleepers): the timbers a switch shares with a track with no model of timbers of its own laid of the model of the switch, not of the one of eu07.ini without the fastenings: the model of a track with none of its own that of the tracks most of its timbers carry with one, and a timber carrying none of them, as under the short tracks between the halves of a slip, of the model of the nearest timber with one up to 1.5 m away; the fastenings and checkseats selftests take the model the same way

This commit is contained in:
maj00r
2026-10-24 02:18:58 +02:00
parent 81a6b855d0
commit 540dae420f
7 changed files with 72 additions and 8 deletions

View File

@@ -915,14 +915,15 @@ std::vector<fastening_row> check_fastenings() {
if( track == nullptr || track->m_editorremoved || false == track->m_sleepers3d.active ) {
continue;
}
auto const *model { timber_model( *track ) };
auto const beams { place( *track ) };
auto const *model { timber_model( *track, beams ) };
if( model == nullptr || false == model->fastened() ) {
continue;
}
fastening_row row;
row.track = track->name();
std::optional<fastened_rails> rails;
for( auto const &beam : place( *track ) ) {
for( auto const &beam : beams ) {
if( beam.plain ) {
continue;
}
@@ -1036,12 +1037,13 @@ std::vector<check_rail_gap> check_rail_seats() {
if( track == nullptr || track->m_editorremoved || false == track->m_sleepers3d.active ) {
continue;
}
auto const *model { timber_model( *track ) };
auto const beams { place( *track ) };
auto const *model { timber_model( *track, beams ) };
if( model == nullptr || false == model->fastened() ) {
continue;
}
std::optional<fastened_rails> rails;
for( auto const &beam : place( *track ) ) {
for( auto const &beam : beams ) {
if( beam.plain ) {
continue;
}