From 6a4aa453371039be0b28af354eff7ef431db3732 Mon Sep 17 00:00:00 2001 From: Glowstick // Robbie Date: Fri, 12 Nov 2021 20:39:01 -0700 Subject: [PATCH] help kind of done --- .../com/example/conway/ConwayController.java | 10 +++- .../com/example/conway/HelpController.java | 41 ++++++++++++- .../resources/com/example/conway/born.png | Bin 0 -> 6336 bytes .../resources/com/example/conway/conway.fxml | 18 +++--- .../resources/com/example/conway/help.fxml | 54 ++++++++++++++---- .../resources/com/example/conway/icon.png | Bin 214 -> 745 bytes .../com/example/conway/overpopulation.png | Bin 0 -> 6347 bytes .../resources/com/example/conway/solitude.png | Bin 0 -> 6265 bytes .../com/example/conway/speedometer.png | Bin 0 -> 4961 bytes .../resources/com/example/conway/survive.png | Bin 0 -> 6431 bytes 10 files changed, 101 insertions(+), 22 deletions(-) create mode 100644 src/main/resources/com/example/conway/born.png create mode 100644 src/main/resources/com/example/conway/overpopulation.png create mode 100644 src/main/resources/com/example/conway/solitude.png create mode 100644 src/main/resources/com/example/conway/speedometer.png create mode 100644 src/main/resources/com/example/conway/survive.png diff --git a/src/main/java/com/example/conway/ConwayController.java b/src/main/java/com/example/conway/ConwayController.java index e2d1727..dda2d65 100644 --- a/src/main/java/com/example/conway/ConwayController.java +++ b/src/main/java/com/example/conway/ConwayController.java @@ -86,8 +86,13 @@ public void helpClicked(ActionEvent event) throws IOException { Stage stage = new Stage(); stage.setScene(new Scene(fxmlLoader.load())); HelpController hc = fxmlLoader.getController(); - hc.textArea.setText("The Game of Life is not your typical computer game. It is a cellular automaton, and was invented by Cambridge mathematician John Conway.\n\n" + - "This game became widely known when it was mentioned in an article published by Scientific American in 1970. It consists of a collection of cells which, based on a few mathematical rules, can live, die or multiply. Depending on the initial conditions, the cells form various patterns throughout the course of the game."); + hc.aboutText.setText("The Game of Life is not your typical computer game. It is a cellular automaton, and was invented by Cambridge mathematician John Conway.\n\n" + + "This game became widely known when it was mentioned in an article published by Scientific American in 1970. It consists of a collection of cells which, " + + "based on a few mathematical rules, can live, die or multiply. Depending on the initial conditions, the cells form various patterns throughout the course of the game."); + hc.rulesText.setText("Each cell with one or no neighbors dies, as if by solitude.\n\n\n" + + "Each cell with four or more neighbors dies, as if by overpopulation.\n\n\n" + + "Each cell with two or three neighbors survives.\n\n\n\n\n" + + "Each cell with three neighbors becomes populated."); stage.setAlwaysOnTop(true); stage.getIcons().add(new Image(Objects.requireNonNull(Main.class.getResourceAsStream("icon.png")))); stage.show(); @@ -99,6 +104,7 @@ public void setLife(Life life) { } public void resetClicked(ActionEvent event) { + startStop.setText("Start"); life.reset(startStop.getScene()); } } diff --git a/src/main/java/com/example/conway/HelpController.java b/src/main/java/com/example/conway/HelpController.java index c558264..db60eca 100644 --- a/src/main/java/com/example/conway/HelpController.java +++ b/src/main/java/com/example/conway/HelpController.java @@ -1,12 +1,51 @@ package com.example.conway; import javafx.event.ActionEvent; +import javafx.scene.control.Hyperlink; +import javafx.scene.control.MenuButton; +import javafx.scene.control.ScrollPane; +import javafx.scene.input.MouseEvent; import javafx.scene.text.Text; public class HelpController { - public Text textArea; + public Text aboutText; + public Text rulesText; + public Text controlsText; + public ScrollPane aboutPane; + public ScrollPane rulesPane; + public ScrollPane controlPane; + public MenuButton menuButton; + public Hyperlink lexiconLink; public void glowstickClicked(ActionEvent event) { Main.getHS().showDocument("https://github.com/glowstick0017"); } + + public void onAboutClick(ActionEvent event) { + menuButton.setText("About"); + aboutPane.setVisible(true); + rulesPane.setVisible(false); + controlPane.setVisible(false); + lexiconLink.setVisible(false); + } + + public void onRulesClick(ActionEvent event) { + menuButton.setText("Rules"); + aboutPane.setVisible(false); + rulesPane.setVisible(true); + controlPane.setVisible(false); + lexiconLink.setVisible(false); + } + + public void onControlsClick(ActionEvent event) { + menuButton.setText("Controls"); + aboutPane.setVisible(false); + rulesPane.setVisible(false); + controlPane.setVisible(true); + lexiconLink.setVisible(true); + } + + public void lexiconClick(MouseEvent mouseEvent) { + Main.getHS().showDocument("https://bitstorm.org/gameoflife/lexicon/"); + } } diff --git a/src/main/resources/com/example/conway/born.png b/src/main/resources/com/example/conway/born.png new file mode 100644 index 0000000000000000000000000000000000000000..60187b05a36c154d75d30ff8823adeef0d08d126 GIT binary patch literal 6336 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 Ti!ktC2jH5KsbQtQOWc0}K - - + + -