from hifive import *
import neopixel

#set colour pallet tuple
red = (255,0,0)
green=(0,255,0)
black =(0,0,0)
brown =(140,100,50)
yellow=(255,255,0)
white =(255,255,255)

#set neopixel size
np = neopixel.NeoPixel(pin6, 48)


def showTree():
    tree=[
        black,black,green,red,black,black,black,black,
        black,black,green,green,red,black,black,black,
        brown,brown,green,green,green,green,yellow,yellow,
        brown,brown,green,green,green,green,yellow,yellow,
        black,black,green,green,red,black,black,black,
        black,black,green,red,black,black,black,black
        ]
    #loop through and set each pixel
    for pixel in range (0,48):
        np[pixel]=tree[pixel]
    np.show()


def showPresent():
    present=[
        black,black,black,black,black,black,black,black,
        red,green,red,red,black,yellow,black,black,
        green,green,green,green,yellow,black,black,black,
        red,green,red,red,yellow,black,black,black,
        red,green,red,red,black,yellow,black,black,
        black,black,black,black,black,black,black,black
        ]
    #loop through and set each pixel
    for pixel in range (0,48):
        np[pixel]=present[pixel]
    np.show()

#appears to be a logic error.
#display.off() should turn screen off but display.on() does?
    
display.on()
while True:
    
    sleep(500)
    showTree()
    sleep(500)
    showPresent()
    sleep(500)

        
    
