registration reworks and bugfixes #TrainsInMotion #Traincraft (1.7.10 rewrite)

The main focus of this update has been making it easier to add new trains and rollingstock, it's been bugging me for a while because I knew it was possible (as if 1/6 of the work wasin't already easier than TC's port).

Now this does come at a cost of CPU performance when it comes to the crafting tables, however I think later on that's something that can be thrown on an async thread to combat the performance issue.
The long-term result will be that it's far more reliable and easier on the RAM. It may even prevent crashes on lower-end systems while crafting and initializing.
It can even be expanded to support more than the integer limit of around 2 million. (but I doubt that many trains and rollingstock exist in reality and fiction combined)

And the usual changelog:
- Fixed a client only rotation glitch in the transport entity.
- Simplified the rotation calculation in the transport class for performance reasons.
- Items no longer need their own classes, instead they can all be made from instancing the ItemTransport class in the entity class.
- This also made a change in the URI registry, so all train/rollingstock icons are now in the same folder.
- Added the java model for the Untion Pacific 3-Bay 100-Ton hopper car.
- Significant rework to the Train Registry, it's now a switch rather than a list. This is more inefficient to parse, but should help prevent problems later on when we have a massive number of trains and rollingstock.

Comments