docs: Improve documentation at Klondike Tutorial Step 5
Description
This PR for solving the issue https://github.com/flame-engine/flame/issues/3076
1. What would I do to improve this tutorial:
- Add missing content, eliminate confusing interruptions, and include omitted code sections.
- Incorporate images and example animations to illustrate our objectives.
- Introduce additional sections where necessary (though the final source code remains intact).
- Provide logical transitions between sections.
- Address why we need to follow specific approaches and not others.
- Include links and information about general game development concepts (such as the concept of "seed" in game programming).
2. Contents I will add or modify:
- The Klondike draw
- Making cards move
- Animating a card-flip
- Model and View
- Ending and restarting the game
I believe these sections are satisfactory, so I won't make any edits to them. I will begin editing from the section: A New World.
-
[ ] Immediately after the
Start and restart actionssection, I will provide an explanation of the "KlondikeWorld" class. Consequently, the adjustment of the "KlondikeGame" class is merely a necessary step when migrating the onLoad() function to KlondikeWorld, rendering the "A stripped-down KlondikeGame class" section redundant. -
[ ] The section
Using a Random Number Generator seedappears reasonable. However, I intend to supplement more references to this definition of "seed." If you have any documents or suggestions on this topic, please provide further information. Otherwise, I will utilize the following link: Link to Reddit. -
[ ] The section
Introducing the new KlondikeWorld classwas previously covered, hence it will be omitted here. Please note that I will enrich the previous instruction with additional details. -
[ ]
Button: I will retain and expand upon this section as it lacks significant information. -
[ ]
Anchors and coordinates: This section may be considered supplementary information within the Button section. Therefore, I will incorporate and merge it into the Button section. -
[ ]
The deal() method: I will maintain this section in its current position, perhaps making minor sentence edits or none at all. -
[ ]
More animations of moves: Similar to the section "The deal() method." -
[ ]
A graphics glitch: As above. -
[ ]
Winning the game: I find this section quite comprehensive; hence, I may not make any alterations. -
[ ]
Ending a game and restarting it: This section lacks crucial details and is rather confusing. I will rewrite it to clarify. -
[ ]
Have fun button: This section is well-structured; therefore, I may retain it with minor adjustments if necessary.
Checklist
- [x] I have followed the Contributor Guide when preparing my PR.
- [x] I have updated/added tests for ALL new/updated/fixed functionality.
- [x] I have updated/added relevant documentation in
docsand added dartdoc comments with///. - [x] I have updated/added relevant examples in
examplesordocs.
Breaking Change?
- [ ] Yes, this PR is a breaking change.
- [x] No, this PR is not a breaking change.
Related Issues
This PR solve the issue https://github.com/flame-engine/flame/issues/3076
I am still working there. Please feel free to discuss about this PR
@nickf2k any update on this?
@nickf2k are you planning to continue working on this PR?
@spydon I forgot that I was working on this PR. I was in the middle of it when something came up, and I lost track of completing it. This is my fault. I will get back to it and work on it right away. I'm so sorry
@spydon To avoid forgetting, I set a deadline for myself to complete this PR for you to review by next Tuesday. Thank you