<snapdata remixID="10653802"><project name="U1 Project - Pong" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes>by Cole Pocinwong</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="Paddle" idx="2" x="-213" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="74,108,212,1" pen="tip" id="8"><costumes><list id="9"><item><costume name="Untitled" center-x="11.5" center-y="58.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAB1CAYAAAClFnrxAAAA7UlEQVRoQ+2Yyw2DMBAFH1c3kQroKZ0Ed0JPVJAmfI4ixYqQiFg5PPJhuO+TPcyuwZ2kQdJJ2z/X7hF+2T5bedfwnNQ376JoypJq/XzlSf3bdIqmmkH4kyZYFs0CC1jiIwdbsAVb4gSwJc6K2YIt2BIngC1xVswWbMGWOAFsibNitmDL99kyzG5Ef+le0bpya7j1utW6cms4WPa/hba+UGs4tmDLynG61xeX1XNrOE1EEx2hifAcz/E8/vf5Z7ZY298abj39reFgWWwiK3PCP81c0pjUn1tG7b2maBol1fr5C20NfVHnD2/GsLbTGzjPkL6J0SBrAAAAAElFTkSuQmCC" id="10"/></item></list></costumes><sounds><list struct="atomic" id="11"></list></sounds><blocks></blocks><variables></variables><scripts><script x="154" y="62"><block s="receiveGo"></block><block s="gotoXY"><l>-213</l><l>0</l><comment w="90" collapsed="false">positional reset</comment></block><block s="doSetVar"><l>Left Score</l><l>0</l><comment w="90" collapsed="false">can&apos;t have scores carrying between games</comment></block><block s="doForever"><script><custom-block s="PaddleControls"></custom-block></script></block></script></scripts></sprite><sprite name="AI Paddle" idx="3" x="213" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="145,26,68,1" pen="tip" id="26"><costumes><list id="27"><item><costume name="Untitled" center-x="11.5" center-y="58.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAB1CAYAAAClFnrxAAAA7UlEQVRoQ+2Yyw2DMBAFH1c3kQroKZ0Ed0JPVJAmfI4ixYqQiFg5PPJhuO+TPcyuwZ2kQdJJ2z/X7hF+2T5bedfwnNQ376JoypJq/XzlSf3bdIqmmkH4kyZYFs0CC1jiIwdbsAVb4gSwJc6K2YIt2BIngC1xVswWbMGWOAFsibNitmDL99kyzG5Ef+le0bpya7j1utW6cms4WPa/hba+UGs4tmDLynG61xeX1XNrOE1EEx2hifAcz/E8/vf5Z7ZY298abj39reFgWWwiK3PCP81c0pjUn1tG7b2maBol1fr5C20NfVHnD2/GsLbTGzjPkL6J0SBrAAAAAElFTkSuQmCC" id="28"/></item></list></costumes><sounds><list struct="atomic" id="29"></list></sounds><blocks></blocks><variables></variables><scripts><script x="154" y="62"><block s="receiveGo"></block><block s="gotoXY"><l>213</l><l>0</l><comment w="90" collapsed="false">position reset</comment></block><block s="doSetVar"><l>Right Score</l><l>0</l><comment w="90" collapsed="false">score reset</comment></block><block s="doForever"><script><custom-block s="Paddle2Controls"><comment w="90" collapsed="false">basically the same as PaddleControls but with Up and Down arrows instead of W and S keys</comment></custom-block></script></block></script><script x="109" y="271"><block s="doForever"><script><custom-block s="PaddleAI"><comment w="90" collapsed="false">I tried, but couldn&apos;t figure out how to lock its position on the X-axis while still having it able to move with the ball on the Y-axis</comment></custom-block></script></block></script></scripts></sprite><sprite name="Ball" idx="1" x="0" y="0" heading="328.77" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="48"><costumes><list id="49"><item><costume name="ball a" center-x="22.5" center-y="22.5" image="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjAiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjQ1cHgiIGhlaWdodD0iNDVweCIgdmlld0JveD0iMCAwIDQ1IDQ1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA0NSA0NSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgPGc+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBjeD0iMjkuNzI3NSIgY3k9IjEzLjEzOTYiIHI9IjM4LjUyOTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgPHN0b3Agb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRkZGRjk5Ii8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0ZGOTQwMCIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxjaXJjbGUgZmlsbD0idXJsKCNTVkdJRF8xXykiIGN4PSIyMi41IiBjeT0iMjIuNSIgcj0iMjIuNSIvPgogIDwvZz4KPC9zdmc+" id="50"/></item></list></costumes><sounds><list struct="atomic" id="51"></list></sounds><blocks></blocks><variables></variables><scripts><script x="30" y="102.16666666666873"><block s="receiveGo"></block><block s="doGotoObject"><l><option>center</option></l><comment w="90" collapsed="false">resets the ball&apos;s position&#xD;</comment></block><block s="doFaceTowards"><l><option>random position</option></l></block><block s="doSetVar"><l>GameState</l><l>0</l><comment w="90" collapsed="false">the ball and paddles will stop moving when this is set to 1, which I have made happen if one player&apos;s score is either at/above 5... or at/below -5.</comment></block><block s="doSayFor"><l>Press Space to start. Left paddle uses W and S, right paddle uses the Up and Down arrow keys, first to 5 wins.</l><l>5</l></block><block s="doWaitUntil"><block s="reportKeyPressed"><l><option>space</option></l></block></block><block s="doForever"><script><custom-block s="BallScript Speed: %s"><l>2</l><comment w="90" collapsed="false">initial testing speed was 2</comment></custom-block></script></block></script></scripts></sprite><sprite name="Left Boundary" idx="4" x="-243" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="0,135.15,45.950999999999986,1" pen="tip" id="75"><costumes><list id="76"><item><costume name="Untitled" center-x="21.5" center-y="174" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAFcCAYAAABRDUcNAAACXElEQVR4Xu3WPU4CARSF0TcNW6B0a+5EZidszZIt0GD8IdHCGBK+OCSH2sDkzL3Pu8zMYWaeZvuf1+XrYV+2/6yzPvTDrrv9ZTPK59Oyzsz1eX7K7vaXzaXhfHp/+R8fD3vXt0P2rpzfvows2ZkRAzEQgyoDZMl+CrizVRLIklWwKgNkyfoPFmZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwiVL1umqMkCWrNUVZkDBQlzboMIlS9bpqjJAlqzVFWZAwUJc26DCJUvW6aoyQJas1RVmQMFCXNugwv1VdmaOu/3lufrhW7/3fFqOM3N9nnWZmcPMvNz6Rf/w94/3sJt57X+9rTfvABCXGATmIAAAAABJRU5ErkJggg==" id="77"/></item></list></costumes><sounds><list struct="atomic" id="78"></list></sounds><blocks></blocks><variables></variables><scripts><script x="212" y="70"><block s="receiveGo"></block><block s="gotoXY"><l>-243</l><l>0</l></block><block s="doFaceTowards"><l><option>center</option></l></block><block s="setEffect"><l><option>ghost</option></l><l>75</l></block><block s="doSwitchToCostume"><l>Untitled</l></block></script></scripts></sprite><sprite name="Right Boundary" idx="5" x="243" y="0" heading="270" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="144.73800000000006,0,168.3,1" pen="tip" id="93"><costumes><list id="94"><item><costume name="Untitled" center-x="22" center-y="174" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAFcCAYAAABRDUcNAAACe0lEQVR4Xu3W220aYBCE0aEBJyVQQjqwS0kpLo0SXAIlRFRgJcFSLjxZfBIPx+/+WR1mlzlse932ZdvXPfbfj8N12OdtL4896043h73s+BBzP+385xz/DXu67PhQwk87n67f+t/DPorov1/rVdiwd8872buTXh8kS3abGIiBGFQZIEv2t4A7WyWBLFkLVmWALFm/YGEGLFiIqxtUuGTJOl1VBsiS1brCDFiwEFc3qHDJknW6qgyQJat1hRmwYCGublDhkiXrdFUZIEtW6wozYMFCXN2gwiVL1umqMkCWrNYVZsCChbi6QYVLlqzTVWWALFmtK8yABQtxdYMKlyxZp6vKAFmyWleYAQsW4uoGFS5Zsk5XlQGyZLWuMAMWLMTVDSpcsmSdrioDZMlqXWEGLFiIqxtUuGTJOl1VBsiS1brCDFiwEFc3qHDJknW6qgyQJat1hRmwYCGublDhkiXrdFUZIEtW6wozYMFCXN2gwiVL1umqMkCWrNYVZsCChbi6QYVLlqzTVWWALFmtK8yABQtxdYMKlyxZp6vKAFmyWleYAQsW4uoGFS5Zsk5XlQGyZLWuMAMWLMTVDSpcsmSdrioDZMlqXWEGLFiIqxtUuGTJOl1VBsiS1brCDFiwEFc3qHDJknW6qgyQJat1hRmwYCGublDhkiXrdFUZIEtW6wozYMFCXN2gwiVL1umqMkCWrNYVZsCChbi6QYVLlqzTVWWALFmtK8yABQtxdYMKlyxZp6vKAFmyWleYAQsW4uoGFe5N2W1vlx2/VR/6mXefdn7b9nOm02Hb67bnbS8fj112/My7d/+fq+jHu7eHvfun3ufBX8N+v89b/Svvc00Tvb/8SvgAAAAASUVORK5CYII=" id="95"/></item></list></costumes><sounds><list struct="atomic" id="96"></list></sounds><blocks></blocks><variables></variables><scripts><script x="170" y="96"><block s="receiveGo"></block><block s="gotoXY"><l>243</l><l>0</l></block><block s="doFaceTowards"><l><option>center</option></l></block><block s="setEffect"><l><option>ghost</option></l><l>75</l></block><block s="doSwitchToCostume"><l>Untitled</l></block></script></scripts></sprite><watcher var="Left Score" style="normal" x="10" y="10" color="243,118,29"/><watcher var="Right Score" style="normal" x="355" y="10.000001999999995" color="243,118,29"/><watcher scope="Ball" s="xPosition" style="normal" x="10" y="31.000001999999995" color="74,108,212"/><watcher scope="Ball" s="yPosition" style="normal" x="10" y="52.00000399999999" color="74,108,212"/><watcher scope="Paddle" s="xPosition" style="normal" x="10" y="73.00000599999998" color="74,108,212" hidden="true"/><watcher scope="Paddle" s="yPosition" style="normal" x="10" y="94.00000799999998" color="74,108,212" hidden="true"/><watcher scope="AI Paddle" s="xPosition" style="normal" x="10" y="115.00000999999997" color="74,108,212" hidden="true"/><watcher var="GameState" style="normal" x="20" y="92.00001199999997" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="PaddleControls" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doUntil"><block s="reportEquals"><block var="GameState"/><l>1</l><comment w="90" collapsed="false">same purpose as in BallScript</comment></block><script><block s="doIf"><block s="reportKeyPressed"><l><option>w</option></l></block><script><block s="changeYPosition"><l>10</l></block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>s</option></l><comment w="90" collapsed="false">note no A and D inputs - this is Pong, not Air Hockey</comment></block><script><block s="changeYPosition"><l>-10</l></block></script></block><block s="bounceOffEdge"></block><block s="doIf"><block s="reportEquals"><block var="GameState"/><l>1</l></block><script><block s="doGlide"><l>1</l><l>-213</l><l>0</l><comment w="90" collapsed="false">unnecessary position reset</comment></block></script></block></script></block></script></block-definition><block-definition s="BallScript Speed: %&apos;Ball Speed&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doUntil"><block s="reportEquals"><block var="GameState"/><l>1</l><comment w="90" collapsed="false">this &quot;repeat until&quot; with the variable should make the ball stop moving at the end of the game.</comment></block><script><block s="forward"><block var="Ball Speed"/></block><block s="bounceOffEdge"></block><block s="doIf"><block s="reportTouchingObject"><l>Left Boundary</l></block><script><block s="doChangeVar"><l>Left Score</l><l>-1</l></block><block s="setHeading"><block s="reportDifference"><l>360</l><block s="direction"></block></block><comment w="90" collapsed="false">thanks for teaching me this technique, Mr. Allen.</comment></block><block s="doWait"><l>0.1</l></block></script></block><block s="doIf"><block s="reportTouchingObject"><l>Right Boundary</l></block><script><block s="doChangeVar"><l>Right Score</l><l>-1</l></block><block s="setHeading"><block s="reportDifference"><l>360</l><block s="direction"></block></block></block><block s="doWait"><l>0.1</l></block></script></block><block s="doIf"><block s="reportTouchingObject"><l>Paddle</l></block><script><block s="doChangeVar"><l>Left Score</l><l>1</l></block><block s="setHeading"><block s="reportDifference"><l>360</l><block s="direction"></block></block></block><block s="doWait"><l>0.1</l></block></script></block><block s="doIf"><block s="reportTouchingObject"><l>AI Paddle</l></block><script><block s="doChangeVar"><l>Right Score</l><l>1</l></block><block s="setHeading"><block s="reportDifference"><l>360</l><block s="direction"></block></block></block><block s="doWait"><l>0.1</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportGreaterThan"><block var="Left Score"/><l>5</l></block><block s="reportEquals"><block var="Left Score"/><l>5</l></block></block><script><block s="doGotoObject"><l><option>center</option></l></block><block s="doSayFor"><l>LEFT PLAYER WINS!</l><l>5</l></block><block s="doSetVar"><l>GameState</l><l>1</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportGreaterThan"><block var="Right Score"/><l>5</l></block><block s="reportEquals"><block var="Right Score"/><l>5</l></block></block><script><block s="doGotoObject"><l><option>center</option></l></block><block s="doSayFor"><l>RIGHT PLAYER WINS!</l><l>5</l></block><block s="doSetVar"><l>GameState</l><l>1</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block var="Left Score"/><l>-5</l></block><block s="reportEquals"><block var="Left Score"/><l>-5</l></block></block><script><block s="doGotoObject"><l><option>center</option></l></block><block s="doSayFor"><l>LEFT PLAYER LOSES!</l><l>2</l></block><block s="doSetVar"><l>GameState</l><l>1</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block var="Right Score"/><l>-5</l></block><block s="reportEquals"><block var="Right Score"/><l>-5</l></block></block><script><block s="doGotoObject"><l><option>center</option></l></block><block s="doSayFor"><l>RIGHT PLAYER LOSES!</l><l>2</l></block><block s="doSetVar"><l>GameState</l><l>1</l></block></script></block></script></block></script><scripts><comment x="275.3349609375002" y="441.66666666666566" w="90" collapsed="false">every if statement above this comment is for making the ball bounce and increment score.</comment><comment x="376.5751953125" y="444.66666666666544" w="90" collapsed="false">every if statement below this comment is for declaring a &quot;win&quot; condition if one player gets to 5 and a &quot;lose&quot; if one player gets to -5.</comment></scripts></block-definition><block-definition s="Paddle2Controls" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doUntil"><block s="reportEquals"><block var="GameState"/><l>1</l><comment w="90" collapsed="false">same purpose as in BallScript - stop controls when the game ends</comment></block><script><block s="doIf"><block s="reportKeyPressed"><l><option>up arrow</option></l></block><script><block s="changeYPosition"><l>10</l></block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>down arrow</option></l><comment w="90" collapsed="false">no left/right arrows - I don&apos;t think I have enough time to make this into Air Hockey</comment></block><script><block s="changeYPosition"><l>-10</l></block></script></block><block s="bounceOffEdge"></block><block s="doIf"><block s="reportEquals"><block var="GameState"/><l>1</l></block><script><block s="doGlide"><l>1</l><l>213</l><l>0</l><comment w="90" collapsed="false">unnecessary position reset 2</comment></block></script></block></script></block></script></block-definition><block-definition s="ModeSelect" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportKeyPressed"><l><option>e</option></l></block><script><block s="doBroadcast"><l>GameStartAI</l></block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>space</option></l></block><script><block s="doBroadcast"><l>GameStartP2</l></block></script></block></script></block-definition><block-definition s="PaddleAI" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doGlide"><l>1</l><l>213</l><block s="reportAttributeOf"><l><option>y position</option></l><l>Ball</l></block></block></script></block-definition></blocks><variables><variable name="Left Score"><l>0</l></variable><variable name="Right Score"><l>0</l></variable><variable name="GameState"><l>0</l></variable></variables></project><media name="U1 Project - Pong" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>