From c85e61188d331be614f4388f429b5b21cbf76da3 Mon Sep 17 00:00:00 2001 From: Sonja Ek Date: Tue, 27 Apr 2021 20:46:59 +0300 Subject: [PATCH 1/5] Update requirements-document.md --- documentation/requirements-document.md | 34 ++++++++++++++------------ 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/documentation/requirements-document.md b/documentation/requirements-document.md index 6845991..0b05566 100644 --- a/documentation/requirements-document.md +++ b/documentation/requirements-document.md @@ -7,26 +7,31 @@ The app offers a gamified way to learn to classify the International Phonetic Al The app has one user type, a basic user, who can play the game and not modify the contents. ## User Interface -[Done] There is one view for the game: the playig view. +- [x] [Done] There is one view for the game: the playing view. ![IPA-game_ui](https://user-images.githubusercontent.com/40118812/112819372-3346d280-908d-11eb-8f7b-9a0442a7f18c.png) -- [Done] In the playing view, there are bubbles appearing from the left side of the screen and floating towards the right edge. -- There is an IPA symbol displayed on each bubble. -- At the bottom there is a **classification bar** with names of the categories the characters are members of. +- [x] [Done] In the playing view, there are bubbles appearing from the left side of the screen and floating towards the right edge. +- [x] [Done] There is a classifiable item displayed on each bubble. +- [x] [Done] There is a score counter in the upper left corner. +- [x] [Done] At the bottom there is a **text bar**. +- [ ] In the text bar, there are buttons with names of the categories the items are members of. ## Functionality The user is expected to try and make the character bubbles disappear before they reach the right edge. This happens by categorizing the bubble correctly. -- [Done] The bubble can be classified with a keystroke in the early versions. -- In later versions, classification happens with mouse dragging. -- [Done] If the category is correct, the bubble stops. -- [Done] If the category is incorrect, the bubble continues floating. -- [Done] The user is allowed to retry as many times as the bubble is in sight. - -- [Done] The bubbles move at a steady pace. -- There is only a certain number of characters and after all of them have been correctly classified, the game ends. -- [Done] In the first versions of the game, classification happens according to bubble color, which is randomized. -- In the next versions of the game there are symbols of consonants in the bubbles, and categorization happens based on the manner of articulation. +- [x] [Done] The bubble can be classified with a keystroke in the early versions. +- [ ] In later versions, classification happens with mouse dragging. +- [x] [Done] If the category is correct, the bubble disappears. +- [x] [Done] If the category is correct, scores increase by 10. +- [x] [Done] If the category is incorrect, the bubble continues floating. +- [x] [Done] If the category is incorrect, scores decrease by 2. +- [x] [Done] Scores can't go below zero. +- [x] [Done] The user is allowed to retry as many times as the bubble is in sight. + +- [x] [Done] The bubbles move at a steady pace. +- [ ] There is only a certain number of classifiable items and after all of them have been correctly classified, the game ends. +- [x] [Done] In the first versions of the game, classification happens according to bubble color, which is randomized. +- [ ] In the next versions of the game there are symbols of consonants in the bubbles, and categorization happens based on IPA symbols and their manner of articulation. ## Further development After the most basic version, here are some features to be added to the game: @@ -35,5 +40,4 @@ After the most basic version, here are some features to be added to the game: - vowels - diacritics - suprasegmentals. -- Scoring system - Top scores list From e087b4919e4e5d6bedbc1ec8c08105af3391077b Mon Sep 17 00:00:00 2001 From: Sonja Ek Date: Tue, 27 Apr 2021 20:48:55 +0300 Subject: [PATCH 2/5] Update requirements-document.md --- documentation/requirements-document.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/documentation/requirements-document.md b/documentation/requirements-document.md index 0b05566..8aa1054 100644 --- a/documentation/requirements-document.md +++ b/documentation/requirements-document.md @@ -7,7 +7,7 @@ The app offers a gamified way to learn to classify the International Phonetic Al The app has one user type, a basic user, who can play the game and not modify the contents. ## User Interface -- [x] [Done] There is one view for the game: the playing view. +#### There is one view for the game: the playing view. ![IPA-game_ui](https://user-images.githubusercontent.com/40118812/112819372-3346d280-908d-11eb-8f7b-9a0442a7f18c.png) @@ -22,6 +22,7 @@ The user is expected to try and make the character bubbles disappear before they - [x] [Done] The bubble can be classified with a keystroke in the early versions. - [ ] In later versions, classification happens with mouse dragging. - [x] [Done] If the category is correct, the bubble disappears. +- [x] [Done] If the category is correct, a new bubble appears from the left side. - [x] [Done] If the category is correct, scores increase by 10. - [x] [Done] If the category is incorrect, the bubble continues floating. - [x] [Done] If the category is incorrect, scores decrease by 2. From dd94a25eeb83ec5f909ee57ecb454b4f1a08c31f Mon Sep 17 00:00:00 2001 From: Sonja Ek Date: Tue, 27 Apr 2021 21:02:34 +0300 Subject: [PATCH 3/5] Add playing instructions and updated description --- README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 95a02f6..48b641f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # IPA Game [![wakatime](https://wakatime.com/badge/github/iosonja/ot-harjoitustyo.svg)](https://wakatime.com/badge/github/iosonja/ot-harjoitustyo)
-The app offers a gamified way to learn to classify the International Phonetic Alphabet symbols used in consonants that appear in the English language. +IPA Game is a desktop-based game where the player needs to classify items that appear on bubbles floating in a window view. +In the current version of the game, the classification is done for colors. +When the app has been finalized, the player needs to classify symbols of the International Phonetic Alphabet (IPA). +The symbols that appear in the game will describe consonants that appear in the English language. ## How to use the app The app has been built using Python version 3.6.0. Versions below that may not work as expected. @@ -13,6 +16,19 @@ poetry install poetry run invoke start ``` +### Instructions for playing the current version +Try to stop each bubble from reaching the right edge of the screen. The bubble disappears when its color has been classified correctly with a keystroke. +There are only five different colors, because they are only a temporary basis for classification. Currently the game won't end before you quit the program for example by pressing the X key. +#### Keystrokes by color: +``` +R - red +G - green +B - blue +W - white +P - pink +``` + + ## Command line operations for developers Start the app: ``` From 5b20caebc54f2a0aafe5449f1f08ed96ca3d33fa Mon Sep 17 00:00:00 2001 From: Sonja Ek Date: Tue, 27 Apr 2021 21:04:35 +0300 Subject: [PATCH 4/5] Update time-tracking.md --- documentation/time-tracking.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/documentation/time-tracking.md b/documentation/time-tracking.md index 5728005..9a08831 100644 --- a/documentation/time-tracking.md +++ b/documentation/time-tracking.md @@ -5,16 +5,17 @@ | 10/4/2021 | 1 | Getting to know Pygame | | 13/4/2021 | 2 | Source code | | | 2 | Configurations | -| | 1 | Automated testing | +| | 1 | Writing automated tests | | | 1 | Documentation | | 19/4/2021 | 1 | Adding pylint and autopep8 | | | 1 | Documentation | | 20/4/2021 | 2 | Source code refactoring | | | 2 | Coding new UI functionality| -| | 1 | Automated testing | +| | 1 | Writing automated tests | | | 2 | Architecture documentation | | 23/4/2021 | 1 | Add IPA classification data| | 27/4/2021 | 1 | Learn about separation of concerns | | | 2 | Refactor | | | 2 | Code new features | -| **all** | **26** | | +| | 1 | Writing automated tests | +| **all** | **27** | | From 062a17fb7c8a1408f7e1f03ef61b7b8f1d54dac7 Mon Sep 17 00:00:00 2001 From: Sonja Ek Date: Tue, 27 Apr 2021 23:02:12 +0300 Subject: [PATCH 5/5] Add a sequence diagram --- documentation/architecture.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/documentation/architecture.md b/documentation/architecture.md index 250bc6f..9216f66 100644 --- a/documentation/architecture.md +++ b/documentation/architecture.md @@ -1 +1,11 @@ +#### NB: The images may not be displayed correctly if you are viewing this through GitHub in dark mode. + +## Class Diagram + ![IPAgame_class_diagram-new-3](https://user-images.githubusercontent.com/40118812/115455490-b1c90700-a22a-11eb-8559-eb4f5056ffe1.png) + +## Sequence Diagram: Life cycle of the game loop + +![Sequence Diagram_ Creating and exiting the game loop](https://user-images.githubusercontent.com/40118812/116305008-d6355e00-a7ab-11eb-9e8b-6b01f945e448.png) + +Note to self: Find out how to delete objects, like bubbles, from memory when they are no longer needed.