一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - pygame游戲之旅 添加icon和bgm音效的方法

pygame游戲之旅 添加icon和bgm音效的方法

2021-04-21 00:48觀月執白 Python

這篇文章主要為大家詳細介紹了pygame游戲之旅的第14篇,教大家如何添加icon和bgm音效,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文為大家分享了pygame游戲之旅的第14篇,供大家參考,具體內容如下

添加icon需要用的函數是:

?
1
2
gameicon = pygame.image.load("caricon.png")
pygame.display.set_icon(gameicon)

添加bgm音效的函數是:

?
1
2
crash_sound = pygame.mixer.sound("crashed.wav")
pygame.mixer.music.load("bgm.wav")

源碼:

?
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
import pygame
import time
import random
 
pygame.init()
 
crash_sound = pygame.mixer.sound("crashed.wav")
pygame.mixer.music.load("bgm.wav")
 
 
white = (255,255,255)
black = (0,0,0)
gray = (128,128,128)
red = (200,0,0)
green = (0,200,0)
bright_red = (255,0,0)
bright_green = (0,255,0)
blue = (0,0,255)
 
 
car_width = 100
 
display_width = 800
display_height = 600
 
 
gamedisplay = pygame.display.set_mode( (display_width,display_height) )
pygame.display.set_caption('a bit racey')
clock = pygame.time.clock()
 
carimg = pygame.image.load('car.png')
gameicon = pygame.image.load("caricon.png")
pygame.display.set_icon(gameicon)
 
 
pause = false
##crash = true
 
def things_dodged(count):
 font = pygame.font.sysfont(none, 25)
 text = font.render("dodged:"+str(count), true, black)
 gamedisplay.blit(text,(0,0))
 
def things(thingx, thingy, thingw, thingh, color):
 pygame.draw.rect(gamedisplay, color, [thingx, thingy, thingw, thingh])
 
 
 
def car(x, y):
 gamedisplay.blit(carimg, (x,y))
 
def text_objects(text, font):
 textsurface = font.render(text, true, black)
 return textsurface, textsurface.get_rect()
 
##def message_diaplay(text):
## largetext = pygame.font.font('freesansbold.ttf',115)
## textsurf, textrect = text_objects(text, largetext)
## textrect.center = ((display_width/2),(display_height/2))
## gamedisplay.blit(textsurf, textrect)
## pygame.display.update()
## time.sleep(2)
## game_loop()
 
 
 
def crash():
 pygame.mixer.music.stop()
 pygame.mixer.sound.play(crash_sound)
 
 largetext = pygame.font.sysfont('comicsansms',115)
 textsurf, textrect = text_objects('you crashed!', largetext)
 textrect.center = ((display_width/2),(display_height/2))
 gamedisplay.blit(textsurf, textrect)
 
 while true:
  for event in pygame.event.get():
   print(event)
   if event.type == pygame.quit:
    pygame.quit()
    quit()
##  gamedisplay.fill(white)
  button("play again", 150, 450, 100, 50, green, bright_green,game_loop)
  button("quit",550, 450, 100, 50, red, bright_red,quitgame)
  pygame.display.update()
  clock.tick(15)
 
def button (msg, x, y, w, h, ic, ac, action=none):
 mouse =pygame.mouse.get_pos()
 click = pygame.mouse.get_pressed()
## print(click)
 if x + w > mouse[0] > x and y + h > mouse[1] > y:
  pygame.draw.rect(gamedisplay, ac, (x,y,w,h))
  if click[0] == 1 and action != none:
   action()
##    if action == "play":
##     action()
##    if action == "quit":
##     pygame.quit()
##     quit()
 else:
  pygame.draw.rect(gamedisplay, ic, (x,y,w,h))
 smalltext = pygame.font.sysfont('comicsansms', 20)
 textsurf, textrect = text_objects(msg, smalltext)
 textrect.center = ( (x+(w/2)), (y+(h/2)))
 gamedisplay.blit(textsurf, textrect)
 
def quitgame():
 pygame.quit()
 quit()
def unpause():
 pygame.mixer.music.unpause()
 global pause
 pause = false
 
def paused():
 pygame.mixer.music.pause()
 
 largetext = pygame.font.sysfont('comicsansms',115)
 textsurf, textrect = text_objects('paused', largetext)
 textrect.center = ((display_width/2),(display_height/2))
 gamedisplay.blit(textsurf, textrect)
 
 while pause:
  for event in pygame.event.get():
   print(event)
   if event.type == pygame.quit:
    pygame.quit()
    quit()
##  gamedisplay.fill(white)
  button("continue", 150, 450, 100, 50, green, bright_green,unpause)
  button("quit",550, 450, 100, 50, red, bright_red,quitgame)
  pygame.display.update()
  clock.tick(15)
 
 
def game_intro():
 global pasue
 pause = false
 intro = true
 while intro:
  for event in pygame.event.get():
   print(event)
   if event.type == pygame.quit:
    pygame.quit()
    quit()
  gamedisplay.fill(white)
  largetext = pygame.font.sysfont('comicsansms',115)
  textsurf, textrect = text_objects('a bit racey', largetext)
  textrect.center = ((display_width/2),(display_height/2))
  gamedisplay.blit(textsurf, textrect)
  button("go", 150, 450, 100, 50, green, bright_green,game_loop)
  button("quit",550, 450, 100, 50, red, bright_red,quitgame)
  pygame.display.update()
  clock.tick(15)
 
def game_loop():
 global pause
 pygame.mixer.music.play(-1)
 x = display_width * 0.45
 y = display_height * 0.8
 x_change = 0
 
 dodged = 0
 
 gameexit = false
 
 thing_startx = random.randrange(0, display_width)
 thing_starty = -600
 thing_speed = 7
 thing_width = 100
 thing_height = 100
 
 while not gameexit:
  for event in pygame.event.get():
   if event.type == pygame.quit:
    pygame.quit()
    quit()
   if event.type == pygame.keydown:
    if event.key == pygame.k_left:
     x_change = -5
    elif event.key == pygame.k_right:
     x_change = 5
    elif event.key == pygame.k_p:
     pause = true
     paused()
   if event.type == pygame.keyup:
    if event.key == pygame.k_left or event.key == pygame.k_right:
     x_change = 0
   print(event)
  x += x_change
  gamedisplay.fill(white)
 
  things(thing_startx, thing_starty, thing_width, thing_height, black)
  thing_starty += thing_speed
  
  car(x,y)
  things_dodged(dodged)
  if x > display_width - car_width or x < 0:
   gameexit = true
  if thing_starty > display_height:
   thing_starty = 0 - thing_height
   thing_startx = random.randrange(0, display_width)
   dodged += 1
   thing_speed += 1
   thing_width += (dodged * 1.2)
  if y < thing_starty + thing_height:
   print('y crossover')
   if x > thing_startx and x < thing_startx + thing_width or x + car_width > thing_startx and x + car_width < thing_startx + thing_width:
    print('x crossover')
    crash()
  pygame.display.update()
  clock.tick(60)
#crash()
game_intro()
game_loop()
pygame.quit()
quit()

結果圖:

pygame游戲之旅 添加icon和bgm音效的方法

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/pianzang5201/article/details/78406567

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 女毛片 | 国产成人精品777 | 国产自精品 | 久9青青cao精品视频在线 | 免费视频专区一国产盗摄 | 亚洲高清无在码在线电影 | 女人张开腿让男人做爽爽 | 天堂俺去俺来也www久久婷婷 | 99久久香蕉国产综合影院 | 羞羞麻豆国产精品1区2区3区 | 1313午夜精品久久午夜片 | 国产成人91高清精品免费 | 免费看美女被靠到爽 | 青青热久久综合网伊人 | 无码欧美喷潮福利XXXX | 男人天堂新 | 范冰冰好紧好滑好湿 | 女人张开腿 让男人桶个爽 免费观看 | 视频在线观看国产 | 国产精品久久久久久久久免费 | 跪在老师脚下吃丝袜脚 | 999国产高清在线精品 | 日韩成本大片35分钟免费播放 | 色久久一个亚洲综合网 | 黑人巨摘花第一次出血 | 欧美高清免费一级在线 | 亚洲视频免费在线观看 | 欧美x×x| 亚洲品质自拍视频网站 | 欧美视频一区二区专区 | 天天干夜夜拍 | 色婷婷久久综合中文久久一本 | 五月性 | 色国产精品 | 大片毛片女女女女女女女 | 精品久久久久久 | chinese老头和老太交hd | 国产午夜永久福利视频在线观看 | 四虎在线视频免费观看视频 | 日韩在线免费播放 | 美女扒开屁股让我桶免费 |