Commit Graph

368 Commits

Author SHA1 Message Date
Kjistóf a9939b3600 Closes #11. Now there list is scrollable in case of > 4 maps. 2016-05-14 12:45:36 +02:00
Kjistóf 6c375f94bf fixed a bug where a Player would destroy a Gap as PlayerBases do 2016-05-14 10:44:36 +02:00
Kjistóf 7da9cf928e removed resolved TODO 2016-05-14 03:18:07 +02:00
Kjistóf 12f151478f fixed fix: ApplicationFrame now goes to the center again 2016-05-14 03:13:47 +02:00
Bokros Bálint 80ff3e4383 Reworked window size handling
Window is now resized properly at all times to embed the current frame purrfectly
2016-05-14 03:07:11 +02:00
Bokros Bálint 4f11f60b50 Implemented proper map size handling in Display 2016-05-14 03:05:17 +02:00
Bokros Bálint df3bb34969 Removed unnecessary commented code line 2016-05-14 03:05:17 +02:00
Bokros Bálint b5df8cfcaf Stored height alongside width in dungeon 2016-05-14 03:05:17 +02:00
Kjistóf a9263a41e4 ApplicationFrame now opens up on the center of the screen 2016-05-14 02:22:52 +02:00
Kjistóf 665ac519c2 fixed typo in Dungeon.buildDungeon()'s documentation comment 2016-05-14 02:21:56 +02:00
Bokros Bálint f3b5cb5d57 Implemented window resizing for the lulz
Target size is static for the time being
2016-05-14 02:08:00 +02:00
Bokros Bálint c75c277403 Implemented background music 2016-05-14 00:15:50 +02:00
Bokros Bálint a17de768eb Implemented main menu 2016-05-14 00:15:50 +02:00
Kjistóf 9d551ad376 fixed a bug where Stargate.teleport() wouldn't call Tile.onEntry() 2016-05-14 00:03:47 +02:00
Kjistóf 89a1da497f now "flying" Stargates destroy Replicators, and belonging bugfix
Game.playerBaseDestroyed() is not called everythime a PlayerBase is
destroyed.
2016-05-13 23:52:10 +02:00
Kjistóf 7d059701cc now Gaps that are converted to Fields show up correctly 2016-05-13 23:17:42 +02:00
Kjistóf 46ecc68500 now Replicators wait 2 seconds before making first move 2016-05-13 23:17:07 +02:00
Kjistóf 0346d99201 replicators now make Gaps Fields 2016-05-13 22:53:19 +02:00
Kjistóf 070c1f8720 removed unnecessary lines of code 2016-05-13 22:16:54 +02:00
Bokros Bálint 1974396f61 Implemented initial player death 2016-05-13 22:10:54 +02:00
Kjistóf b732413631 implemeted Replicator "AI", it now moves around randomly in a fixed rate 2016-05-13 22:00:49 +02:00
Kjistóf 4aa307a254 refactored Game.getRandomDirection() to Direction.getRandom() 2016-05-13 22:00:06 +02:00
Bokros Bálint 5db401d2ab Fixed issue where mapselectorpanel would initialize more than once 2016-05-13 21:34:13 +02:00
Bokros Bálint 12cb4fd10f Fixed multiple key handlers being registered on restarted game 2016-05-13 21:31:46 +02:00
Kjistóf b72fc8f1ca fixed a bug regarding panels when starting a new game 2016-05-13 21:10:14 +02:00
Bokros Bálint 37fa657720 Refactored flowoftime construction, fixes #9 2016-05-13 21:05:34 +02:00
Kjistóf 1a2d0fdfeb now ending outcomes of the game work purrfectly 2016-05-13 20:56:17 +02:00
Bokros Bálint cb99f84ded Boxes now cannot be put on walls -- and other places, where they don't belong
fixes #8
2016-05-13 20:54:17 +02:00
Bokros Bálint 6700c33b8d Player is now floating between dimensions if the exit of the other stargate is blocked
also fixes #7
2016-05-13 20:48:48 +02:00
Kjistóf d64fb27413 updated map format to read time limit & max ZPM count needed to win 2016-05-13 20:31:28 +02:00
Kjistóf 3be072e282 Complete overhaul of Application & ApplicationFrame so that game can end 2016-05-13 20:31:28 +02:00
Bokros Bálint e3ce590d1d Fixed remaining errors with teleporting
closes #6
2016-05-13 20:27:05 +02:00
Bokros Bálint d14ce39ee1 Added invert to Direction 2016-05-13 20:26:02 +02:00
Bokros Bálint 595d5d6048 Stargates are now finally spawned correctly
Fixes #3
2016-05-13 19:15:53 +02:00
Bokros Bálint d1a20ff5dc Added isSpawned method to Stargate 2016-05-13 19:15:28 +02:00
Kjistóf 2fdb311315 Fixed a bug where an equal Scale treshold wouldn't open Gates. 2016-05-13 18:47:26 +02:00
Kjistóf 42467c7384 onExit() is now properly called in PlayerBase.move(). this fixes #5. 2016-05-13 18:43:50 +02:00
Bokros Bálint 314428b273 Refactored spawnStargate, with default implementation in base class 2016-05-13 18:38:56 +02:00
Kjistóf 78b7645bfe made Game.updateDisplay() actually work. thanks whoever fucked it up!
closes #4.
closes #2.
2016-05-13 18:37:18 +02:00
Kjistóf b2505d283d added Control.ioErrorMessage() method (USE THIS TO HANDLE IOExceptions) 2016-05-13 18:22:48 +02:00
Kjistóf 06f4e32942 added method Tile.isSteppable() for obvious reasons... 2016-05-13 17:59:14 +02:00
Kjistóf 39a442ba14 fixed a bug where Dungeon.buildDungeon would set map directions upside down 2016-05-13 17:28:29 +02:00
Kjistóf 9753fa2931 added null check to PlayerBase.move() 2016-05-13 17:23:37 +02:00
Kjistóf a1f5c55f41 removed unnecessary TODOs from code 2016-05-13 17:13:26 +02:00
Bokros Bálint 7f7025219e Dirty, but working event subscribe 2016-05-13 17:11:01 +02:00
Bokros Bálint 76057a4712 KeyHandler is properly nested now 2016-05-13 17:11:01 +02:00
Kjistóf 3b5ef952bc added Application.java (main entry point) 2016-05-13 16:55:39 +02:00
Bokros Bálint a0f47a6e05 Added rotate to key options 2016-05-13 16:08:53 +02:00
Bokros Bálint c9ec85cec5 Implemented updateDisplay 2016-05-13 16:08:27 +02:00
ericnerdo 3522c83baa ApplicationFrame now calls gamepanel.DrawVisuals().
Meow. :3
2016-05-13 15:32:32 +02:00
ericnerdo cc1094512a Replicator fixed.
Fucking Granny...
2016-05-13 15:29:15 +02:00
Kjistóf 6a8d73c098 babilon quickfix: added EXIT_ON_CLOSE to ApplicationFrame. 2016-05-13 15:27:54 +02:00
ericnerdo e18d1a61bf PlayerDrawer.java fixed.
Kitten haaad a bad name :3 :(
2016-05-13 15:22:33 +02:00
ericnerdo 13124567a0 ScaleDrawer now handles boxes properly
MEOOOOW Kitten boxes ^^ :3
2016-05-13 15:19:32 +02:00
ericnerdo cc73a671f5 GateDrawer now handles open-close properly
Meow.
2016-05-13 15:17:39 +02:00
ericnerdo e64e18233c PlayerDrawer now handles rotation.
PlayerDrawer is now sync'd with source images.
2016-05-13 15:15:43 +02:00
ericnerdo f38c4e5bd6 ReplicatorDrawer now handles every Directions.
PlayerBase.draw() is now synchronized.
2016-05-13 15:05:55 +02:00
Bokros Bálint 48859a676c Fixed typo 2016-05-13 14:53:31 +02:00
ericnerdo 969b80c8eb GameSession starting added
Users can now start game by clicking on the mapname.
2016-05-13 14:36:32 +02:00
ericnerdo cf52cb6cba Game.startGame() modified.
startGame now adds Players and Replicator to Display.
2016-05-13 14:36:32 +02:00
Kjistóf 024a1e8a9a added Dungeon & Display setters to Game 2016-05-13 14:06:02 +02:00
Bokros Bálint 3cd196df78 Refactored Game following the footprints of Socc
such Singleton, very software techniques, much patterns
2016-05-13 13:58:23 +02:00
Kjistóf ccff798960 implemented event handler for ApplicationFrame's mapselecting 2016-05-13 13:06:48 +02:00
ericnerdo e25cc615cd Display.java now extends JPanel. paintComponent() overridden. 2016-05-09 17:00:39 +02:00
ericnerdo d513d5f9fa Drawer.getImage() added. AbstractDrawer.java added to contain image for
XXXDrawers. ImagePanel.java removed.
2016-05-09 16:56:41 +02:00
ericnerdo 8cc0136ee9 Revert "Drawer.java refactored: It is now an abstract class instead of an"
This reverts commit 80b844900c.
2016-05-09 16:56:41 +02:00
muskenum 76dcbc7488 Merge branch 'master' of https://github.com/bokrosbalint/cicaprojekt 2016-05-09 16:44:48 +02:00
muskenum 0f377fadb8 EAST and WEST dirs implemented in PlayerDrawer 2016-05-09 16:36:05 +02:00
ericnerdo 80b844900c Drawer.java refactored: It is now an abstract class instead of an
interface. ImagePanel.java removed.
2016-05-09 16:35:49 +02:00
muskenum 0103489de7 EAST and WEST dirs implemented in PlayerDrawerBase 2016-05-09 16:32:06 +02:00
ericnerdo f241695413 WallDrawer.java fixed. Looks like asking a null reference's name is not a
good idea.
2016-05-07 23:24:51 +02:00
ericnerdo e63a62893e PlayerBaseDrawer.java added. 2016-05-07 22:27:16 +02:00
ericnerdo 25fd8189d2 PlayerDrawer.java added. 2016-05-07 22:19:55 +02:00
ericnerdo c854a1ed37 Drawers fixed from Babylonian errors (JComponent also has getX, getY). 2016-05-07 20:21:36 +02:00
ericnerdo 0d31d8c79b Revert "Drawers refactored. Imageloading is now in the Drawers instead of"
This reverts commit 3268268dc2.
2016-05-07 20:12:49 +02:00
ericnerdo 3268268dc2 Drawers refactored. Imageloading is now in the Drawers instead of
inheriting from ImagePanel. ImagePanel.java deleted.
2016-05-07 19:41:57 +02:00
Kjistóf 3a9c615b48 fixed a bug, where Gates would not initialize (Dungeon.buildDungeon()) 2016-05-07 19:17:14 +02:00
Kjistóf 3d81dc6c65 Dungeon.buildDungeon() now correctly sets Display up 2016-05-07 19:15:19 +02:00
Kjistóf 1f02ffc892 added Game reference to ApplicationFrame 2016-05-07 17:47:31 +02:00
Bokros Bálint 1c4488d710 Added keyboard input support for shooting stargates 2016-05-07 17:45:06 +02:00
Bokros Bálint a7d6c604d8 Implemented Stargate shooting in Game 2016-05-07 17:45:06 +02:00
Bokros Bálint 070d3ef3f4 Added a map to Stargate 2016-05-07 17:45:06 +02:00
ericnerdo 316e6e60ea ScaleDrawer.draw() modified. 2016-05-07 17:35:11 +02:00
ericnerdo 46d43ae4ed WallDrawer.draw() fixed. 2016-05-07 17:21:46 +02:00
Kjistóf 22553d657f added proof of concept mouse listener to JList in ApplicationFrame 2016-05-07 17:08:35 +02:00
ericnerdo 04afbf83a4 GateDrawer.draw() modified 2016-05-07 17:05:40 +02:00
Bokros Bálint d61b6af8ed Implemented box operations 2016-05-07 16:51:20 +02:00
Bokros Bálint f760ded0e4 Added hasBox to Player 2016-05-07 16:51:20 +02:00
ericnerdo 6edcffc586 ScaleDrawer.java added. 2016-05-07 16:47:57 +02:00
ericnerdo 96c3adba83 GateDrawer.java added. 2016-05-07 16:12:03 +02:00
Kjistóf 5c32997f8b ApplicationFrame now correctly displays menu with maps on run() 2016-05-07 16:10:56 +02:00
ericnerdo 46ced04536 FieldDrawer.draw() modified. 2016-05-07 15:47:43 +02:00
ericnerdo c91a1d051c Tile.hasBox() fixed. 2016-05-07 15:23:47 +02:00
ericnerdo f11adc2fab boolean hasZPM() and hasBox() added to Tile.java. 2016-05-07 15:22:42 +02:00
Bokros Bálint 645028bc94 Added keyboard input support for moving players and box operations 2016-05-07 15:20:20 +02:00
Kjistóf 536081b015 started implementing ApplicationFrame.init() -- further work needed 2016-05-07 15:16:18 +02:00
ericnerdo c157981253 Display.drawVisuals() now throws IOException. 2016-05-07 15:10:42 +02:00
ericnerdo f4f118a9ba draw() modified, Wall now shows stargates. 2016-05-07 15:08:13 +02:00
ericnerdo 39a082c2aa Drawer.draw() now throws IOException. 2016-05-07 15:07:23 +02:00
ericnerdo 9e37f114d0 String getName() added to Stargate.java 2016-05-07 15:06:25 +02:00
ericnerdo cd5b407fb3 Stargate getStargate() added to Wall.java. 2016-05-07 14:51:20 +02:00
ericnerdo 1c847c06ae void changeImage(String path) added to ImagePanel. 2016-05-07 14:45:58 +02:00
ericnerdo 573518d14b Heirs of ImagePanel now throw IOException. 2016-05-07 14:40:52 +02:00
ericnerdo 17d7f46d78 WallDrawer.java added 2016-05-07 14:29:36 +02:00
ericnerdo cc5f21ab78 Display display added to Game.java 2016-05-07 14:24:23 +02:00
Bokros Bálint 6fb3f4fb17 Merge branch 'master' of https://github.com/bokrosbalint/cicaprojekt 2016-05-07 14:21:37 +02:00
ericnerdo 0b5ef542df FieldDrawer.java added 2016-05-07 14:19:56 +02:00
Bokros Bálint a458aba4dd Added delay parameter to start of flowoftime 2016-05-07 14:19:53 +02:00
Bokros Bálint bf191678a6 Merge branch 'master' into game 2016-05-07 14:18:43 +02:00
Kjistóf 9e93cf8928 added ApplicationFrame.java -- to be implemented 2016-05-07 14:09:59 +02:00
ericnerdo c425fb7fe8 Merge branch 'master' of https://github.com/bokrosbalint/cicaprojekt 2016-05-07 14:07:01 +02:00
Bokros Bálint e98abbecac Added FlowOfTime init in Game 2016-05-07 14:06:09 +02:00
Bokros Bálint e1c6612356 Added lots'a init stuff in Game 2016-05-07 14:04:55 +02:00
ericnerdo 098f0cba62 Clients now can call getX and getY for objects which implement Drawer.
GapDrawer.java added
2016-05-07 14:04:05 +02:00
Kjistóf 27de97aaad added GameoverCause.TIMEOUT to FlowOfTime's timeout call 2016-05-07 13:52:09 +02:00
ericnerdo 3ef7bdd411 Display.java added to store visual elements 2016-05-07 13:46:03 +02:00
Kjistóf 7c3cbee3cc added GameoverCause to function sigtanures in Game 2016-05-07 13:43:26 +02:00
Kjistóf e4e7367a82 added GameoverCause.java -- enum to indicate cause of Game's ending 2016-05-07 13:40:47 +02:00
Kjistóf 446b2b57f3 implemented all the good stuff in FlowOfTime.java 2016-05-07 13:40:47 +02:00
ericnerdo f728bd4667 Drawer interface added 2016-05-07 13:34:26 +02:00
ericnerdo d228415e41 ImagePanel.java added to display images 2016-05-07 13:28:42 +02:00
Bokros Bálint 96e53324e1 Removed main from Game.java
It gon' be called from Application anyway
2016-05-07 13:15:55 +02:00
Bokros Bálint 412c37c1da Cleaned up Menu
Code Your Own Game
2016-05-07 13:02:35 +02:00
Kjistóf 2d03e81f49 a glorious day for all mankind: Tester.java deleted for good 2016-05-07 12:47:50 +02:00
Kjistóf 1920b879a5 removed sysouts from tests, so that not working code seems working 2016-04-26 11:51:56 +02:00
Bokros Bálint 20dff9e8c6 Added error handling in Menu babylon stylez 2016-04-26 02:12:13 +02:00
Bokros Bálint 55940e42ae Added print to box methods in Menu 2016-04-26 02:08:26 +02:00
Kjistóf 491924bdb4 implemeted runAllTests command in Menu 2016-04-26 01:41:46 +02:00
Kjistóf eb752eddbb fixed a bug where boxDrop J would call oneills method 2016-04-26 01:31:55 +02:00
Kjistóf d75a05f998 fixed moveTest 2016-04-26 01:26:23 +02:00
Bokros Bálint f6bef6fdde Implemented Stargate spawning correctly
Or at least attemted to
2016-04-26 01:09:49 +02:00
Bokros Bálint 90a2b58c37 Fixed list methods in Menu 2016-04-26 01:09:49 +02:00
Bokros Bálint e97d8c4c6d Fixed default Tile coordinates 2016-04-26 01:09:49 +02:00
ericnerdo 88f2c3103f Tester.java fixed 2016-04-26 01:02:01 +02:00
ericnerdo 651069d762 Merge branch 'cica'
Tester methods modified
2016-04-26 00:57:22 +02:00
ericnerdo 848350394f Tester methods modified 2016-04-26 00:46:09 +02:00
ericnerdo b37606b86f attribute boolean destroyed and its getter added to PlayerBase 2016-04-26 00:44:47 +02:00
ericnerdo e9303c68e4 getZPMCount() added to Player 2016-04-26 00:43:58 +02:00
Bokros Bálint 732d00bb23 Fixed NPE in Tile 2016-04-26 00:35:03 +02:00
Bokros Bálint 9436508c60 Fixed Menu 2016-04-26 00:34:46 +02:00
ericnerdo 0b170e99e9 Tester.rotate() modified 2016-04-26 00:22:27 +02:00
Kjistóf 1d2171b713 reimplemented most of buildDungeon: terrible code is now less terrible 2016-04-26 00:08:27 +02:00
ericnerdo df953dc6fc Merge branch 'master' of https://github.com/bokrosbalint/cicaprojekt
Tester.testExtraZPMs() fixed
2016-04-26 00:01:18 +02:00
ericnerdo 1cbaec4d46 Tester.testExtraZPMs() fixed 2016-04-25 23:58:33 +02:00
Bokros Bálint 5e31be0bdb Added method testOnSequenceOfCommands, which is to be implemented 2016-04-25 23:54:46 +02:00
Bokros Bálint 074b8a90f2 Supressing error instead of fixing it 2016-04-25 23:53:20 +02:00
Bokros Bálint 0d770ace11 Throwing exceptions to caller instead of handling them
Because exception handling is for the weak
2016-04-25 23:52:24 +02:00
ericnerdo 0e5681ef7d Gate.getGateConnected() added 2016-04-25 23:45:03 +02:00
ericnerdo 71248fd666 Wall.onEntry() fixed 2016-04-25 23:38:22 +02:00
ericnerdo 67cbdc7ba7 methods modified in Tester, StarGate.toString() fixed 2016-04-25 23:31:29 +02:00