<snapdata remixID="10274748"><project name="Project 2" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Right Paddle" idx="3" x="223" y="0" heading="0" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="88.434,130.05,0,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="paddle" center-x="42.5" center-y="6.5" image="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSI4NSIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDg1IDEzIj4KICA8ZGVmcz4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0iZ3JhZF8xIiBjeD0iMC41Njg2IiBjeT0iMC40MDkiIHI9IjAuNzY4MyI+CiAgICAgIDxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzAwOTkzMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAwQ0M0NCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogIDwvZGVmcz4KICA8IS0tIEV4cG9ydGVkIGJ5IFNjcmF0Y2ggLSBodHRwOi8vc2NyYXRjaC5taXQuZWR1LyAtLT4KICA8aW1hZ2UgaWQ9IklEMC4zMzQzNzk5OTYxNzMwODM4IiB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFJQUFBQUNDQVlBQUFCeXRnMGtBQUFBRGtsRVFWUjQybU5oZ0FJV0dBTUFBSDRBQ1l3R2FTQUFBQUF0ZEVWWWRGTnZablIzWVhKbEFHSjVMbUpzYjI5a1pIa3VZM0o1Y0hSdkxtbHRZV2RsTGxCT1J6STBSVzVqYjJSbGNxZ0dmKzRBQUFBQVNVVk9SSzVDWUlJPSIgdHJhbnNmb3JtPSJtYXRyaXgoMC41LCAwLCAwLCAwLjUsIDM5LCA4KSIvPgogIDxwYXRoIGlkPSJJRDAuMDM5OTA5MTUzMjQ1Mzg5NDYiIGZpbGw9IiMwMDk5MzMiIHN0cm9rZT0idXJsKCNncmFkXzEpIiBzdHJva2Utd2lkdGg9IjEwIiBkPSJNIDE5NyAxNjIgTCAzNDAgMTYyIEwgMzQwIDE3NCBMIDE5NyAxNzQgTCAxOTcgMTYyIFogIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjU0OTAxOTYzNDcyMzY2MzMsIDAsIDAsIDAuNTQ5MDE5NjM0NzIzNjYzMywgLTEwNC40NSwgLTg2LjIpIi8+Cjwvc3ZnPg==" id="10"/></item></list></costumes><sounds><list struct="atomic" id="11"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveKey"><l><option>space</option></l><comment w="90" collapsed="true">Allows the player to manually reset the paddle to its original position. For convenience only as the paddle&apos;s position is already reset automatically through other broadcasts in the main script. </comment></block><block s="gotoXY"><l>223</l><l>0</l></block></script><script x="20" y="93"><block s="receiveGo"><comment w="90" collapsed="true">This script enables the paddle to move up and down.</comment></block><block s="doForever"><script><block s="doIf"><block s="reportAnd"><block s="reportKeyPressed"><l><option>up arrow</option></l></block><block s="reportLessThan"><block s="yPosition"></block><l>135</l></block></block><script><block s="changeYPosition"><l>4</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportKeyPressed"><l><option>down arrow</option></l></block><block s="reportGreaterThan"><block s="yPosition"></block><l>-135</l></block></block><script><block s="changeYPosition"><l>-4</l></block></script></block></script></block></script><script x="20" y="292.83333333333337"><block s="receiveMessage"><l>Reset Game</l><comment w="90" collapsed="true">Resets paddle to original position and is part of the initialization of the match.</comment></block><block s="gotoXY"><l>223</l><l>0</l></block></script><script x="20" y="365.83333333333337"><block s="receiveMessage"><l>Game Over</l><comment w="133" collapsed="true">Resets paddle to original position after each round.</comment></block><block s="gotoXY"><l>223</l><l>0</l></block></script></scripts></sprite><sprite name="Left Paddle" idx="1" x="-223" y="0" heading="0" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="150.45,0,72.21599999999994,1" pen="tip" id="64"><costumes><list id="65"><item><costume name="paddle" center-x="42.5" center-y="6.5" image="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHdpZHRoPSI4NSIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDg1IDEzIj4KICA8ZGVmcz4KICAgIDxyYWRpYWxHcmFkaWVudCBpZD0iZ3JhZF8xIiBjeD0iMC41Njg2IiBjeT0iMC40MDkiIHI9IjAuNzY4MyI+CiAgICAgIDxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzAwOTkzMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzAwQ0M0NCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8L3JhZGlhbEdyYWRpZW50PgogIDwvZGVmcz4KICA8IS0tIEV4cG9ydGVkIGJ5IFNjcmF0Y2ggLSBodHRwOi8vc2NyYXRjaC5taXQuZWR1LyAtLT4KICA8aW1hZ2UgaWQ9IklEMC4zMzQzNzk5OTYxNzMwODM4IiB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFJQUFBQUNDQVlBQUFCeXRnMGtBQUFBRGtsRVFWUjQybU5oZ0FJV0dBTUFBSDRBQ1l3R2FTQUFBQUF0ZEVWWWRGTnZablIzWVhKbEFHSjVMbUpzYjI5a1pIa3VZM0o1Y0hSdkxtbHRZV2RsTGxCT1J6STBSVzVqYjJSbGNxZ0dmKzRBQUFBQVNVVk9SSzVDWUlJPSIgdHJhbnNmb3JtPSJtYXRyaXgoMC41LCAwLCAwLCAwLjUsIDM5LCA4KSIvPgogIDxwYXRoIGlkPSJJRDAuMDM5OTA5MTUzMjQ1Mzg5NDYiIGZpbGw9IiMwMDk5MzMiIHN0cm9rZT0idXJsKCNncmFkXzEpIiBzdHJva2Utd2lkdGg9IjEwIiBkPSJNIDE5NyAxNjIgTCAzNDAgMTYyIEwgMzQwIDE3NCBMIDE5NyAxNzQgTCAxOTcgMTYyIFogIiB0cmFuc2Zvcm09Im1hdHJpeCgwLjU0OTAxOTYzNDcyMzY2MzMsIDAsIDAsIDAuNTQ5MDE5NjM0NzIzNjYzMywgLTEwNC40NSwgLTg2LjIpIi8+Cjwvc3ZnPg==" id="66"/></item></list></costumes><sounds><list struct="atomic" id="67"></list></sounds><blocks></blocks><variables></variables><scripts><script x="20" y="20"><block s="receiveKey"><l><option>space</option></l><comment w="90" collapsed="true">Allows player to manually reset paddle position. </comment></block><block s="gotoXY"><l>-223</l><l>0</l></block></script><script x="20" y="93"><block s="receiveGo"><comment w="90" collapsed="true">Allows the player to move the paddle up and down.</comment></block><block s="doForever"><script><block s="doIf"><block s="reportAnd"><block s="reportKeyPressed"><l><option>w</option></l></block><block s="reportLessThan"><block s="yPosition"></block><l>135</l></block></block><script><block s="changeYPosition"><l>4</l></block></script></block><block s="doIf"><block s="reportAnd"><block s="reportKeyPressed"><l><option>s</option></l></block><block s="reportGreaterThan"><block s="yPosition"></block><l>-135</l></block></block><script><block s="changeYPosition"><l>-4</l></block></script></block></script></block></script><script x="20" y="292.83333333333337"><block s="receiveMessage"><l>Reset Game</l><comment w="90" collapsed="true">Resets paddle position as part of match initialization.</comment></block><block s="gotoXY"><l>-223</l><l>0</l></block></script><script x="20" y="365.83333333333337"><block s="receiveMessage"><l>Game Over</l><comment w="90" collapsed="true">Resets paddle position after each round.</comment></block><block s="gotoXY"><l>-223</l><l>0</l></block></script></scripts></sprite><sprite name="Ball" idx="2" x="0" y="0" heading="134" scale="0.5" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="120"><costumes><list id="121"><item><costume name="ball d" center-x="22.5" center-y="22.5" image="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjAiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjQ1cHgiIGhlaWdodD0iNDVweCIgdmlld0JveD0iMCAwIDQ1IDQ1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA0NSA0NSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgPGc+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBjeD0iMjkuNzI3NSIgY3k9IjEzLjEzOTYiIHI9IjM4LjUyOTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgPHN0b3Agb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQjdGRjU5Ii8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6IzAwNzIwRCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxjaXJjbGUgZmlsbD0idXJsKCNTVkdJRF8xXykiIGN4PSIyMi41IiBjeT0iMjIuNSIgcj0iMjIuNSIvPgogIDwvZz4KPC9zdmc+" id="122"/></item></list></costumes><sounds><list struct="atomic" id="123"></list></sounds><blocks></blocks><variables><variable name="dt"><l>0.1</l></variable><variable name="dx"><l>-8</l></variable><variable name="dy"><l>19</l></variable><variable name="leftWins"><l>0</l></variable><variable name="rightWins"><l>0</l></variable><variable name="gameWinner"><l>Right</l></variable><variable name="matchWinner"><l>0</l></variable></variables><scripts><script x="20" y="20"><block s="receiveGo"><comment w="90" collapsed="true">When the green flag is clicked, the game begins. </comment></block><block s="doBroadcastAndWait"><l>Reset Game</l><comment w="90" collapsed="true">The reset game broadcast initiates another script which resets the game so that it is ready to be played.</comment></block><block s="doSayFor"><l>Left keys: W / S Right keys: Up Arrow / Down Arrow              Ready?</l><l>3</l></block><block s="doSayFor"><l>Go!</l><l>1</l></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="leftWins"/><l>5</l></block><block s="reportEquals"><block var="rightWins"/><l>5</l></block></block><script><block s="doUntil"><block s="reportOr"><block s="reportLessThan"><block s="xPosition"></block><l>-240</l></block><block s="reportGreaterThan"><block s="xPosition"></block><l>240</l></block></block><script><block s="doGlide"><block var="dt"/><block s="reportSum"><block s="xPosition"></block><block var="dx"/></block><block s="reportSum"><block s="yPosition"></block><block var="dy"/></block><comment w="90" collapsed="true">This block moves the ball around the stage.</comment></block><block s="doIf"><block s="reportOr"><block s="reportAnd"><block s="reportGreaterThan"><block var="dx"/><l>0</l></block><block s="reportTouchingObject"><l>Right Paddle</l></block></block><block s="reportAnd"><block s="reportLessThan"><block var="dx"/><l>0</l></block><block s="reportTouchingObject"><l>Left Paddle</l></block></block></block><script><block s="doSetVar"><l>dx</l><block s="reportDifference"><l>0</l><block var="dx"/></block></block><block s="doBroadcastAndWait"><l>Randomize</l><comment w="90" collapsed="true">This broadcast initiates another script which randomizes the direction of the ball and speeds it up a little each time it hits a paddle.</comment></block></script><comment w="90" collapsed="true">This &quot;if&quot; block makes the ball bounce off the paddles.</comment></block><block s="doIf"><block s="reportOr"><block s="reportAnd"><block s="reportGreaterThan"><block var="dy"/><l>0</l></block><block s="reportGreaterThan"><block s="yPosition"></block><l>180</l></block></block><block s="reportAnd"><block s="reportLessThan"><block var="dy"/><l>0</l></block><block s="reportLessThan"><block s="yPosition"></block><l>-180</l></block></block></block><script><block s="doSetVar"><l>dy</l><block s="reportDifference"><l>0</l><block var="dy"/></block></block></script><comment w="90" collapsed="true">This &quot;if&quot; block makes the ball bounce of the top and bottem edges of the stage.</comment></block></script><comment w="90" collapsed="true">This &quot;repeat until&quot; block ensures that the code inside of it loops until the round is over (the ball touches the left or right edge).</comment></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block s="xPosition"></block><l>-240</l></block><block s="reportGreaterThan"><block s="xPosition"></block><l>240</l></block></block><script><block s="doIfElse"><block s="reportLessThan"><block s="xPosition"></block><l>-240</l></block><script><block s="doSetVar"><l>gameWinner</l><l>Right</l></block></script><script><block s="doSetVar"><l>gameWinner</l><l>Left</l></block></script></block><block s="doBroadcastAndWait"><l>Update Score</l></block><block s="doSayFor"><block s="reportJoinWords"><list><block var="gameWinner"/><l> wins this round! Score: Left: </l><block var="leftWins"/><l>. Right: </l><block var="rightWins"/><l>.</l></list></block><l>2</l></block><block s="doBroadcastAndWait"><l>Game Over</l></block></script><comment w="90" collapsed="true">This &quot;if&quot; block determines who won the round and announces the winner and the current score.</comment></block></script><comment w="90" collapsed="true">This &quot;repeal until&quot; block ensures that the code inside of it will continue to loop until someone wins the match by winning 5 rounds.</comment></block><block s="doIfElse"><block s="reportEquals"><block var="leftWins"/><l>5</l></block><script><block s="doSayFor"><block s="reportJoinWords"><list><l>Left wins the match! Final score: Left: </l><block var="leftWins"/><l>. Right: </l><block var="rightWins"/><l>.</l></list></block><l>3</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><l>Right wins the match! Final score: Left: </l><block var="leftWins"/><l>. Right: </l><block var="rightWins"/><l>.</l></list></block><l>3</l></block></script><comment w="90" collapsed="true">This &quot;if&quot; block determines who won the match and announces the match winner and the final score.</comment></block><block s="doBroadcastAndWait"><l>Reset Game</l></block><block s="doSayFor"><l>If you would like to play this game again, please click the green flag.</l><l>3</l></block></script><script x="20" y="871"><block s="receiveKey"><l><option>space</option></l><comment w="90" collapsed="true">This script allows the player to manually reset (initialize) the game by pressing space. This script if only for convenience as the game can already automatically reset itself and initialize when you press the green flag.</comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setScale"><l>50</l></block><block s="doSetVar"><l>dt</l><l>0.1</l></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>7</l><l>17</l></block></block></script><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>-17</l><l>-7</l></block></block></script></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>12</l><l>22</l></block></block></script><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>-22</l><l>-12</l></block></block></script></block><block s="doSetVar"><l>leftWins</l><l>0</l></block><block s="doSetVar"><l>rightWins</l><l>0</l></block></script><script x="20" y="1240.6666666666665"><block s="receiveMessage"><l>Randomize</l><comment w="90" collapsed="true">This script randomizes the direction of the ball and speeds it up a little each time it hits a paddle.</comment></block><block s="doIfElse"><block s="reportAnd"><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dx"/></block><l>9</l></block><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dy"/></block><l>14</l></block></block><script><block s="doSetVar"><l>dt</l><block s="reportProduct"><block var="dt"/><l>0.5</l></block></block></script><script><block s="doIfElse"><block s="reportAnd"><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dx"/></block><l>11</l></block><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dy"/></block><l>16</l></block></block><script><block s="doSetVar"><l>dt</l><block s="reportProduct"><block var="dt"/><l>0.7</l></block></block></script><script><block s="doIfElse"><block s="reportAnd"><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dx"/></block><l>13</l></block><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dy"/></block><l>18</l></block></block><script><block s="doSetVar"><l>dt</l><block s="reportProduct"><block var="dt"/><l>0.8</l></block></block></script><script><block s="doIfElse"><block s="reportAnd"><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dx"/></block><l>15</l></block><block s="reportLessThan"><block s="reportMonadic"><l><option>abs</option></l><block var="dy"/></block><l>20</l></block></block><script><block s="doSetVar"><l>dt</l><block s="reportProduct"><block var="dt"/><l>0.95</l></block></block></script><script><block s="doSetVar"><l>dt</l><block s="reportProduct"><block var="dt"/><l>0.99</l></block></block></script></block></script></block></script></block></script></block><block s="doIf"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dy</l><block s="reportProduct"><block var="dy"/><block s="reportQuotient"><block s="reportRandom"><l>4</l><l>14</l></block><l>10</l></block></block></block></script></block></script><script x="20" y="1732.1666666666647"><block s="receiveMessage"><l>Reset Game</l><comment w="90" collapsed="true">This script is activated by a broadcast in the main &quot;green flag&quot; script and resets/initalizes the game.</comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setScale"><l>50</l></block><block s="doSetVar"><l>dt</l><l>0.1</l></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>7</l><l>17</l></block></block></script><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>-17</l><l>-7</l></block></block></script></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>12</l><l>22</l></block></block></script><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>-22</l><l>-12</l></block></block></script></block><block s="doSetVar"><l>leftWins</l><l>0</l></block><block s="doSetVar"><l>rightWins</l><l>0</l></block></script><script x="20" y="2101.833333333331"><block s="receiveMessage"><l>Update Score</l><comment w="90" collapsed="true">This script updates the score after each round.</comment></block><block s="doIf"><block s="reportLessThan"><block s="xPosition"></block><l>-240</l></block><script><block s="doChangeVar"><l>rightWins</l><l>1</l></block></script></block><block s="doIf"><block s="reportGreaterThan"><block s="xPosition"></block><l>240</l></block><script><block s="doChangeVar"><l>leftWins</l><l>1</l></block></script></block></script><script x="20" y="2267.4999999999977"><block s="receiveMessage"><l>Game Over</l><comment w="90" collapsed="true">This script resets the game (with the exception of the score) after each round. </comment></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setScale"><l>50</l></block><block s="doSetVar"><l>dt</l><l>0.1</l></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>7</l><l>17</l></block></block></script><script><block s="doSetVar"><l>dx</l><block s="reportRandom"><l>-17</l><l>-7</l></block></block></script></block><block s="doIfElse"><block s="reportLessThan"><block s="reportRandom"><l>1</l><l>100</l></block><l>50</l></block><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>12</l><l>22</l></block></block></script><script><block s="doSetVar"><l>dy</l><block s="reportRandom"><l>-22</l><l>-12</l></block></block></script></block></script></scripts></sprite><watcher scope="Left Paddle" s="yPosition" style="normal" x="10" y="10" color="74,108,212" hidden="true"/><watcher scope="Left Paddle" s="xPosition" style="normal" x="10" y="31.000001999999995" color="74,108,212" hidden="true"/><watcher scope="Ball" var="matchWinner" style="normal" x="10" y="157.00001399999996" color="243,118,29" hidden="true"/><watcher scope="Ball" var="dt" style="normal" x="18" y="14.00000399999999" color="243,118,29" hidden="true"/><watcher scope="Ball" var="dx" style="normal" x="15" y="35.00000599999997" color="243,118,29" hidden="true"/><watcher scope="Ball" var="leftWins" style="normal" x="13" y="21.000009999999975" color="243,118,29" hidden="true"/><watcher scope="Ball" var="rightWins" style="normal" x="19" y="46.00001199999997" color="243,118,29" hidden="true"/><watcher scope="Ball" var="gameWinner" style="normal" x="10" y="178.00001599999996" color="243,118,29" hidden="true"/><watcher scope="Ball" var="dy" style="normal" x="106" y="38.00000799999998" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks></blocks><variables></variables></project><media name="Project 2" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>