Skip to content

evanSpendlove/JunkBot

Repository files navigation

Scrabble

Group project to design a Java-based Scrabble replica with a JavaFX front-end.

 

About Scrabble

see Wikipedia

Scrabble is a word game in which two to four players score points by placing tiles, each bearing a single letter, onto a game board divided into a 15×15 grid of squares. The tiles must form words that, in crossword fashion, read left to right in rows or downward in columns, and be included in a standard dictionary or lexicon.

 

IDEs & Packet Managers

For this project, we used IntelliJ IDEA as our IDE and Maven for package management.

 

Running the JAR

Double click the jar file, or right-click and run with JAR Launcher. Alternatively, run using your IDE.

 

Running the Unit-Tests.

Prerequisites:

  • Java 11
  • JUnit 5
  • TestFX 4.0.16 (See pom.xml for more TestFX-associated pre-requisites)
  • IDE

Using IntelliJ:

  1. Create new project using blank template.
  2. Set up the folder directory in the form: src -> main -> java -> scrabbleGame -> test -> java
  3. Mark the src/main/java as a blue 'Sources root' in the Module Settings for the project.
  4. Mark the src/test/java as a green 'Test root' in the Module Settings for the project.
  5. Download the repo as a .ZIP file.
  6. Copy the .java class files into the src/main/java folder.
  7. Copy the .java test files into the src/main/test folder.
  8. Now, ensure the project is set to JDK 11.
  9. Right click on the 'test' folder and click "Run all 'Tests'".

 

Authors

 

Sprint 1 - Short Documentation

Requirements:

  • Pool: Stores the value of each tile
  • Pool: Stores the tiles currently in the pool
  • Pool: Allows the pool to be reset
  • Pool: Allows display of the number of tiles in the pool
  • Pool: Allows the pool to be check to see if it is empty
  • Pool: Allows tiles to be drawn at random from the pool
  • Pool: Allows the value of a tile to be queried
  • Player: Allows the player data to be reset
  • Player: Allows a player's score to be increased
  • Player: Allows access to their score
  • Player: Allows access to a player's frame (tiles)
  • Player: Allows display of a player's name
  • Player: Allows the name of the player to be set
  • Frame: Stores the letters that each player has in their frame
  • Frame: Allows letters to be removed from a frame
  • Frame: Allows a check to be made if letters are in the frame
  • Frame: Allows a check to be made to see if the frame is empty
  • Frame: Allows access to the letters in the frame
  • Frame: Allows a frame to be refilled from the pool
  • Frame: Allows a frame to be displayed
  • PlayerTest: Contains a main method that will run a series of tests on the classes.

 

Who did what

see Trello

Reuben Evan Cal
Player Class Frame Class Pool Class
Player Test Frame Test Pool Test

Sprint 2 - Short Documentation

Requirements:

  • Board Class
  • Board Test
  • Square Class
  • Square Test
  • Move Class
  • Move Test
  • Placement Class
  • Placement Test

Who did what

Reuben Evan Cal
Board Class (Some Methods) Move Class Board Class (Some Methods)
Board Test (Some Methods) Move Test Board Test (Some Methods)
Placement Class
Placement Test
Square Class
Square Test

Sprint 3 - Short Docs

Who did what

Reuben Evan Cal
Game Engine JavaFX (FXML, etc.) Scoring
some Testing Some Testing Some testing

Sprint 4 - Short Docs

Who did what

Reuben Evan Cal
Challenge Command TestFX Unit-Testing Lexicon Class
Some commenting Some debugging & commenting

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages