So I’m making an elevator, it works fine, except that when it stops on a floor when it’s going down the floor of elevator isn’t level with the floor it’s stopping at. I’ve figured out that it’s because the elevator stops at the edges of the path_track’s bounding box rather than at the center (which is aligned to that the origin of the elevator and the origin of the path_track are in the same place).
What I want to know is, is there any way to get a tracktrain to stop at the center of a path track, rather than the edges of it?
Set the ‘height above track’ value to 0 and lower the speed of the train when it approaches the last stop.
On an elevator I built, I placed two path_track entities before the final one; the first one fires a command to set the train to its maximum speed and the second fires a command to set its speed to a crawl. This way the elevator gets a boost to its normal speed when moving up and applies the brakes when moving down to avoid an uneven stop.
So would those two need to go in between every floor?
I’m not entirely sure I can use this method though, since theway I did my elevator relies on branch paths and adding path tracks in between them might fuck something up. I may have to live with a crooked elevator…
Are you using branches for the multiple stops? If so, there are easier ways to do this, such as logic_relays that stop the elevator when triggered but are only enabled when their corresponding button is pressed. logic_relays can be used to incorporate some fairly sophisticated binary logic.
For instance, ten relays are placed (one for each floor) and each contains the command to handle the floor arrival events for the elevator car (apply the brakes, stop the car, open the doors). The initial state of each logic relay is ‘disabled’ and they’re only enabled when their respective floor button is pressed. Each floor’s relay is triggered when the car approaches its floor and, if it’s enabled, its events are trigged and the car stops. If disabled, it continues on its way without braking or stopping.