The issue is that mv is also changed if we make that change, which isn't supposed to happen. The problem here really is bad design of the code, which forces this change.  I couldn't figure a better way to do this without changing the draw function by a lot.  The idea here is basically that lighting of the main ship isn't set properly unless we apply the global camera's rotations to it, since the vessel is rendered independent of the global camera.