A turn-based game of strategy where two teams of professional use a combination of moves/actions to defeat the opponent, the team with the last professional standing wins. Moves can:
- Cause damage to the opponent
- Change its stats
- Inflict statuses
- Other combinations of these effects
Based on pokemon battles, its target audience is those that seek a similar game based purely on strategy, and not randomness. This is a collective idea I had with a friend but would love give it actual life through a desktop app.
##User Stories
- As a user, I would like to customise the moves given to a professional.
- As a user, I would like to add professionals to a team of professionals.
- As a user, I would like to use my team in a pokemon-style battle against another team of professionals.
- As a user, I would like to be able to improve the stats of my professionals or lower the stats of the opponent's
- As a user, I would like to use critical moves that ignore negative stat changes and improve damage(like in pokemon)
- As a user, I would like to inflict statuses with varying effects to the opponent's professional
- As a user, I would like to have battles in a local 1 versus 1 with another player
- As a user, I would like to be able to save teams to a file
- As a user, I would like to be able to save battles to a file
- As a user, I would like to be able to have credential to access my personal teams
##Phase 4: Task 2 Option 2:
Both StatModifier and StatusInflictor extend the abstract class CounterSetter, the class has protected fields chargeTurns and windowTurns; the class also implements the method apply overridden from the effect interface. Declares the abstract method finalApply which is implemented in each subclass.
##Phase 4: Task 3
- The whole Round class could be refactored:
- It holds fields for two players that are the same as the ones in its battle field, so a boolean stating who is first could be stored instead of those fields
- Both Move and Effect receive a Round in their methods, this is just the last round of the active battle, instead of a parameter, this methods could retrieve this round using the final BATTLEMGR.
- To improve cohesion, a class Action could be created to parse the actions of the players and compare with each other to determine who goes first.
- Priority and FailCondition are weirdly structure to handle similar responsibilities:
- Priority could handle returning priority and final apply, while fail condition could handle all fail conditions
- This means a third class could be chosen that contains a Priority and a FailCondition class to mix this effects
- Since CustomForm handles only login and signup forms, this responsibilities could be handled in that class leaving UserManager to handle only the display
- Team could iterable on its members and Battle on its rounds
- A single HashMap that has Volatile keys and Integer values could be used to identify what Volatile statuses a professional has and the corresponding volatileTurns
##Sources For Images in data/icons:
- 0: https://www.pngkey.com/maxpic/u2w7y3t4o0e6t4e6/
- 1: https://clipartart.com/categories/football-quarterback-clipart.html
- 2: https://toppng.com/show_download/163100/mercury-png-for-kids-freddie-mercury-png-transparent/large
- 3: https://www.pinterest.com/pin/758434393473182461/
- 4: https://www.iconfinder.com/icons/4001758/albert_avatar_avatars_einstein_physicist_physics_scientist_icon
- 5: https://pngio.com/PNG/a55386-doctor-who-moving-png.html
- 6: https://www.pinclipart.com/maxpin/bbhJwR/
- 7: https://www.pinterest.com/pin/353462270759319514/
- 8: http://www.clker.com/clipart-9470.html
- 9: https://www.nicepng.com/maxp/u2w7w7o0q8w7a9u2/
- 10: https://co.pinterest.com/pin/538180224196877342/
- 11: https://www.pinterest.es/pin/770256342495446159/
- 12: https://www.nicepng.com/maxp/u2q8u2q8y3w7r5y3/
- 13: https://commons.wikimedia.org/wiki/File:Coach_Yelling_Cartoon.svg
- 14: https://webstockreview.net/explore/pharmacist-clipart-animation/
- 15: https://www.pinterest.co.uk/pin/102456960242781727/
- 16: https://www.wendyinteriors.com/
- 17: https://www.jing.fm/iclipt/bwJTRi/
- 18: https://www.carstickers.com/products/stickers/us-military-stickers/us-army-car-stickers-decals/marketplace/cartoon-illustration-of-an-army-general-sticker/
- 19: https://www.pinterest.com/pin/241083386287156595/
- 20: https://webstockreview.net/explore/farmer-clipart-farm-worker/
- 21: https://time.graphics/es/event/229826
- 22: https://www.pinterest.se/pin/788341109745506192/
- 23: https://clayburncoxcomedy.com/tourdates/
- 24: https://pngio.com/PNG/a92252-cartoon-scientist-png.html
- 25: https://www.jamiesale-cartoonist.com/portfolio/
- 26: http://www.howtoplaypoker.co.uk/poker-for-beginners/rules-of-poker
- 27: https://thetransformationclub.fitness/tag/chiropractor/
- 28: https://snapbuildercartoons.com/blacksmith-worker-with-blacksmith-tools-mascot-logo.html
- 29: https://www.pinterest.com/pin/616922848957783464/
- 30: https://www.pinterest.com/number7cloud/notorious-rbg/
- 31: http://clipart-library.com/self-defense-cliparts.html
- 32: https://www.tonebodyfit.com/personal-training
- 33: https://www.pinterest.com/pin/650488739906489758/
- 34: https://skin267rootbit.live/2356505143/?u=tpap60a&o=zlbwly0&cid=b0479dab-953d-4d69-a5a6-8fa6d0792952&f=1&sid=t3~nq1dt1wellbm2jtsm2fj4zrk&fp=9OIzmFIbQjPC%2BCgrYoRRyHjePD8If7sHC3LLaq8wqyBqTRFXpr54T%2FqW7QZcKw7OVKq3gukqeRJw9fTtcB%2FC82FYDg%2FTPtRJigCec3QQGgQgKrk0dukfhCo9%2B4kDcRGzIVJUSBKlY3uuPuucsvcgowQtXYT2h0rV9EgcjZs%2BxbXF%2FC67y2PkEpWcGWYS3Z7BcB5FrQY9rRBCi0CGuC0HQBuuf%2BqySkpywWYO1KGeRcIe6UA7xp5h6cBX8dnz%2Ful0rj6oLvmYSB8E9LRJ%2BQlqGKlQGA1yG4h50H5nMgla%2FvWqkM6vbcFyyaDb7b9t0hZy7DlLNKHQDwb%2FzmXEOhU%2FHivF0ON%2BlqzY1LmzCW%2BV06zLazh9GOGk0tg7%2FrCM2uehCOjq%2FGs%2FSPZsNBZYEigOArT5ngkCGZ7%2FEWczS%2FxpRFr6rKb5y3ieETHvrSz6DzW0LzB58LKdMHspIZmTmYFd84kfK%2FYRYvRavPXHKTaTIbxKJYi4w6yq3ezRlSl7%2B3NagN9OL0scLkf5kHTwFjNvidptBsY6XhD4cw%2BwyQw%2BWh1Vabn%2Bt7ukqTwtuYLqQIls3ib1lalni7Lgus00lh3BX7X9WaNXzRT03UTTQpsp0rsOT2u4AEpZWgswSTHDStUYW4u%2BlxQHPb2EgXyOQuy0zvMPVkZ16%2BGjZFbRNeSWuZIL9R1m%2BfpNpKpsRi1HL8A%2BAkcG8E7mJF7ESrXCIX445hufpXZvDSo2N4YtzYfdJAYAhkrXOl9vWfenB8hhLxK%2FeuJCzk1l%2FueFTH4l1VM%2FBp%2BcIRUBl5IzFR3zgCgIDoOLHG5oKAgtfrqY7%2BNTXASjV8%2Fi%2FK%2Bo5OrGd2ITxWraLfzBu79MQSFP%2B4naND1k1kuuZxsiqzSJiPP5%2FflkwvAmexCb4n7N6O3E0Q78NHf1qRIypjKTi7tWNjiwmSY7KUiTjKcVD3Ux2aIGpYQRaedcgWw8EfpKRo2SNLqbN8AxrQntd7L0HqnLmTJMnDZCoKBAmWlYVvcceYZu17IV0b%2FYGfYeGw89FRZkeJ2aL%2BVPFKTKAx4odV6uSm%2FSUhOdWMJ3Q8ShI4fjVV7bxoWLlfp92JpRDez7Fnkd6JT7ziJC2iyRgwN3KWyFdaNTIpLWI13b3sr6pN0aPyzlxMxEDQbzW%2FRqO6OA%2BNMp1xTyktDQf8VHzDEPa9t9GiIiYAxwPYcBvBpKd234OygphDwQdBnmA%2BiTbJYjGW9m%2FgRAeIvJQAkMW1%2BDL4ZyGOpyAENvnp5wzsgeVsLybE50aTQZ7yy96MEV%2BFe%2Fm9XootQRjbmWNlzRz%2B74AR9ZGrZHFP3sBRnY%2BNAFjXp6wWOYzNrA9bhT0euAvOoqZ27%2FvQ95mK3EIuMsMqe3kROhMTFRq0UQltkIUqeJGQWgxLx%2BIfgS8GgWasoVGBeHrx%2FPTiP9oy3%2FSITYlyKCosYUQaBRwo373RCTlbKwNEd2WYEHlqq09Ll3pvnowRsfD6JqBI2avHrOQ3Urg4qWkvRR77pu%2F9r%2BDrm0Rgbr3YmGUYOeSRXPbT0I
- 35: https://www.brainpop.com/technology/scienceandindustry/nikolatesla/
- 36: https://www.pinterest.ch/pin/467881848786761807/?amp_client_id=CLIENT_ID(_)&mweb_unauth_id={{default.session}}&_url=https%3A%2F%2Fwww.pinterest.ch%2Famp%2Fpin%2F467881848786761807%2F
- 37: https://www.jing.fm/iclipt/Tbbohw/
- 38: https://medium.datadriveninvestor.com/reasons-not-to-be-a-computer-scientist-ebbc662fc167
- 39: http://www.webweaver.nu/clipart/environmental.shtml