Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Administrator
/
lesson16_3
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
8c2d8b81
authored
Apr 01, 2023
by
BellCodeEditor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
save project
parent
a685abee
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
77 additions
and
0 deletions
diy1.py
diy1.py
0 → 100644
View file @
8c2d8b81
import
random
class
Hero
(
object
):
def
__init__
(
self
,
name
):
self
.
name
=
name
self
.
level
=
1
self
.
hp
=
250000
self
.
attack
=
4000
self
.
max_hp
=
self
.
hp
def
cure
(
self
):
# 治疗
self
.
hp
=
self
.
hp
+
5000
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"血量回复:"
,
5000
,
",目前的血量为:"
,
self
.
hp
)
def
combat
(
self
,
enemy
):
# 普通攻击
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起袭击,"
info2
=
"造成"
+
str
(
self
.
attack
)
+
"点绳命损失。"
enemy
.
hp
-=
self
.
attack
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"绳命。"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"你失败了。"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
class
Player
(
Hero
):
def
__init__
(
self
,
hero_type
,
name
):
super
()
.
__init__
(
name
)
self
.
hp
=
10000
self
.
attack
=
10000
self
.
max_hp
=
self
.
hp
self
.
hero_type
=
hero_type
print
(
"角色"
+
self
.
name
+
"创建成功,英雄类型为:"
,
self
.
hero_type
)
print
(
"当前等级、血量、攻击力分别为:"
,
self
.
level
,
self
.
hp
,
self
.
attack
)
print
(
'-'
*
60
)
print
(
'战斗开始'
)
def
cure
(
self
):
c
=
random
.
randint
(
35
,
50
)
self
.
hp
+=
c
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"血量回复:"
,
str
(
c
),
",目前的血量为:"
,
self
.
hp
)
csj
=
Player
(
'催逝员'
,
'穿山甲'
)
a
=
Hero
(
'王梓硕'
)
print
(
'-'
*
50
)
print
(
' 輚閗開試!'
)
w
=
1
while
True
:
print
(
'第'
+
str
(
w
)
+
'回合!'
)
print
(
'-'
*
50
)
e
=
input
(
'1攻击/2回血:'
)
if
e
==
'1'
:
csj
.
combat
(
a
)
elif
e
==
'2'
:
csj
.
cure
()
elif
e
==
'q'
:
print
(
'游戏结束。'
)
break
else
:
print
(
'重新输入!!!'
)
continue
num
=
random
.
randint
(
1
,
4
)
if
num
==
1
:
a
.
combat
(
csj
)
elif
num
==
2
:
a
.
cure
()
elif
num
==
3
:
a
.
cure
()
else
:
a
.
combat
(
csj
)
w
=
w
+
1
\ No newline at end of file
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