用python做Roguelike 游戏《骰子骑士》(用python做一个小游戏)

网友投稿 382 2022-06-14


本文带大家用Python做Roguelike 游戏《骰子骑士》

所谓 roguelike (肉鸽) 游戏是现在很广泛的一个游戏品种,大致就是:打怪,拣装备(强化),打怪,拣装备(强化)... 这样的无限循环

#coding:utf-8

import win32com.client

ip = 0

while ip != '34':

ip = input()

print(ip)

#处理输入

if ip =='w':

print('up')

elif ip == 'a':

print('left')

elif ip == 'd':

print('right')

elif ip == 's':

print('down')

因为我们设计地图是蛇与梯子的循环模式,就直接套用上次的 story 模式:

story = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24]

设计主角:

#骰子骑士 roughkilike?

#水桶初始值

hp = 100

mp = 100

sp = 100

ap = 100

exp = 0

lv = 1

设计怪物的信息:

#根据不同的值指定不同的敌人,

#0 表示空地

area = [0,0,0,1,0,0,0,1,1,0,1,0,0,0,0,0,2,0,0,0,0,0,0,2]

emeny = [{'name':'空白','basehp' : 0, 'baseap':0, 'baselv' :0},

{'name':'哥布林', 'basehp' : 50, 'baseap' : 10, 'baselv': 1},

{'name':'狼人', 'basehp' : 40, 'baseap' : 30, 'baselv': 1}]

#制定规则

rules = []

然后加上遇敌的部分:

print("遇到" + str( emeny[ area[cp] ]['name']) )

cemeny = emeny[area[cp]]

然后设计战斗公式:

#战斗公式

#假设 aap bap 根据 aap:bap 的比值消减生命值至一方为0

#假设 遇到哥布林

# ap100 : bap:10 = 10:1 比例 100>10

# 100 -10=90 ? 10-10 =0

while hp * cemeny['hp'] > 0:

hp -= cemeny['baseap']

cemeny['hp'] -= ap

#强制归零

if hp<0 :

hp =0

if cemeny['hp']<0:

#设置怪物生命为负值,避开地板

cemeny['hp'] = -1

设计好的战斗的部分其实就是一个穷举攻击,看谁最先0血。

下一步,就是升级,商店,然后掉装备,在此基础上扩充即可


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:新手学习python编写程序的七大注意事项(python不太适合编写什么程序)
下一篇:python中eval函数什么时候用才能发挥出它的效果呢?(python中eval函数怎么用)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~