Changes

Jump to navigation Jump to search
2,458 bytes added ,  00:20, 21 April 2016
no edit summary
Line 7: Line 7:  
=== How to play Reflection ===
 
=== How to play Reflection ===
   −
Click on the dots to change the colors until you have a reflective symmetry.
+
Click on the dots to change the colors until you have a reflective symmetry across a line of reflection.
   −
'''Did you know''' that you can share Reflection and play with up to 3 others?
+
:'''Did you know''' that dot colors come from your XO colors?
 +
:'''Did you know''' that you can share Reflection and play with up to three others?
    
<gallery>
 
<gallery>
Line 16: Line 17:  
File:Reflection-bilateral.png|You can also play with bilateral symmetry
 
File:Reflection-bilateral.png|You can also play with bilateral symmetry
 
</gallery>
 
</gallery>
      
==== The Toolbars ====
 
==== The Toolbars ====
Line 28: Line 28:  
# the New-bilateral-game Button (start a new game to create a vertical reflective symmetry)
 
# the New-bilateral-game Button (start a new game to create a vertical reflective symmetry)
 
# an area for messages
 
# an area for messages
# the Activity-stop Button
+
# the Robot Button (the robot will help you make your pattern)
 +
# the Stop Button
 +
 
 +
=== Programming challenges ===
 +
 
 +
* Could you modify Reflections so that it supports rotational symmetry?
 +
* Could you modify Reflections so that it supports glide symmetry?
    
=== Where to get Reflection ===
 
=== Where to get Reflection ===
   −
The Reflection activity is available for download from the [http://activities.sugarlabs.org Sugar activity portal]: [http://activities.sugarlabs.org/en-US/sugar/addon/4517 Reflection]
+
The Reflection activity is available for download from the [http://activities.sugarlabs.org Sugar Activity Library]: [http://activities.sugarlabs.org/en-US/sugar/addon/4517 Reflection]
    
The source code is available on [http://git.sugarlabs.org/reflection the Sugar Labs Gitorious server].
 
The source code is available on [http://git.sugarlabs.org/reflection the Sugar Labs Gitorious server].
   −
=== Credits ===
+
=== The backstory ===
    
Reflections was written by Walter Bender and Reuben Caron as an example of how to migrate a simple Flash activity to Sugar.
 
Reflections was written by Walter Bender and Reuben Caron as an example of how to migrate a simple Flash activity to Sugar.
 +
 +
Refexion.swf is part of a bundle of Flash games Reuben encountered at a deployment in Central America. The game is simply a grid of squares that change color when clicked (See the figure below).
 +
 +
[[File:Refexion.swf.png|200px]]
 +
 +
The closest activity we could think of that had something similar (a grid of clickable elements) was [[Activities/Turtle in a Pond]].
 +
 +
We created Reflection in a few short steps:
 +
# made a [[0.94/Notes#View_Source:_duplicate_option_for_an_activity|clone]] of the Turtle in a Pond activity
 +
# made a [[Activity_Team/Git_FAQ#How_do_I_create_a_new_project.3F|git repository]] for the new project
 +
# changed the [[Development_Team/Almanac/Activity_Bundles#.info_file_format|activity.info]] file to reflect the name of our new activity
 +
# created the [[Development_Team/Almanac/Making_Icons|activity icon]]
 +
# changed the name of TurtlePondActivity.py to ReflectionActivity.py
 +
# changed the [[Development_Team/Almanac/sugar.activity.activity#How_do_I_create_a_new_activity_that_is_derived_from_the_base_Activity_class.3F|name of the Class]] defined in ReflectionActivity.py to <code>class ReflectionActivity(activity.Activity)</code>
 +
# removed the buttons we didn't need
 +
# edited game.py:
 +
:* we made the dots cycle through four colors rather than just two when clicked
 +
:* we removed the turtle and all code associated with moving it
 +
:* we added a line of symmetry
 +
:* we rewrote the rules for detecting end of game
 +
 +
All of this was done in less than two hours.
 +
 +
We then created an [[Activity_Team#setup.py|XO bundle]], uploaded it to activities.sugarlabs.org and created this page in the wiki, about one hour of work.
 +
 +
For Version 2, we added [[Development_Team/Almanac/sugar.activity.activity#How_do_I_implement_a_write_file_method_for_my_activity_in_order_to_persist_my_activity_in_the_journal.3F|saving game state to the Journal]], added a few more game options, and collaborative play (by grabbing the collaboration code from [[Activities/Paths]]), an additional two hours of work.
 +
 +
For Version 3, we added a robot help function and better feedback for when you complete the pattern.
    
[[Category:Activity]]
 
[[Category:Activity]]
 +
[[Category:Activities]]

Navigation menu