That actually will not work because it actually moves all of the path tracks around with it, and it also sometimes will create the same "bad setlocalangularvelocity (x,y,z)" errors that were occurring earlier during the rotation. What I have at the moment is not 100% yet but it will work for an alpha in me opinion. Here is a step by step guide to my setup right now.
The Cart:
- First setup the payload system just as you normally would (I used ABS' "sspl" system as a reference but you can directly copy his system over) Afterwards you need to make some small modifications to the cart.
- To do this ungroup the cart and make another brush the same size as the func_tracktrain (this is the nodraw brush overlapping the model) and make it a func_brush with the nodraw texture, give it a name such as sspl_collisions, and disable the two shadows, and then make it always solid as well as parented to the func_tracktreain (sspl_train).
- After this go back to the func_tracktrain and then check the flag "passable"
- At this time modify the phys_constraint (above the cart model) and change sspl_train to sspl_collisions
- At this time change the parents from sspl_train to sspl_collisions for the rest of the cart other than the func_brush, func_tracktrain, and trigger_capture_area.
- On the team_train_watcher change the value "allow the train to recede?" to NO (this is a temporary fix and can be removed if you have the cart enter the table automatically)
The Turntable:
- Make a func_door_rotating and give it a name, such as sspl_turntable.
- Disable its shadows, make it stay open by setting "delay before reset" = -1, set the "distance" to 180, and finally change the speed to what you feel you want (I will use 3, but you can change this at any time)
- Place a model (prop_dynamic) where the origins (centers) are right above each-other and parent the prop_dynamic to sspl_turntable.
- Disable the shadows. (and if it is a train track most likely collisions also)
Path Tracks:
- For what I am doing you will need 5 path tracks:
1. One moving the cart onto the turntable (we will call this A*).
2. One above the origin (center) of the turntable (Called B*).
3. One along the same line roughly eight units past the last one (Called C*).
4. One at the same location as B (Called D*).
5. Finally one at the same location as A (Called E*).
- In the map's logic auto make 2 new outputs:
1. OnMapSpawn / C / DisablePath / / 0.00 / NO
2. OnMapSpawn / E / DisablePath / / 0.00 / NO
- On path_track B add the following four outputs:
1. OnPass / sspl_pushzone / disable / / 0.00 / NO
2. OnPass / sspl_collisions / SetParent / sspl_turntable / 0.25 / NO
3. OnPass / sspl_turntable / open / / 0.50 / NO
4. OnPass / sspl_train / TeleportToPathTrack / D / 0.50 / NO
- On sspl_rotator add the following outputs
1. OnFullyOpen / sspl_collisions / SetParent / sspl_train / 0.25 / NO
2. OnFullyOpen / sspl_pushzone / Enable / / 0.50 / NO
3. OnFullyOpen / E / EnablePath / / 0.50 / NO
This is what I can remember doing because I don't have my desktop available right now but this should be it.
* You can name these anything you want but it's easier to assign a letter for the purposes of this tutorial.