<snapdata remixID="13399960"><project name="Project 2.6 - Pong" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="Project 2.6 - Pong"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations></translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l></list><l>var stage = this.parentThatIsA(StageMorph),&#xD;    context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportVariadicEquals"><list><block var="data"/><block s="reportNewList"><list></list></block></list></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><list></list></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script><list></list></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="start"/><block var="end"/></list></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicLessThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doWarp"><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script><list></list></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block></script><scripts><script x="229.000003" y="196.77778077777774"><block s="reportJoinWords"><list><l></l><l></l></list></block></script></scripts></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script><list></list></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%txt"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="%&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="numbers from %&apos;from&apos; to %&apos;to&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%n">1</input><input type="%n">10</input></inputs><script><block s="doIf"><block s="reportVariadicGreaterThan"><list><block var="from"/><block var="to"/></list></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block var="from"/><custom-block s="numbers from %n to %n"><block s="reportVariadicSum"><list><block var="from"/><l>1</l></list></block><block var="to"/></custom-block></block></block></script></block-definition><block-definition s="map %&apos;func&apos; over %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block var="data"/></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="func"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><custom-block s="map %repRing over %l"><block var="func"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block-definition></blocks><stage name="Stage" width="480" height="360" costume="1" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="true" codify="false" inheritance="false" sublistIDs="false" id="510"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list id="511"><item><ref mediaID="Stage_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="512"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="3"><sprite name="Left paddle" idx="2" x="-200.00000000000003" y="0" heading="90" scale="0.4" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="517"><costumes><list id="518"><item><ref mediaID="Left paddle_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="519"></list></sounds><blocks></blocks><variables></variables><scripts><script x="26.396396396396398" y="15.738738738738888"><block s="receiveMessage"><l>Reset</l><list></list></block><block s="gotoXY"><l>-200</l><l>0</l></block></script><script x="30" y="110.01801801801804"><block s="receiveGo"></block><block s="doForever"><script><block s="doIf"><block s="reportKeyPressed"><l><option>w</option></l></block><script><block s="changeYPosition"><l>10</l></block></script><list><block s="reportKeyPressed"><l><option>s</option></l></block><script><block s="changeYPosition"><l>-10</l></block></script></list></block></script></block></script><comment x="230" y="19" w="190" collapsed="false">When &quot;Reset&quot; is received, the left paddle will go to its original position.</comment><comment x="258" y="108" w="162" collapsed="false">When the green flag is clicked, the &quot;w&quot; key will allow the left paddle&apos;s y posiiton to increase by 10, while the &quot;s&quot; key will allow the y position to decrease by 10.</comment></scripts></sprite><sprite name="Right paddle" idx="3" x="200.00000000000014" y="0" heading="90" scale="0.4" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="551"><costumes><list id="552"><item><ref mediaID="Right paddle_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="553"></list></sounds><blocks></blocks><variables></variables><scripts><script x="29" y="41"><block s="receiveMessage"><l>Reset</l><list></list></block><block s="gotoXY"><l>200</l><l>0</l></block></script><script x="39" y="141"><block s="receiveGo"></block><block s="doForever"><script><block s="doIf"><block s="reportKeyPressed"><l><option>up arrow</option></l></block><script><block s="changeYPosition"><l>10</l></block></script><list><block s="reportKeyPressed"><l><option>down arrow</option></l></block><script><block s="changeYPosition"><l>-10</l></block></script></list></block></script></block></script><comment x="284" y="38" w="190" collapsed="false">When &quot;Reset&quot; is received, the right paddle will go to its original position.</comment><comment x="325" y="150" w="162" collapsed="false">When the green flag is clicked, the &quot;w&quot; key will allow the right paddle&apos;s y posiiton to increase by 10, while the &quot;s&quot; key will allow the y position to decrease by 10.</comment></scripts></sprite><sprite name="Ball" idx="1" x="0" y="-2.6185068189239774e-14" heading="108" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="255,250,251,1" pen="tip" id="585"><costumes><list id="586"><item><ref mediaID="Ball_cst_ball e"></ref></item></list></costumes><sounds><list id="587"><item><ref mediaID="Ball_snd_Chord"></ref></item><item><ref mediaID="Ball_snd_Pop"></ref></item></list></sounds><blocks></blocks><variables></variables><scripts><script x="30" y="30"><block s="receiveGo"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setHeading"><block s="reportRandom"><l>80</l><l>110</l></block></block><block s="doSetVar"><l>ball speed</l><l>2</l></block><block s="doSetVar"><l>player 1 score</l><l>0</l></block><block s="doSetVar"><l>player 2 score</l><l>0</l></block><block s="doUntil"><block s="reportVariadicOr"><list><block s="reportVariadicEquals"><list><block var="player 1 score"/><l>5</l></list></block><block s="reportVariadicEquals"><list><block var="player 2 score"/><l>5</l></list></block></list></block><script><block s="forward"><block var="ball speed"/></block><block s="bounceOffEdge"></block><block s="doIf"><block s="reportVariadicOr"><list><block s="reportTouchingObject"><l>Left paddle</l></block><block s="reportTouchingObject"><l>Right paddle</l></block></list></block><script><block s="doFaceTowards"><l><option>center</option></l></block><block s="playSound"><l>Pop</l></block><block s="doChangeVar"><l>ball speed</l><l>0.25</l></block></script><list></list></block></script></block><block s="doBroadcastAndWait"><l>End</l><list></list></block></script><comment x="466" y="172" w="197" collapsed="false">The ball will start moving using ball speed. If it is on the edge of the screen, it will bounce. If the ball is touching the right or left paddle, it will come towards the center, play the sound &quot;Pop&quot; and increase the speed by .25. </comment><comment x="475" y="288" w="179" collapsed="false">This will repeat until one of the players scores 5 points. Once this happens, &quot;End&quot; will be broadcasted to all other sprites.</comment><script x="33" y="435.08333333333326"><block s="receiveCondition"><block s="reportVariadicAnd"><list><block s="reportVariadicLessThan"><list><block s="xPosition"></block><l>-200</l></list></block><block s="reportNot"><block s="reportTouchingObject"><l>Left paddle</l></block></block></list></block></block><block s="playSound"><l>Pop</l></block><block s="doSayFor"><l>Player 2 has scored a point!</l><l>2</l></block><block s="doChangeVar"><l>player 2 score</l><l>1</l></block><block s="doBroadcast"><l>Reset</l><list></list></block></script><script x="34" y="618.9166666666666"><block s="receiveCondition"><block s="reportVariadicAnd"><list><block s="reportVariadicGreaterThan"><list><block s="xPosition"></block><l>200</l></list></block><block s="reportNot"><block s="reportTouchingObject"><l>Right paddle</l></block></block></list></block></block><block s="playSound"><l>Pop</l></block><block s="doSayFor"><l>Player 1 has scored a point!</l><l>2</l></block><block s="doChangeVar"><l>player 1 score</l><l>1</l></block><block s="doBroadcast"><l>Reset</l><list></list></block></script><script x="35" y="807.75"><block s="receiveMessage"><l>Reset</l><list></list></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="setHeading"><block s="reportRandom"><l>80</l><l>110</l></block></block><block s="doSetVar"><l>ball speed</l><l>2</l></block></script><script x="37" y="947.75"><block s="receiveMessage"><l>End</l><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="player 1 score"/><l>5</l></list></block><script><block s="doSayFor"><l>Player 1 has won the game!</l><l>2</l></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><block var="player 2 score"/><l>5</l></list></block><script><block s="doSayFor"><l>Player 2 has won the game!</l><l>2</l></block></script><list></list></block><block s="doAsk"><l>Would you like to play again?</l></block><block s="doIfElse"><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><l>yes</l></list></block><script><block s="doBroadcast"><l><option>__shout__go__</option></l><list></list></block></script><script><block s="doSayFor"><l>Okay, no problem!</l><l>2</l></block></script></block></script><comment x="479" y="447.66666666666674" w="187" collapsed="false">When the ball goes further past the left paddle, the &quot;Pop&quot; sound will play and a message will be displayed saying Player 2 has scored a point, and Player 2&apos;s score will increase by 1. Then &quot;Reset&quot; will be broadcasted.</comment><comment x="484" y="624.6666666666667" w="187" collapsed="false">When the ball goes further past the right paddle, the &quot;Pop&quot; sound will play and a message will be displayed saying Player 1 has scored a point, and Player 1&apos;s score will increase by 1. Then &quot;Reset&quot; will be broadcasted.</comment><comment x="377" y="804.6666666666667" w="163" collapsed="false">When &quot;Reset&quot; is received, the ball will go to its original position, point in a random direction from 80-110, and have its original speed.</comment><comment x="354" y="941.5833333333339" w="297" collapsed="false">When &quot;End&quot; is received, if Player 1 has a score of 5, a message will be displayed saying Player 1 has won. &#xD;If Player 2 has a score of 5, a message will be displayed saying Player 2 has won.&#xD;The players will be asked if they want to play again, and if yes, the game will restart.</comment><comment x="337" y="32.08333333333326" w="264" collapsed="false">When the green flag is clicked, the ball will go to its original position, and point in a random direction between 80 and 110. The ball&apos;s speed will be set to 2, and none of the players will have any points to begin with.</comment></scripts></sprite><watcher var="ball speed" style="normal" x="9.999999999999755" y="9.999999999999984" color="243,118,29" hidden="true"/><watcher scope="Left paddle" s="xPosition" style="normal" x="9.999999999999755" y="73.00000599999989" color="74,108,212" hidden="true"/><watcher scope="Right paddle" s="xPosition" style="normal" x="9.999999999999755" y="94.0000079999998" color="74,108,212" hidden="true"/><watcher var="player 1 score" style="normal" x="5.000000000000244" y="6.000001999999983" color="243,118,29"/><watcher var="player 2 score" style="normal" x="6.000000000000042" y="32.000003999999976" color="243,118,29"/><watcher scope="Left paddle" s="yPosition" style="normal" x="9.213051823416507" y="9.213051823416507" color="74,108,212" hidden="true"/></sprites></stage><variables><variable name="ball speed"><l>2</l></variable><variable name="player 1 score"><l>2</l></variable><variable name="player 2 score"><l>5</l></variable></variables></scene></scenes></project><media name="Project 2.6 - Pong" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><costume name="Untitled" center-x="240" center-y="180" image="data:image/png;base64,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" mediaID="Stage_cst_Untitled"/><costume name="Untitled" center-x="21" center-y="126" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAD8CAYAAAABpDZpAAAAAXNSR0IArs4c6QAAAclJREFUeF7t0rENg0AUBcG7hIrovwIqIsE6y3QwwVlaB5ho9Rm9OX6/Y1zP+77T/z3Oue75PnY98gVbx87dj3yP7VC980QT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK69z8bXV9+jOvRArJ3j3PON7jrsevIdeMH4VDPhCIC8W0AAAAASUVORK5CYII=" mediaID="Left paddle_cst_Untitled"/><costume name="Untitled" center-x="21" center-y="126" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAD8CAYAAAABpDZpAAAAAXNSR0IArs4c6QAAAclJREFUeF7t0rENg0AUBcG7hIrovwIqIsE6y3QwwVlaB5ho9Rm9OX6/Y1zP+77T/z3Oue75PnY98gVbx87dj3yP7VC980QT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK610YT1QK69z8bXV9+jOvRArJ3j3PON7jrsevIdeMH4VDPhCIC8W0AAAAASUVORK5CYII=" mediaID="Right paddle_cst_Untitled"/><costume name="ball e" center-x="22.5" center-y="22.5" image="data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjAiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjQ1cHgiIGhlaWdodD0iNDVweCIgdmlld0JveD0iMCAwIDQ1IDQ1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA0NSA0NSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgPGc+CiAgICA8cmFkaWFsR3JhZGllbnQgaWQ9IlNWR0lEXzFfIiBjeD0iMjkuNzI3NSIgY3k9IjEzLjEzOTYiIHI9IjM4LjUyOTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KICAgICAgPHN0b3Agb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojREE3RkZGIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6IzM5MDBBQSIvPgogICAgPC9yYWRpYWxHcmFkaWVudD4KICAgIDxjaXJjbGUgZmlsbD0idXJsKCNTVkdJRF8xXykiIGN4PSIyMi41IiBjeT0iMjIuNSIgcj0iMjIuNSIvPgogIDwvZz4KPC9zdmc+" mediaID="Ball_cst_ball e"/><sound name="Chord" sound="http://snap.berkeley.edu/snapsource/Sounds/Chord.wav" mediaID="Ball_snd_Chord"/><sound name="Pop" sound="data:audio/ogg;base64,UklGRigCAABXQVZFZm10IBAAAAABAAEAESsAACJWAAACABAAZGF0YQQCAADVAAMDvQdyDe8VUx08I5sk4iCrFnMGVfFf2mDEjbNpqZKo5bFHxUHh8wLtJtFHSmF9byNwCmHOROodKvMPyWqn/ZElje6YObXo3eIMnTpEYHB2tXmiaNhFZxdK5Gy1epLegWuGcZ+OyCH84jB9Xd955H83calNthyp50+4jJYDiWmRT6712VwMADxQX+9vF2lWTgokcfJZxWejtpN4mfiyaNqjCY42a1cpZqJfvEb1H8jyA8r1rc6iH6syxPHqwBSrOShR8VY0SU4rAwQs27667KgOqdG8jN28BjwugEsUWSdSXTmsExzqccWtrSmnurMb0LD2pR56P8hRylFrP30f5/nT1oG+H7ZVvqzVvPUqGIIz9UGEQCwvDBNX8p/Vs8P1v3TLnON6AnogiTaGP9I4OiTDBpLnG86GvwjAFc9R6WsIfiUgOghBtTiWI1MGL+hWzyrC6sJa0QXqSQeUItc10DzsNUojWglH7hvYd8sNy2bWb+qxApIZMyp4MKorPB30CGTzv+G41/bWrN8Q780BKRNcH6gjSB+rE68DUvNw5rrf2+Az6cz2JAbbE/IcSh+EGskPfAHk8jXnDeGG4XroZ/ShAiwQXxoQH4wdXhY9C3T+5/LK6pbnhOng7/n41AIIC0oQkhHZDjcJGQJ5+532lvTd9df5H/+OBJcIFwqKCFUEYf4=" mediaID="Ball_snd_Pop"/></media></snapdata>