猫史档案馆


【Python作品分享】时机(勇者类游戏)【作品秀】

用户:中华赤子心是饶眼睛中华赤子心是饶眼睛查看:2 回复:2 评论:2 创建时间:2024-08-02T16:46:33


【作品展示】

center_image

 

【作品介绍】

有bug评论我改(可能不及时)

游戏中找准时机在升级应为怪物能力机制是玩家等级越高,能力越强。

 

【作品源代码】

import easygui
import random
import time as t


#定义属性
ni_suxing=[1,100,33,33,0,0,0,0,100]
gui_suxing=["史莱姆","骷髅","蝙蝠","史莱姆王","双剑士","魔法战士","牛头人","树精","高塔怪人",1000,10,10,20,10]


n=[0]
o=[10]
a=0
l=0
k=0
w=[0]
j=ni_suxing[6]
z=ni_suxing[7]
s_m=ni_suxing[1]
choices=[]
c=["森林一层","森林二层","森林深处","沼泽泥地","沼泽深处","森林小径","沙漠边缘","沙漠深处","沙漠高塔"]



def gen_xing():
    print("更新:","修复一些bug,")
    
#定义游戏界面
def ni_suzhi():
    print(" ")
    print("----------------------------------")
    print("你:")
    print("等级:",ni_suxing[0])
    print("经验值:",n[0])
    print("生命值:",ni_suxing[1],"/",ni_suxing[8])
    print("功击力:",ni_suxing[2])
    print("防御力:",ni_suxing[3])
    print("破甲率:",o[0])
    print("金币:",ni_suxing[6])
    print("----------------------------------")
#商店
def shan_dian():
    print("")
    print("----------------------------------")
    print("请选择道具")
    print("1.红宝石(40元,+4攻击)")
    print("2.买十倍的红宝石(360元,+50攻击)")
    print("3.买百倍的红宝石(3400元,+999攻击)")
    print("4.蓝宝石(40元,+5防御)")
    print("5.买十倍的蓝宝石(360元,+60防御)")
    print("6.买百倍的蓝宝石(3300元,+1000防御)")    
    print("7.生命之石(40元,+5生命)")
    print("8.买十倍的生命之石(360元,+100生命)")
    print("9.买百倍的生命之石(3500元,+700生命)")
    print("----------------------------------")
#神秘老人
def lao():
    print(" ")
    print("----------------------------------")
    print("让我看看你有没有100经验,我来给你升一级")
    print("----------------------------------")
#战斗画面
def zhan_duo():
    global b
    easygui.msgbox(msg=("你遇见了,",gui_suxing[b]))
    t.sleep(0.5)
    aaa = ni_suxing[0]
    gui_suxing[9] = (aaa/2+b)*100
    gui_suxing[10] = (aaa+b)*45
    gui_suxing[11] = (aaa/2+b)*30
    gui_suxing[12] = (aaa+b)*17
    gui_suxing[13] = (aaa+b)*12
    guai_s_m = gui_suxing[9]
    while True:
        if ni_suxing[8] >= 0:
            if ni_suxing[2] > gui_suxing[11]:
                print("----------------------------------")
                if gui_suxing[10] - ni_suxing[3] <= 0:
                    print("你剩余生命:",ni_suxing[8],"你受到了伤害:",gui_suxing[10] - ni_suxing[3])
                if gui_suxing[10] - ni_suxing[3] > 0:
                    ni_suxing[8] = ni_suxing[8] - gui_suxing[10] + ni_suxing[3]
                    print("你剩余生命:",ni_suxing[8],"你受到了伤害:",gui_suxing[10] - ni_suxing[3])
                bao_ji()
                if ni_suxing[2] - gui_suxing[12] <= 0:
                    print("怪剩余生命:",guai_s_m,"怪受到了伤害:",ni_suxing[2] - gui_suxing[11])
                if ni_suxing[2] - gui_suxing[11] > 0:
                    guai_s_m = guai_s_m - ni_suxing[2] + gui_suxing[11]
                    print("怪剩余生命:",guai_s_m,"怪受到了伤害:",ni_suxing[2] - gui_suxing[11])
                print("----------------------------------")
                if ni_suxing[4] == 100:
                    ni_suxing[2] -= w[0]
                t.sleep(0.1)
                if ni_suxing[8] >= 0:
                    if guai_s_m <= 0:
                        print("战斗结束")
                        print("经验值增加:",gui_suxing[13])                    
                        n[0] += gui_suxing[13]
                        print("金币增加:",gui_suxing[12])
                        ni_suxing[6] += gui_suxing[12]
                        gui_suxing[9]=2
                        gui_suxing[10]=1
                        gui_suxing[11]=1
                        gui_suxing[12]=2
                        gui_suxing[13]=1
                        break
                    else:
                        continue
                if ni_suxing[8] <=0:
                    print("你生命垂危")
                    print("金币掉落:",gui_suxing[12])
                    ni_suxing[6] -= gui_suxing[12]
                    print("你被好心人发现了")
                    ni_suxing[8] += 50
                    gui_suxing[9]=2
                    gui_suxing[10]=1
                    gui_suxing[11]=1
                    gui_suxing[12]=2
                    gui_suxing[13]=1
                    break
            else:
                print("你连他的防都破不了!!!")
                gui_suxing[9]=2
                gui_suxing[10]=1
                gui_suxing[11]=1
                gui_suxing[12]=2
                gui_suxing[13]=1
                break
#破甲的设置
def bao_ji():
    w[0] = ni_suxing[2]*3
    ni_suxing[4]=random.randint(o[0],100)
    if ni_suxing[4] == 100:
        ni_suxing[2] += w[0]
        print("破甲!!!")
#聊天内容
lao_ban=["酒店是宾客的港湾,也是我们旅途的美好回忆,祝你财源滚滚。","你有什么事吗?","祝您在今后的旅途中一帆风顺","俗话说的好:喵生,天地之常理,畏者不能苟免,贪者不可苟得也。所以失败了没关系,勇往直前吧","要来一杯吗","时间就像个筛子,不停的过滤着你身边的人,只有相处时间长了,经历的事情多了,就知道哪些人可以留在生命里,哪些人可以渐行渐远,生命可贵,珍惜筛子上面永远掉不下来的那些人!"]
shi_dai=["(手拿菊花茶)灵魂之子,浇给~~","丹麦是什么社会性质来着?","走,打球去","(边唱边跳)再看一眼就会爆炸,再靠近一点就会融化"]
ji=["咯咯嗒,咯咯嗒","厉不厉害你坤哥","我们不能没有鸡的世界","晨起动征铎,客行悲故乡,鸡声茅店月,人迹板桥霜"]
zuo_zhe=["万物皆有可能","不要被过去束缚,放手过去,迎接未来,为人生,加油","我宁愿让喵逗我开心,也不要让那精明的人惹我悲伤——羊皮卷","如果你感觉不到别人在尊重你,那么就让自己变回小孩吧——羊皮卷","如果注定要承受痛苦,那么就把痛苦当做一种磨练。既然一切不可避免,就让暴风雨来的更猛烈一些吧——狼道"]
zuo_zhe_didi=["我阳光,英俊潇洒,帅气迷人(假的)"]


#前言
aa=easygui.buttonbox("最近有点忙,新作品有点慢,别介意~(如果有Bug告诉我)还有恶龙在第九层是有几率出现的而不是一定出现               前言:很久很久以前,有一个国家叫雅格国,人们在这个国家里面快乐的生活着,但是一咆哮声打破了和平的局面,一只恶龙出现在城镇的上方,公主就在恍惚间被抓走了,你的任务就是拯救公主!!!,打败恶龙。之后你跟随恶龙的足迹来到了森林深处......",choices=["好,让我们开始","我不!!!"])
if aa=="我不!!!":
    l=1
gen_xing()
#游戏开始
while l==0:
    bb=easygui.buttonbox(msg=("你的等级:",ni_suxing[0],"你所拥有的经验:",n[0],"你所拥有的金币:",ni_suxing[6],"你的生命:",ni_suxing[1],"/",ni_suxing[8],"虚弱时记得去酒店休息一下"),choices=["冒险","商店","神秘老人","查看属性","酒店","更新日志"])
    if bb == "冒险":
        cc=easygui.buttonbox("你要去哪儿?",choices=c)
        b=c.index(cc)
        if 0 <= b <= 7:
            zhan_duo()
        if b == 8:
            r=random.randint(1,4)
            if r == 1:
                print(" ")
                print("你遇见了恶龙")
                t.sleep(1)
                gui_suxing[9] += 1000000
                gui_suxing[10] += 2500
                gui_suxing[11] += 2000
                gui_suxing[12] += 9999
                gui_suxing[13] += 9999
                guai_s_m=gui_suxing[9]
                while True:
                    if s_m >= 0:
                        if ni_suxing[2] > gui_suxing[11]:
                            print("----------------------------------")
                            if gui_suxing[10] - ni_suxing[3] <= 0:
                                print("你剩余生命:",ni_suxing[8],"你受到了伤害:",gui_suxing[10] - ni_suxing[3])
                            if gui_suxing[10] - ni_suxing[3] > 0:
                                ni_suxing[8] = ni_suxing[8] - gui_suxing[10] + ni_suxing[3]
                                print("你剩余生命:",ni_suxing[8],"你受到了伤害:",gui_suxing[10] - ni_suxing[3])
                            bao_ji()
                            if ni_suxing[2] - gui_suxing[11] <= 0:
                                print("怪剩余生命:",guai_s_m,"怪受到了伤害:",ni_suxing[2] - gui_suxing[11])
                            if ni_suxing[2] - gui_suxing[11] > 0:
                                guai_s_m = guai_s_m - ni_suxing[2] + gui_suxing[11]
                                print("怪剩余生命:",guai_s_m,"怪受到了伤害:",ni_suxing[2] - gui_suxing[11])
                            print("----------------------------------")
                            if ni_suxing[4] == 100:
                                ni_suxing[2] -= w[0]
                            t.sleep(0.1)
                            if ni_suxing[8] >= 0:
                                if guai_s_m <= 0:
                                    print("战斗结束")
                                    print("经验值增加:",gui_suxing[13])                    
                                    n[0] += gui_suxing[13]
                                    print("金币增加:",gui_suxing[12])
                                    ni_suxing[6] += gui_suxing[12]
                                    gui_suxing[9]=2
                                    gui_suxing[10]=1
                                    gui_suxing[11]=1
                                    gui_suxing[12]=2
                                    gui_suxing[13]=1
                                    l=1
                                    break
                                else:
                                    continue 
                            if ni_suxing[8] <=0:
                                print("你生命垂危")
                                print("你被好心人发现了")
                                ni_suxing[7] += 50
                                gui_suxing[9]=2
                                gui_suxing[10]=1
                                gui_suxing[11]=1
                                gui_suxing[12]=2
                                gui_suxing[13]=1
                                break
                        else:
                            print("你连他的防都破不了!!!")
                            gui_suxing[9]=2
                            gui_suxing[10]=1
                            gui_suxing[11]=1
                            gui_suxing[12]=2
                            gui_suxing[13]=1
                            break
            else:
                zhan_duo()
        else:
            continue
    elif bb =="商店" :
        shan_dian()
        c1=["红宝石","买十倍的红宝石","买百倍的红宝石","蓝宝石","买十倍的蓝宝石","买百倍的蓝宝石","生命之石","买十倍的生命之石","买百倍的生命之石"]
        ee=easygui.buttonbox(msg=("你要买什么?"),choices=c1)
        喵=c1.index(ee)
        喵+=1
        if 喵 == 1:
            if ni_suxing[6] >= 40:
                print("你获得了红宝石一个")
                ni_suxing[2] += 4
                ni_suxing[6] -= 40
            else:
                print("你的钱不够")
        if 喵 == 2:
            if ni_suxing[6] >= 360:
                print("你获得了十个红宝石")
                ni_suxing[2] += 50
                ni_suxing[6] -= 360
            else:
                print("你的钱不够")
        if 喵 == 3:
            if ni_suxing[6] >= 3400:
                print("你获得了一百个红宝石")
                ni_suxing[2] += 999
                ni_suxing[6] -= 3400
            else:
                print("你的钱不够")
        if 喵 == 4:
            if ni_suxing[6] >= 40:
                print("你获得了蓝宝石一个")
                ni_suxing[3] += 5
                ni_suxing[6] -= 40
            else:
                print("你的钱不够")
        if 喵 == 5:
            if ni_suxing[6] >= 360:
                print("你获得了十个蓝宝石")
                ni_suxing[3] += 60
                ni_suxing[6] -= 360
            else:
                print("你的钱不够")
        if 喵 == 6:
            if ni_suxing[6] >= 3300:
                print("你获得了一百个蓝宝石")
                ni_suxing[3] += 1000
                ni_suxing[6] -= 3300
            else:
                print("你的钱不够")
        if 喵 == 7:
            if ni_suxing[6] >= 40:
                print("你获得了生命之石一个")
                ni_suxing[1] += 5
                ni_suxing[6] -= 40
            else:
                print("你的钱不够")
        if 喵 == 8:
            if ni_suxing[6] >= 360:
                print("你获得了喵之石")
                ni_suxing[1] += 50
                ni_suxing[6] -= 360
            else:
                print("你的钱不够")
        if 喵 == 9:
            if ni_suxing[6] >= 3500:
                print("你获得了一百个生命之石")
                ni_suxing[1] += 700
                ni_suxing[6] -= 3500
            else:
                print("你的钱不够")
    elif bb == "神秘老人":
        if n[0] >= 100+k:
            print("恭喜你升一级")
            ni_suxing[0] += 1
            print("生命值增加20")
            ni_suxing[1] += 20
            ni_suxing[8]=ni_suxing[1]
            print("攻击力+8,防御力+7")
            ni_suxing[2] += 8
            ni_suxing[3] += 7
            if o[0] < 100:
                print("暴击率+1")
                o[0] += 1
            if o[0] >= 100:
                print("暴击率不能再提高了!")
            n[0] -= 100
        else:
            print("你的经验值不够")
    elif bb =="查看属性" :
        ni_suzhi()
    elif bb == "酒店":
        s=easygui.buttonbox("来聊天吧,或者休息一下?",choices=["酒店老板","喵轩轩团","鸡","作者","作者他弟","休息一下"])
        if s == "酒店老板":
            v=random.randint(0,5)
            print("酒店老板:",lao_ban[v])
        if s == "喵朋友":
            v=random.randint(0,3)
            print("喵朋友:",shi_dai[v])
        if s == "鸡":
            v=random.randint(0,2)
            print("鸡:",ji[v])
        if s == "作者":
            v=random.randint(0,4)
            print("作者:",zuo_zhe[v])
        if s == "自恋一哥":
            print("自恋一哥:", zuo_zhe_didi[0])
        if s == "休息一下":
            print("你已恢复")
            ni_suxing[8]=ni_suxing[1]
        else:
            continue
    elif bb == "更新日志":
        gen_xing()


#游戏结束
print("游戏结束")

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
TuTacii༽༺诺临宗༻༼宗主TuTacii༽༺诺临宗༻༼宗主

我靠,这什么作者啊,太喵了吧  

点赞0


评论


TuTacii༽༺诺临宗༻༼宗主TuTacii༽༺诺临宗༻༼宗主

作者,快点look lookcenter_image

点赞0


评论