Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I neep help please IN JAVA coding, GUI Programming - The Lunatics Are Taking Over The Asylum The lunatics are taking over the asylum, and

I neep help please IN JAVA coding, GUI Programming - The Lunatics Are Taking Over The Asylum

The lunatics are taking over the asylum, and you are the last guard left. Your goal is to escape through the only exit door. This week, you will create a JavaFX GUI that represents the Scaryville State Home for the Criminally Insane.

Do the styling (coding of the details of the appearance of the GUI, such as colors and font sizes) using CSS, not the JavaFX setters, wherever possible. Make the start and finish squares appear different from other squares.

Grading for this lab will heavily weight the appearance of the GUI as well as its functionality. To get a good grade on this assignment, your GUI must both work correctly and look good.

Here are some of the classes you will need. This is not a complete list, and each class will need more than the basics I specify below:

A Coordinate class with an int row, an int column, and a char representing the value of the coordinate (this week, you will use four values for the Coordinates: blank (' ') for an empty space, W for a wall, S for the starting point, and E for the exit.) Provide getters and setters.

An AsylumMap class with a two-dimensional array of Coordinates but no GUI code.

A JavaFX GUI class called MapPane. Since the constructor for Scene takes a Pane as a parameter, this class should extend one of the Pane classes, most likely BorderPane. It should also contain a GridPane with a two-dimensional grid of Labels. One label in the GridPane corresponds to one Coordinate in the AsylumMap. Note this important distinction: the MazeGUIPane is for the the user interface while the AsylumMap is for data.

The outer edges of the grid should consist of walls, except for one exit square. Use the square at row 1, column 1 as the starting point. When the game starts, squares that are not on the edges and are not the start square should be randomly set to wall and space squares (use about 25% walls.) Note that this does not guarantee that it is possible to escape the lunatics at all.

You will also need a game reset button. This button creates a new random map. In my solution, the reset button is in an HBox contained in the MazeGUIPane. Write an event handler for the F10 key which does the same thing. The event handler handle a KeyEvent and find the key strokes using the the method getKeyCode(), which returns a KeyCode enum. Attack the event handler to the outer pane. Here are some key lines of code for the event handler.

 final EventHandler keyEventHandler = new EventHandler() { public void handle(final KeyEvent keyEvent) { if (keyEvent.getCode() == KeyCode.F10) { 

You may use this GUI as a model if you like, but feel free to create a different one:

regardsimage text in transcribed

Scaryville Home For The Criminally Insane New Game

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Databases DeMYSTiFieD

Authors: Andy Oppel

2nd Edition

0071747990, 978-0071747998

More Books

Students also viewed these Databases questions

Question

Graph the solution set to the inequality. Answered: 1 week ago

Answered: 1 week ago

Question

Explain the different types of marketing strategies.

Answered: 1 week ago

Question

Explain product positioning.

Answered: 1 week ago

Question

Explain Industrial market segment.

Answered: 1 week ago