diff --git a/main.py b/main.py new file mode 100644 index 0000000..c6849d9 --- /dev/null +++ b/main.py @@ -0,0 +1,47 @@ +import random +import pygame +import sys + +pygame.init() + +# Window Setup +WIDTH, HEIGHT = 1000, 700 +screen = pygame.display.set_mode((WIDTH, HEIGHT)) +pygame.display.set_caption("Traffic Simulation") + +FPS = 60 +clock = pygame.time.Clock() + +# Colours +ROAD = (60, 60, 60) +CAR = (200, 40, 40) +GREEN = (0, 200, 0) +YELLOW= (255, 180, 0) +RED = (200, 0, 0) +WHITE = (255, 255, 255) +UI_BG = (30, 30, 30) + +#Classes + +#Traffic Light Class +class TrafficLight: + def __init__(self, x, y): + self.x = x + self.y = y + self.states = ["green", "yellow", "red"] + self.current = "green" + self.timer = 0 + self.cycle_time = 120 + + def update(self): + self.timer += 1 + if self.timer > self.cycle_time: + self.timer = 0 + idx = self.states.index(self.current) + self.current = self.states[(idx +1) % 3] + + def draw(self, surf): + colour = GREEN if self.current == "green" else YELLOW if self.current == "yellow" else RED + pygame.draw.circle(surf, colour, (self.x, self.y), 12) + +