# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
# from microbit import *
from microbit import display, sleep, pin8, pin16
import buildingbit
import music
import neopixel

display.off()
np = neopixel.NeoPixel(pin16, 3)
np.clear()
buildingbit.init_IR(pin8)
buildingbit.car_run(0, 0, 0)

speed = 100
a = 0

while True:
    # print(hex(buildingbit.get_IR(pin8)))
    value = buildingbit.get_IR(pin8)
    value = value >> 8

    # default
    if value == -0x01:
        a = a + 1
        if (a > 3):
            buildingbit.car_stop()
            a = 0
    # long pressed
    elif value == 0xff:
        a = 0
    else:
# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
from microbit import display
import buildingbit

display.off()

while True:
    avoid = buildingbit.avoid_sensor()
    if avoid is True:
        buildingbit.car_back(100, 100, 1000)
        buildingbit.car_spinright(100, 100, 1000)
    else:
        buildingbit.car_run(100, 100, 0)
# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
from microbit import display, Image
import buildingbit
import radio

display.show(Image.HEART)
radio.on()
radio.config(group=1)

while True:
    incoming = radio.receive()
    if incoming == 'up':
        buildingbit.car_back(150, 0, 0)
    elif incoming == 'down':
        buildingbit.car_run(150, 0, 0)
    elif incoming == 'left':
        buildingbit.car_back(0, 30, 0)
    elif incoming == 'right':
        buildingbit.car_run(0, 30, 0)
    elif incoming == 'stop':
        buildingbit.car_stop()

    if incoming == 'R':
        buildingbit.car_HeadRGB(255, 0, 0)
    elif incoming == 'G':
        buildingbit.car_HeadRGB(0, 255, 0)
    elif incoming == 'B':
        buildingbit.car_HeadRGB(0, 0, 255)
    elif incoming == 'Y':
        buildingbit.car_HeadRGB(255, 255, 0)
    elif incoming == 'turn_off':
# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
from microbit import display, Image
import buildingbit
import radio

display.show(Image.HEART)
radio.on()
radio.config(group=1)


while True:
    incoming = radio.receive()
    if incoming == 'up':
        buildingbit.car_run(0, 150, 0)
    elif incoming == 'down':
        buildingbit.car_back(0, 150, 0)
    elif incoming == 'left':
        buildingbit.car_back(30, 0, 0)
    elif incoming == 'right':
        buildingbit.car_run(30, 0, 0)
    elif incoming == 'stop':
        buildingbit.car_stop()

    if incoming == 'R':
        buildingbit.car_HeadRGB(255, 0, 0)
    elif incoming == 'G':
        buildingbit.car_HeadRGB(0, 255, 0)
    elif incoming == 'B':
        buildingbit.car_HeadRGB(0, 0, 255)
    elif incoming == 'Y':
        buildingbit.car_HeadRGB(255, 255, 0)
# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
from microbit import display, Image, sleep
import buildingbit

display.show(Image.HAPPY)
buildingbit.car_run(255, 255, 1000)
buildingbit.car_stop()
sleep(1000)
buildingbit.car_back(255, 255, 1000)
buildingbit.car_stop()
# -*- coding: utf-8-*-# Encoding cookie added by Mu Editor
from microbit import display, Image
import buildingbit

display.show(Image.HAPPY)
buildingbit.car_run(255, 255, 0)