public override ExecutionResult Execute(SuperMetroidModel model, InGameState inGameState, int times = 1, bool usePreviousRoom = false) { if (inGameState.HasGameFlag(GameFlag)) { // Clone the In-game state to fulfill method contract return(new ExecutionResult(inGameState.Clone())); } else { return(null); } }