Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Administrator
/
pygame_lesson9_diy4
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
9a941e6b
authored
3 years ago
by
BellCodeEditor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
save project
parent
0834006e
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
31 additions
and
7 deletions
my_game.py
record.txt
my_game.py
View file @
9a941e6b
import
pygame
import
pygame
from
pygame
import
locals
from
pygame
import
locals
import
random
import
random
import
json
pygame
.
init
()
# 初始化
pygame
.
init
()
# 初始化
class
Block
(
pygame
.
sprite
.
Sprite
):
# 障碍物精灵类
class
Block
(
pygame
.
sprite
.
Sprite
):
# 障碍物精灵类
...
@@ -54,7 +54,12 @@ score=0
...
@@ -54,7 +54,12 @@ score=0
speed
=
8
speed
=
8
old_score
=
score
old_score
=
score
block_list
=
pygame
.
sprite
.
Group
()
# 创建精灵组
block_list
=
pygame
.
sprite
.
Group
()
# 创建精灵组
with
open
(
'record.txt'
,
'r'
,
encoding
=
'UTF-8'
)
as
f
:
content
=
f
.
read
()
record
=
json
.
loads
(
content
)
one
=
record
[
"第一名"
]
two
=
record
[
"第二名"
]
three
=
record
[
"第三名"
]
while
True
:
while
True
:
for
event
in
pygame
.
event
.
get
():
for
event
in
pygame
.
event
.
get
():
if
event
.
type
==
locals
.
QUIT
:
if
event
.
type
==
locals
.
QUIT
:
...
@@ -119,6 +124,19 @@ while True:
...
@@ -119,6 +124,19 @@ while True:
gameover
=
pygame
.
image
.
load
(
'gameover.png'
)
# 游戏结束
gameover
=
pygame
.
image
.
load
(
'gameover.png'
)
# 游戏结束
screen
.
blit
(
gameover
,
(
400
,
200
))
screen
.
blit
(
gameover
,
(
400
,
200
))
gamestate
=
False
gamestate
=
False
if
score
>
three
:
if
score
>
one
:
record
[
"第一名"
]
=
score
record
[
"第二名"
]
=
one
record
[
"第三名"
]
=
two
elif
score
>
two
:
record
[
"第二名"
]
=
score
record
[
"第三名"
]
=
two
else
:
record
[
"第三名"
]
=
score
record
=
json
.
dumps
(
record
,
ensure_ascii
=
False
)
with
open
(
'record.txt'
,
'w'
,
encoding
=
'UTF-8'
)
as
f
:
f
.
write
(
record
)
else
:
else
:
if
(
sprite
.
rect
.
x
+
sprite
.
rect
.
width
)
<
wukong
.
rect
.
x
:
if
(
sprite
.
rect
.
x
+
sprite
.
rect
.
width
)
<
wukong
.
rect
.
x
:
score
+=
sprite
.
score
score
+=
sprite
.
score
...
@@ -126,9 +144,14 @@ while True:
...
@@ -126,9 +144,14 @@ while True:
if
score
>
old_score
:
if
score
>
old_score
:
score_audio
.
play
()
score_audio
.
play
()
old_score
=
score
old_score
=
score
scoreSurf
=
basic_font
.
render
(
"分数:"
+
str
(
score
),
True
,(
255
,
0
,
0
))
scoreSurf
=
basic_font
.
render
(
"分数:"
+
str
(
score
),
True
,(
255
,
255
,
255
))
screen
.
blit
(
scoreSurf
,(
850
,
20
))
screen
.
blit
(
scoreSurf
,(
880
,
20
))
scoreSurf
=
basic_font
.
render
(
"第一名"
+
str
(
one
),
True
,(
255
,
255
,
255
))
screen
.
blit
(
scoreSurf
,(
880
,
50
))
scoreSurf
=
basic_font
.
render
(
"第二名"
+
str
(
two
),
True
,(
255
,
255
,
255
))
screen
.
blit
(
scoreSurf
,(
880
,
80
))
scoreSurf
=
basic_font
.
render
(
"第三名"
+
str
(
three
),
True
,(
255
,
255
,
255
))
screen
.
blit
(
scoreSurf
,(
880
,
110
))
# 刷新画面
# 刷新画面
pygame
.
display
.
update
()
pygame
.
display
.
update
()
FPS
.
tick
(
60
)
FPS
.
tick
(
60
)
\ No newline at end of file
This diff is collapsed.
Click to expand it.
record.txt
View file @
9a941e6b
{"第1名": 0, "第2名": 0, "第3名": 0}
{"第一名": 0, "第二名": 0, "第三名": 0}
\ No newline at end of file
\ No newline at end of file
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment