Commit Graph

82 Commits

Author SHA1 Message Date
b4213e81c5 Change variable name style to reflect that it is a constant
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-29 11:46:34 -03:00
49789f6df3 Revert player to A* AI and make enemy just a tiny bit slower to prevent deadlocks
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-26 21:24:23 -03:00
1185f7938a Fix typo
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-26 19:45:43 -03:00
6c2665b1c5 Reimplement singleton classes and update copyrights
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-26 19:12:21 -03:00
18a04d2d07 Fix raw class types
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-25 20:42:42 -03:00
21f54beca5 Fix restart bug caused by unique instances of player and portal objects
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-25 14:05:33 -03:00
e820ad1a79 Check if an AI is being used
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-25 14:01:02 -03:00
718943d54d Update IDE environment
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-12 20:46:33 -03:00
1918a08a8a Increase grid size to 20x10
Signed-off-by: Chris Cromer <chris@cromer.cl>
2020-02-12 20:45:36 -03:00
ba5bb7b090 Implement singleton for player and portal
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-11-12 14:04:48 -03:00
a092dee1e5 Remove <p> tags
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 20:52:52 -03:00
bbf10d7c95 Implement more types of heuristics
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 20:50:41 -03:00
8f901d8f0a Move heuristic comments into javadoc
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 20:27:00 -03:00
38bf713562 Remove sort destinations from AI class
Change enemy to 600ms sleep
Change chest number back to 2
Turn lock back on for enemies

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 20:23:31 -03:00
5510f132b7 If the player location is not known yet during sort, find it. This only happens when the loop has not been run yet.
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 19:14:08 -03:00
cb7fe3767d Improve the AI some more
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 18:49:28 -03:00
4067055af4 Switch to a concurrent matrix for the cells
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 18:04:08 -03:00
8c627bda8c Make the AI more robust
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 17:35:11 -03:00
fb7c7ec227 Remove extra whitespace
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 13:49:12 -03:00
6d4ab8a0cf Fix gradle build
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 13:47:36 -03:00
6183bf84c6 Fix infinite search in A* Search
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-26 13:47:08 -03:00
7744b5ae6d Fix missing javadoc tags
Make enemy AI a little bit slower

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-21 14:52:47 -03:00
cbcb6d0d01 Implement A* Search
Many changes to improve AI usage

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-17 12:27:17 -03:00
1ac56b3b39 Change code style for groovy
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-14 09:26:56 -03:00
5b8e36876c Don't deactivate the portal if a gem wasn't purified
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-14 09:26:14 -03:00
c32efe7db0 Download the javadoc for gson as well
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-13 21:52:24 -03:00
8ed02cf2ac Don't draw the gem in the status section until the animation is finished
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-13 21:22:43 -03:00
00c54e5e15 Update gradle build file to ignore false positive warnings
Move shared functionality into the SearchAI class
Move shared functionality into the Object class
Add new state enum types
Implement enemy AI
Make player get the gem right away
Fix keyListener still listening after winning or game over
Reduce obstacles to 5%
Make sure all objectives can be reached by player
Make sure all enemies can reach player

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-13 21:10:16 -03:00
b0d8a06c83 Update gradle wrapper
Add gradle properties

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 17:17:13 -03:00
000a5e1fde Cleanup code
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 14:08:22 -03:00
81432f3243 Optimize imports
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 12:54:42 -03:00
aec9190265 Change line ending to be friendly with windows
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 12:42:48 -03:00
dbb524a7c7 Sort the destinations from the start
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 12:33:13 -03:00
804ab0acef Separate the algorithm from the game
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 12:32:55 -03:00
0d2d95f216 Change json cell class name
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-11 11:20:20 -03:00
f7adc8551e Remove spanish class names
Implement restart
Make sure all objectives are reachable
Optimize code

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-10 23:06:16 -03:00
9f6d6853ad Add LICENSE and README files to the distributions
Add WASD key usage to game

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-10 16:14:38 -03:00
a0c23e8cf3 Improve intelligence
Rename main class
Dynamic gson version
Improve build time
Remove panels
Improve random generation of objects so that all objectives are obtainable
Add door, gem, and portal sounds

Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-10 15:33:03 -03:00
57d68a142e Optimize image files
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-09 18:15:26 -03:00
e6624b527d AI optimization
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-09 17:14:16 -03:00
b718d7b40a Fix incorrect message
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-07 21:56:53 -03:00
58a29acf10 Add Breadth-First Search AI
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-07 21:45:39 -03:00
f6a9518717 Add missing javadoc elements
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-06 17:23:47 -03:00
0b1014041d Add missing paramater to javadoc
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-06 17:12:04 -03:00
f0a5d7b219 Suppress false positive inspections
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-06 00:09:58 -03:00
1b3bdce253 Add project icon
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-06 00:07:02 -03:00
e0bc99a095 Optimize code
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-05 23:51:31 -03:00
e39f52d041 Add gems and new end game spot
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-05 23:41:14 -03:00
e4716faca5 Change gradle build to correctly copy libs
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-03 20:48:01 -03:00
7d48b1ccb5 Change over to gradle build system
Signed-off-by: Chris Cromer <chris@cromer.cl>
2019-10-03 20:16:37 -03:00