It’s designed so that you can fly directly sideways (for instance) by rotating the engines the appropriate direction.

The problem I’m having is that when the ship tilts/rotates and then fire the engine , it’s correct in world space, but not in relation to the parent object.

Can you help me see I’m missing? It feels like it’ll be obvious once someone points it out.

Here’s the code:

```
void FireEngineForward()
{
FrontRightMount.transform.rotation = Quaternion.Euler(0, 0, 0);
FrontRightEngine.transform.rotation = Quaternion.Euler(0, 0, 0);
FrontLeftMount.transform.rotation = Quaternion.Euler(0, 0, 0);
FrontLeftEngine.transform.rotation = Quaternion.Euler(0, 0, 0);
BackLeftMount.transform.rotation = Quaternion.Euler(0, 0, 0);
BackLeftEngine.transform.rotation = Quaternion.Euler(0, 0, 0);
BackRightMount.transform.rotation = Quaternion.Euler(0, 0, 0);
BackRightEngine.transform.rotation = Quaternion.Euler(0, 0, 0);
}
void FireEngineBackward()
{
FrontRightMount.transform.rotation = Quaternion.Euler(0, 0, 0);
FrontRightEngine.transform.rotation = Quaternion.Euler(0, -180, 0);
FrontLeftMount.transform.rotation = Quaternion.Euler(0, 0, 0);
FrontLeftEngine.transform.rotation = Quaternion.Euler(0, -180, 0);
BackLeftMount.transform.rotation = Quaternion.Euler(0, 0, 0);
BackLeftEngine.transform.rotation = Quaternion.Euler(0, -180, 0);
BackRightMount.transform.rotation = Quaternion.Euler(0, 0, 0);
BackRightEngine.transform.rotation = Quaternion.Euler(0, -180, 0);
}
```