from microbit import * import music # 2.04.2021 # -- COMMUNICATION - cannot be changed pit= bytearray(1) pit[0] = 1 spd = 8 def ispis(tekst): dd = len(tekst) if dd < 31: salji(tekst) else: salji(tekst[0:30] + "+") salji(tekst[30:dd]) def salji(tekst): global spd duz = len(tekst) buf = bytearray(duz) for n in range(0, duz): bb = ord(tekst[n : n + 1]) buf[n] = bb try: i2c.write(0x11, buf) sleep(duz * spd) except OSError: print("er: send") # -- COMMUNICATION --- end def trazi(): global pit try: pit = i2c.read(0x11,1) except OSError: print("er: seek") # -- def rest(): global pit ispis("RST") while True: trazi() if pit[0] == 5: break sleep(20) # -- def begin(): ispis("CLS") ispis("START;2;1;2") ispis("G A M E;3;3") sleep(1000) ispis("CLS") # -- def end(): global pit sleep(100) trazi() ispis("CLS") ispis("E N D;2;1;2") ispis("G A M E;3;3") ispis("Score:"+str(pit[0])+";3;4") while True: sleep(5000) # -- def zvuk(): global pit if pit[0] == 2: # POINT music.pitch(1500, 50) ispis("LED;G;30") if pit[0] == 3: # LIFE music.pitch(800, 100) ispis("LED;R;30") if pit[0] == 4: # FALL for freq in range(900, 1200, 30): music.pitch(freq, 8) # -- rest() begin() ispis("BIT;2;102;255;219;195;195;102;60;24") ispis("BIT;3;24;124;118;207;243;239;126;24") ispis("BIT;8;112;56;26;191;191;26;56;112") # player anima ispis("BIT;9;224;112;50;95;95;50;112;224") # player ispis("OBJ;1;3;2;1;1") ispis("OBJ;1;3;5;4;1") ispis("OBJ;1;2;4;1;1") ispis("OBJ;1;2;8;4;1") ispis("OBJ;2;3;2;2;1") ispis("OBJ;2;3;8;5;1") ispis("OBJ;2;2;4;2;1") ispis("OBJ;3;3;2;2;1") ispis("OBJ;3;3;8;3;1") ispis("OBJ;3;2;1;5;1") ispis("OBJ;3;2;5;2;1") ispis("FX;1") ispis("POZ;4;2") ispis("ANI;3") ispis("KOL;1") ispis("ASD;1") ispis("SPD;30;1") ispis("BOD;0") ispis("LIV;5") ispis("TIM;30") ispis("RND") spd = 4 while True: if button_a.is_pressed(): ispis("BUT;+;Y;2") if button_b.is_pressed(): ispis("BUT;-;Y;2") trazi() if pit[0] != 9: zvuk() else: sleep(300) end()