<snapdata remixID="11495146"><project name="2D Raycaster *in a dark world*" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes>Use the arrow keys to move around and turn. It is a bit slow, but with raycasting using pen blocks, you can explore a pitch black world in shadows from your light.</notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="2D Raycaster *in a dark world*"><notes>Use the arrow keys to move around and turn. It is a bit slow, but with raycasting using pen blocks, you can explore a pitch black world in shadows from your light.</notes><palette><category name="my blocks" color="255,102,171,1"/></palette><hidden></hidden><headers></headers><code></code><blocks><block-definition s="custom steps %&apos;dir X&apos; %&apos;dir Y&apos;" type="command" category="my blocks"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="changeXPosition"><block s="reportVariadicProduct"><list><block var="dir X"/><l>-1</l></list></block></block><block s="changeYPosition"><block s="reportVariadicProduct"><list><block var="dir Y"/><l>-1</l></list></block></block></script></block-definition><block-definition s="move %&apos;steps&apos;" type="command" category="my blocks"><header></header><code></code><translations></translations><inputs><input type="%n"></input></inputs><script><custom-block s="custom steps %n %n"><block s="reportVariadicProduct"><list><block var="steps"/><block s="reportMonadic"><l><option>sin</option></l><block s="direction"></block></block></list></block><l>0</l></custom-block><custom-block s="custom steps %n %n"><l>0</l><block s="reportVariadicProduct"><list><block var="steps"/><block s="reportMonadic"><l><option>cos</option></l><block s="direction"></block></block></list></block></custom-block></script></block-definition><block-definition s="-- %&apos;n&apos;" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs><input type="%anyUE" readonly="true"></input></inputs><script><block s="doRun"><block s="reifyScript"><script><block s="doChangeVar"><l></l><l>-1</l></block></script><list></list></block><list><block var="n"/></list></block><block s="doReport"><block s="evaluate"><block var="n"/><list></list></block></block></script></block-definition><block-definition s="animate setter %&apos;setter&apos; getter %&apos;getter&apos; delta %&apos;delta&apos; over %&apos;duration&apos; secs easing %&apos;easing&apos;" type="command" category="control"><header></header><code></code><translations>de:animiere Setter _ Getter _ Delta _ über _ Sek. beschleunigt _&#xD;ca:modifica setter _ i getter _ amb delta _ en _ segons de forma _&#xD;pt:anima com modificador _ e inspector _ de _ em _ s de forma _&#xD;</translations><inputs><input type="%cmdRing"></input><input type="%repRing"></input><input type="%n">50</input><input type="%n">1</input><input type="%repRing"></input></inputs><script><block s="doDeclareVariables"><list><l>end time</l><l>destination</l></list></block><block s="doSetVar"><l>end time</l><block s="reportVariadicSum"><list><block s="reportDate"><l><option>time in milliseconds</option></l></block><block s="reportVariadicProduct"><list><block var="duration"/><l>1000</l></list></block></list></block></block><block s="doSetVar"><l>destination</l><block s="reportVariadicSum"><list><block s="evaluate"><block var="getter"/><list></list></block><block var="delta"/></list></block></block><block s="doUntil"><block s="reportGreaterThan"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="end time"/></block><script><block s="doRun"><block var="setter"/><list><block s="reportDifference"><block var="destination"/><block s="reportVariadicProduct"><list><block var="delta"/><block s="evaluate"><block var="easing"/><list><block s="reportQuotient"><block s="reportDifference"><block var="end time"/><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="reportVariadicProduct"><list><block var="duration"/><l>1000</l></list></block></block></list></block></list></block></block></list></block></script></block><block s="doRun"><block var="setter"/><list><block var="destination"/></list></block></script></block-definition><block-definition s="PI" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><l>3.141592653589793</l></block></script></block-definition><block-definition s="degrees %&apos;radians&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Grad _&#xD;ca:graus de _ radians&#xD;pt:_ radianos em graus&#xD;</translations><inputs><input type="%n">0.5</input></inputs><script><block s="doReport"><block s="reportQuotient"><block s="reportVariadicProduct"><list><block var="radians"/><l>180</l></list></block><custom-block s="PI"></custom-block></block></block></script></block-definition><block-definition s="error %&apos;msg&apos;" type="command" category="control"><header></header><code></code><translations>de:Fehler _&#xD;pt:assinala o erro _&#xD;</translations><inputs><input type="%s"></input></inputs><script><block s="doApplyExtension"><l>err_error(msg)</l><list><block var="msg"/></list></block></script></block-definition><block-definition s="glide %&apos;steps&apos; in %&apos;duration&apos; secs easing %&apos;easing&apos;" type="command" category="motion"><header></header><code></code><translations>de:gleite _ in _ Sek. beschleunigt: _&#xD;ca:llisca _ en _ segons de forma _&#xD;fr:glisser _ en _ sec. accélérer _&#xD;pt:desliza _ em _ s de forma _&#xD;</translations><inputs><input type="%n">50</input><input type="%n">1</input><input type="%s" readonly="true">linear<options>linear&#xD;quadratic={&#xD;quadratic-in&#xD;quadratic-out&#xD;quadratic-in-out&#xD;}&#xD;cubic={&#xD;cubic-in&#xD;cubic-out&#xD;cubic-in-out&#xD;}&#xD;quart={&#xD;quart-in&#xD;quart-out&#xD;quart-in-out&#xD;}&#xD;sinusoidal={&#xD;sine-in&#xD;sine-out&#xD;sine-in-out&#xD;}&#xD;elastic</options></input></inputs><script><block s="doDeclareVariables"><list><l>destX</l><l>destY</l><l>end time</l><l>deltaX</l><l>deltaY</l><l>func</l><l>pendown?</l></list></block><block s="doSetVar"><l>pendown?</l><block s="getPenDown"></block></block><block s="up"></block><block s="forward"><block var="steps"/></block><block s="doSetVar"><l>destX</l><block s="xPosition"></block></block><block s="doSetVar"><l>destY</l><block s="yPosition"></block></block><block s="forward"><block s="reportVariadicProduct"><list><block var="steps"/><l>-1</l></list></block></block><block s="doIf"><block var="pendown?"/><script><block s="down"></block></script></block><block s="doSetVar"><l>end time</l><block s="reportVariadicSum"><list><block s="reportDate"><l><option>time in milliseconds</option></l></block><block s="reportVariadicProduct"><list><block var="duration"/><l>1000</l></list></block></list></block></block><block s="doSetVar"><l>deltaX</l><block s="reportDifference"><block var="destX"/><block s="xPosition"></block></block></block><block s="doSetVar"><l>deltaY</l><block s="reportDifference"><block var="destY"/><block s="yPosition"></block></block></block><block s="doIfElse"><block s="reportIsA"><block var="easing"/><l><option>reporter</option></l></block><script><block s="doSetVar"><l>func</l><block var="easing"/></block></script><script><block s="doSetVar"><l>func</l><custom-block s="easing %txt"><block var="easing"/></custom-block></block></script></block><block s="doUntil"><block s="reportGreaterThan"><block s="reportDate"><l><option>time in milliseconds</option></l></block><block var="end time"/></block><script><block s="setXPosition"><block s="reportDifference"><block var="destX"/><block s="reportVariadicProduct"><list><block var="deltaX"/><block s="evaluate"><block var="func"/><list><block s="reportQuotient"><block s="reportDifference"><block var="end time"/><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="reportVariadicProduct"><list><block var="duration"/><l>1000</l></list></block></block></list></block></list></block></block></block><block s="setYPosition"><block s="reportDifference"><block var="destY"/><block s="reportVariadicProduct"><list><block var="deltaY"/><block s="evaluate"><block var="func"/><list><block s="reportQuotient"><block s="reportDifference"><block var="end time"/><block s="reportDate"><l><option>time in milliseconds</option></l></block></block><block s="reportVariadicProduct"><list><block var="duration"/><l>1000</l></list></block></block></list></block></list></block></block></block></script></block><block s="gotoXY"><block var="destX"/><block var="destY"/></block></script></block-definition><block-definition s="animate %&apos;attribute&apos; by %&apos;delta&apos; in %&apos;duration&apos; secs easing %&apos;easing&apos;" type="command" category="motion"><header></header><code></code><translations>de:animiere _ um _ in _ Sek. beschleunigt: _&#xD;ca:modifica _ amb _ en _ segons de forma _&#xD;pt:anima _ de _ em _ s de forma _&#xD;</translations><inputs><input type="%s" readonly="true">x position<options>x position&#xD;y position&#xD;direction&#xD;size&#xD;ghost effect&#xD;color effect&#xD;saturation effect&#xD;brightness effect&#xD;fisheye effect&#xD;whirl effect&#xD;pixelate effect&#xD;mosaic effect&#xD;negative effect&#xD;tempo&#xD;volume&#xD;balance</options></input><input type="%n">50</input><input type="%n">1</input><input type="%s" readonly="true">linear<options>linear&#xD;quadratic={&#xD;quadratic-in&#xD;quadratic-out&#xD;quadratic-in-out&#xD;}&#xD;cubic={&#xD;cubic-in&#xD;cubic-out&#xD;cubic-in-out&#xD;}&#xD;quart={&#xD;quart-in&#xD;quart-out&#xD;quart-in-out&#xD;}&#xD;sinusoidal={&#xD;sine-in&#xD;sine-out&#xD;sine-in-out&#xD;}&#xD;elastic</options></input></inputs><script><block s="doDeclareVariables"><list><l>accessors</l><l>func</l></list></block><block s="doSetVar"><l>accessors</l><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>x position</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setXPosition"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="xPosition"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>y position</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setYPosition"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="yPosition"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>direction</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setHeading"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="direction"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>size</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setScale"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="getScale"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>tempo</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="doSetTempo"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="getTempo"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>volume</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setVolume"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="getVolume"></block></autolambda><list></list></block></list></block><block s="reportIfElse"><block s="reportEquals"><block var="attribute"/><l>balance</l></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setPan"><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="getPan"></block></autolambda><list></list></block></list></block><block s="reportNewList"><list><block s="reifyScript"><script><block s="setEffect"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block var="attribute"/><l> </l></block></block><l></l></block></script><list></list></block><block s="reifyReporter"><autolambda><block s="getEffect"><block s="reportListItem"><l>1</l><block s="reportTextSplit"><block var="attribute"/><l> </l></block></block></block></autolambda><list></list></block></list></block></block></block></block></block></block></block></block></block><block s="doIfElse"><block s="reportIsA"><block var="easing"/><l><option>reporter</option></l></block><script><block s="doSetVar"><l>func</l><block var="easing"/></block></script><script><block s="doSetVar"><l>func</l><custom-block s="easing %txt"><block var="easing"/></custom-block></block></script></block><custom-block s="animate setter %cmdRing getter %repRing delta %n over %n secs easing %repRing"><block s="reportListItem"><l>1</l><block var="accessors"/></block><block s="reportListItem"><l>2</l><block var="accessors"/></block><block var="delta"/><block var="duration"/><block var="func"/></custom-block></script></block-definition><block-definition s="easing %&apos;choice&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Beschleunigung _&#xD;ca:de forma _&#xD;pt:a forma _&#xD;</translations><inputs><input type="%txt" readonly="true">linear<options>linear&#xD;quadratic={&#xD;quadratic-in&#xD;quadratic-out&#xD;quadratic-in-out&#xD;}&#xD;cubic={&#xD;cubic-in&#xD;cubic-out&#xD;cubic-in-out&#xD;}&#xD;quart={&#xD;quart-in&#xD;quart-out&#xD;quart-in-out&#xD;}&#xD;sinusoidal={&#xD;sine-in&#xD;sine-out&#xD;sine-in-out&#xD;}&#xD;elastic</options></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="choice"/><l>linear</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>id</option></l><l></l></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quadratic-in</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><l></l></list></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quadratic-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><block s="reportDifference"><l>2</l><l></l></block></list></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quadratic-in-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportLessThan"><l></l><l>.5</l></block><block s="reportVariadicProduct"><list><l>2</l><block s="reportVariadicProduct"><list><l></l><l></l></list></block></list></block><block s="reportDifference"><block s="reportVariadicProduct"><list><block s="reportDifference"><l>4</l><block s="reportVariadicProduct"><list><l>2</l><l></l></list></block></block><l></l></list></block><l>1</l></block></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>cubic-in</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><l></l></list></block></list></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>cubic-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block s="reportVariadicProduct"><list><custom-block s="-- %anyUE"><block var="t"/></custom-block><block var="t"/></list></block><block var="t"/></list></block><l>1</l></list></block></autolambda><list><l>t</l></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>cubic-in-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportLessThan"><l></l><l>.5</l></block><block s="reportVariadicProduct"><list><l>4</l><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><l></l></list></block></list></block></list></block><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block s="reportVariadicProduct"><list><block s="reportDifference"><l></l><l>1</l></block><block s="reportDifference"><block s="reportVariadicProduct"><list><l>2</l><l></l></list></block><l>2</l></block></list></block><block s="reportDifference"><block s="reportVariadicProduct"><list><l>2</l><l></l></list></block><l>2</l></block></list></block><l>1</l></list></block></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quart-in</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><l></l></list></block></list></block></list></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quart-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportDifference"><l>1</l><block s="reportVariadicProduct"><list><custom-block s="-- %anyUE"><block var="t"/></custom-block><block s="reportVariadicProduct"><list><block var="t"/><block s="reportVariadicProduct"><list><block var="t"/><block var="t"/></list></block></list></block></list></block></block></autolambda><list><l>t</l></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>quart-in-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportIfElse"><block s="reportLessThan"><l></l><l>.5</l></block><block s="reportVariadicProduct"><list><l>8</l><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><block s="reportVariadicProduct"><list><l></l><l></l></list></block></list></block></list></block></list></block><block s="evaluate"><block s="reifyReporter"><autolambda><block s="reportDifference"><l>1</l><block s="reportVariadicProduct"><list><l>8</l><block s="reportVariadicProduct"><list><custom-block s="-- %anyUE"><block var="t"/></custom-block><block s="reportVariadicProduct"><list><block var="t"/><block s="reportVariadicProduct"><list><block var="t"/><block var="t"/></list></block></list></block></list></block></list></block></block></autolambda><list><l>t</l></list></block><list><l></l></list></block></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>sine-in</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportDifference"><l>1</l><block s="reportMonadic"><l><option>sin</option></l><block s="reportVariadicSum"><list><l>90</l><block s="reportVariadicProduct"><list><l></l><l>90</l></list></block></list></block></block></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>sine-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportMonadic"><l><option>sin</option></l><block s="reportVariadicProduct"><list><l></l><l>90</l></list></block></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>sine-in-out</l></block><script><block s="doReport"><block s="reifyReporter"><autolambda><block s="reportQuotient"><block s="reportDifference"><l>1</l><block s="reportMonadic"><l><option>cos</option></l><block s="reportVariadicProduct"><list><l></l><l>180</l></list></block></block></block><l>2</l></block></autolambda><list></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="choice"/><l>elastic</l></block><script><block s="doReport"><block s="reifyScript"><script><block s="doDeclareVariables"><list><l>p</l></list></block><block s="doSetVar"><l>p</l><l>0.3</l></block><block s="doReport"><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block s="reportPower"><l>2</l><block s="reportVariadicProduct"><list><l>-10</l><l></l></list></block></block><block s="reportMonadic"><l><option>sin</option></l><custom-block s="degrees %n"><block s="reportVariadicProduct"><list><block s="reportDifference"><l></l><block s="reportQuotient"><block var="p"/><l>4</l></block></block><block s="reportQuotient"><block s="reportVariadicProduct"><list><l>2</l><custom-block s="PI"></custom-block></list></block><block var="p"/></block></list></block></custom-block></block></list></block><l>1</l></list></block></block></script><list></list></block></block></script></block><custom-block s="error %s"><block s="reportJoinWords"><list><l>unknown easing function "</l><block var="choice"/><l>"</l></list></block></custom-block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; $nl in %&apos;time&apos; secs easing %&apos;easing&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:für _ = _ bis _ _ in _ Sek. beschleunigt: _ _&#xD;ca:per _ = _ fins _ _ en _ segons de forma _ _&#xD;pt:para _ de _ a _ _ em _ s de forma _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%n">0</input><input type="%n">100</input><input type="%n">1</input><input type="%txt" readonly="true">linear<options>linear&#xD;quadratic={&#xD;quadratic-in&#xD;quadratic-out&#xD;quadratic-in-out&#xD;}&#xD;cubic={&#xD;cubic-in&#xD;cubic-out&#xD;cubic-in-out&#xD;}&#xD;quart={&#xD;quart-in&#xD;quart-out&#xD;quart-in-out&#xD;}&#xD;sinusoidal={&#xD;sine-in&#xD;sine-out&#xD;sine-in-out&#xD;}&#xD;elastic</options></input><input type="%ca"></input></inputs><script><block s="doSetVar"><l>i</l><block var="start"/></block><custom-block s="animate setter %cmdRing getter %repRing delta %n over %n secs easing %repRing"><block s="reifyScript"><script><block s="doSetVar"><l>i</l><l></l></block><block s="doRun"><block var="action"/><list></list></block></script><list></list></block><block s="reifyReporter"><autolambda><block var="i"/></autolambda><list></list></block><block s="reportDifference"><block var="end"/><block var="start"/></block><block var="time"/><block s="reportIfElse"><block s="reportIsA"><block var="easing"/><l><option>reporter</option></l></block><block var="easing"/><custom-block s="easing %txt"><block var="easing"/></custom-block></block></custom-block></script></block-definition><block-definition s="raycast" type="command" category="my blocks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="setHeading"><block s="reportAttributeOf"><l><option>direction</option></l><l>player</l></block></block><block s="doWarp"><script><block s="clear"></block><block s="setColor"><color>255,240,227,1</color></block><block s="setSize"><l>4</l></block><custom-block s="multi ray"></custom-block></script></block></script></block-definition><block-definition s="single ray" type="command" category="my blocks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doGotoObject"><l>player</l></block><block s="down"></block><block s="doUntil"><block s="reportTouchingObject"><l>level</l></block><script><block s="forward"><l>1</l></block></script></block><block s="doUntil"><block s="reportNot"><block s="reportTouchingObject"><l>level</l></block></block><script><block s="forward"><l>-.5</l></block></script></block><block s="up"></block></script></block-definition><block-definition s="multi ray" type="command" category="my blocks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="turnLeft"><block s="reportQuotient"><block var="FOV"/><l>2</l></block></block><block s="doRepeat"><block var="FOV"/><script><custom-block s="single ray"></custom-block><block s="turn"><l>1</l></block></script></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="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="1192"><pentrails>data:image/png;base64,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BAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQEOACdCMJECBAgIAA2wECBAgQIFAgIMAF6EYSIECAAAEBtgMECBAgQKBAQIAL0I0kQIAAAQICbAcIECBAgECBgAAXoBtJgAABAgQE2A4QIECAAIECAQEuQDeSAAECBAgIsB0gQIAAAQIFAgJcgG4kAQIECBAQYDtAgAABAgQKBAS4AN1IAgQIECAgwHaAAAECBAgUCAhwAbqRBAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQEOACdCMJECBAgIAA2wECBAgQIFAgIMAF6EYSIECAAAEBtgMECBAgQKBAQIAL0I0kQIAAAQICbAcIECBAgECBgAAXoBtJgAABAgQE2A4QIECAAIECAQEuQDeSAAECBAgIsB0gQIAAAQIFAgJcgG4kAQIECBAQYDtAgAABAgQKBAS4AN1IAgQIECAgwHaAAAECBAgUCAhwAbqRBAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQEOACdCMJECBAgIAA2wECBAgQIFAgIMAF6EYSIECAAAEBtgMECBAgQKBAQIAL0I0kQIAAAQICbAcIECBAgECBgAAXoBtJgAABAgQE2A4QIECAAIECAQEuQDeSAAECBAgIsB0gQIAAAQIFAgJcgG4kAQIECBAQYDtAgAABAgQKBAS4AN1IAgQIECAgwHaAAAECBAgUCAhwAbqRBAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQEOACdCMJECBAgIAA2wECBAgQIFAgIMAF6EYSIECAAAEBtgMECBAgQKBAQIAL0I0kQIAAAQICbAcIECBAgECBgAAXoBtJgAABAgQE2A4QIECAAIECAQEuQDeSAAECBAgIsB0gQIAAAQIFAgJcgG4kAQIECBAQYDtAgAABAgQKBAS4AN1IAgQIECAgwHaAAAECBAgUCAhwAbqRBAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQEOACdCMJECBAgIAA2wECBAgQIFAgIMAF6EYSIECAAAEBtgMECBAgQKBAQIAL0I0kQIAAAQICbAcIECBAgECBgAAXoBtJgAABAgQE2A4QIECAAIECAQEuQDeSAAECBAgIsB0gQIAAAQIFAgJcgG4kAQIECBAQYDtAgAABAgQKBAS4AN1IAgQIECAgwHaAAAECBAgUCAhwAbqRBAgQIEBAgO0AAQIECBAoEBDgAnQjCRAgQICAANsBAgQIECBQICDABehGEiBAgAABAbYDBAgQIECgQECAC9CNJECAAAECAmwHCBAgQIBAgYAAF6AbSYAAAQIEBNgOECBAgACBAgEBLkA3kgABAgQICLAdIECAAAECBQICXIBuJAECBAgQEGA7QIAAAQIECgQEuADdSAIECBAgIMB2gAABAgQIFAgIcAG6kQQIECBAQIDtAAECBAgQKBAQ4AJ0IwkQIECAgADbAQIECBAgUCAgwAXoRhIgQIAAAQG2AwQIECBAoEBAgAvQjSRAgAABAgJsBwgQIECAQIGAABegG0mAAAECBATYDhAgQIAAgQIBAS5AN5IAAQIECAiwHSBAgAABAgUCAlyAbiQBAgQIEBBgO0CAAAECBAoEBLgA3UgCBAgQICDAdoAAAQIECBQICHABupEECBAgQECA7QABAgQIECgQ+B/C/N94HVlp0wAAAABJRU5ErkJggg==</pentrails><costumes><list id="1193"><item><ref mediaID="Stage_cst_Untitled"></ref></item></list></costumes><sounds><list struct="atomic" id="1194"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="player" idx="1" x="-167.10100716628403" y="100.85084002108488" heading="40" scale="1" volume="100" pan="0" rotation="1" draggable="false" costume="1" color="80,80,80,1" pen="tip" id="1199"><costumes><list id="1200"><item><ref mediaID="player_cst_player"></ref></item><item><ref mediaID="player_cst_hitbox"></ref></item></list></costumes><sounds><list struct="atomic" id="1201"></list></sounds><blocks></blocks><variables><variable name="dir"><l>115</l></variable></variables><scripts><script x="30" y="30"><block s="receiveGo"></block><block s="gotoXY"><l>-150</l><l>10</l></block><block s="setHeading"><l>90</l></block><block s="doSwitchToCostume"><l>player</l></block><block s="doBroadcast"><l>raycast</l><list></list></block><block s="doForever"><script><block s="doIf"><block s="reportKeyPressed"><l><option>up arrow</option></l></block><script><custom-block s="move %n"><l>-5</l></custom-block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>down arrow</option></l></block><script><custom-block s="move %n"><l>5</l></custom-block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>left arrow</option></l></block><script><block s="turnLeft"><l>5</l></block></script></block><block s="doIf"><block s="reportKeyPressed"><l><option>right arrow</option></l></block><script><block s="turn"><l>5</l></block></script></block><block s="doIf"><block s="reportTouchingObject"><l>level</l></block><script><block s="doSwitchToCostume"><l>hitbox</l></block><block s="doSetVar"><l>dir</l><block s="direction"></block></block><block s="setHeading"><l>90</l></block><block s="doUntil"><block s="reportNot"><block s="reportTouchingObject"><l>level</l></block></block><script><custom-block s="move %n"><l>.5</l></custom-block></script></block><block s="doSwitchToCostume"><l>player</l></block><block s="setHeading"><block var="dir"/></block></script></block></script></block></script></scripts></sprite><sprite name="level" idx="2" x="0" y="0" heading="100" scale="1" volume="100" pan="0" rotation="0" draggable="false" costume="1" color="80,80,80,1" pen="tip" id="1280"><costumes><list id="1281"><item><ref mediaID="level_cst_costume2"></ref></item></list></costumes><sounds><list struct="atomic" id="1282"></list></sounds><blocks></blocks><variables></variables><scripts><script x="165" y="131.33333333333337"><block s="receiveGo"></block><block s="doGotoObject"><l><option>center</option></l></block></script></scripts></sprite><sprite name="raycaster" idx="3" x="-138.10100716628403" y="151.08031344058213" heading="30" scale="1" volume="100" pan="0" rotation="0" draggable="false" costume="1" color="255,240,227,1" pen="tip" id="1289"><costumes><list id="1290"><item><ref mediaID="raycaster_cst_costume1"></ref></item></list></costumes><sounds><list struct="atomic" id="1291"></list></sounds><blocks></blocks><variables></variables><scripts><script x="96" y="73.33333333333334"><block s="receiveGo"></block><block s="doGotoObject"><l>player</l></block><block s="doSetVar"><l>FOV</l><l>60</l></block><block s="setEffect"><l><option>ghost</option></l><l>100</l></block><block s="doSwitchToCostume"><l>costume1</l></block></script><script x="122" y="270"><block s="receiveMessage"><l>raycast</l><list></list></block><block s="doForever"><script><block s="doWarp"><script><custom-block s="raycast"></custom-block></script></block></script></block></script></scripts></sprite><watcher var="FOV" style="normal" x="10" y="10" color="243,118,29"/><watcher scope="player" var="dir" style="normal" x="10" y="31.000001999999995" color="243,118,29" hidden="true"/></sprites></stage><variables><variable name="FOV"><l>60</l></variable></variables></scene></scenes></project><media name="2D Raycaster *in a dark world*" app="Snap! 7, https://snap.berkeley.edu" version="2"><costume name="Untitled" center-x="240" center-y="180" image="data:image/png;base64,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vq0JECBAYJzA+Un2VMDjAnAyAQIECPQU+HWSByvgnuHbmgABAgTGCfw2yYMU8LgAnEyAAAECPQUuTrKbAu4Zvq0JECBAYJzA75PcP8n+G5JsHDeHkwkQIECAQCuBfyTZLsk2CrhV7pYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgSoCCrhKEuYgQIAAgVYCCrhV3JYlQIAAgc0QuCbJTpvxuFU9ZFQBvz7J8aua3JMJECBAgMBWLDCqgLdiMqMTIECAAIHVCyjg1Rt6BQIECBAgsLCAAl6YzBMIECBAgMDqBRTw6g29AgECBAgQWFhAAS9M5gkECBAgQGD1Agp49YZegQABAgQILCyggBcm8wQCBAgQILB6AQW8ekOvQIAAAQIEFhZQwAuTeQIBAgQIEFi9gAJevaFXIECAAAECCwtMBXzx0rPut/CzPYEAAQIECBDYIoGpgJffbkyy8tdb9IKeRIAAAQIECNy6gAK+dSOPIECAAAECay6wsoBvSHK7NT/BCxIgQIAAAQL/I6CAXQoCBAgQIDBAYGUB/zPJNgNmcCQBAgQIEGgnoIDbRW5hAgQIEFgngV8ufSC7bZJN/dhu+v2VBXz90hPWaS4vS4AAAQIEbtMC2yeZunSz3lYW8HVJplb2RoAAAQIE1lJg49KLbernzXnM9DLT40Y+dlNn77qlBXzZCqCbHzD91i63kMYyxvTz9LXEy79efn/lzyvfv+IWEKvCLgdf4QIsMsNIz0XmXOSxdvr3H8bNcdicxyxiv8hjR569yJyLPNZOW3731rLQbxOv9S8rqAT++6+nAgAAAABJRU5ErkJggg==" mediaID="Stage_cst_Untitled"/><costume name="player" center-x="1.5" center-y="7.5" image="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHNuYXA9Imh0dHA6Ly9zbmFwLmJlcmtlbGV5LmVkdS9ydW4iIHZlcnNpb249IjEuMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSBtZWV0IiB2aWV3Qm94PSI2NzkuNSAyNzEuNSAyOSAyMSIgd2lkdGg9IjI5IiBoZWlnaHQ9IjIxIj48cGF0aCBzdHJva2U9InJnYigwLDAsMCkiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMyIgZmlsbD0icmdiKDIxMCw3MCwwKSIgcHJvdG90eXBlPSJWZWN0b3JQb2x5Z29uIiBzdHJva2UtbGluZWNhcD0icm91bmQiIGQ9Ik02ODEgMjczIEwgNjg0IDI5MSBMIDY4NCAyOTEgTCA3MDcgMjc3IEwgNzA3IDI3NyBMIDY4MSAyNzMiLz48L3N2Zz4=" mediaID="player_cst_player"/><costume name="hitbox" center-x="2.5" center-y="4.5" image="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHNuYXA9Imh0dHA6Ly9zbmFwLmJlcmtlbGV5LmVkdS9ydW4iIHZlcnNpb249IjEuMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSBtZWV0IiB2aWV3Qm94PSI3MDQuNSAyODMuNSAxMCAxMCIgd2lkdGg9IjEwIiBoZWlnaHQ9IjEwIj48cmVjdCBzdHJva2U9InJnYigyMTAsNzAsMCkiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMyIgZmlsbD0icmdiKDIyMyw2NywwKSIgcHJvdG90eXBlPSJWZWN0b3JSZWN0YW5nbGUiIHdpZHRoPSI3IiBoZWlnaHQ9IjciIHg9IjcwNiIgeT0iMjg1Ii8+PC9zdmc+" mediaID="player_cst_hitbox"/><costume name="costume2" center-x="246" center-y="188" image="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHNuYXA9Imh0dHA6Ly9zbmFwLmJlcmtlbGV5LmVkdS9ydW4iIHZlcnNpb249IjEuMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSBtZWV0IiB2aWV3Qm94PSI0NTkgMTA5IDQ5MiAzNzQiIHdpZHRoPSI0OTIiIGhlaWdodD0iMzc0Ij48cmVjdCBzdHJva2U9InJnYigwLDAsMCkiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMjAiIGZpbGw9Im5vbmUiIHByb3RvdHlwZT0iVmVjdG9yUmVjdGFuZ2xlIiB3aWR0aD0iNDcyIiBoZWlnaHQ9IjM1NCIgeD0iNDY5IiB5PSIxMTkiLz48cmVjdCBzdHJva2U9InJnYigwLDAsMCkiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMjAiIGZpbGw9InJnYigwLDAsMCkiIHByb3RvdHlwZT0iVmVjdG9yUmVjdGFuZ2xlIiB3aWR0aD0iMjc4IiBoZWlnaHQ9IjEyIiB4PSI1NjIiIHk9IjIwMiIvPjxyZWN0IHN0cm9rZT0icmdiKDAsMCwwKSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIyMCIgZmlsbD0icmdiKDAsMCwwKSIgcHJvdG90eXBlPSJWZWN0b3JSZWN0YW5nbGUiIHdpZHRoPSIxNyIgaGVpZ2h0PSI5MCIgeD0iODIxIiB5PSIyOTEiLz48ZWxsaXBzZSBzdHJva2U9InJnYigwLDAsMCkiIHN0cm9rZS1saW5lam9pbj0ibWl0ZXIiIHN0cm9rZS13aWR0aD0iMjAiIGZpbGw9InJnYigwLDAsMCkiIHByb3RvdHlwZT0iVmVjdG9yRWxsaXBzZSIgY3g9IjU5NSIgY3k9IjMzNiIgcng9IjkiIHJ5PSI4Ii8+PGVsbGlwc2Ugc3Ryb2tlPSJyZ2IoMCwwLDApIiBzdHJva2UtbGluZWpvaW49Im1pdGVyIiBzdHJva2Utd2lkdGg9IjIwIiBmaWxsPSJyZ2IoMCwwLDApIiBwcm90b3R5cGU9IlZlY3RvckVsbGlwc2UiIGN4PSI2NjIiIGN5PSIzODMiIHJ4PSI3IiByeT0iNyIvPjxlbGxpcHNlIHN0cm9rZT0icmdiKDAsMCwwKSIgc3Ryb2tlLWxpbmVqb2luPSJtaXRlciIgc3Ryb2tlLXdpZHRoPSIyMCIgZmlsbD0icmdiKDAsMCwwKSIgcHJvdG90eXBlPSJWZWN0b3JFbGxpcHNlIiBjeD0iNTQ2IiBjeT0iMzk2IiByeD0iOSIgcnk9IjgiLz48cGF0aCBzdHJva2U9InJnYigwLDAsMCkiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMyIgZmlsbD0icmdiKDAsMCwwKSIgcHJvdG90eXBlPSJWZWN0b3JQb2x5Z29uIiBzdHJva2UtbGluZWNhcD0icm91bmQiIGQ9Ik03MDkgMzMzIEwgNzM4IDMzMyBMIDcyMiAzMDcgTCA3MDggMzMxIEwgNzA4IDMzMSBMIDcwOSAzMzMiLz48L3N2Zz4=" mediaID="level_cst_costume2"/><costume name="costume1" center-x="6" center-y="5.5" image="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAANCAYAAACdKY9CAAAAAXNSR0IArs4c6QAAAN1JREFUKFOd0rtKg0EQxfFfvGMQ1MpKLGKlQbFRxMfyDfIytnmFNAqSwmsR0thZiViIVyIHvwX5CAk4sCzszH/P7pxp+I0FLGMJs2hU5yN84w2v+EhiBms4xiYWa8A7bnCL5wDz2MKgunXc1sUpHgLkxh30JwBJHeA+QN69h4spwCGuC7CP8ynAEa7+pZA/tHE5QSFtPUmnohAPttFDs2pCnT1DB8MAMWoDu2hhpebDSwpxh8cAWXF5HauVL3+d/oxheIrbJRGVuVpxeVbGI9BXxqQARSnguMg8BRz9AIVgLEUKiWlkAAAAAElFTkSuQmCC" mediaID="raycaster_cst_costume1"/></media></snapdata>