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

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

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

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲AV久久无码精品九九软件 | 久久99热在线观看7 久久99精品涩AV毛片观看 | 亚洲精品视频免费在线观看 | 日本免费精品 | 久久精品国产在热亚洲完整版 | 色综合久久中文字幕网 | 日本精品欧洲www | 国产农村一一级特黄毛片 | 四虎影视在线观看永久地址 | 禁止的爱善良的未删减版hd | 忘忧草研究院一二三 | 欧美一区二区三区在线观看不卡 | 色淫阁小说 | 好大好硬好湿好紧h | 成人影院观看 | 182免费在线观看 | 草莓丝瓜芭乐樱桃榴莲色多黄 | 成年人免费观看视频网站 | 成人影院www在线观看 | 国产精品一级香蕉一区 | 特黄视频免费看 | 国产一区日韩二区欧美三区 | 色播影院性播影院私人影院 | 欧美日韩国产一区二区三区不卡 | 久久久精品免费免费直播 | 亚洲va欧美va国产va天堂影 | 国产在线乱子伦一区二区 | 亚洲精品久久久久久婷婷 | 青青草国产精品免费 | 边摸边吃奶又黄激烈视频韩国 | 图片专区亚洲欧美另类 | 狠狠的撞击发泄h | 97超pen个人视频公开视频视 | 人禽l交免费视频观看+视频 | 久久全国免费久久青青小草 | 国产美女亚洲精品久久久综合91 | 特黄特黄一级片 | 包臀裙女教师波多野结衣 | 私人黄色 | 青青青草免费 | 91麻豆精品国产自产在线 |