cowyeet_terminal/v1.py

76 lines
1.4 KiB
Python
Raw Normal View History

2023-11-04 22:36:22 +01:00
#!/usr/bin/python3
import os
from pynput import keyboard
from time import sleep
2023-11-06 16:13:41 +01:00
2023-11-04 22:36:22 +01:00
def clear():
if os.name == "nt":
os.system("cls")
else:
os.system("clear")
2023-11-06 16:13:41 +01:00
2023-11-04 22:36:22 +01:00
def on_press(key):
global running
if key == keyboard.Key.space:
running = False
2023-11-06 16:13:41 +01:00
2023-11-04 22:36:22 +01:00
def on_release(key):
global running
if key == keyboard.Key.esc:
# Stop listener
running = "finito"
2023-11-06 16:13:41 +01:00
listener = keyboard.Listener(on_press=on_press, on_release=on_release)
2023-11-04 22:36:22 +01:00
listener.start()
tx, ty = os.get_terminal_size().columns, os.get_terminal_size().lines
txhalb = int(tx / 2)
wobble_speed = 0.01
wobble_pos = 0
wobble_way = "right"
running = True
while running == True:
2023-11-06 16:13:41 +01:00
wobl = "-" * (tx - wobble_pos - 5)
wobr = "-" * wobble_pos
2023-11-04 22:36:22 +01:00
wobbl = f"{wobr}🐄️{wobl}"
2023-11-06 16:13:41 +01:00
print(" " * txhalb, "")
2023-11-04 22:36:22 +01:00
print(f"[{wobbl}]")
print(wobble_pos)
if wobble_way == "right":
wobble_pos += 1
else:
wobble_pos -= 1
2023-11-06 16:13:41 +01:00
if wobble_pos >= tx - 1:
2023-11-04 22:36:22 +01:00
wobble_way = "left"
elif wobble_pos == 0:
wobble_way = "right"
sleep(wobble_speed)
clear()
if running == "finito":
exit()
if wobble_pos > txhalb:
wobble_site = "left"
else:
wobble_site = "right"
if wobble_site == "right":
points = wobble_pos
else:
2023-11-06 16:13:41 +01:00
points = tx - wobble_pos
2023-11-04 22:36:22 +01:00
2023-11-06 16:13:41 +01:00
point_quote = points - tx / 100
for a in range(points * 2):
print("-" * a + "🐄️", end="\r")
2023-11-04 22:36:22 +01:00
sleep(0.01)
2023-11-06 16:13:41 +01:00
print("\n", point_quote, "%")