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
3 years ago
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
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