Compare commits
2 Commits
fb617a5eec
...
dcd0246843
Author | SHA1 | Date |
---|---|---|
David Thurstenson | dcd0246843 | |
David Thurstenson | 5637ec322a |
|
@ -111,18 +111,34 @@ def countdown(
|
|||
|
||||
# Do update stuff
|
||||
|
||||
# Loop over every pixel ID that should be lit
|
||||
# based on the elapsed time
|
||||
for pixel in range(round(num_pixels * ((seconds - current_time) / seconds))):
|
||||
# Set pixel color stuff
|
||||
if current_time < 0:
|
||||
pass
|
||||
elif current_time <= redtime:
|
||||
colorizer(pixel, colormode, red=True)
|
||||
elif current_time <= yellowtime:
|
||||
colorizer(pixel, colormode, yellow=True)
|
||||
else:
|
||||
colorizer(pixel, colormode)
|
||||
# Calculate the current position
|
||||
current_position = round(num_pixels * ((seconds - current_time) / seconds))
|
||||
|
||||
# Catch a couple of special cases
|
||||
if current_position == 0:
|
||||
# Light the first LED when the timer starts
|
||||
# regardless of other factors
|
||||
colorizer(0, colormode)
|
||||
elif current_position == num_pixels and current_time > 0:
|
||||
# If current_position calls for *all*
|
||||
# pixels to be lit, and the timer
|
||||
# hasn't expired yet, don't do anything.
|
||||
# This should delay the last pixel from
|
||||
# lighting until the timer has fully elapsed
|
||||
pass
|
||||
else:
|
||||
# Loop over every pixel ID that should be lit
|
||||
# based on the elapsed time
|
||||
for pixel in range(current_position):
|
||||
# Set pixel color stuff
|
||||
if current_time < 0:
|
||||
pass
|
||||
elif current_time <= redtime:
|
||||
colorizer(pixel, colormode, red=True)
|
||||
elif current_time <= yellowtime:
|
||||
colorizer(pixel, colormode, yellow=True)
|
||||
else:
|
||||
colorizer(pixel, colormode)
|
||||
|
||||
# Display the result IRL
|
||||
pixels.show()
|
||||
|
@ -131,9 +147,13 @@ def countdown(
|
|||
current_time -= update_interval
|
||||
|
||||
# Massage the current_time seconds count into human-readable minutes:seconds
|
||||
display_time = divmod(abs(current_time), 60)
|
||||
display_time = str(datetime.timedelta(seconds=abs(current_time)))[3:]
|
||||
if current_time < 0:
|
||||
display_time_sign = "-"
|
||||
else:
|
||||
display_time_sign = " "
|
||||
print("current time: " + display_time_sign + str(display_time[0]) + ":" + str(display_time[1]))
|
||||
print("current time: " + display_time_sign + display_time)
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue