EQ
AND
TRUE
10
WHILE
i
1
10
1
j
BREAK
0
ADD
1
1
ROOT
9
SIN
45
PI
EVEN
0
ROUND
3.1
SUM
64
10
50
1
100
1
100
item
abc
FIRST
text
abc
FROM_START
text
FROM_START
FROM_START
text
UPPERCASE
abc
BOTH
abc
abc
TEXT
abc
0
0
1
1
0
1
90
1
0.5
1
"Hello world"
0
0
5
FIRST
GET
FROM_START
SET
FROM_START
FROM_START
FROM_START
SPLIT
,
#Main Script
from processing import *
import random
import math
import time
### START ENGINE CODE
class Data:
url = "https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/"
#Ivo-Engine stuff
objs = []
#object are only destroyed at the end of the frame
toBeDestroyed = []
inputkeys = {} #dict
gameWidth = 800
gameHeight = 500
refWidth = 800
refHeight = 500
scaleRatio = 1
reloadEndOfFrame = False
main = None
images = {}
#Base-class of every object to enable start & update
class MonoBehaviour:
#REGION variables
x = 0
y = 0
#used for sorting
z = 0
rot = 0
#used for z-sorting internally
prevZ = -1000
#should be changed through setScale only!
scale = 1
currAnim = None
inGameScreen = True
min_x = 0
min_y = 0
max_x = 0
max_y = 0
markForUpdateSize = False
#ENDREGION
def setAnim(self, anim):
self.currAnim = anim
def setScale(self, val):
self.scale = val
#REGION Sprites
sprite = None
def set_sprite(self, url, width = None, height = None):
if (url not in Data.images):
Data.images[url] = loadImage(Data.url + url)
self.sprite = Data.images[url]
if (width != None):
self.set_width(width)
if (height != None):
self.set_height(height)
#self.updateMinMax() should be called after...
def set_width(self, width):
self.sprite.width = width
def set_height(self, height):
self.sprite.height = height
def move_forward(self, value):
self.x += math.cos(radians(self.rot-90))*value
self.y -= math.sin(radians(self.rot-90))*value
def move_right(self, value):
self.x += math.cos(radians(self.rot))*value
self.y -= math.sin(radians(self.rot))*value
#ENDREGION
#REGION Collision
def get_real_width(self):
return self.sprite.width * self.scale
def get_real_height(self):
return self.sprite.height * self.scale
def get_min_x(self):
return self.x - self.get_real_width() * 0.5
def get_max_x(self):
return self.x + self.get_real_width() * 0.5
b
def get_min_y(self):
return self.y - self.get_real_height() * 0.5
def get_max_y(self):
return self.y + self.get_real_height() * 0.5
#TODO only objects inside the gamescreen collide?
def collisionCheck(self, objType):
if (not self.inGameScreen):
return False;
for obj in Data.objs:
if (obj.inGameScreen):
if (obj is not self and type(obj).__name__ == objType):
if (self.intersects(obj)):
return obj
return False
def intersects(self, obj2):
return not (self.get_max_x() < obj2.get_min_x() or self.get_min_x() > obj2.get_max_x() or self.get_min_y() > obj2.get_max_y() or self.get_max_y() < obj2.get_min_y())
def check_in_gamescreen(self):
return not (self.get_max_x() < -Data.refWidth * 0.5 or self.get_min_x() > Data.refWidth * 0.5 or self.get_min_y() > Data.refHeight * 0.5 or self.get_max_y() < -Data.refHeight*0.5)
#ENDREGION
#REGION base functions
def start_INTERNAL(self):
#commented since empty objects can just display nothing
self.set_sprite("Empty.png")
self.start()
def update_INTERNAL(self):
self.update()
#we use translate instead of setting the objects position, to fix rotation issues
posX = (int)((self.x+Data.refWidth*0.5)*Data.scaleRatio)
posY = (int)((-self.y+Data.refHeight*0.5)*Data.scaleRatio)
translate(posX, posY)
rotate(radians(self.rot))
#if (self.currAnim != None):
# self.newSprite = self.currAnim.play()
self.inGameScreen = self.check_in_gamescreen()
if (self.inGameScreen):
image(self.sprite, 0, 0, self.get_real_width()*Data.scaleRatio, self.get_real_height()*Data.scaleRatio)
rotate(-radians(self.rot))
translate(-posX, -posY)
#Base functions to be overridden by any class inheriting from MonoBehaviour
def start(self):
pass
def update(self):
pass
def isMouseOver(self):
return (Data.mouse.x > self.get_min_x() and Data.mouse.x < self.get_max_x() and Data.mouse.y > self.get_min_y() and Data.mouse.y < self.get_max_y())
#ENDREGION
class Anim:
images = None
frames = 0
framesPerImage = 5
imageIndex = 0
timer = 0
#FRAMES OER IMAGE IS NOT THE FRAMERATE... Confusing, sorry
def __init__(self, url, frames, framesPerImage = 3):
self.images = []
self.framesPerImage = framesPerImage
self.frames = frames
for i in range(frames):
fullUrl = Data.url + url + str(i+1) + ".png"
img = requestImage(fullUrl)
self.images.append(img)
#should be called from a MonoBehaviour every frame while playing.
#looks like this: self.newSprite = currAnim.play()
def play(self):
self.timer += 1
if (self.timer >= self.framesPerImage):
self.timer = 0
self.imageIndex += 1
if (self.imageIndex >= self.frames):
self.imageIndex = 0
return self.images[self.imageIndex]
def instantiate(objtype, posX = 0, posY = 0):
n = objtype()
n.x = posX
n.y = posY
n.start_INTERNAL()
Data.objs.append(n)
return n
def destroy(obj):
#Check if objects wasn't already marked as destroyed.
if obj not in Data.toBeDestroyed:
Data.toBeDestroyed.append(obj)
def key_is_pressed(k):
if (k not in Data.inputkeys):
return False
return Data.inputkeys[k] == 1 or Data.inputkeys[k] == 2
def key_was_pressed(k):
if (k not in Data.inputkeys):
return False
return Data.inputkeys[k] == 1
def key_was_released(k):
if (k not in Data.inputkeys):
return False
return Data.inputkeys[k] == 3
def reload_game():
Data.reloadEndOfFrame = True
#SHOULD BE CALLED AT END OF DRAW
def reload_game_immediate():
Data.reloadEndOfFrame = False
Data.objs = []
Data.inputkeys = {}
Data.main = Main()
Data.main.start()
class Main(MonoBehaviour):
def start(self):
print("No Blockly Main class")
class Global:
pass
### END ENGINE CODE
################################################################
#BLOCKLY_REPLACE
################################################################
### START HELPER CODE
#z-sorting
#bubblesort with extra check for each element if it changed
def bubbleSort(alist):
pop = 0
for passnum in range(len(alist)-1,0,-1):
if (alist[passnum].z != alist[passnum].prevZ):
for i in range(passnum):
pop += 1
if alist[i].z > alist[i+1].z:
temp = alist[i]
alist[i] = alist[i+1]
alist[i+1] = temp
alist[passnum].prevZ = alist[passnum].z
#print("Sorted " + str(pop) + " elements")
### END HELPER CODE
### START PROCESSING CODE
def setup():
#SIZE_REPLACE
size(Data.gameWidth, Data.gameHeight)
Data.scaleRatio = float(Data.gameWidth) / Data.refWidth
Data.invScaleRatio = float(1)/Data.scaleRatio
imageMode(CENTER)
frameRate(30)
textSize(32*Data.scaleRatio)
reload_game_immediate()
#run first frame right away
draw()
def draw():
background(0)
Data.mouse = PVector((mouse.x* Data.invScaleRatio-Data.refWidth*0.5), -(mouse.y * Data.invScaleRatio-Data.refHeight*0.5))
#bubbleSort(Data.objs)
Data.main.update()
for obj in Data.objs:
obj.update_INTERNAL()
#printObjs()
#if was pressed, go to is pressed now
for key in Data.inputkeys:
if (Data.inputkeys[key] == 1):
Data.inputkeys[key] = 2
#if was released, go to off now
if (Data.inputkeys[key] == 3):
Data.inputkeys[key] = 0
for obj in Data.toBeDestroyed:
Data.objs.remove(obj)
Data.toBeDestroyed = []
if (Data.reloadEndOfFrame):
reload_game_immediate()
#DevTools.showFPS()
#DevTools.printObjs()
class DevTools:
lastFrame = 0
avg = 0
nFramesToUpdate = 5
nFrame = 0
def showFPS():
DevTools.nFrame += 1
if (DevTools.nFrame >= DevTools.nFramesToUpdate):
m = millis()
deltaTime = m-DevTools.lastFrame
DevTools.lastFrame = m
DevTools.nFrame = 0
DevTools.avg = DevTools.nFramesToUpdate*1000/deltaTime
ui_text("FPS: " + str(DevTools.avg), 650, 50)
def printObjs():
#objs = ""
i = 0
j = 0
for obj in Data.objs:
#objs += str(obj.z) + ", "
i+=1
if (obj.inGameScreen):
j+=1
ui_text("Objs: " + str(i) + ", in screen: " + str(j), 450, 100)
def processKeyOrMousePress(val):
if (val not in Data.inputkeys or Data.inputkeys[val] == 0):
Data.inputkeys[val] = 1
def processKeyOrMouseRelease(val):
Data.inputkeys[val] = 3
def ui_text(txt, posX, posY):
pX = (int)((posX+Data.refWidth*0.5)*Data.scaleRatio)
pY = (int)((-posY+Data.refHeight*0.5)*Data.scaleRatio)
text(txt, pX, pY )
#Processing funcs
def keyPressed():
processKeyOrMousePress(str(keyboard.key))
def keyReleased():
processKeyOrMouseRelease(str(keyboard.key))
def mousePressed():
if (mouse.button == 37):
processKeyOrMousePress("m_left")
if (mouse.button == 39):
processKeyOrMousePress("m_right")
def mouseReleased():
if (mouse.button == 37):
processKeyOrMouseRelease("m_left")
if (mouse.button == 39):
processKeyOrMouseRelease("m_right")
run()
### END PROCESSING CODE
{"main":"<xml xmlns=\"http://www.w3.org/1999/xhtml\"><variables><variable type=\"\" id=\"w4UxYb1ocy7jfMm}xAk3\">name</variable><variable type=\"\" id=\"vIv4y#=^PCOaW}pmg87F\">score</variable><variable type=\"\" id=\"~Kwl`?e7YXI^i;ak8QS2\">flapy</variable></variables><block type=\"class_object\" id=\"cm*yG)jM/{[u:Ipmux4`\" x=\"975\" y=\"-255\"><field name=\"NAME\">oph</field><statement name=\"update\"><block type=\"controls_if\" id=\"IXWX|.lkAJp5*%4Qv{dJ\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"3%0oh?Cg,s+-Wv4-V-uY\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"get_rot\" id=\"$71(`DmJ81INXC-LyTZ1\"></block></value><value name=\"B\"><block type=\"math_number\" id=\"4%Y/8PM/s5*NLJX%*9mP\"><field name=\"NUM\">310</field></block></value></block></value><statement name=\"DO0\"><block type=\"change_rot\" id=\"3h3(|V|ByEF;F+Si8bpX\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"M%-`|)M)c1yLlIvFg+d`\"><field name=\"NUM\">78</field></shadow></value><next><block type=\"set_sprite\" id=\"s4h~|2*f!/9/Re?Yx%38\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"_1q{E^;92jj3CND|)GbQ\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"controls_if\" id=\"$(nt@jkgER8@GpHLzF2f\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"aS!]:2v~F:XHPMRuJW.o\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_constrain\" id=\"|tPSf,Ijp{Q[_g_99^;c\"><value name=\"VALUE\"><shadow type=\"math_number\" id=\"u4i]5]=le[Tq95S|0ean\"><field name=\"NUM\">50</field></shadow></value><value name=\"LOW\"><shadow type=\"math_number\" id=\"Z_%{)14Ykx7QqS86K^,Y\"><field name=\"NUM\">1</field></shadow></value><value name=\"HIGH\"><shadow type=\"math_number\" id=\"{vEv;b$Kz%:oq*|W4kur\"><field name=\"NUM\">100</field></shadow></value></block></value><value name=\"B\"><block type=\"variables_get_custom\" id=\"|0PhgSfKna$uyY!!F{P1\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"~Kwl`?e7YXI^i;ak8QS2\" variabletype=\"\">flapy</field></block></value></block></value><statement name=\"DO0\"><block type=\"variables_set_custom\" id=\"_oD*[7r?Hn,irS2=@55c\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"~Kwl`?e7YXI^i;ak8QS2\" variabletype=\"\">flapy</field><value name=\"VALUE\"><block type=\"lists_create_with\" id=\"(/N~9H[8b?Qa[Jlyyr%C\"><mutation items=\"3\"></mutation><value name=\"ADD0\"><block type=\"logic_compare\" id=\"?D^n5]Obl!~0i7E/R{6.\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"#Lg]O/|aFY8@Ga6-PtHj\"><field name=\"NUM\">1</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"Xkr-,L[)y.]ZEje~5;|q\"><field name=\"NUM\">2</field></block></value></block></value><value name=\"ADD1\"><block type=\"logic_compare\" id=\"azhnI6ltT]CeJ607._{-\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"T,ugBroM^`s:W:a-=o:h\"><field name=\"NUM\">3</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"jFx,QhFWXi[e`_)v:+(c\"><field name=\"NUM\">4</field></block></value></block></value><value name=\"ADD2\"><block type=\"lists_create_with\" id=\"eS]vV(Y4%}29vnc.0MVO\"><mutation items=\"3\"></mutation><value name=\"ADD0\"><block type=\"logic_compare\" id=\"^f/et^QsEgyJpKvyf]@U\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"bPgk[R#@T/JYyH*1_PO1\"><field name=\"NUM\">5</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"GE,,oqAM.lDD6@H@_5`E\"><field name=\"NUM\">6</field></block></value></block></value><value name=\"ADD1\"><block type=\"logic_compare\" id=\"g*y~~L1;hUqw7j!`Y{IX\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"yUs6QMG#y4!IUb1x!35D\"><field name=\"NUM\">7</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"0W*EaTu?^`ZOHr^X@4:*\"><field name=\"NUM\">8</field></block></value></block></value><value name=\"ADD2\"><block type=\"logic_compare\" id=\"n+=.Qcm)..DTY(GxzUYg\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"_MF]1/b;;%,JHA4Zp]$X\"><field name=\"NUM\">9</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"^)wn;H,z-Y^eyzAp0tld\"><field name=\"NUM\">10</field></block></value></block></value></block></value></block></value></block></statement><next><block type=\"controls_if\" id=\"KBgDTSsTJ5Y=[!qasoy]\"><value name=\"IF0\"><block type=\"variables_get_custom\" id=\"%M4i)vq(j81%n[abV0(=\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"~Kwl`?e7YXI^i;ak8QS2\" variabletype=\"\">flapy</field></block></value><statement name=\"DO0\"><block type=\"set_sprite\" id=\"%AKz9Tw(XIH+eW?E..r=\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"BbbNF!6-]x=@$|Agh#Kj\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value></block></statement><next><block type=\"controls_if\" id=\"!|nJ9RoQ*,UT8]OGs_)@\"><value name=\"IF0\"><block type=\"get_mouse\" id=\"({T/=z^B;/(SZViyFFXh\"><field name=\"pos\">x</field></block></value></block></next></block></next></block></next></block></next></block></statement></block></statement></block><block type=\"class_object\" id=\"[]D3aG$@M(~c1Ym,=,/o\" inline=\"true\" x=\"735\" y=\"-195\"><field name=\"NAME\">spinning_duck</field><statement name=\"update\"><block type=\"change_rot\" id=\"XxCQU]k{BX,cAba8#86x\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"O0??]6F0*Z{xXu|sKYy#\"><field name=\"NUM\">2</field></shadow></value><next><block type=\"set_sprite\" id=\"d3CoQxW#PR7q,OMUYw*]\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"Ze$zO-iru?pcRpV{-%+v\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_pos\" id=\"R6./QvyZ!a^uflndVV(o\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"7RF-LabN2_l?=%-s`@JQ\"><field name=\"NUM\">100</field></shadow></value><next><block type=\"controls_if\" id=\"33^0YyhMl~0VP1ir,DGI\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"2i6Aaty%uPKHyqC_KUZ2\"><field name=\"OP\">LTE</field><value name=\"A\"><block type=\"get_rot\" id=\"^-?$c%VLjplhi]!H!!-W\"></block></value><value name=\"B\"><block type=\"math_number\" id=\"55|iXs)bb=*.,RXn7+/(\"><field name=\"NUM\">0</field></block></value></block></value><statement name=\"DO0\"><block type=\"change_rot\" id=\"BlaKTY~A22o5?i.gBGEP\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"3h*P|q(`R4l]f1:F7{@M\"><field name=\"NUM\">0</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\":eD|U}WY2,UP3_iStBc;\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"}Zas8~G}ja%8-Q,R39:~\"><field name=\"OP\">GTE</field><value name=\"A\"><block type=\"get_rot\" id=\"#(R0dBZL:EMj(bqS%x4]\"></block></value><value name=\"B\"><block type=\"math_number\" id=\"ZaC=zar7nUbwr%Ph22V7\"><field name=\"NUM\">360</field></block></value></block></value><statement name=\"DO0\"><block type=\"change_rot\" id=\"72hv41OAa%cAyC/TlI3T\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"cH2fNti=Y.:LC)s.1N{v\"><field name=\"NUM\">360</field></shadow></value></block></statement><next><block type=\"set_sprite\" id=\"S_E8-SnEDh@=4c@lfKdj\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"B(DjVckHyvfBkPi+MF=r\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_pos\" id=\"Cxd_$v]$eu=6Hrm-#}z;\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"uQ.bUs!@.-Hs}$kk6$o*\"><field name=\"NUM\">60</field></shadow></value></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"w-Z!6)`Zw:2s@m}n|gWR\" x=\"-315\" y=\"-15\"><field name=\"NAME\">k</field><statement name=\"start\"><block type=\"set_sprite\" id=\"fL//[*Umez}Goe!jM=kg\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"L!l0yBaxJN7i^8;o_@CH\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Player.png</field></block></value><next><block type=\"set_pos\" id=\"R/tf6n)~)gdc2H)/i[jr\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"RV_;*dj+GDw/YwgJ~kUu\"><field name=\"NUM\">100</field></shadow></value><next><block type=\"set_pos\" id=\"!%a[#%wI:qBrW({v+_J?\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"a3C%~_-Pj%Ez{q3MIYJg\"><field name=\"NUM\">60</field></shadow></value></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"l[!_tiO{dQe{CL/6E1;K\" x=\"255\" y=\"-14\"><field name=\"NAME\">pole</field><statement name=\"start\"><block type=\"set_pos\" id=\"M;5j_0;N/o659:JtR~t+\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"~aVoCYUa-CvFsRE{^nah\"><field name=\"NUM\">500</field></shadow></value></block></statement><statement name=\"update\"><block type=\"set_sprite\" id=\"7~+bIA7[w/+9!bA:G{Ol\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"~TM*,3y:VbR!;U#WoQrR\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/ColumnSprite.png</field></block></value><next><block type=\"set_pos\" id=\")JG8bT6jD:#TUo9)=.L*\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"/c6,~E~]2`ul_tqx1ER%\"><field name=\"NUM\">56</field></shadow></value><next><block type=\"change_pos\" id=\"lH;`a[.i|`J3_mPmc.@R\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"`PXtPqp3T~l4n(n$o7|s\"><field name=\"NUM\">-1</field></shadow></value><next><block type=\"controls_if\" id=\"i@!BV.R0P4ITC7GLSif+\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"!ku4d4Aum55-W0]+-uX_\"><field name=\"OP\">LT</field><value name=\"A\"><block type=\"get_pos\" id=\"bn+4FoEsW|-CttB1{(c{\"><field name=\"pos\">x</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"JEzL,ddlF[8{7%(=O^}l\"><field name=\"NUM\">-420</field></block></value></block></value><statement name=\"DO0\"><block type=\"set_pos\" id=\"A[#;Jt%!HjNasja18#k}\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"v$}w(JXy0)/vDvUN%]OM\"><field name=\"NUM\">420</field></shadow></value></block></statement></block></next></block></next></block></next></block></statement></block><block type=\"main_class_object\" id=\"M|TUBcRXfP-zXMfslc+k\" x=\"75\" y=\"75\"><statement name=\"start\"><block type=\"instantiate\" id=\"C9Q$oNLh314RQloqSL|M\"><field name=\"NAME\">qwe</field><next><block type=\"instantiate\" id=\"5ptowEH9-sn)qmTfxgh+\"><field name=\"NAME\">rtt</field><next><block type=\"instantiate\" id=\"9S]vU1c,+6b;`]OZ/?*=\"><field name=\"NAME\">O</field><next><block type=\"instantiate\" id=\"gMgd7U}}TFz{P+;jOfl8\"><field name=\"NAME\">I</field><next><block type=\"instantiate\" id=\"0HZ@hpIt-zK#wm16GUd]\"><field name=\"NAME\">k</field><next><block type=\"instantiate\" id=\"Q7kg-fQm9s@zA(Dk}|dH\"><field name=\"NAME\">pole</field><next><block type=\"instantiate\" id=\"mYMMgs9TY+g.27!vUA}b\"><field name=\"NAME\">lose_background</field><next><block type=\"instantiate\" id=\"v%jGQq]OA~d~lw].L{k/\"><field name=\"NAME\">D5</field><next><block type=\"instantiate\" id=\"y!ALGhfYv;m^=sp,~!sn\"><field name=\"NAME\">spinning_duck</field><next><block type=\"instantiate\" id=\"cI!v{+]|^@gM[;ZSAA))\"><field name=\"NAME\">oph</field><next><block type=\"instantiate\" id=\"(fUZIJE}zVBeD}O-Aa6u\"><field name=\"NAME\">d3</field><next><block type=\"instantiate\" id=\"!:Tf1T$xOhm()kWj)yMI\"><field name=\"NAME\">d4</field></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"Occ8UV8n05Gb1[ymV^BE\" x=\"-524\" y=\"285\"><field name=\"NAME\">qwe</field><statement name=\"update\"><block type=\"controls_if\" id=\"!JY|%)@Qi6.@#PX_Z1]=\"><value name=\"IF0\"><block type=\"key_input\" id=\"!4_a!VEOnhPUBc(:Uzfz\"><field name=\"NAME\">w</field><field name=\"PRESSED\">key_was_pressed</field></block></value><statement name=\"DO0\"><block type=\"set_sprite\" id=\"8T+JJ[9*URCd:eik0AIc\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"ja?_q;3j)(mM=$o4xr#5\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/SkyTileSprite.png</field></block></value></block></statement></block></statement></block><block type=\"class_object\" id=\"SLD{mx8T]w:/U2f}B.8#\" inline=\"true\" x=\"825\" y=\"345\"><field name=\"NAME\">O</field><statement name=\"start\"><block type=\"change_rot\" id=\"wi9)oY:bc/~g{dJ{SH6A\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"#gngz(;_AJN):5zeLEG!\"><field name=\"NUM\">1</field></shadow></value><next><block type=\"set_sprite\" id=\"|w@||gAUOZmj1|w@cQ_H\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"2j=Ne0xbAp^KHwhTdXlp\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_pos\" id=\"@/o,hE_E`OMyCMKvlcOE\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"{wa;WbJDqKk~%cym]y=i\"><field name=\"NUM\">100</field></shadow></value><next><block type=\"controls_if\" id=\"g5u)Ut0K=!h8c;f*n:jo\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"|k{3u)~iRp3_7*b50#(H\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"get_rot\" id=\"@Nf=qTll~o;vNJCdF?Q;\"></block></value><value name=\"B\"><block type=\"math_number\" id=\"ifiA3~(Ldel7Sg,c*axX\"><field name=\"NUM\">10</field></block></value></block></value><statement name=\"DO0\"><block type=\"change_rot\" id=\"9936nNdsw!39pdG$GC_c\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"I?a.,xh2WSek-KY{P^pD\"><field name=\"NUM\">90</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\"l]!8~M$a:K4wyibpaNF7\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"uI/$Amw^g-6k[0DF*IfU\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"get_rot\" id=\":NvGHD9uA]BwRFgO_u~a\"></block></value><value name=\"B\"><block type=\"math_number\" id=\"Wi-SMQUT}CveWTwrY_Kn\"><field name=\"NUM\">360</field></block></value></block></value><statement name=\"DO0\"><block type=\"change_rot\" id=\"_IE]~:eL!Tt+a+c/R%3D\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"zCNTVaTjxRz,[6])v6/0\"><field name=\"NUM\">-360</field></shadow></value></block></statement><next><block type=\"set_sprite\" id=\")Iok`i7j]x:t-~N|mMy#\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"._-vVI!`389c~1;@Lb;R\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_pos\" id=\"!!+qHc4S_.IBr6dab#I/\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"Dq@_bh*Lao_czB.V;xO7\"><field name=\"NUM\">60</field></shadow></value></block></next></block></next></block></next></block></next></block></next></block></next></block></statement><statement name=\"update\"><block type=\"ui_text\" id=\"Q:.#m^%5U=4J*QL^ay+V\"><value name=\"TEXT\"><shadow type=\"text\" id=\"+:?FKE2qb(A%`Z(B-{@n\"><field name=\"TEXT\">yes</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\"w5u8olDbUolJ!*0=/m8o\"><field name=\"NUM\">-1.2</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\".%ho}{7e5GIDfTo-}D:w\"><field name=\"NUM\">-74</field></shadow></value><next><block type=\"ui_text\" id=\",Bai]FYy6]-%[mHD7?}}\"><value name=\"TEXT\"><shadow type=\"text\" id=\"j1/^c.VR.U87;{VE^Ke7\"><field name=\"TEXT\">-----</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\"8U0d6HCAbCY`FZNEq7Hn\"><field name=\"NUM\">-1.2473</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\"U6Y5.4agJ$vQT60`}WQZ\"><field name=\"NUM\">-74</field></shadow></value><next><block type=\"ui_text\" id=\"G6-u1e]Pj?CkKE#vFGXM\"><value name=\"TEXT\"><shadow type=\"text\" id=\"!U_jK]x=sr+1#;3TJABB\"><field name=\"TEXT\">t12345678910</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\";Pqb$N{Ji5JU:6$}z`Rh\"><field name=\"NUM\">50</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\"S2XN,J}8I#M)#-XYhq]y\"><field name=\"NUM\">100</field></shadow></value><next><block type=\"controls_if\" id=\"4_EY}d?24E76AI/!_Xuf\"><value name=\"IF0\"><block type=\"logic_operation\" id=\"tV$j-nrd]}/+%d$=.#j=\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"collision_check\" id=\"WSL=iQYISL`TomYSGI^s\"><field name=\"NAME\">pole</field></block></value><value name=\"B\"><block type=\"logic_negate\" id=\"xZMZLyvA1(d6`^/Q((w4\"><value name=\"BOOL\"><block type=\"collision_check\" id=\"ZU=p#LA+1,;DcHkv-tw~\"><field name=\"NAME\">spinning_duck</field></block></value></block></value></block></value><statement name=\"DO0\"><block type=\"set_rot\" id=\"Qv5VmKZmUJ.b+g*6b?+D\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"9}u#]|z^}eb@Aus5db_K\"><field name=\"NUM\">120</field></shadow></value><next><block type=\"set_scale\" id=\"j)zZuauv8B2c7~6IYTXI\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"aB*[shk;wL6mOS@JC,G3\"><field name=\"NUM\">0.5</field></shadow></value></block></next></block></statement><next><block type=\"controls_if\" id=\"u]u;G$3p]oyHHWbt;MK7\"><value name=\"IF0\"><block type=\"logic_negate\" id=\"954yFf]Cx$;3zMicp~58\"><value name=\"BOOL\"><block type=\"logic_operation\" id=\"p`5LAQ7Ot2Ob-Xbvolq3\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"collision_check\" id=\"v:LyEbjTh4]7;GD;k:m7\"><field name=\"NAME\">pole</field></block></value><value name=\"B\"><block type=\"logic_negate\" id=\"9#|=+qpknpefVivasDr8\"><value name=\"BOOL\"><block type=\"collision_check\" id=\"}JztYDYVf1|smRNTzLu?\"><field name=\"NAME\">spinning_duck</field></block></value></block></value></block></value></block></value><statement name=\"DO0\"><block type=\"set_rot\" id=\"SaE9LYvDnT0eRA{t?s8t\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"p^oKezXiPpxHRR=6wEMN\"><field name=\"NUM\">0</field></shadow></value><next><block type=\"set_scale\" id=\"s0aLfZhGPQ)d$cDRxaze\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"Sb26=B=q]gaoMu0^i,Ia\"><field name=\"NUM\">1</field></shadow></value><next><block type=\"controls_if\" id=\"eO8*)hH1YFLp]k^oCqEK\"><value name=\"IF0\"><block type=\"key_input\" id=\"HLeM}sckp)|8#|0Otdap\"><field name=\"NAME\">a</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"change_pos\" id=\"cHeoD5nb:h{+XP3i_zYL\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"5^xVg0]oQwuzre`-)l/1\"><field name=\"NUM\">-2</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\"Bco1f+!+|0#7h6]H`M*[\"><value name=\"IF0\"><block type=\"key_input\" id=\")2w?2oqz/qZl{Q},,vKL\"><field name=\"NAME\">d</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"change_pos\" id=\"EP2Yx!0K4BA^HM-u5utn\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"cdqSW}_01p_#j(74EJjq\"><field name=\"NUM\">2</field></shadow></value></block></statement></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"hnf)d*B{szb(keHM@l|u\" inline=\"true\" x=\"315\" y=\"375\"><field name=\"NAME\">d3</field><statement name=\"update\"><block type=\"controls_if\" id=\"XjAlI,6_c3;dvU1|OcNG\"><value name=\"IF0\"><block type=\"is_mouse_over\" id=\"*sJA|~PG^.Gy4W]c7U;F\"></block></value><statement name=\"DO0\"><block type=\"destroy\" id=\",urgoWLD4O(Q_lAYy:*x\"><value name=\"NAME\"><block type=\"self\" id=\"ImJ-aSJCkx0P_X*_IbDe\"></block></value></block></statement><next><block type=\"set_sprite\" id=\"RU#o+j/C7ZVOel*~Rb@V\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"hWvDJ49-:_eY_``%?xH{\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Player.png</field></block></value><next><block type=\"set_pos\" id=\":PQ0L8m6![er)Vb{}`k)\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"fz!nBy5T|.Ruykj`D}bd\"><field name=\"NUM\">160</field></shadow></value><next><block type=\"set_pos\" id=\"s|7stNFHAm6*XNl6!yQ%\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\";qWR+Ns%R5Xq:gw0jLmA\"><field name=\"NUM\">200</field></shadow></value></block></next></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"1MY^vJ6;_@=ns|~;e#fT\" inline=\"true\" x=\"-195\" y=\"555\"><field name=\"NAME\">D5</field><statement name=\"update\"><block type=\"controls_if\" id=\"kvPl5_fh?ARl|rYDB/A]\"><value name=\"IF0\"><block type=\"key_input\" id=\"I[XF1imdtO;A@TKJk//b\"><field name=\"NAME\">t</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"ui_text\" id=\"0RyMl|iI^f}bV]h%imvy\"><value name=\"TEXT\"><shadow type=\"text\" id=\"U=6N:{I7($,|53HeAk^D\"><field name=\"TEXT\">you lose!</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\":[eqV31!0f,O,KgvUbgZ\"><field name=\"NUM\">150</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\"h5[J1Ajo~s0W0H4rE$wA\"><field name=\"NUM\">150</field></shadow></value></block></statement><next><block type=\"controls_if\" id=\"h`m,eGa8{/_hUTiZD=|3\"><value name=\"IF0\"><block type=\"key_input\" id=\"!N5jW5m+Vg.u)~.0r6o[\"><field name=\"NAME\">w</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"ui_text\" id=\",xn(t/oRwiBfeItWJWzi\"><value name=\"TEXT\"><shadow type=\"text\" id=\",!NL$BrT:5tfBa{|{VLS\"><field name=\"TEXT\">you win</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\"^9Rf+Wuz{QVd2a(v.G)%\"><field name=\"NUM\">150</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\"5dC-uFjOfQpTfm4ziNI=\"><field name=\"NUM\">150</field></shadow></value></block></statement></block></next></block></statement></block><block type=\"class_object\" id=\"P:7Y4Yz[^N-hX3;ahIf@\" inline=\"true\" x=\"-585\" y=\"615\"><field name=\"NAME\">lose_background</field><statement name=\"update\"><block type=\"controls_if\" id=\"{sBg0l7uD;yFBB{bw%,P\"><value name=\"IF0\"><block type=\"key_input\" id=\"M7|K]mYMmXVp6lLgfLY@\"><field name=\"NAME\">t</field><field name=\"PRESSED\">key_was_pressed</field></block></value><statement name=\"DO0\"><block type=\"set_sprite\" id=\"Bcd[j@ur+f?l67xTKThy\"><value name=\"SPRITE\"><block type=\"sprite\" id=\":-=]bkLJaZA$18d}HmN%\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Nebula.jpg</field></block></value></block></statement></block></statement></block><block type=\"class_object\" id=\"ve%+~WuK:M^XDy:p%yA:\" inline=\"true\" x=\"378\" y=\"622\"><field name=\"NAME\">I</field><statement name=\"start\"><block type=\"set_pos\" id=\"Y^s|Lp$TnsWbN?SC%%n9\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"m[0Xk3g*5mI*-ZAatd;E\"><field name=\"NUM\">2</field></shadow></value></block></statement><statement name=\"update\"><block type=\"controls_if\" id=\"xu0jH(EG~|:wKDUg0`]v\"><value name=\"IF0\"><block type=\"logic_compare\" id=\"q~FbZZ)X)()NZ~,g(9yb\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"get_pos\" id=\"9xq4lY0)f/4[$`wG07+B\"><field name=\"pos\">x</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"%UhIk_D2^;?*#$aIbKF}\"><field name=\"NUM\">400</field></block></value></block></value><statement name=\"DO0\"><block type=\"set_pos\" id=\"%sbhk5s;c+lD/9|t,B?v\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"+bCQPIcZYuJH#5CNibfu\"><field name=\"NUM\">-400</field></shadow></value></block></statement><next><block type=\"move_right\" id=\"Q*:eV*vLK#H7]d!!^:tE\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"{xpC.KxZWQT*KZ3ee|oe\"><field name=\"NUM\">1</field></shadow></value></block></next></block></statement></block><block type=\"variables_set_custom\" id=\"%5#o{vDcgS-TKXPwQ+?E\" disabled=\"true\" x=\"701\" y=\"703\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"w4UxYb1ocy7jfMm}xAk3\" variabletype=\"\">name</field><value name=\"VALUE\"><block type=\"text_prompt_ext\" id=\"i[Q]JCM#Yx.?(AlblI+v\"><mutation type=\"TEXT\"></mutation><field name=\"TYPE\">TEXT</field><value name=\"TEXT\"><shadow type=\"text\" id=\"CPC/2bov6$G5q9Lk,;A;\"><field name=\"TEXT\">what is your name?</field></shadow></value></block></value></block><block type=\"class_object\" id=\"`W5;wegn.@c!mVU*cQ,v\" inline=\"true\" x=\"316\" y=\"825\"><field name=\"NAME\">d3</field><statement name=\"start\"><block type=\"variables_change_custom\" id=\"+/Ld~}?)%%?3iVQEfg:H\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"3Dz?m`mkrW!J8AL^%Y4c\"><field name=\"NUM\">1</field></block></value><next><block type=\"variables_change_custom\" id=\"zdKqzvRa*+@2)Fl9jy2o\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"WfvQHi3P2A({avxXrR!E\"><field name=\"NUM\">2</field></block></value><next><block type=\"variables_change_custom\" id=\"6;?U(`!.~we+f.Fbl`7k\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"`q,ie5%B})lImPXGO0u!\"><field name=\"NUM\">3</field></block></value><next><block type=\"variables_change_custom\" id=\"!|,)#0pU[2X}7y-6VSx5\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"bNFb8[J{ll*=*I[*eVIp\"><field name=\"NUM\">4</field></block></value><next><block type=\"variables_change_custom\" id=\"2O!N7H)@LYwX5HXTcSRG\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"f+%p=4k8L`Lr~)4AHKg3\"><field name=\"NUM\">5</field></block></value><next><block type=\"variables_change_custom\" id=\"py$C{S`-pZ;_p3s?a8:S\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"S!584|mdFZt*u-:)0Aqg\"><field name=\"NUM\">6</field></block></value><next><block type=\"variables_change_custom\" id=\"@LM/vlBTjuHp50qS,_H8\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"e)llTJ5#kAiaiI2iJID7\"><field name=\"NUM\">7</field></block></value><next><block type=\"variables_change_custom\" id=\"l|g^94up3dH~0UqeJK7)\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\";7vxV.|)y#8`,w.H[hch\"><field name=\"NUM\">8</field></block></value><next><block type=\"variables_change_custom\" id=\"ZUQeB]JH}dr/`T(:1qgH\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"kjX]Ra|WaWn76K-sF#J5\"><field name=\"NUM\">10</field></block></value><next><block type=\"variables_change_custom\" id=\"7L2Y+)lZKXUvflW5q`7(\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"()Q~4=H%{^#`pmexwb!I\"><field name=\"NUM\">11</field></block></value><next><block type=\"variables_set_custom\" id=\"66pW6#3}++GdE.c1TN6)\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_single\" id=\"h)!I4~/M}#*X.$u5PrCi\"><field name=\"OP\">ROOT</field><value name=\"NUM\"><shadow type=\"math_number\" id=\"hnFl+?el%#v$D}U%.(J4\"><field name=\"NUM\">9</field></shadow><block type=\"math_number\" id=\"3qHO!CDc3dd*G4UnmyxG\"><field name=\"NUM\">1</field></block></value></block></value><next><block type=\"variables_change_custom\" id=\"Lse-z-TBVRWa~EGIMzF~\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"YCCqECbJ(Cg^Sy=L_J,c\"><field name=\"NUM\">1</field></block></value><next><block type=\"variables_change_custom\" id=\"/aUK[|FRZx3OLj0.U1fW\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field><value name=\"VALUE\"><block type=\"math_number\" id=\"TtQr(b-x)W/#Z@F{LbVT\"><field name=\"NUM\">2</field></block></value></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement><statement name=\"update\"><block type=\"set_sprite\" id=\"~9o15-4@l-loqhmsmc0B\"><value name=\"SPRITE\"><block type=\"sprite\" id=\";KV%LFK-P.XVw4iNy=Zb\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_sprite\" id=\"dHM+AKB2gWw0YWTHNkzK\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"*{0Z$$@4M7d!,5:c[rN9\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_sprite\" id=\"h#Nf:Bglev`yUuNZ9;tv\"><value name=\"SPRITE\"><block type=\"sprite\" id=\",H+9H_}C0`U)a4;t]S.h\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_sprite\" id=\"?tuK.Mm9F|_BU:?}`TR+\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"q?MM5(hL^tRrssgsJ{tR\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value><next><block type=\"set_sprite\" id=\"C8qJIac{ZzOk.(ZB}AVo\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"@5J^^e/gW7k);Evkv@BS\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Flappy/BirdHero.png</field></block></value></block></next></block></next></block></next></block></next></block></statement></block><block type=\"logic_negate\" id=\"5Sc:Qb./,|miUP(%py/d\" disabled=\"true\" x=\"-135\" y=\"915\"><value name=\"BOOL\"><block type=\"logic_boolean\" id=\"6WE]6(v{2@@OM)KJBfJ9\"><field name=\"BOOL\">TRUE</field></block></value></block><block type=\"controls_if\" id=\"[HfToC7Sa`5}%V]%qFG5\" disabled=\"true\" x=\"-555\" y=\"945\"><value name=\"IF0\"><block type=\"logic_compare\" id=\").w{L1DuK,T=M^,#46r1\" disabled=\"true\"><field name=\"OP\">GTE</field><value name=\"A\"><block type=\"variables_get_custom\" id=\"|w%tAFWEepsMGJ}A{ef~\"><field name=\"TYPE\">Global.</field><field name=\"VAR\" id=\"vIv4y#=^PCOaW}pmg87F\" variabletype=\"\">score</field></block></value><value name=\"B\"><block type=\"math_arithmetic\" id=\"=[Ctig;`GcG^L#EtY$dU\"><field name=\"OP\">ADD</field><value name=\"A\"><shadow type=\"math_number\" id=\"1Xkl3.ikU+f`mPN{2t0N\"><field name=\"NUM\">1</field></shadow></value><value name=\"B\"><shadow type=\"math_number\" id=\"C0~QTI-c)G;gDLdn%BKh\"><field name=\"NUM\">2</field></shadow></value></block></value></block></value></block><block type=\"class_object\" id=\"PuZOoc/NRha-^b`S!l!W\" x=\"555\" y=\"1215\"><field name=\"NAME\">rtt</field><statement name=\"start\"><block type=\"controls_if\" id=\"v_I*L|3W$P{lF=iVNcQ)\"><value name=\"IF0\"><block type=\"logic_operation\" id=\"JgK$t*N%~LS@~!`CR1zL\"><field name=\"OP\">AND</field><value name=\"A\"><block type=\"logic_compare\" id=\"MO~sv?{At$=LH{DUVQ${\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"qgo@z3qG!yXhb!*ZNXs_\"><field name=\"NUM\">1</field></block></value><value name=\"B\"><block type=\"math_number\" id=\"q=h)*W[#!152]b]!pH4$\"><field name=\"NUM\">2</field></block></value></block></value><value name=\"B\"><block type=\"logic_compare\" id=\"#]lVIzqygXDyS#j~L3Xn\"><field name=\"OP\">EQ</field><value name=\"A\"><block type=\"math_number\" id=\"#,pL*KKS_^j(X]{xKpwq\"><field name=\"NUM\">67</field></block></value><value name=\"B\"><block type=\"math_constant\" id=\"29c!9Ei=;=0H[.|FvU/1\"><field name=\"CONSTANT\">SQRT2</field></block></value></block></value></block></value></block></statement><statement name=\"update\"><block type=\"controls_if\" id=\"AaMc6b+`5h}%KMu,/g9$\"><value name=\"IF0\"><block type=\"logic_boolean\" id=\"B3RxRXNQr/xAAKc,k*~S\"><field name=\"BOOL\">TRUE</field></block></value><statement name=\"DO0\"><block type=\"set_sprite\" id=\"p;j91RBaVsT}wI0Z:4sn\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"/SaXhwRzlnBu:-Og8wrD\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Enemy.png</field></block></value><next><block type=\"set_sprite\" id=\"9XL,n.0mHwCJMRtS1|zD\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"BR(hsf9n]nbKC%#O;9ub\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Enemy.png</field></block></value><next><block type=\"set_sprite\" id=\"U(|PoKwfEj%--c:P{e-O\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"vQ{Wh}w/c|1VCD{s@fB6\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Bullet.png</field></block></value></block></next></block></next></block></statement><next><block type=\"controls_if\" id=\"0dM2^U$Yz*2?y~7Vu1IL\"><value name=\"IF0\"><block type=\"key_input\" id=\"n*Ad7!-xriH#W(-[fLZ#\"><field name=\"NAME\">w</field><field name=\"PRESSED\">key_was_pressed</field></block></value><statement name=\"DO0\"><block type=\"destroy\" id=\"XR:Klp2kE#!.*F76ytEu\"><value name=\"NAME\"><block type=\"self\" id=\";_W_U^TdqY.O+2:QmnG$\"></block></value></block></statement><next><block type=\"change_scale\" id=\"w;;(.WzyW,_7EFnw]zo:\"><value name=\"NAME\"><shadow type=\"math_number\" id=\"ra`sLukgfOH8`fE25;XY\"><field name=\"NUM\">1</field></shadow><block type=\"math_random_int\" id=\"{|t8Fxz96VMM3I0SoD%/\"><value name=\"FROM\"><shadow type=\"math_number\" id=\"pA6dtBEC)1zsw1eTgNQU\"><field name=\"NUM\">-1</field></shadow></value><value name=\"TO\"><shadow type=\"math_number\" id=\"Bp3F)C@^Fl`?(^B}-x1d\"><field name=\"NUM\">1</field></shadow></value></block></value><next><block type=\"set_pos\" id=\"Oi{5h8=JV+fh#jG+BAUK\"><field name=\"position\">x</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"6AvMQ,W-?cF=^%Q}}uvF\"><field name=\"NUM\">-150</field></shadow></value><next><block type=\"set_pos\" id=\"1|+n3+xPZJ9XRzAoiDTm\"><field name=\"position\">y</field><value name=\"NAME\"><shadow type=\"math_number\" id=\"Oi[gyv$-D6iSE`oBa9XU\"><field name=\"NUM\">50</field></shadow></value><next><block type=\"controls_if\" id=\"vPLhfmBf(%9/?9k]O`/)\"><value name=\"IF0\"><block type=\"key_input\" id=\"@!Aq3q!E^$lHAB-;05Av\"><field name=\"NAME\">y</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"ui_text\" id=\"N2^tP#N*?DCg[kn]Baml\"><value name=\"TEXT\"><shadow type=\"text\" id=\"lJ^uXD-Ps$X8Yb|4Gg5d\"><field name=\"TEXT\">you x win</field></shadow></value><value name=\"x\"><shadow type=\"math_number\" id=\"MS%Fy4RF*B%^+1[~(vPP\"><field name=\"NUM\">-70</field></shadow></value><value name=\"y\"><shadow type=\"math_number\" id=\"%KbHi.GBa*Ve89!ROjjJ\"><field name=\"NUM\">-70</field></shadow></value><next><block type=\"destroy\" id=\"8maWi(y]jbKSdt3+C7/I\"><value name=\"NAME\"><block type=\"self\" id=\"9e[qZtzZtF@@f/zGGHSM\"></block></value></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></statement></block><block type=\"class_object\" id=\"nq7`yG8^d+BY.fy#.#x3\" inline=\"true\" x=\"975\" y=\"1875\"><field name=\"NAME\">d4</field><statement name=\"update\"><block type=\"controls_if\" id=\"T;Q?u{r$(pR.92Ecq~MN\"><value name=\"IF0\"><block type=\"key_input\" id=\"^n]zn2:Y]69*qs.je=3h\"><field name=\"NAME\">c</field><field name=\"PRESSED\">key_is_pressed</field></block></value><statement name=\"DO0\"><block type=\"move_right\" id=\"Zx!zyYGx^LP+zdcNEc]F\"><value name=\"NAME\"><shadow type=\"math_number\" id=\".KA:Z#oxkLaD3J9ba9@N\"><field name=\"NUM\">100899</field></shadow></value><next><block type=\"set_sprite\" id=\"nApgf8,3Dp#^$27k0@Ta\"><value name=\"SPRITE\"><block type=\"sprite\" id=\"vDs313/kA.VNlMz~w|o7\"><field name=\"SPRITE\">https://s3-us-west-1.amazonaws.com/media.pixelpad.io/Blockly_Assets/Space/Enemy.png</field></block></value></block></next></block></statement></block></statement></block></xml>"}