-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathutility.py
58 lines (41 loc) · 1.75 KB
/
utility.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import pygame
from ui import *
def render_hitbox(screen, car, npc_cars, rect=True, hitbox=True):
if rect:
pygame.draw.rect(screen, pygame.Color('blue'), car.rect)
for npc in npc_cars:
if rect:
pygame.draw.rect(screen, pygame.Color('purple'), npc.rect)
if hitbox:
pygame.draw.rect(screen, pygame.Color('red'), npc.hitbox)
if hitbox:
pygame.draw.rect(screen, pygame.Color('green'), car.hitbox)
def change_skin(car, skin):
car.default_image = load_image(f'car_{skin}_up')
car.image = load_image(f'car_{skin}_up')
car.rect = car.image.get_rect()
car.rect.topleft = (240 - car.rect.width // 2, 450 - car.rect.height // 2)
def change_road(road, skin):
road.image = load_image(skin)
road.rect = road.image.get_rect()
def set_screen(size):
pygame.display.set_caption('CasualRide')
size = size
screen = pygame.display.set_mode(size, pygame.DOUBLEBUF)
screen_rect = (0, 0, size[0], size[1])
return screen, size, screen_rect
def set_music(track):
if track == 'Off':
pygame.mixer.music.stop()
pygame.mixer.music.unload()
else:
pygame.mixer.music.load(f'assets/music/{track}.mp3')
pygame.mixer.music.set_volume(1)
pygame.mixer.music.play(-1)
def change_song(screen, size, music, current_song):
current_song_name = music[current_song]
rendering_song_name = current_song_name if len(current_song_name) <= 10 else current_song_name[0:6] + '...'
song_name_label = HiddenText(screen, size, 30, rendering_song_name,'white')
song_name_label.dest = ((size[0] - song_name_label.render.get_width()) // 2, 100 + 30 - song_name_label.render.get_height() // 2)
set_music(music[current_song])
return song_name_label