New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: Allow diagonal tracks on level crossings #8556
base: master
Are you sure you want to change the base?
Conversation
After updating the nfo format to version 32 (boy, 2011 was such a long time ago), |
6273d1b
to
f255e8d
Compare
Added an updated version of the old drawing code, works only on railtypes which do not add level crossing overlays (i.e. pretty much no NewGRF railtypes) |
patch for nforenum:
|
building on halftile roads should be working correctly now, which should also avoid the crash on removing it later |
Hate to ask .. but what are the odds of this being finished? :) Sounds like a neat little feature :) |
Motivation / Problem
Currently, rails and roads can only cross at a right angle.
Track layouts could be more compact or more flexible if also diagonal rails could cross roads.
Description
This is essentially a resurrerction of an old patch by Maedhros https://www.tt-forums.net/viewtopic.php?f=33&t=26584
A major problem with the old patch was that two diagonal trackbits can be on one tile, and trains passing simultaneously through them could leave locked crossings behind. this is why this update builds upon #8444 (so this PR includes the same changes)
Limitations
I could not resurrect the graphics part of the patch, so all level crossings show as "road in X direction"Drawing level crossings works only for cases where no newgrf railtype is loaded that uses overlays to draw level crossings
(drawing reservation overlay and catenary need another look)
Since i did most of this work before newgrf roadtypes were introduced, i might have fudged a few bits when updating to current master, i cannot guarantee correct functionality in all corner cases.
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.