Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Administrator
/
lesson16_4
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
934fa15c
authored
Jun 26, 2021
by
BellCodeEditor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
save project
parent
23d2d07e
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
326 additions
and
117 deletions
diy4.py
diy4.py
View file @
934fa15c
import
random
import
random
class
Hero
(
object
):
class
Hero
(
object
):
def
__init__
(
self
,
hero_type
,
name
,
tili
,
max_tili
):
def
__init__
(
self
,
hero_type
,
name
,
tili
,
max_tili
,
sdft
,
sdfy
):
self
.
tili
=
tili
self
.
tili
=
tili
self
.
max_tili
=
max_tili
self
.
max_tili
=
max_tili
self
.
sdft
=
sdft
self
.
sdfy
=
sdfy
self
.
bd
=
0
self
.
bd
=
0
self
.
name
=
name
self
.
name
=
name
self
.
level
=
1
self
.
level
=
1
...
@@ -20,22 +22,97 @@ class Hero(object):
...
@@ -20,22 +22,97 @@ class Hero(object):
if
self
.
hp
>
self
.
max_hp
:
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"使用了治疗,血量增加:60,目前的血量为:"
+
str
(
self
.
hp
)
+
",体力减少3,目前的体力为:"
+
str
(
self
.
tili
))
print
(
self
.
name
+
"使用了治疗,血量增加:60,目前的血量为:"
+
str
(
self
.
hp
)
+
",体力减少3,目前的体力为:"
+
str
(
self
.
tili
))
tili
=
tili
+
2
self
.
tili
=
self
.
tili
+
2
if
tili
>
max_tili
:
if
self
.
tili
>
self
.
max_tili
:
tili
=
max_tili
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
combat
(
self
,
enemy
,
tili
,
max_tili
):
# 普通攻击
def
combat
(
self
,
enemy
,
tili
,
max_tili
):
# 普通攻击
enemy
.
hp
-=
self
.
attack
enemy
.
hp
-=
self
.
attack
if
self
.
bd
>
5
:
if
self
.
bd
>
10
:
enemy
.
hp
-=
25
self
.
bd
=
self
.
bd
-
11
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起用极限被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
20
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值11点,目前的被动值为:"
,
self
.
bd
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
10
:
enemy
.
hp
-=
23
self
.
bd
=
self
.
bd
-
10
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起荣耀被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值10点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
9
:
enemy
.
hp
-=
20
enemy
.
hp
-=
20
self
.
bd
=
self
.
bd
-
9
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起圣力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值9点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
8
:
enemy
.
hp
-=
18
self
.
bd
=
self
.
bd
-
8
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起神力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值8点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
7
:
enemy
.
hp
-=
16
self
.
bd
=
self
.
bd
-
7
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起道力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值7点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
6
:
enemy
.
hp
-=
13
self
.
bd
=
self
.
bd
-
6
self
.
bd
=
self
.
bd
-
6
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
用荣耀
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
魂
被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
20
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值6点,目前的被动值为:
"
,
self
.
bd
info4
=
"消耗被动值6点,目前的被动值为:
0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
else
:
else
:
...
@@ -44,10 +121,10 @@ class Hero(object):
...
@@ -44,10 +121,10 @@ class Hero(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
5
:
elif
self
.
bd
==
5
:
enemy
.
hp
-=
1
6
enemy
.
hp
-=
1
1
self
.
bd
=
self
.
bd
-
5
self
.
bd
=
self
.
bd
-
5
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
终极
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
灵
被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info4
=
"消耗被动值5点,目前的被动值为:0"
...
@@ -59,10 +136,10 @@ class Hero(object):
...
@@ -59,10 +136,10 @@ class Hero(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
4
:
elif
self
.
bd
==
4
:
enemy
.
hp
-=
12
enemy
.
hp
-=
9
self
.
bd
=
self
.
bd
-
4
self
.
bd
=
self
.
bd
-
4
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超
级
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
12
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
12
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info4
=
"消耗被动值4点,目前的被动值为:0"
...
@@ -74,7 +151,7 @@ class Hero(object):
...
@@ -74,7 +151,7 @@ class Hero(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
3
:
elif
self
.
bd
==
3
:
enemy
.
hp
-=
8
enemy
.
hp
-=
7
self
.
bd
=
self
.
bd
-
3
self
.
bd
=
self
.
bd
-
3
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
...
@@ -89,7 +166,7 @@ class Hero(object):
...
@@ -89,7 +166,7 @@ class Hero(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
2
:
elif
self
.
bd
==
2
:
enemy
.
hp
-=
4
enemy
.
hp
-=
5
self
.
bd
=
self
.
bd
-
2
self
.
bd
=
self
.
bd
-
2
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
...
@@ -117,10 +194,10 @@ class Hero(object):
...
@@ -117,10 +194,10 @@ class Hero(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
tili
=
tili
+
2
self
.
tili
=
self
.
tili
+
2
if
tili
>
max_tili
:
if
self
.
tili
>
self
.
max_tili
:
tili
=
max_tili
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:暴击
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:暴击
...
@@ -137,35 +214,78 @@ class Hero(object):
...
@@ -137,35 +214,78 @@ class Hero(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
tili
=
tili
+
2
self
.
tili
=
self
.
tili
+
2
if
tili
>
max_tili
:
if
self
.
tili
>
self
.
max_tili
:
tili
=
max_tili
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
zhongcombat
(
self
,
enemy
,
tili
,
max_tili
):
#中招:圣盾防御
def
zhongcombat
(
self
,
enemy
,
tili
,
max_tili
,
sdft
,
sdfy
):
#中招:圣盾防御
self
.
tili
=
self
.
tili
-
7
self
.
tili
=
self
.
tili
-
7
sdfy
=
random
.
randint
(
1
,
3
)
if
self
.
sdfy
==
7
:
if
sdfy
==
3
:
enemy
.
hp
=
enemy
.
hp
-
self
.
sdft
info1
=
self
.
name
+
"开启一级圣盾防御,体力减少7,目前的体力为:"
,
self
.
tili
self
.
hp
=
self
.
hp
+
30
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
info1
=
self
.
name
+
"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
info4
=
",血量增加:30,目前的血量为:"
+
str
(
self
.
hp
)
info2
=
",圣盾反弹伤害造成"
+
str
(
self
.
sdft
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info2
+
info3
print
(
info1
)
print
(
info1
)
elif
sdfy
==
2
:
print
(
info4
)
enemy
.
hp
-=
ftsy
print
(
info
)
info1
=
self
.
name
+
"开启二级圣盾防御,"
elif
self
.
sdfy
==
6
:
info2
=
"圣盾反弹伤害造成"
+
str
(
ftsy
)
+
"点伤害,体力减少7,目前的体力为:"
,
self
.
tili
enemy
.
hp
=
enemy
.
hp
-
self
.
sdft
self
.
hp
=
self
.
hp
+
30
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
info1
=
self
.
name
+
"开启二级圣盾防御,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
info4
=
",血量增加:30,目前的血量为:"
+
str
(
self
.
hp
)
info2
=
",圣盾反弹伤害造成"
+
str
(
self
.
sdft
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
info
=
info2
+
info3
print
(
info1
)
print
(
info4
)
print
(
info
)
print
(
info
)
else
:
elif
self
.
sdfy
==
5
:
enemy
.
hp
-=
ftsy
enemy
.
hp
=
enemy
.
hp
-
self
.
sdft
info1
=
self
.
name
+
"开启三级圣盾防御,"
info1
=
self
.
name
+
"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
info2
=
"圣盾反弹伤害造成"
+
str
(
ftsy
)
+
"点伤害,体力减少7,目前的体力为:"
,
self
.
tili
info2
=
"圣盾反弹伤害造成"
+
str
(
self
.
sdft
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info2
+
info3
print
(
info1
)
print
(
info
)
elif
self
.
sdfy
==
4
:
self
.
hp
=
self
.
hp
+
30
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
info1
=
self
.
name
+
"开启二级圣盾防御,跳过后面的阶段,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
info3
=
"血量增加:30,目前的血量为:"
+
str
(
self
.
hp
)
print
(
info1
)
print
(
info3
)
elif
self
.
sdfy
==
3
:
enemy
.
hp
-=
self
.
sdft
info1
=
self
.
name
+
"开启一级圣盾防御,"
info2
=
"圣盾反弹伤害造成"
+
str
(
self
.
sdft
)
+
"点伤害,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
tili
=
tili
+
2
elif
self
.
sdfy
==
2
:
if
tili
>
max_tili
:
self
.
hp
=
self
.
hp
+
30
tili
=
max_tili
if
self
.
hp
>
self
.
max_hp
:
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
self
.
hp
=
self
.
max_hp
info1
=
self
.
name
+
"开启一级圣盾防御,血量增加:30,目前的血量为:"
+
str
(
self
.
hp
)
+
",体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
print
(
info1
)
elif
self
.
sdfy
==
1
:
info1
=
self
.
name
+
"开启一级圣盾防御,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
print
(
info1
)
else
:
info1
=
self
.
name
+
"开启圣盾防御失败,体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
print
(
info1
)
self
.
tili
=
self
.
tili
+
2
if
self
.
tili
>
self
.
max_tili
:
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
):
#小招:强化
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
):
#小招:强化
...
@@ -176,17 +296,18 @@ class Hero(object):
...
@@ -176,17 +296,18 @@ class Hero(object):
self
.
hp
=
self
.
max_hp
self
.
hp
=
self
.
max_hp
info1
=
self
.
name
+
"开启强化,血量增加:25,目前的血量为:"
+
str
(
self
.
hp
)
+
",被动值增加3点,目前的被动值为:"
+
str
(
self
.
bd
)
+
",体力减少4,目前的体力为:"
+
str
(
self
.
tili
)
info1
=
self
.
name
+
"开启强化,血量增加:25,目前的血量为:"
+
str
(
self
.
hp
)
+
",被动值增加3点,目前的被动值为:"
+
str
(
self
.
bd
)
+
",体力减少4,目前的体力为:"
+
str
(
self
.
tili
)
print
(
info1
)
print
(
info1
)
tili
=
tili
+
2
self
.
tili
=
self
.
tili
+
2
if
tili
>
max_tili
:
if
self
.
tili
>
self
.
max_tili
:
tili
=
max_tili
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
class
Player
(
object
):
class
Player
(
object
):
def
__init__
(
self
,
hero_type
,
name
,
tili
,
max_tili
):
def
__init__
(
self
,
hero_type
,
name
,
tili
,
max_tili
,
ls
):
self
.
tili
=
tili
self
.
tili
=
tili
self
.
max_tili
=
max_tili
self
.
max_tili
=
max_tili
self
.
ls
=
ls
self
.
bd
=
0
self
.
bd
=
0
self
.
name
=
name
self
.
name
=
name
self
.
level
=
1
self
.
level
=
1
...
@@ -214,14 +335,89 @@ class Player(object):
...
@@ -214,14 +335,89 @@ class Player(object):
def
combat
(
self
,
enemy
,
tili
,
max_tili
):
# 普通攻击
def
combat
(
self
,
enemy
,
tili
,
max_tili
):
# 普通攻击
enemy
.
hp
-=
self
.
attack
enemy
.
hp
-=
self
.
attack
if
self
.
bd
>
5
:
if
self
.
bd
>
10
:
enemy
.
hp
-=
25
self
.
bd
=
self
.
bd
-
11
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起用极限被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
20
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值11点,目前的被动值为:"
,
self
.
bd
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
10
:
enemy
.
hp
-=
23
self
.
bd
=
self
.
bd
-
10
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起荣耀被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值10点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
9
:
enemy
.
hp
-=
20
enemy
.
hp
-=
20
self
.
bd
=
self
.
bd
-
9
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起圣力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值9点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
8
:
enemy
.
hp
-=
18
self
.
bd
=
self
.
bd
-
8
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起神力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值8点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
7
:
enemy
.
hp
-=
16
self
.
bd
=
self
.
bd
-
7
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起道力被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值7点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
self
.
bd
==
6
:
enemy
.
hp
-=
13
self
.
bd
=
self
.
bd
-
6
self
.
bd
=
self
.
bd
-
6
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
用荣耀
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
魂
被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
20
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值6点,目前的被动值为:
"
,
self
.
bd
info4
=
"消耗被动值6点,目前的被动值为:
0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
else
:
else
:
...
@@ -230,10 +426,10 @@ class Player(object):
...
@@ -230,10 +426,10 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
5
:
elif
self
.
bd
==
5
:
enemy
.
hp
-=
1
6
enemy
.
hp
-=
1
1
self
.
bd
=
self
.
bd
-
5
self
.
bd
=
self
.
bd
-
5
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
终极
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起
灵
被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
16
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info4
=
"消耗被动值5点,目前的被动值为:0"
...
@@ -245,10 +441,10 @@ class Player(object):
...
@@ -245,10 +441,10 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
4
:
elif
self
.
bd
==
4
:
enemy
.
hp
-=
12
enemy
.
hp
-=
9
self
.
bd
=
self
.
bd
-
4
self
.
bd
=
self
.
bd
-
4
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超
级
被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
12
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
12
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info4
=
"消耗被动值4点,目前的被动值为:0"
...
@@ -260,7 +456,7 @@ class Player(object):
...
@@ -260,7 +456,7 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
3
:
elif
self
.
bd
==
3
:
enemy
.
hp
-=
8
enemy
.
hp
-=
7
self
.
bd
=
self
.
bd
-
3
self
.
bd
=
self
.
bd
-
3
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
...
@@ -275,7 +471,7 @@ class Player(object):
...
@@ -275,7 +471,7 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
self
.
bd
==
2
:
elif
self
.
bd
==
2
:
enemy
.
hp
-=
4
enemy
.
hp
-=
5
self
.
bd
=
self
.
bd
-
2
self
.
bd
=
self
.
bd
-
2
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
...
@@ -303,10 +499,10 @@ class Player(object):
...
@@ -303,10 +499,10 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
tili
=
tili
+
2
self
.
tili
=
self
.
tili
+
2
if
tili
>
max_tili
:
if
self
.
tili
>
self
.
max_tili
:
tili
=
max_tili
self
.
tili
=
self
.
max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:金乌神箭
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:金乌神箭
self
.
tili
=
self
.
tili
-
10
self
.
tili
=
self
.
tili
-
10
...
@@ -351,15 +547,14 @@ class Player(object):
...
@@ -351,15 +547,14 @@ class Player(object):
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
print
(
"出招后,体力回复2点,目前的体力为:"
,
self
.
tili
)
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
):
#小招:连射
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
,
ls
):
#小招:连射
ls
=
random
.
randint
(
0
,
9
)
lss
=
self
.
ls
*
3
lss
=
ls
*
3
self
.
tili
=
self
.
tili
-
4
self
.
tili
=
self
.
tili
-
4
if
self
.
tili
<
0
:
if
self
.
tili
<
0
:
self
.
tili
=
0
self
.
tili
=
0
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起小招:连射,体力减少4,目前的体力为:"
+
str
(
self
.
tili
)
+
","
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起小招:连射,体力减少4,目前的体力为:"
+
str
(
self
.
tili
)
+
","
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
)
+
"点伤害,"
info2
=
"连射"
+
str
(
self
.
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
)
+
"点伤害,"
if
ls
==
0
:
if
self
.
ls
==
0
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -371,7 +566,7 @@ class Player(object):
...
@@ -371,7 +566,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
if
ls
==
1
:
elif
self
.
ls
==
1
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -382,7 +577,7 @@ class Player(object):
...
@@ -382,7 +577,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
2
:
elif
self
.
ls
==
2
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -393,7 +588,7 @@ class Player(object):
...
@@ -393,7 +588,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
3
:
elif
self
.
ls
==
3
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -404,7 +599,7 @@ class Player(object):
...
@@ -404,7 +599,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
4
:
elif
self
.
ls
==
4
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -415,7 +610,7 @@ class Player(object):
...
@@ -415,7 +610,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
5
:
elif
self
.
ls
==
5
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -426,7 +621,7 @@ class Player(object):
...
@@ -426,7 +621,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
6
:
elif
self
.
ls
==
6
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -437,7 +632,7 @@ class Player(object):
...
@@ -437,7 +632,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
7
:
elif
self
.
ls
==
7
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -448,7 +643,7 @@ class Player(object):
...
@@ -448,7 +643,7 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
8
:
elif
self
.
ls
==
8
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -459,10 +654,23 @@ class Player(object):
...
@@ -459,10 +654,23 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
el
se
:
el
if
self
.
ls
==
9
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
-
2
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
-
2
)
self
.
bd
=
self
.
bd
+
1
self
.
bd
=
self
.
bd
+
2
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
-
2
)
+
"点伤害,被动值增加1点,目前的被动值为:"
+
str
(
self
.
bd
)
+
","
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
-
2
)
+
"点伤害,被动值增加2点,目前的被动值为:"
+
str
(
self
.
bd
)
+
","
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
()
else
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
-
5
)
self
.
bd
=
self
.
bd
+
4
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
-
5
)
+
"点伤害,被动值增加4点,目前的被动值为:"
+
str
(
self
.
bd
)
+
","
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -482,8 +690,13 @@ h_tili=5
...
@@ -482,8 +690,13 @@ h_tili=5
p_tili
=
5
p_tili
=
5
h_max_tili
=
10
h_max_tili
=
10
p_max_tili
=
10
p_max_tili
=
10
yase
=
Hero
(
"坦克"
,
"垭瑟"
,
h_tili
,
h_max_tili
)
ls
=
0
houyi
=
Player
(
"射手"
,
"后羿"
,
p_tili
,
p_max_tili
)
sdft
=
0
sdfy
=
0
print
(
"欢迎来到王者荣耀(文字版)"
)
print
(
30
*
"-"
)
yase
=
Hero
(
"坦克"
,
"垭瑟"
,
h_tili
,
h_max_tili
,
sdft
,
sdfy
)
houyi
=
Player
(
"射手"
,
"后羿"
,
p_tili
,
p_max_tili
,
ls
)
print
(
30
*
"-"
)
print
(
30
*
"-"
)
print
(
" 战斗开始"
)
print
(
" 战斗开始"
)
while
True
:
while
True
:
...
@@ -503,33 +716,44 @@ while True:
...
@@ -503,33 +716,44 @@ while True:
break
break
elif
choice
==
"a"
and
p_tili
>
2
:
elif
choice
==
"a"
and
p_tili
>
2
:
houyi
.
cure
(
p_tili
,
p_max_tili
)
houyi
.
cure
(
p_tili
,
p_max_tili
)
p_tili
-=
3
p_tili
-=
1
p_tili
+=
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
elif
choice
==
"0"
:
elif
choice
==
"0"
:
houyi
.
combat
(
yase
,
p_tili
,
p_max_tili
)
houyi
.
combat
(
yase
,
p_tili
,
p_max_tili
)
p_tili
+=
2
p_tili
+=
2
if
p_tili
>
p_max_tili
:
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
p_tili
=
p_max_tili
elif
choice
==
"1"
and
p_tili
>
3
:
elif
choice
==
"1"
and
p_tili
>
3
:
houyi
.
xiaocombat
(
yase
,
p_tili
,
p_max_tili
)
ls
=
random
.
randint
(
0
,
10
)
p_tili
-=
4
houyi
.
xiaocombat
(
yase
,
p_tili
,
p_max_tili
,
ls
)
p_tili
+=
2
p_tili
-=
2
if
p_tili
>
p_max_tili
:
if
ls
==
0
:
p_tili
=
p_max_tili
sdft
=
50
elif
ls
==
1
:
sdft
=
53
elif
ls
==
2
:
sdft
=
56
elif
ls
==
3
:
sdft
=
59
elif
ls
==
4
:
sdft
=
62
elif
ls
==
5
:
sdft
=
65
elif
ls
==
6
:
sdft
=
68
elif
ls
==
7
:
sdft
=
71
elif
ls
==
8
:
sdft
=
74
else
:
sdft
=
75
elif
choice
==
"2"
and
p_tili
>
6
:
elif
choice
==
"2"
and
p_tili
>
6
:
houyi
.
zhongcombat
(
yase
,
p_tili
,
p_max_tili
)
houyi
.
zhongcombat
(
yase
,
p_tili
,
p_max_tili
)
p_tili
-=
7
p_tili
-=
5
p_tili
+=
2
sdft
=
80
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
elif
choice
==
"3"
and
p_tili
>
9
:
elif
choice
==
"3"
and
p_tili
>
9
:
houyi
.
dacombat
(
yase
,
p_tili
,
p_max_tili
)
houyi
.
dacombat
(
yase
,
p_tili
,
p_max_tili
)
p_tili
-=
10
p_tili
-=
8
p_tili
+=
2
sdft
=
100
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
else
:
else
:
print
(
"指令无效"
)
print
(
"指令无效"
)
continue
continue
...
@@ -550,31 +774,16 @@ while True:
...
@@ -550,31 +774,16 @@ while True:
h_tili
=
h_max_tili
h_tili
=
h_max_tili
elif
mun
==
2
:
elif
mun
==
2
:
yase
.
cure
(
h_tili
,
h_max_tili
)
yase
.
cure
(
h_tili
,
h_max_tili
)
h_tili
-=
3
h_tili
-=
1
h_tili
+=
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
elif
mun
==
3
:
elif
mun
==
3
:
yase
.
xiaocombat
(
houyi
,
h_tili
,
h_max_tili
)
yase
.
xiaocombat
(
houyi
,
h_tili
,
h_max_tili
)
h_tili
-=
4
h_tili
-=
2
h_tili
+=
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
elif
mun
==
4
:
elif
mun
==
4
:
yase
.
zhongcombat
(
houyi
,
h_tili
,
h_max_tili
)
sdfy
==
random
.
randint
(
0
,
10
)
h_tili
-=
7
yase
.
zhongcombat
(
houyi
,
h_tili
,
h_max_tili
,
sdft
,
sdfy
)
h_tili
+=
2
h_tili
-=
5
if
h_tili
>
h_max_tili
:
if
sdfy
==
1
or
sdfy
==
4
or
sdfy
==
5
or
sdfy
==
7
:
h_tili
=
h_max_tili
if
sdfy
==
1
:
continue
elif
sdfy
==
2
:
pass
else
:
continue
continue
else
:
else
:
yase
.
dacombat
(
houyi
,
h_tili
,
h_max_tili
)
yase
.
dacombat
(
houyi
,
h_tili
,
h_max_tili
)
h_tili
-=
10
h_tili
-=
8
h_tili
+=
2
\ No newline at end of file
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
\ 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