# May's Udate ##### ActivateToggleAfterReading ---- **Uses**: None **Syntax** **Imported Constants**: None **Imported Types** : **Exported Constants**: None **Exported Types** : None **Exported Access Programs**: | **Routine Name** | **In** | **Out** | **Exceptions** | |--------------|----|-----|------------| | start | | | | | onPointerClick | `PointerEventData`| | | **Semantics** **State Variables**: - Scrollbar: `Scrollbar` - PleaseFullyReadFirstText: `Text` **State Invariant**: None **Assumptions and Design Decisions**: - The module is to set the state of the toggle so that it will be interactble after the some condition. **Access Routine Semantics**: - start() - Transition: Check if the the text has been scrolled all the way to the bottom. If not, set the sate of the toggle as non-selectable. - Output: None - Exception:None - onPointerClick(PointerEventData data) - Transition: Show the message on the scene when the toggle is clicked but in the not interactable state. - Output:None - Exception:None ##### AgeValidator ---- **Uses**: None **Syntax** **Imported Constants**: None **Imported Types** : **Exported Constants**: None **Exported Types** : None **Exported Access Programs**: | **Routine Name** | **In** | **Out** | **Exceptions** | |--------------|----|-----|------------| | validate | `string`, ℕ, `char` | `char` | | **Semantics** **State Variables**: None **State Invariant**: None **Assumptions and Design Decisions**: - The module is to set the range of the digits allowed to be entered in the text input field. **Access Routine Semantics**: - validate(ref string text, ref int pos, char ch) - Transition: check the first two digits and validate each should not be zero. Ignore the more digits other than the first two. - Output: Return the character that would be allowed into the text. - Exception:None ##### DisableGameButtons ---- **Uses**: - Games **Syntax** **Imported Constants**: None **Imported Types** : **Exported Constants**: None **Exported Types** : None **Exported Access Programs**: | **Routine Name** | **In** | **Out** | **Exceptions** | |--------------|----|-----|------------| | disable\<Game\> | | | | **Semantics** **State Variables**: None **State Invariant**: None **Assumptions and Design Decisions**: - This module is used to disable game icons when the games are already played. **Access Routine Semantics**: - disable\<Game\>() - Transition: Set the state of the corresponding game button as non-selestable; insert the game name to the game order list. - Output: None - Exception:None ##### RadialScoreRing ---- **Uses**: None **Syntax** **Imported Constants**: None **Imported Types** : **Exported Constants**: None **Exported Types** : None **Exported Access Programs**: | **Routine Name** | **In** | **Out** | **Exceptions** | |--------------|----|-----|------------| | start | | | | | beginAnimation | | | | **Semantics** **State Variables**: - BadColour: `Color` - GoodColour: `Color` - DurationInSeconds: ℝ+ **State Invariant**: - BadColour = Color.red - GoodColour = Color.green - DurationInSeconds = 3.0 **Assumptions and Design Decisions**: - This module is to show radial ring "progress bar" around a score. **Access Routine Semantics**: - start () - Transition: Check if the score is greater than 0. If so, set a color in the medium of `BadColor` and `GoodColour` as well as the length of the rings based on the score. - Output: None - Exception:None - beginAnimation() - Transition: Show the animation of displaying the ring. The duration of the animation is `DurationInSeconds`. - Output: None - Exception:None