def RouteToMoves(robotDirection): lastDirection = "" for m in moveQue: lastDirection = m.lastDirection if m.Direction == moveQue[m.OrderNr-1].Direction: m.Direction = 'F' else: for case in switch(0): if case("D"): m.Direction = "R" if m.Direction == "L" else "L" break if case("R"): m.Direction = "L" if m.Direction == "U" else "R" break if case("L"): m.Direction = "L" if m.Direction == "D" else "R" break for case in switch(lastDirection): if case("D"): newDirection = "B" break if case("U"): newDirection = "F" break if case("R"): newDirection = "L" break if case("L"): newDirection = "R" moveQue.append({ "OrderNr" : moveQue.__len__ + 1, "Direction" : newDirection, "Afstand" : 1 })
def move(): global x global y global STATE global DIRECTION global apple_color_r global apple_color_g global apple_color_b global snake_color_r global snake_color_g global snake_color_b x_new = x[len(x) - 1] y_new = y[len(y) - 1] # Get new Coordinates for case in switch(DIRECTION): if case(RIGHT): x_new = x[len(x) - 1] + 1 break if case(DOWN): y_new = y[len(y) - 1] + 1 break if case(LEFT): x_new = x[len(x) - 1] - 1 break if case(UP): y_new = y[len(y) - 1] - 1 break # Game Over Check - Self Eaten for i in range(0, len(x) - 1): if x[i] == x_new: if y[i] == y_new: STATE = RESTART # Game Over Check - Boundry if (x_new >= config.LED_COLUMN_COUNT or x_new < 0): STATE = OVER if (y_new >= config.LED_COUNT / config.LED_COLUMN_COUNT or y_new < 0): STATE = RESTART # Check if Apple got Eaten if (apple[0] == x_new) and (apple[1] == y_new): x.append(x_new) y.append(y_new) snake_color_r.append(apple_color_r) snake_color_g.append(apple_color_g) snake_color_b.append(apple_color_b) newApple() else: for i in range(len(x) - 1): x[i] = x[i + 1] y[i] = y[i + 1] x[len(x) - 1] = x_new y[len(y) - 1] = y_new
def note_mods(y, z, notes, bpm): out = "" for case2 in switch(y): if case2(0): normal = mods.ScrollTween(notes, bpm, z) out = normal.make_sb() if case2(1): tweenscroll = mods.ScrollTween(notes, bpm, z) tweenscroll.tween_setup() out = tweenscroll.make_sb() if case2(2): angle = mods.AngleScroll(notes, bpm, z) out = angle.make_sb() if case2(3): split = mods.Split(notes, bpm, z) out = split.make_sb() if case2(4): star = mods.Star(notes, bpm, z) out = star.make_sb() if case2(5): wave = mods.VerticalWave(notes, bpm, z) out = wave.make_sb() if case2(6): dwave = mods.DoubleWave(notes, bpm, z) out = dwave.make_sb() if case2(7): hwave = mods.HorizontalWave(notes, bpm, z) out = hwave.make_sb() if case2(8): spiral = mods.Spiral(notes, bpm, z) out = spiral.make_sb() if case2(9): bounce = mods.Bounce(notes, bpm, z) out = bounce.make_sb() if case2(10): axiswave = mods.DoubleAxisWave(notes, bpm, z) out = axiswave.make_sb() if case2(11): visioncone = mods.VisionCone(notes, bpm, z) out = visioncone.make_sb() if case2(12): tanz = mods.TangentZ(notes, bpm, z) out = tanz.make_sb() if case2(13): clock = mods.Clock(notes, bpm, z) out = clock.make_sb() if case2(14): wave2 = mods.StraightSineScroll(notes, bpm, z) out = wave2.make_sb() if case2(15): d_scroll = mods.DoubleScroll(notes, bpm, z) out = d_scroll.make_sb() if case2(16): vib = mods.Vibrate(notes, bpm, z) out = vib.make_sb() return out
def f(x): out = None for case in switch(x): if case(0): out = 0 if case(1): out = 1 if case(2): out = 2 return out
def sb_counters(y, notes): out = "" for case2 in switch(y): if case2(0): left = counters.LeftCounter(notes) out = left.make_sb() if case2(1): right = counters.RightCounter(notes) out = right.make_sb() return out
def callmod2(x, y, z, notes, bpm): out = "" for case in switch(x): if case(0): out = sb_counters(y, notes) if case(1): out = note_mods(y, z, notes, bpm) if case(2): base = mods.TaikoBarBase() out = base.make_sb() return out
def f(x): out = [] for case in switch(x, comp=re.match): if case("foo_bar"): out.append(0) break if case("foo_.*"): out.append(1) if case(".*_bar"): out.append(2) return out
def writelist(n): for case in switch(n): if case(0): w = notecounters if case(1): w = scrollingtypes if case(2): w = notealterations for x in range(len(w)): print("{}.\t{}".format(x + 1, w[x])) return w
def test_default_case(): default = False with switch("Not found") as case: with case(7): assert False with case.default: default = True assert default is True
def test_enter_default_case_if_first(): default = False with switch(1) as case: with case.default: default = True with case(1): assert False assert default == True
def test_thrown_exception(): exception = None try: with switch(10) as case: with case(1): assert False with case(10): raise Exception() except Exception as e: exception = e assert type(exception) is Exception
def test_normal_switching(): with switch(3) as case: with case(1): assert False with case(2): assert False with case(3): assert True with case.default: assert False
def swcs(op): # Switch case do menu os.system('cls') print(m) print() for case in switch(op): if case(1): print("DFS: ") dfs(m, vert_ini, vect, s, tam) print() return 0 if case(2): print("BFS: ") print() bfs(m, vert_ini, vect, q, tam) return 0 if case(3): print("Fecho Transitivo Direto: ") print() direct = tranDir(m, tam, vect, vert_ini, s, vectDir, 1) return direct if case(4): print("Fecho Transitivo Inverso: ") print() inv = tranInv(m, tam, vect, vert_ini, s, vectInv, 1) return inv if case(5): while True: ini = int(input('Selecione o vértice inicial(0 a {}): '.format((tam - 1)))) print() if ini > (tam - 1): print("Valor inválido!") else: break return ini if case(6): connect(tam, vectDir, vectInv, vert_ini, vect); return 0 if case(7): print("FECHE A JANELA ANTES DE CONTINUAR!") print() drawGraph(tam, m) return 0 if case(8): return 1 else: print("O valor selecionado é INVÁLIDO. Por favor selecione um número presente na lista! ") print() return 0
def test_switch_strings(): value = None with switch("Hello") as case: with case("Test"): assert False with case("Hello"): value = "Hello" with case("4"): assert False with case.default: assert False assert value == "Hello"
from switchcase import switch dictionary = {"a": 10, "b": 10, "c": 5, "d": "correct", "e": "incorrect"} switch( dictionary, """a{ case c; print("incorrect") break case b; print(d) break }""")
def note_transform(n, transform_type, n_in, overlay=False): out = "" n_x = n.t - n_in n_type = NoteType(n.note_type) note_hs = Hitsound(n.hs) # 0: None / 1: Abekobe / 2: Confusion / 3: Flashlight / 4: Not Abekobe / 5: Hidden / 6: Hidden+ (Colors only) if note_hs.iskat(): # 2 3 4 5 6 for case in switch(transform_type): if case(0) and not overlay: out += " C,0,{},,100,160,255\n".format(n.t) if case(1) and not overlay: out += " C,0,{},,255,80,80\n".format(n.t) if case(2) and not overlay: n_x = int(n_x / 4) red = random.randint(0, 255) green = random.randint(0, 255) blue = random.randint(0, 255) out += " C,0,{},{},{},{},{},100,160,255\n".format( n_in + n_x, n.t - n_x, red, green, blue) if case(3) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},0,0,0,100,160,255\n".format( n_in + 3 * n_x, n.t - 3 * n_x) if case(4) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},255,80,80,100,160,255\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(5): n_x = int(n_x / 8) if not overlay: out += " C,0,{},,100,160,255\n".format(n_in) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(6) and not overlay: n_x = int(n_x / 8) out += " C,0,{},,100,160,255\n".format(n_in) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(7) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},100,160,255,128,128,128\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(8) and not overlay: out += " C,0,{},,155,95,0\n".format(n.t) elif n_type.isslider(): # 2 3 5 6 for case in switch(transform_type): if case(0) and not overlay: out += " C,0,{},,255,200,0\n".format(n.t) if case(1) and not overlay: out += " C,0,{},,255,200,0\n".format(n.t) if case(2) and not overlay: n_x = int(n_x / 4) red = random.randint(0, 255) green = random.randint(0, 255) blue = random.randint(0, 255) out += " C,0,{},{},{},{},{},255,200,0\n".format( n_in + n_x, n.t - n_x, red, green, blue) if case(3) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},0,0,0,255,200,0\n".format( n_in + 3 * n_x, n.t - 3 * n_x) if case(4) and not overlay: out += " C,0,{},,255,200,0\n".format(n.t) if case(5): n_x = int(n_x / 8) if not overlay: out += " C,0,{},,255,200,0\n".format(n.t) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(6) and not overlay: n_x = int(n_x / 8) out += " C,0,{},,255,200,0\n".format(n.t) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(7) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},255,200,0,128,128,128\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(8) and not overlay: out += " C,0,{},,0,55,255\n".format(n.t) elif n_type.isspinner(): # 2 3 5 6 for case in switch(transform_type): if case(0) and not overlay: out += " C,0,{},,128,128,128\n".format(n.t) if case(1) and not overlay: out += " C,0,{},,128,128,128\n".format(n.t) if case(2) and not overlay: n_x = int(n_x / 4) red = random.randint(0, 255) green = random.randint(0, 255) blue = random.randint(0, 255) out += " C,0,{},{},{},{},{},128,128,128\n".format( n_in + n_x, n.t - n_x, red, green, blue) if case(3) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},0,0,0,128,128,128\n".format( n_in + 3 * n_x, n.t - 3 * n_x) if case(4) and not overlay: out += " C,0,{},,128,128,128\n".format(n.t) if case(5): n_x = int(n_x / 8) if not overlay: out += " C,0,{},,128,128,128\n".format(n.t) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(6) and not overlay: n_x = int(n_x / 8) out += " C,0,{},,128,128,128\n".format(n_in) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(7) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},100,160,255,128,128,128\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(8) and not overlay: out += " C,0,{},,127,127,127\n".format(n.t) else: # 2 3 4 5 6 for case in switch(transform_type): if case(0) and not overlay: out += " C,0,{},,255,80,80\n".format(n.t) if case(1) and not overlay: out += " C,0,{},,100,160,255\n".format(n.t) if case(2) and not overlay: n_x = int(n_x / 4) red = random.randint(0, 255) green = random.randint(0, 255) blue = random.randint(0, 255) out += " C,0,{},{},{},{},{},255,80,80\n".format( n_in + n_x, n.t - n_x, red, green, blue) if case(3) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},0,0,0,255,80,80\n".format( n_in + 3 * n_x, n.t - 3 * n_x) if case(4) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},100,160,255,255,80,80\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(5): n_x = int(n_x / 8) if not overlay: out += " C,0,{},,255,80,80\n".format(n_in) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(6) and not overlay: n_x = int(n_x / 8) out += " C,0,{},,255,80,80\n".format(n_in) out += " F,0,{},{},1,0\n".format(n_in + 3 * n_x, n.t - 3 * n_x) if case(7) and not overlay: n_x = int(n_x / 8) out += " C,0,{},{},255,80,80,128,128,128\n".format( n_in + 4 * n_x, n.t - 2 * n_x) if case(8) and not overlay: out += " C,0,{},,0,175,175\n".format(n.t) return out
def setNumber(strip, offset_x, offset_y, Number, farbe): for case in switch(Number): if case(0): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 5 + offset_x, 1 + offset_y, farbe) setPixel(strip, 6 + offset_x, 1 + offset_y, farbe) setPixel(strip, 7 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) break if case(1): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) break if case(2): setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 5 + offset_x, 1 + offset_y, farbe) setPixel(strip, 6 + offset_x, 1 + offset_y, farbe) setPixel(strip, 7 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) break if case(3): setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) break if case(4): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) break if case(5): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) break if case(6): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 5 + offset_x, 1 + offset_y, farbe) setPixel(strip, 5 + offset_x, 2 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 1 + offset_y, farbe) setPixel(strip, 7 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) break if case(7): setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) break if case(8): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 5 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 1 + offset_y, farbe) setPixel(strip, 7 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) break if case(9): setPixel(strip, 1 + offset_x, 3 + offset_y, farbe) setPixel(strip, 1 + offset_x, 2 + offset_y, farbe) setPixel(strip, 1 + offset_x, 1 + offset_y, farbe) setPixel(strip, 2 + offset_x, 1 + offset_y, farbe) setPixel(strip, 3 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 1 + offset_y, farbe) setPixel(strip, 4 + offset_x, 2 + offset_y, farbe) setPixel(strip, 5 + offset_x, 3 + offset_y, farbe) setPixel(strip, 8 + offset_x, 1 + offset_y, farbe) setPixel(strip, 8 + offset_x, 2 + offset_y, farbe) setPixel(strip, 8 + offset_x, 3 + offset_y, farbe) setPixel(strip, 7 + offset_x, 3 + offset_y, farbe) setPixel(strip, 6 + offset_x, 3 + offset_y, farbe) setPixel(strip, 2 + offset_x, 3 + offset_y, farbe) setPixel(strip, 3 + offset_x, 3 + offset_y, farbe) setPixel(strip, 4 + offset_x, 3 + offset_y, farbe) break if case(10): #Doppelpunkte setPixel(strip, 3 + offset_x, 9 + offset_y, farbe) setPixel(strip, 3 + offset_x, 10 + offset_y, farbe) setPixel(strip, 5 + offset_x, 9 + offset_y, farbe) setPixel(strip, 5 + offset_x, 10 + offset_y, farbe)
def showStopWatch(strip, parameters): #löschen clearPixelBuffer(strip) RUNNING = 0 STOPPED = 1 END = 2 STATE = RUNNING ziffer_1 = 0 ziffer_2 = 0 ziffer_3 = 0 ziffer_4 = 0 ziffer_5 = 0 ziffer_6 = 0 compare_ziffer_1 = 5 compare_ziffer_2 = 9 compare_ziffer_3 = 0 compare_ziffer_4 = 0 compare_ziffer_5 = 0 compare_ziffer_6 = 0 setNumber(strip, 0, 0, 10, parameters[1]) setNumber(strip, 0, 0, ziffer_1, parameters[1]) setNumber(strip, 0, 4, ziffer_2, parameters[1]) setNumber(strip, 0, 11, ziffer_3, parameters[1]) setNumber(strip, 0, 15, ziffer_4, parameters[1]) compare_sekunde = 0 while ((STATE == RUNNING) or (STATE == STOPPED)): for case in switch(STATE): if case(RUNNING): #time.sleep(1) sekunde = int(time.strftime("%S")) - 10 * getNumberOne( int(time.strftime("%S"))) if (compare_sekunde != sekunde): compare_sekunde = sekunde if (ziffer_6 < 9): ziffer_6 = ziffer_6 + 1 elif (ziffer_6 == 9): ziffer_6 = 0 if (ziffer_5 < 5): ziffer_5 = ziffer_5 + 1 elif (ziffer_5 == 5): ziffer_5 = 0 if (ziffer_4 < 9): ziffer_4 = ziffer_4 + 1 elif (ziffer_4 == 9): ziffer_4 = 0 if (ziffer_3 < 5): ziffer_3 = ziffer_3 + 1 elif (ziffer_3 == 5): ziffer_3 = 0 if (ziffer_2 < 9): ziffer_2 = ziffer_2 + 1 elif (ziffer_2 == 9): ziffer_2 = 0 if (ziffer_1 < 9): ziffer_1 = ziffer_1 + 1 else: break if ((ziffer_1 == 0) and (ziffer_2 == 0)): setNumber(strip, 0, 0, 10, parameters[1]) if (compare_ziffer_3 != ziffer_3): setNumber(strip, 0, 0, compare_ziffer_3, "000000") setNumber(strip, 0, 0, ziffer_3, parameters[1]) compare_ziffer_3 = ziffer_3 if (compare_ziffer_4 != ziffer_4): setNumber(strip, 0, 4, compare_ziffer_4, "000000") setNumber(strip, 0, 4, ziffer_4, parameters[1]) compare_ziffer_4 = ziffer_4 if (compare_ziffer_5 != ziffer_5): setNumber(strip, 0, 11, compare_ziffer_5, "000000") setNumber(strip, 0, 11, ziffer_5, parameters[1]) compare_ziffer_5 = ziffer_5 if (compare_ziffer_6 != ziffer_6): setNumber(strip, 0, 15, compare_ziffer_6, "000000") setNumber(strip, 0, 15, ziffer_6, parameters[1]) compare_ziffer_6 = ziffer_6 else: setNumber(strip, 0, 0, 10, parameters[1]) if (compare_ziffer_1 != ziffer_1): setNumber(strip, 0, 0, compare_ziffer_1, "000000") setNumber(strip, 0, 0, ziffer_1, parameters[1]) compare_ziffer_1 = ziffer_1 if (compare_ziffer_2 != ziffer_2): setNumber(strip, 0, 4, compare_ziffer_2, "000000") setNumber(strip, 0, 4, ziffer_2, parameters[1]) compare_ziffer_2 = ziffer_2 if (compare_ziffer_3 != ziffer_3): setNumber(strip, 0, 11, compare_ziffer_3, "000000") setNumber(strip, 0, 11, ziffer_3, parameters[1]) compare_ziffer_3 = ziffer_3 if (compare_ziffer_4 != ziffer_4): setNumber(strip, 0, 15, compare_ziffer_4, "000000") setNumber(strip, 0, 15, ziffer_4, parameters[1]) compare_ziffer_4 = ziffer_4 if (int(CommandsAvailable()) > 1): delLastCommand() command = getCommand() if command[0] == "setStopwatch": STATE = RUNNING elif command[0] == "resetStopwatch": clearPixelBuffer(strip) setNumber(strip, 0, 0, 0, parameters[1]) setNumber(strip, 0, 4, 0, parameters[1]) setNumber(strip, 0, 11, 0, parameters[1]) setNumber(strip, 0, 15, 0, parameters[1]) ziffer_1 = 0 ziffer_2 = 0 ziffer_3 = 0 ziffer_4 = 0 ziffer_5 = 0 ziffer_6 = 0 compare_ziffer_1 = 0 compare_ziffer_2 = 0 compare_ziffer_3 = 0 compare_ziffer_4 = 0 compare_ziffer_5 = 0 compare_ziffer_6 = 0 elif command[0] == "stopStopwatch": STATE = STOPPED else: STATE = END break if case(STOPPED): if (int(CommandsAvailable()) > 1): delLastCommand() command = getCommand() if command[0] == "setStopwatch": STATE = RUNNING elif command[0] == "resetStopwatch": clearPixelBuffer(strip) setNumber(strip, 0, 0, 0, parameters[1]) setNumber(strip, 0, 4, 0, parameters[1]) setNumber(strip, 0, 11, 0, parameters[1]) setNumber(strip, 0, 15, 0, parameters[1]) ziffer_1 = 0 ziffer_2 = 0 ziffer_3 = 0 ziffer_4 = 0 ziffer_5 = 0 ziffer_6 = 0 compare_ziffer_1 = 0 compare_ziffer_2 = 0 compare_ziffer_3 = 0 compare_ziffer_4 = 0 compare_ziffer_5 = 0 compare_ziffer_6 = 0 elif command[0] == "stopStopwatch": pass else: STATE = END break