Make sure to check current status for changes

The game may not even call GetStatus(), but the status should still change.

Also, error when using InitStart() during Shutdown(), per tests.

Sorry, I realized it needed this too just a few minutes ago, but didn't finish testing in time.

-[Unknown]