List of Files - Kenorah/Battleships GitHub Wiki

/battleships/src

DeploymentController.vb
The DeploymentController controls the players actions during the deployment phase.

DiscoveryController.vb
The battle phase is handled by the DiscoveryController.

EndingGameController.vb
The EndingGameController is responsible for managing the interactions at the end of a game.

GameController.vb
The GameController is responsible for controlling the game, managing user input, and displaying the current state of the game.

GameLogic.vb
Main function of the program

GameResources.vb
Loads the programs fonts, images, sounds, and music

GameState.vb
The GameStates represent the state of the Battleships game play. This is used to control the actions and view displayed to the player.

HighScoreController.vb
Controls displaying and collecting high score data.

MenuController.vb
The menu controller handles the drawing and user interactions from the menus in the game. These include the main menu, game menu and the settings menu.

UtilityFunctions.vb
This includes a number of utility methods for drawing and interacting with the Mouse.

/battleships/src/model

AIHardPlayer.vb
AIHardPlayer is a type of player. This AI will know directions of ships when it has found 2 ship tiles and will try to destroy that ship. If that ship is not destroyed it will shoot the other way. Ship still not destroyed, then the AI knows it has hit multiple ships. Then will try to destoy all around tiles that have been hit.

AIMediumPlayer.vb
The AIMediumPlayer is a type of AIPlayer where it will try and destroy a ship if it has found a ship.

AIOption.vb
The different AI levels.

AIPlayer.vb
The AIPlayer is a type of player. It can readomly deploy ships, it also has the functionality to generate coordinates and shoot at tiles

AttackResult.vb
AttackResult gives the result after a shot has been made.

BattleshipsGame.vb
The BattleShipsGame controls a big part of the game. It will add the two players to the game and make sure that both players ships are all deployed before starting the game. It also allows players to shoot and swap turns between player. It will also check if players are destroyed.

Direction.vb
The direction the ship can be oriented.

ISeaGrid.vb
The ISeaGrid defines the read only interface of a Grid. This allows each player to see and attack their opponents grid.

Player.vb
Player has its own _PlayerGrid, and can see an _EnemyGrid, it can also check if all ships are deployed and if all ships are detroyed. A Player can also attach.

ResultofAttack.vb
The result of an attack.

SeaGrid.vb
The SeaGrid is the grid upon which the ships are deployed.

SeaGridAdapter.vb
The SeaGridAdapter allows for the change in a sea grid view. Whenever a ship is presented it changes the view into a sea tile instead of a ship tile.

Ship.vb
A Ship has all the details about itself. For example the shipname, size, number of hits taken and the location. Its able to add tiles, remove, hits taken and if its deployed and destroyed.

ShipName.vb
The names of all of the ships in the game.

Tile.vb
Tile knows its location on the grid, if it is a ship and if it has been shot before.

TileView.vb
The values that are visable for a given tile.

/battleships

build.sh
compiles the program

run.sh
runs the program

clean.sh
cleans the program

README.md
contains useful information regarding how to use the program

out.log
contains infomation about the build data

contributors.txt
list of contributors

/battleships/Resources

highscores.txt
stores the highscores for the game

SwinGame.icns
SwinGame.ico

/battleships/Resources/animations

splash.txt
The splash and explosion animation

startup.txt
The SwinGame splash screen

/battleships/Resources/bundles

FileDialog.txt
Loads images, fonts, sound effects, and panels

splash.txt
This loads all of the resourced used by the splash screen

/battleships/Resources/fonts

arial.ttf
cour.tff
ffaccess.ttf
maven_pro_regular.ttf

/battleships/Resources/images

deploy.jpg
deploy_button_hl.png
deploy_dir_button_horiz.png
deploy_dir_button_vert.png
deploy_play_button.png
deploy_randomize_button.png
discover.jpg
explosion.png
fdFile.png
fdFolder.png
FileDialog_Active.png
FileDialog_Background.png
FileDialog_Inactive.png
FileDialog_Scroll.png
FileDialog_ScrollSmall.png
loader_empty.png
loader_full.png
main_page.jpg
ship_deploy_horiz_1.png
ship_deploy_horiz_2.png
ship_deploy_horiz_3.png
ship_deploy_horiz_4.png
ship_deploy_horiz_5.png
ship_deploy_vert_1.png
ship_deploy_vert_2.png
ship_deploy_vert_3.png
ship_deploy_vert_4.png
ship_deploy_vert_5.png
splash.png
SplashBack.png
Swinburne.jpg
SwinGameAni.jpg
SwinGameAni.png

/battleships/Resources/panels

FileDialog.txt
Load bitmaps for the panel and load Fonts for labels before creating panels.

/battleships/Resources/sounds

error.wav
hit.wav
horrordrone.mp3
lose.wav
sink.wav
SwinGameStart.ogg
SwinGameStart.wav
watershot.wav
winner.wav

/battleships/lib

cygpath
SwinGame.dll
SwinGame.dll.mdb

/battleships/lib/godly

libSGSDK.dylib

/battleships/lib/mac

libSGSDK.dylib

/battleships/lib/sdl13

libSGSDK.dylib

/battleships/lib/win

jpeg.dll
libfreetype-6.dll
libogg-0.dll
libpng12-0.dll
libpng13.dll
libtiff-3.dll
libvorbis-0.dll
libvorbisfile-3.dll
mikmod.dll
ogg.dll
SDL.dll
SDL_gfx.dll
SDL_image.dll
SDL_mixer.dll
SDL_net.dll
SDL_ttf.dll
SGSDK.dll
smpeg.dll
swingame.rc
zlib1.dll

/battleships/bin/Debug

battleships.exe
battleships.pdb
jpeg.dll
libfreetype-6.dll
libogg-0.dll
libpng12-0.dll
libpng13.dll
libtiff-3.dll
libvorbis-0.dll
libvorbisfile-3.dll
mikmod.dll
ogg.dll
SDL.dll
SDL_gfx.dll
SDL_image.dll
SDL_mixer.dll
SDL_net.dll
SDL_ttf.dll
SGSDK.dll
smpeg.dll
SwinGame.dll
zlib1.dll

⚠️ **GitHub.com Fallback** ⚠️