from time import sleep from bulbs import Bulbs from remote import RemoteDriver import random NUM_BALLS = random.randint(2,5) NUM_BALLS = 2 print "waiting our turn..." if len(sys.argv) > 1: d = RemoteDriver(name="test", addr="localhost") else: d = RemoteDriver("Physics?") print "it's go time!" bulbs = Bulbs(d) # Start by drawing bumpers at the edge bumpers = set() for f in range(5): bulbs.frame[f] = Bulbs.BLUE bumpers.add(f) for f in range(95,100): bulbs.frame[f] = Bulbs.BLUE bumpers.add(f) field = set(range(100)) - bumpers # Draw blank slate blank_slate = list(bulbs.frame) bulbs.render(force=True)
#!/usr/bin/python # SNAKES! from time import sleep from bulbs import Bulbs from remote import RemoteDriver print "waiting our turn..." import sys if len(sys.argv) > 1 and sys.argv[1] == "emulator": driver = RemoteDriver("ExampleSnake", "localhost") else: driver = RemoteDriver("ExampleSnake") print "it's go time!" bulbs = Bulbs(driver) class Snake: def __init__(self, position, size, speed, color): self.start = position self.end = (position+size) % Bulbs.COUNT self.speed = speed self.color = color def move(self): self.start = (self.start + self.speed) % Bulbs.COUNT self.end = (self.end + self.speed) % Bulbs.COUNT def draw(self, bulbs): x = self.start while x != self.end:
#!/usr/bin/python # Eiffel Tower Lightshow from time import sleep from bulbs import Bulbs from remote import RemoteDriver from random import random from random import choice print "waiting..." driver = RemoteDriver("EiffelTower") print "FLASH!" bulbs = Bulbs(driver) base_color = (15,4,0,100) flash_color = (255,255,255,255) thresh = 0.1 while not driver.stop_signal(): for i in range(Bulbs.COUNT): if random() > thresh: bulbs.set(i, base_color) else: bulbs.set(i, flash_color) bulbs.render() sleep(0.05)