"""剑与魔法"""
import random
import time
from easygui import msgbox
from easygui import buttonbox
from easygui import enterbox
import pygame
#设置画布
pygame.init()
screen=pygame.display.set_mode((720,200))
done=False
#设置字体&内容
font = pygame.font.SysFont("方正兰亭超细黑简体",46)
text = font.render("@Alan Year 工作室出版",True,(0,255,255))
#设置背景音
pygame.mixer.init()
pygame.mixer.music.load("2.mp3")
pygame.mixer.music.play(10,0)
#设置关闭
while not done:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
if event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
done = True
#背景填充
screen.fill((255, 255, 255))
screen.blit(text, (320 - text.get_width() // 2,100 - text.get_height() // 2))
#更新
pygame.display.flip()
msgbox("欢迎来到《剑与魔法》",image="1.jpg")
a=150
b=300
c=5
d=15
rt=1
gh=10
mp=50
mf=800
name=enterbox("请输入你的名称"," ")
print("你的名字叫",name)
q=input("请选择职业 魔导师 狩魔 战士 (按Enter跳过)")
if q=="魔导师":
msgbox("",image="3.jpeg")
if q=="狩魔":
msgbox("",image="4.jpeg")
if q=="战士":
msgbox("",image="5.jpg")
msgbox("提示:等级最高为5级")
while a>=1 and rt<5:
f=random.randint(1,2)
if f==1 and b==300 and rt<5:
msgbox("休息一下,准备开始战斗")
msgbox("你即将去和普通boes进行战斗",image="2.jpeg")
while a>=1 and b>=1:
print(name,"我方的血量:",a,"对方的血量:",b,"技能次数:",c,"魔法值:",d,"等级",rt,"点数",gh,)
x=buttonbox("boes即将攻击 请选择反击方式","",["普攻","技能","魔法",],image="9.jpeg")
if x=="普攻":
r=random.randint(5,15)
msgbox("我方选择普攻")
print("我方攻击力是",r)
b=b-r
if x=="技能"and c>=1:
c=c-1
r=random.randint(1,4)
if r==1:
msgbox("获得补血包",image="10.jpeg")
a=a+50
c=c+1
d=d+5
msgbox("你这回合没有攻击")
if r==2:
msgbox("对boes的攻击增加2倍",image="2.jpeg")
h=random.randint(30,50)
print("我方攻击力是",h)
b=b-h
if r==3:
msgbox("对boes的攻击反弹%50",image="8.png")
h=random.randint(20,40)
b=b-h*2
print("我方攻击力是",h*2)
if r==4:
msgbox("对boes的进行暴击",image="7.jpeg")
h=random.randint(40,70)
print("我方攻击力是",h)
b=b-h
if x=="技能" and c<=0:
msgbox("提示:你的技能值为0")
if x=="魔法"and d>=5:
d=d-5
t=random.randint(1,3)
if t==1:
msgbox("对boes的攻击增加5倍",image="2.jpeg")
g=random.randint(20,25)
b=b-g*5
print("我方攻击力是",g*5)
d=d
if t==2:
msgbox("获得补血包",image="10.jpeg")
a=a+50
c=c+1
d=d+5
msgbox("你这回合没有攻击")
if t==3:
msgbox("获得高伤害炸弹",image="12.jpeg")
f=random.randint(30,75)
print("我方攻击力是",f)
b=b-f
d=d
if x=="魔法"and d<=0:
msgbox("提示:你的魔法值为0")
y=random.randint(1,4)
if y==1:
msgbox("对方选择普攻",image="9.jpeg")
w=random.randint(1,15)
print("对方攻击力是:",w)
a=a-w
if y==2:
msgbox("对方选择暴击技能",image="11.jpeg")
w=random.randint(30,75)
print("对方攻击力是:",w)
a=a-w
if y==3:
msgbox("对方选择魔法攻击",image="6.jpeg")
w=random.randint(20,65)
print("对方攻击力是:",w)
a=a-w
if y==4:
msgbox("对方获得了补血包",image="10.jpeg")
b=b+10
msgbox("对你发起普通攻击",image="9.jpeg")
w=random.randint(10,15)
print("对方攻击力是:",w)
a=a-w
if b<=0:
msgbox("恭喜你,成功打败boes")
msgbox("获得不少点数",image="13.jpeg")
gh=gh+20
c=c+2
d=d+10
print(name,"我方的血量:",a,"对方的血量:",b,"技能次数:",c,"魔法值:",d,"等级",rt,"点数",gh,)
if a<0:
print(name,"我方的血量:",a,"对方的血量:",b,"技能次数:",c,"魔法值:",d,"等级",rt,"点数",gh,)
msgbox("你被打败了")
break
if gh>=15:
m=buttonbox("点数可升级","",["升级","下次再说"])
if m=="升级" and rt<=4:
a=a+150
gh=gh-15
rt=rt+1
msgbox("升级成功")
print(name,"我方的血量:",a,"技能次数:",c,"魔法值:",d,"等级",rt,"点数",gh,)
if m=="升级" and rt>=5:
msgbox("已达到最高等级")
if m=="下次再说":
msgbox("好的")
if b<=299:
b=300
if a<=0 and b<=0:
msgbox("你们同归于尽了")
if f==2:
msgbox("休息一下,准备开始战斗")
msgbox("你即将去刷怪塔和普通小怪进行战斗",image="2.jpeg")
while a>=1 and mp>=1 and rt<5:
print(name,"我方的血量:",a,"小怪的血量:",mp,"技能次数:",c,"魔法值:",d,"等级",rt,"点数",gh,)
x=buttonbox("小怪即将攻击 请选择反击方式","",["普攻","技能","魔法",],image="9.jpeg")
if x=="普攻":
r=random.randint(5,15)
msgbox("我方选择普攻")
print("我方攻击力是",r)
mp=mp-r
if x=="技能"and c>=1:
c=c-1
r=random.randint(1,4)
if r==1:
msgbox("获得补血包",image="10.jpeg")
a=a+50
c=c+1
d=d+5
msgbox("你这回合没有攻击")
if r==2:
msgbox("对小怪的攻击增加2倍",image="2.jpeg")
h=random.randint(30,50)
print("我方攻击力是",h)
mp=mp-h
if r==3:
msgbox("对小怪的攻击反弹%50",image="8.png")
h=random.randint(20,40)
mp=mp-h*2
print("我方攻击力是",h*2)
if r==4:
msgbox("对小怪的进行暴击",image="7.jpeg")
h=random.randint(40,70)
print("我方攻击力是",h)
mp=mp-h
if x=="技能" and c<=0:
msgbox("提示:你的技能值为0")
if x=="魔法"and d>=5:
d=d-5
t=random.randint(1,3)
if t==1:
msgbox("对小怪的攻击增加5倍",image="2.jpeg")
g=random.randint(20,25)
mp=mp-g*5
print("我方攻击力是",g*5)
d=d
if t==2:
msgbox("获得补血包",image="10.jpeg")
a=a+50
c=c+1
d=d+5
msgbox("你这回合没有攻击")
if t==3:
msgbox("获得高伤害炸弹",image="12.jpeg")
f=random.randint(30,75)
print("我方攻击力是",f)
mp=mp-f
d=d
【脚本编写-python】-剑与魔法来了!!!
需积分: 5 198 浏览量
2023-07-07
16:12:07
上传
评论
收藏 3MB ZIP 举报
python程序员——叶
- 粉丝: 1
- 资源: 15
最新资源
- QuestionTwo.java
- QuestionOne.java
- OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).rar
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- 南京邮电大学数学实验:熟练掌握 Matlab 软件的基本命令和操作
- 简历-求职简历-word-文件-简历模版免费分享-应届生-高颜值简历模版-个人简历模版-简约大气-大学生在校生-求职-实习
- 2017校招真题校园招聘真题算法题(37道)Python源码.zip
- 基于单片机protues仿真的多功能自动饮水机系统设计(仿真图、源代码、演示视频)
- 论文《一种修复流程挖掘事件日志中缺失活动标签的深度学习方法》翻译
- 智慧电厂相关资料发电控制的方式
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈