Battleship java program | Computer Science homework help


userInterface package

Add an import for

1.     core.BattleshipClient

2.     core.Ship


Create an ActionListener for the Deploy Ships button that does the following:

1.     Disables the UI components on the JPanel with ship selection options

2.     Add a JPanel to the right of Player One’s button board with a JTextArea for displaying the game status to the user

3.     Add a JPanel to the right of the game status with Player Two’s button board

4.     Call the play() method in class BattleshipClient


In the ActionListener for the Game Menu set the player mode based on what the user selected, the options are:

Player versus Player

Player versus Computer

Computer versus Computer

Example code:

if(e.getActionCommand().equals(“Player vs. Player”))

{                players[Constants.PLAYER_ONE].setPlayMode(Constants.HUMAN);                players[Constants.PLAYER_TWO].setPlayMode(Constants.HUMAN);


Add a class member to store the player’s mode, human or computer; create getter/setter for the class member


Create a method that will automatically layout the ships for when the player mode is set to computer using the Random class to randomly select the direction and location for the startRowClick and startColumnClick; make sure the auto layout uses null for the color

Update the UI so that it reflects the saved data for each Player

core package

This class controls the game being played


Create a custom constructor that takes two parameters, an Array of class Player and class BattleshipUI


Create a method play() to manage the play between Player One and Player Two; for this iteration only Human versus Computer has to function


When a JButton has been selected/clicked:

1.     if it is a hit

a.      change the background color to something other than the default gray(i.e. null) and the ship color (e.g.Color.BLACK)

b.     update the object instance so that the number of hits is increased or the hits left is decreased

2.     if it is a miss

a.      change the background color to something other than the default gray (i.e. null), the ship color, or the color used for a hit


When a ship has 0 (zero) hits left or has taken the max number of hits update the ship so that isSunk = true; notify the user when each of their ships has been sunk


Whichever player sinks all five opponent’s ships first wins the game!




Source compiles with no errors


Source runs with no errors


Source includes comments



Place your order
(550 words)

Approximate price: $22

Calculate the price of your order

550 words
We'll send you the first draft for approval by September 11, 2018 at 10:52 AM
Total price:
The price is based on these factors:
Academic level
Number of pages
Basic features
  • Free title page and bibliography
  • Unlimited revisions
  • Plagiarism-free guarantee
  • Money-back guarantee
  • 24/7 support
On-demand options
  • Writer’s samples
  • Part-by-part delivery
  • Overnight delivery
  • Copies of used sources
  • Expert Proofreading
Paper format
  • 275 words per page
  • 12 pt Arial/Times New Roman
  • Double line spacing
  • Any citation style (APA, MLA, Chicago/Turabian, Harvard)

Our guarantees

Delivering a high-quality product at a reasonable price is not enough anymore.
That’s why we have developed 5 beneficial guarantees that will make your experience with our service enjoyable, easy, and safe.

Money-back guarantee

You have to be 100% sure of the quality of your product to give a money-back guarantee. This describes us perfectly. Make sure that this guarantee is totally transparent.

Read more

Zero-plagiarism guarantee

Each paper is composed from scratch, according to your instructions. It is then checked by our plagiarism-detection software. There is no gap where plagiarism could squeeze in.

Read more

Free-revision policy

Thanks to our free revisions, there is no way for you to be unsatisfied. We will work on your paper until you are completely happy with the result.

Read more

Privacy policy

Your email is safe, as we store it according to international data protection rules. Your bank details are secure, as we use only reliable payment systems.

Read more

Fair-cooperation guarantee

By sending us your money, you buy the service we provide. Check out our terms and conditions if you prefer business talks to be laid out in official language.

Read more

Enjoy 10% OFF today with the coupon code: save10