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
6c0647ec
authored
Jun 19, 2021
by
BellCodeEditor
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
save project
parent
ed973758
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
98 additions
and
471 deletions
44.py
diy4.py
44.py
View file @
6c0647ec
import
random
info1
=
"aas"
bd1
=
0
info2
=
"asdf"
info3
=
"还剩下血量"
class
Hero
(
object
):
info
=
info1
+
info2
+
info3
def
__init__
(
self
,
hero_type
,
name
):
print
(
info
)
h_tili
=
5
\ No newline at end of file
h_max_tili
=
10
self
.
name
=
name
self
.
level
=
1
self
.
hp
=
260
self
.
attack
=
40
self
.
max_hp
=
self
.
hp
self
.
hero_type
=
hero_type
print
(
"电脑角色"
+
self
.
name
+
"创建成功,英雄类型为:"
,
self
.
hero_type
)
print
(
"当前等级、血量、攻击力分别为:"
,
self
.
level
,
self
.
hp
,
self
.
attack
)
def
cure
(
self
):
# 治疗
self
.
hp
=
self
.
hp
+
60
h_tili
=
h_tili
-
3
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"使用了治疗,血量增加:"
,
60
,
",目前的血量为:"
,
self
.
hp
+
"体力减少3,目前的体力为:"
,
h_tili
)
h_tili
=
h_tili
+
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
h_tili
)
def
combat
(
self
,
enemy
):
# 普通攻击
enemy
.
hp
-=
self
.
attack
if
bd1
==
5
:
enemy
.
hp
-=
20
bd1
=
bd1
-
5
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起用荣耀被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
4
:
enemy
.
hp
-=
15
bd1
=
bd1
-
4
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
3
:
enemy
.
hp
-=
10
bd1
=
bd1
-
3
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值3点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
2
:
enemy
.
hp
-=
5
bd1
=
bd1
-
2
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
5
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值2点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
else
:
bd1
=
bd1
+
1
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起攻击,"
info2
=
"造成"
+
str
(
self
.
attack
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"被动值增加1点,目前的被动值为:"
,
bd1
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
h_tili
=
h_tili
+
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
h_tili
)
def
dacombat
(
self
,
enemy
):
#大招:暴击
self
.
tili
=
self
.
tili
-
10
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起大招:暴击,"
info2
=
"暴击造成"
+
str
(
self
.
attack
*
2
)
+
"点伤害,"
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
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
()
h_tili
=
h_tili
+
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
h_tili
)
def
zhongcombat
(
self
,
enemy
):
#中招:圣盾防御
self
.
tili
=
self
.
tili
-
7
sdfy
=
random
.
randint
(
1
,
3
)
if
sdfy
==
3
:
info1
=
self
.
name
+
"开启一级圣盾防御,体力减少7,目前的体力为:"
,
self
.
tili
print
(
info1
)
elif
sdfy
==
2
:
enemy
.
hp
-=
ftsy
info1
=
self
.
name
+
"开启二级圣盾防御,"
info2
=
"圣盾反弹伤害造成"
+
str
(
ftsy
)
+
"点伤害,体力减少7,目前的体力为:"
,
self
.
tili
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
enemy
.
hp
-=
ftsy
info1
=
self
.
name
+
"开启三级圣盾防御,"
info2
=
"圣盾反弹伤害造成"
+
str
(
ftsy
)
+
"点伤害,体力减少7,目前的体力为:"
,
self
.
tili
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
print
(
info
)
h_tili
=
h_tili
+
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
h_tili
)
def
xiaocombat
(
self
,
enemy
):
#小招:强化
self
.
tili
=
self
.
tili
-
4
self
.
hp
=
self
.
hp
+
25
bd1
=
bd1
+
3
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"使用了治疗,血量增加:"
,
55
,
",目前的血量为:"
,
self
.
hp
+
"体力减少3,目前的体力为:"
,
self
.
tili
)
info1
=
self
.
name
+
"开启强化,血量增加:"
,
25
,
",目前的血量为:"
,
self
.
hp
+
"被动值增加1点,目前的被动值为:"
,
bd1
+
"体力减少4,目前的体力为:"
,
self
.
tili
print
(
info1
)
h_tili
=
h_tili
+
2
if
h_tili
>
h_max_tili
:
h_tili
=
h_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
h_tili
)
class
Player
(
object
):
def
__init__
(
self
,
hero_type
,
name
):
self
.
tili
=
5
self
.
max_tili
=
10
self
.
name
=
name
self
.
level
=
1
self
.
hp
=
200
self
.
attack
=
50
self
.
max_hp
=
self
.
hp
self
.
hero_type
=
hero_type
print
(
"玩家角色"
+
self
.
name
+
"创建成功,英雄类型为:"
,
self
.
hero_type
)
print
(
"当前等级、血量、攻击力分别为:"
,
self
.
level
,
self
.
hp
,
self
.
attack
)
def
cure
(
self
):
# 治疗
self
.
hp
=
self
.
hp
+
50
p_tili
=
p_tili
-
3
if
self
.
hp
>
self
.
max_hp
:
self
.
hp
=
self
.
max_hp
print
(
self
.
name
+
"使用了治疗,血量增加:"
,
50
,
",目前的血量为:"
,
self
.
hp
+
"体力减少3,目前的体力为:"
,
p_tili
)
p_tili
=
p_tili
+
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
p_tili
)
def
combat
(
self
,
enemy
):
# 普通攻击
enemy
.
hp
-=
self
.
attack
if
bd1
==
5
:
enemy
.
hp
-=
20
bd1
=
bd1
-
5
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起用荣耀被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
4
:
enemy
.
hp
-=
15
bd1
=
bd1
-
4
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起超被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
3
:
enemy
.
hp
-=
10
bd1
=
bd1
-
3
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起强被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值3点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
bd1
==
2
:
enemy
.
hp
-=
5
bd1
=
bd1
-
2
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
5
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值2点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
else
:
bd1
=
bd1
+
1
if
enemy
.
hp
>
0
:
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起攻击,"
info2
=
"造成"
+
str
(
self
.
attack
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"被动值增加1点,目前的被动值为:"
,
bd1
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
p_tili
=
p_tili
+
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
p_tili
)
def
dacombat
(
self
,
enemy
):
#大招:金乌神箭
p_tili
=
p_tili
-
10
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起大招:金乌神箭,"
info2
=
"金乌神箭造成"
+
str
(
self
.
attack
*
2
)
+
"点伤害,"
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
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
()
p_tili
=
p_tili
+
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
p_tili
)
def
zhongcombat
(
self
,
enemy
):
#中招:天降巨箭
p_tili
=
p_tili
-
7
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起中招:天降巨箭,"
info2
=
"天降巨箭造成"
+
str
(
self
.
attack
+
30
)
+
"点伤害,"
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
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
()
p_tili
=
p_tili
+
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
p_tili
)
def
xiaocombat
(
self
,
enemy
):
#小招:连射
ls
=
random
.
randint
(
1
,
5
)
ls5
=
ls
*
5
p_tili
=
p_tili
-
4
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起小招:连射,"
info2
=
"连射"
,
ls
,
"箭,造成"
+
str
(
self
.
attack
+
ls5
)
+
"点伤害,"
if
ls
==
1
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
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
()
elif
ls
==
2
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
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
()
elif
ls
==
3
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
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
()
elif
ls
==
4
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
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
+
ls5
)
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
()
p_tili
=
p_tili
+
2
if
p_tili
>
p_max_tili
:
p_tili
=
p_max_tili
print
(
"出招后,体力回复2点,目前的体力为:"
,
p_tili
)
yase
=
Hero
(
"坦克"
,
"垭瑟"
)
houyi
=
Player
(
"射手"
,
"后羿"
)
print
(
30
*
"-"
)
print
(
" 战斗开始"
)
while
True
:
print
(
30
*
"-"
)
if
p_tili
>
9
:
choice
=
input
(
"目前的体力为:"
+
str
(
p_tili
)
+
",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射/2中招:天降巨箭/3大招:金乌神箭):"
)
elif
p_tili
>
6
:
choice
=
input
(
"目前的体力为:"
+
str
(
p_tili
)
+
",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射/2中招:天降巨箭):"
)
elif
p_tili
>
3
:
choice
=
input
(
"目前的体力为:"
+
str
(
p_tili
)
+
",请选择释放英雄技能(q退出/a治疗/0普通攻击/1小招:连射):"
)
elif
p_tili
>
2
:
choice
=
input
(
"目前的体力为:"
+
str
(
p_tili
)
+
",请选择释放英雄技能(q退出/a治疗/0普通攻击):"
)
else
:
choice
=
input
(
"目前的体力为:"
+
str
(
p_tili
)
+
",请选择释放英雄技能(q退出/0普通攻击):"
)
if
choice
==
"q"
:
print
(
"游戏结束"
)
break
elif
choice
==
"a"
:
houyi
.
cure
()
elif
choice
==
"0"
:
houyi
.
combat
(
yase
)
elif
choice
==
"1"
:
houyi
.
xiaocombat
(
yase
)
elif
choice
==
"2"
:
houyi
.
zhongcombat
(
yase
)
elif
choice
==
"3"
:
houyi
.
dacombat
(
yase
)
else
:
print
(
"指令无效"
)
continue
if
h_tili
<
3
:
mun
=
1
elif
h_tili
<
4
:
mun
=
random
.
randint
(
1
,
2
)
elif
h_tili
<
7
:
mun
=
random
.
randint
(
1
,
3
)
elif
h_tili
<
10
:
mun
=
random
.
randint
(
1
,
4
)
else
:
mun
=
random
.
randint
(
1
,
5
)
if
mun
==
1
:
yase
.
combat
(
houyi
)
elif
mun
==
2
:
yase
.
cure
()
elif
mun
==
3
:
yase
.
xiaocombat
(
houyi
)
elif
mun
==
4
:
yase
.
zhongcombat
(
houyi
)
if
sdfy
==
1
:
continue
elif
sdfy
==
2
:
pass
else
:
continue
else
:
yase
.
dacombat
(
houyi
)
\ No newline at end of file
diy4.py
View file @
6c0647ec
...
@@ -19,7 +19,7 @@ class Hero(object):
...
@@ -19,7 +19,7 @@ class Hero(object):
tili
=
tili
-
3
tili
=
tili
-
3
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
tili
=
tili
+
2
if
tili
>
max_tili
:
if
tili
>
max_tili
:
tili
=
max_tili
tili
=
max_tili
...
@@ -33,7 +33,7 @@ class Hero(object):
...
@@ -33,7 +33,7 @@ class Hero(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
2
0
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值6点,目前的被动值为:"
,
self
.
bd
info4
=
"消耗被动值6点,目前的被动值为:"
,
self
.
bd
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -48,7 +48,7 @@ class Hero(object):
...
@@ -48,7 +48,7 @@ class Hero(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
1
6
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info4
=
"消耗被动值5点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -63,7 +63,7 @@ class Hero(object):
...
@@ -63,7 +63,7 @@ class Hero(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
1
2
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info4
=
"消耗被动值4点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -78,7 +78,7 @@ class Hero(object):
...
@@ -78,7 +78,7 @@ class Hero(object):
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
+
"发起强被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
8
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值3点,目前的被动值为:0"
info4
=
"消耗被动值3点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -93,7 +93,7 @@ class Hero(object):
...
@@ -93,7 +93,7 @@ class Hero(object):
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
+
"发起被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
5
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
4
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值2点,目前的被动值为:0"
info4
=
"消耗被动值2点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -201,6 +201,8 @@ class Player(object):
...
@@ -201,6 +201,8 @@ class Player(object):
def
cure
(
self
,
tili
,
max_tili
):
# 治疗
def
cure
(
self
,
tili
,
max_tili
):
# 治疗
self
.
hp
=
self
.
hp
+
50
self
.
hp
=
self
.
hp
+
50
self
.
tili
=
self
.
tili
-
3
self
.
tili
=
self
.
tili
-
3
if
self
.
tili
<
0
:
self
.
tili
=
0
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
+
"使用了治疗,血量增加:50,目前的血量为:"
+
str
(
self
.
hp
)
+
",体力减少3,目前的体力为:"
+
str
(
self
.
tili
))
print
(
self
.
name
+
"使用了治疗,血量增加:50,目前的血量为:"
+
str
(
self
.
hp
)
+
",体力减少3,目前的体力为:"
+
str
(
self
.
tili
))
...
@@ -217,7 +219,7 @@ class Player(object):
...
@@ -217,7 +219,7 @@ class Player(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
2
0
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值6点,目前的被动值为:"
,
self
.
bd
info4
=
"消耗被动值6点,目前的被动值为:"
,
self
.
bd
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -232,7 +234,7 @@ class Player(object):
...
@@ -232,7 +234,7 @@ class Player(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
1
6
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值5点,目前的被动值为:0"
info4
=
"消耗被动值5点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -247,7 +249,7 @@ class Player(object):
...
@@ -247,7 +249,7 @@ class Player(object):
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
+
1
0
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
1
2
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值4点,目前的被动值为:0"
info4
=
"消耗被动值4点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -262,7 +264,7 @@ class Player(object):
...
@@ -262,7 +264,7 @@ class Player(object):
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
+
"发起强被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
10
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
8
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值3点,目前的被动值为:0"
info4
=
"消耗被动值3点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -277,7 +279,7 @@ class Player(object):
...
@@ -277,7 +279,7 @@ class Player(object):
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
+
"发起被动攻击,"
info2
=
"造成"
+
str
(
self
.
attack
+
5
)
+
"点伤害,"
info2
=
"造成"
+
str
(
self
.
attack
+
4
)
+
"点伤害,"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info4
=
"消耗被动值2点,目前的被动值为:0"
info4
=
"消耗被动值2点,目前的被动值为:0"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -308,8 +310,10 @@ class Player(object):
...
@@ -308,8 +310,10 @@ class Player(object):
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:金乌神箭
def
dacombat
(
self
,
enemy
,
tili
,
max_tili
):
#大招:金乌神箭
self
.
tili
=
self
.
tili
-
10
self
.
tili
=
self
.
tili
-
10
if
self
.
tili
<
0
:
self
.
tili
=
0
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起大招:金乌神箭,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起大招:金乌神箭,"
info2
=
"金乌神箭造成"
+
str
(
self
.
attack
*
2
)
+
"点伤害,"
info2
=
"金乌神箭造成"
+
str
(
self
.
attack
*
2
)
+
"点伤害,
体力减少10,目前的体力为:"
+
str
(
self
.
tili
)
+
",
"
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -327,8 +331,10 @@ class Player(object):
...
@@ -327,8 +331,10 @@ class Player(object):
def
zhongcombat
(
self
,
enemy
,
tili
,
max_tili
):
#中招:天降巨箭
def
zhongcombat
(
self
,
enemy
,
tili
,
max_tili
):
#中招:天降巨箭
self
.
tili
=
self
.
tili
-
7
self
.
tili
=
self
.
tili
-
7
if
self
.
tili
<
0
:
self
.
tili
=
0
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起中招:天降巨箭,"
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起中招:天降巨箭,"
info2
=
"天降巨箭造成"
+
str
(
self
.
attack
+
30
)
+
"点伤害,"
info2
=
"天降巨箭造成"
+
str
(
self
.
attack
+
30
)
+
"点伤害,
体力减少7,目前的体力为:"
+
str
(
self
.
tili
)
+
",
"
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
*
2
)
if
enemy
.
hp
>
0
:
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
...
@@ -346,13 +352,27 @@ class Player(object):
...
@@ -346,13 +352,27 @@ class Player(object):
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
):
#小招:连射
def
xiaocombat
(
self
,
enemy
,
tili
,
max_tili
):
#小招:连射
ls
=
random
.
randint
(
1
,
5
)
ls
=
random
.
randint
(
0
,
9
)
ls
5
=
ls
*
5
ls
s
=
ls
*
3
self
.
tili
=
self
.
tili
-
4
self
.
tili
=
self
.
tili
-
4
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起小招:连射,"
if
self
.
tili
<
0
:
info2
=
"连射"
,
ls
,
"箭,造成"
+
str
(
self
.
attack
+
ls5
)
+
"点伤害,"
self
.
tili
=
0
info1
=
self
.
name
+
"对"
+
enemy
.
name
+
"发起小招:连射,体力减少4,目前的体力为:"
+
str
(
self
.
tili
)
+
","
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
)
+
"点伤害,"
if
ls
==
0
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info2
=
"连射1箭,但射偏了,造成"
+
str
(
self
.
attack
+
lss
)
+
"点伤害,"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
if
ls
==
1
:
if
ls
==
1
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
5
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
s
)
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
...
@@ -363,7 +383,7 @@ class Player(object):
...
@@ -363,7 +383,7 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
2
:
elif
ls
==
2
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
5
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
s
)
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
...
@@ -374,7 +394,7 @@ class Player(object):
...
@@ -374,7 +394,7 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
3
:
elif
ls
==
3
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
5
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls
s
)
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
...
@@ -385,7 +405,29 @@ class Player(object):
...
@@ -385,7 +405,29 @@ class Player(object):
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
4
:
elif
ls
==
4
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
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
()
elif
ls
==
5
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
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
()
elif
ls
==
6
:
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
)
+
"血量"
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
...
@@ -395,8 +437,32 @@ class Player(object):
...
@@ -395,8 +437,32 @@ class Player(object):
info
=
info1
+
info2
+
info3
info
=
info1
+
info2
+
info3
print
(
info
)
print
(
info
)
exit
()
exit
()
elif
ls
==
7
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
if
enemy
.
hp
>
0
:
info3
=
enemy
.
name
+
"还剩下"
+
str
(
enemy
.
hp
)
+
"血量"
info
=
info1
+
info2
+
info3
print
(
info
)
else
:
else
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
ls5
)
info3
=
enemy
.
name
+
"阵亡,游戏结束"
info
=
info1
+
info2
+
info3
print
(
info
)
exit
()
elif
ls
==
8
:
enemy
.
hp
=
enemy
.
hp
-
(
self
.
attack
+
lss
)
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
-
2
)
self
.
bd
=
self
.
bd
+
1
info2
=
"连射"
+
str
(
ls
)
+
"箭,造成"
+
str
(
self
.
attack
+
lss
-
2
)
+
"点伤害,被动值增加1点,目前的被动值为:"
+
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
...
@@ -435,7 +501,7 @@ while True:
...
@@ -435,7 +501,7 @@ while True:
if
choice
==
"q"
:
if
choice
==
"q"
:
print
(
"游戏结束"
)
print
(
"游戏结束"
)
break
break
elif
choice
==
"a"
:
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
-=
3
p_tili
+=
2
p_tili
+=
2
...
@@ -446,19 +512,19 @@ while True:
...
@@ -446,19 +512,19 @@ while True:
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"
:
elif
choice
==
"1"
and
p_tili
>
3
:
houyi
.
xiaocombat
(
yase
,
p_tili
,
p_max_tili
)
houyi
.
xiaocombat
(
yase
,
p_tili
,
p_max_tili
)
p_tili
-=
4
p_tili
-=
4
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
==
"2"
:
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
-=
7
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
==
"3"
:
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
-=
10
p_tili
+=
2
p_tili
+=
2
...
...
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