Iterator与LIstIterator接口在java中的区别有哪些
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小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~