Tobias Krause
|
c0310d8ed6
|
tictactoe: hard ai uses chance to win in diagonal
|
3 years ago |
Tobias Krause
|
7f1b801c93
|
tictactoe: hard ai uses chance to win in cols
|
3 years ago |
Tobias Krause
|
360870072e
|
tictactoe: hard ai uses chance to win in row
|
3 years ago |
Tobias Krause
|
b29b7ee9d7
|
tictactoe: hard AI prevents opponents win in diagonal
|
3 years ago |
Tobias Krause
|
7115050d60
|
tictactoe: hard AI prevents opponents win in col
|
3 years ago |
Tobias Krause
|
c6e0d83d70
|
tictactoe: hard AI prevents opponents win in row
|
3 years ago |
Tobias Krause
|
01f94e3198
|
tictactoe: countCharsInDiag throws IndexOutOfBoundsException for invalid index
|
3 years ago |
Tobias Krause
|
cce28aacd0
|
tictactoe: countCharsInDiag counts number of given char in specific diagonal
|
3 years ago |
Tobias Krause
|
525754409a
|
tictactoe: added method countCharsInDiag
|
3 years ago |
Tobias Krause
|
36b8cdfcac
|
tictactoe: countCharsInCol counts number of given char in specific col
|
3 years ago |
Tobias Krause
|
8c89d0edd6
|
tictactoe: added method countCharsInCol
|
3 years ago |
Tobias Krause
|
9029de6c12
|
tictactoe: countCharsInRow counts number of given char in specific row
|
3 years ago |
Tobias Krause
|
ddf9aebb8f
|
tictactoe: added method countCharsInRow
|
3 years ago |
Tobias Krause
|
4456251b07
|
tictactoe: hard AI sets edge in second move
|
3 years ago |
Tobias Krause
|
7c7e134ad9
|
tictactoe: hard AI sets middle field if it hasnt been set yet
|
3 years ago |
Tobias Krause
|
93591f47c0
|
tictactoe: hard AI chooses edge field if field in the middle was already set
|
3 years ago |
Tobias Krause
|
88d559c6c9
|
tictactoe: added hard AI
|
3 years ago |
Tobias Krause
|
bd561b7024
|
tictactoe: AIEasy never sets a field which was already set
|
3 years ago |
Tobias Krause
|
a786eb7496
|
tictactoe: added easy AI
|
3 years ago |
Malte Schellhardt
|
972fcd97a6
|
tictactoe: added setter for playfield and changed internal board datatype to char
|
3 years ago |
Malte Schellhardt
|
27cadc4097
|
tictactoe: refactored test code
|
3 years ago |
Malte Schellhardt
|
4e425ff54b
|
tictactoe: added restriction for board sizes below three
|
3 years ago |
Malte Schellhardt
|
edbbefc7ff
|
tictactoe: fixed fieldCountTest. Now works with different playfield sizes
|
3 years ago |
Malte Schellhardt
|
60ec15241b
|
tictactoe: refactored board management and added constructor to handle different playfield sizes
|
3 years ago |
Malte Schellhardt
|
068bed8357
|
tictactoe: added method to count playing fields
|
3 years ago |
Malte Schellhardt
|
d6b0153491
|
tictactoe: added getter for game board
|
3 years ago |
Malte Schellhardt
|
4e743e694e
|
tictactoe: added class for gamelogic
|
3 years ago |
Lorenz Hohmann
|
2c299f689a
|
Added GameManager and check if GameState is correct after start function call
|
3 years ago |
Lorenz Hohmann
|
353c68c358
|
Fixed JUnit Imports (Maven didn't compile correctly)
|
3 years ago |
Lorenz Hohmann
|
d5d6af193e
|
Beautified GUI Won Screen
|
3 years ago |
Lorenz Hohmann
|
bed8f71879
|
Implemented gameOver() function in GUI with test case
|
3 years ago |
Lorenz Hohmann
|
8e92a1caee
|
Added third test for areAllShipsHit() when a ship is not fully hit
|
3 years ago |
Lorenz Hohmann
|
aae87e50e1
|
Refactoring MatchfieldShipTest class: added description for tests and outsourced multiple tests into more functions
|
3 years ago |
Lorenz Hohmann
|
27e7a96ba7
|
Added second test case for areAllShipsHit() - all ships hit test
|
3 years ago |
Lorenz Hohmann
|
abeaff8d7b
|
Implemented areAllShipsHit() with first test case if no ship was hit
|
3 years ago |
Lorenz Hohmann
|
805c233108
|
Fixed GameLogicTest with new test parameter in start() function
|
3 years ago |
Lorenz Hohmann
|
5d039543b7
|
GUI Refactoring
|
3 years ago |
Lorenz Hohmann
|
629063b5ff
|
Fixed that AI has next move when ship was hit
|
3 years ago |
Lorenz Hohmann
|
dd2ddc5811
|
Fixed chooseField returns null
|
3 years ago |
Max Wenzel
|
53bc0d9064
|
chooseField still works after returning null
|
3 years ago |
Lorenz Hohmann
|
b11262ba56
|
Changed whole GUI layout to two matchfields
|
3 years ago |
Lorenz Hohmann
|
d472759a1c
|
Implemented logic after ai made move and player made move
|
3 years ago |
Lorenz Hohmann
|
79f90946a5
|
Refactored LogicTest: No longer useful with general game loop
|
3 years ago |
Lorenz Hohmann
|
a42df0aac2
|
Added shoot() function to panel click for general game loop
|
3 years ago |
Lorenz Hohmann
|
cc34afa847
|
Added test case when field was already hitted
|
3 years ago |
Lorenz Hohmann
|
4d69cc3e76
|
Added test case when field was already shot (expect false)
|
3 years ago |
Lorenz Hohmann
|
8c49de9767
|
New test case for shoot(): Check if field was already shot
|
3 years ago |
Lorenz Hohmann
|
dd87d19b18
|
Added second test case to shoot(): Call on Coordinate without ship
|
3 years ago |
Lorenz Hohmann
|
fadf708556
|
Added shoot() function to Coordinate class with first test case
|
3 years ago |
Lorenz Hohmann
|
fff174937b
|
Refactoring: getCoordinateFromLabel()
|
3 years ago |