private void init(final Stage primaryStage) {

        thisStage = primaryStage;
        thisStage.setTitle("Sliding Puzzle");

        StackPane sPane = new StackPane();

        Label label = new Label("Name: ");
        final TextField nameField = new TextField();
        final Button setNameField = new Button("OK");

        final int i5 = 5;
        final int i10 = 10;
        final int i20 = 20;
        final int i100 = 100;

        nameField.setOnKeyPressed(new EventHandler<KeyEvent>() {
            @Override
            public void handle(final KeyEvent event) {
                if (event.getCode() == KeyCode.ENTER) {
                    setNameField.fire();
                }
            }
        });
        setNameField.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(final ActionEvent actionEvent) {
                if (nameField.getText() != "" && nameField.getText() != null) {
                    userName = nameField.getText();
                }
                SlidingPuzzlePiece.setPuzzleSize(i100);
                newGame();
            }
        });

        VBox welcomeBox = new VBox(i5);
        Text welcomeText = new Text(i100, i100,
                "Welcome to the Sliding Puzzle\n\nWhats your name?\n");
        welcomeText.setFont(new Font(i20));
        welcomeText.setTextAlignment(TextAlignment.CENTER);
        welcomeBox.getChildren().add(welcomeText);
        welcomeBox.setPadding(new Insets(i10, i10, i10, i10));

        HBox displayBox = new HBox(i5);
        displayBox.getChildren().addAll(label, nameField, setNameField);
        displayBox.setAlignment(Pos.CENTER);

        welcomeBox.getChildren().add(displayBox);

        sPane.getChildren().add(welcomeBox);

        thisStage.centerOnScreen();
        thisStage.toFront();
        thisStage.setScene(new Scene(sPane));
        thisStage.show();

    }