Yep, one line of code fixed it. I think I updated the game correctly.
The way the game remembers what the actions for each direction currently are is global and doesn't reset with the level. Just made the level reset the actions when its loaded in. I designed it with potentially having actions other than moving going in, but I didn't have enough time to do that.