Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.10 KB | None | 0 0
  1. import time
  2. import threading
  3. from playsound import playsound
  4.  
  5. class Vector3:
  6.   def __init__(self, x, y, z):
  7.     self.x = x
  8.     self.y = y
  9.     self.z = z
  10.  
  11. class Clock():
  12.     def __init__(self, v1 = 0, v2 = 0, v3 = 0):
  13.         self.hour = v1
  14.         self.minute = v2
  15.         self.second = v3
  16.  
  17.         self.startLoop()
  18.        
  19.     def reset(self):
  20.         self.second = 0
  21.         self.minute = 0
  22.         self.hour = 0  
  23.  
  24.     def set(self, v1, v2, v3):
  25.         self.hour = v1
  26.         self.minute = v2
  27.         self.second = v3
  28.        
  29.     def setHour(self, v1):
  30.         self.hour = v1
  31.        
  32.     def setMinute(self, v1):
  33.         self.minute = v1
  34.        
  35.     def setSecond(self, v1):
  36.         self.second = v1           
  37.        
  38.        
  39.     def startLoop(self):
  40.         t1 = threading.Thread(target=self.lLogic);
  41.         t1.start()     
  42.            
  43.     def lLogic(self):
  44.         while True:
  45.             time.sleep(1)
  46.            
  47.             self.second += 1
  48.            
  49.             if self.second > 59:
  50.                 self.second = 0
  51.                 self.minute += 1
  52.                
  53.                 if self.minute > 59:
  54.                     self.minute = 0
  55.                     self.hour += 1
  56.                    
  57.                     if self.hour > 11:
  58.                         self.hour = 0
  59.        
  60.                        
  61. class Alarm(Clock):
  62.     def __init__(self, v1 = 0, v2 = 0, v3 = 0):
  63.         self.hour = v1
  64.         self.minute = v2
  65.         self.second = v3
  66.  
  67.         self.listAlarms = []
  68.        
  69.         self.startLoop()
  70.    
  71.    
  72.     def addAlarm(self, v1, v2, v3):
  73.         self.listAlarms.append(Vector3(v1, v2, v3))
  74.    
  75.     def removeAlarm(self, v1 , v2, v3):
  76.         for i in range (len(self.listAlarms)):
  77.             if v1 == self.listAlarms[i].x and v2 == self.listAlarms[i].y and v3 == self.listAlarms[i].z:
  78.                 self.listAlarms.pop(i)
  79.  
  80.     def startLoop(self):
  81.         t1 = threading.Thread(target=self.lLogic);
  82.         t2 = threading.Thread(target=self.lCheck);
  83.        
  84.         t1.start()
  85.         t2.start()
  86.        
  87.     def lCheck(self):
  88.         while True:
  89.             for i in range (len(self.listAlarms)):
  90.                 if self.hour == self.listAlarms[i].x and self.minute == self.listAlarms[i].y and self.second == self.listAlarms[i].z:
  91.                     print("Alarm")
  92.                     playsound('alarmsound.mp3')
  93.             time.sleep(1)
  94.                                    
  95.  
  96.  
  97. OmasWecker = Alarm(12, 32, 56)
  98. OmasWecker.addAlarm(12, 33, 0)
  99.  
  100.  
  101. while True:
  102.     print(OmasWecker.hour, " ", OmasWecker.minute, " ", OmasWecker.second)
  103.     time.sleep(1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement