Migrate GLR to metarules - #558
Conversation
… NetworkProperties This makes them accessible in the console.
|
Yes, this used to work. So far, the Lightrail stubs were overridden by plain straight GLR pieces. Back in the day, this made sense for compatibility with stations for non-draggable PP-based GLR.
The DLL-adjacencies don't cover this currently, mainly as a safe-guard against unintended stuff like recursion.
The cleanest solution would be to introduce unique proper end stubs for GLR. Then the DLL would cover it. In any case, the stubs are more for a nice feel than they are practically relevant.
|
Okay, thanks for the explanation. I agree, the best way to resolve is to implement the end stub. I can look into that. It's definitely fine as is though. |
| add(0x0a001500, Groundhighway~EW); add(0x0a002200, Groundhighway~ES); add(0x0a002100, Groundhighway~SharedDiagRight) | ||
|
|
||
| add(0x5d300000, Str ~NS); add(0x5d500100, Str ~ES) | ||
| builder.addOne(Glr1~NS, IdTile(0x5f880000, R0F0, mappedRepr = _.flatMap(rf => Set(rf, rf * R2F0)))) // temporary bandaid: extra rotations for better compatibility with old handwritten GLR code |
There was a problem hiding this comment.
Is this still required? AFAICT, there is no longer any handwritten GLR code.

'tis a beaut.
This replaces the old draggable GLR code by a rock-solid purely metarules-based implementation.
This PR depends on #557.
The old handwritten GLR code had some flaws:
Ideas for future extensions:
These would require some work on textures/paths/models.