[python课程设计]魔塔文字游戏分享3
欢迎回来,代码终于要全部写完了,这篇文章主要就是游戏主体部分了(全都是一片片代码)。游戏的主体是一个大循环,而游戏主要事件就是探险,探险又包括打怪和开宝箱。因为重复性太高,我将打怪和开宝箱写入了函数,以方便调用。此外还有拾取道具和装备,因为道具栏和装备栏是有上限的,我也将通过函数来实现。
不超过上限拾取装备
def Get_Equipment(a,b):#不超上限拾取装备
if len(a)<5:
a.append(b)
else:
print('物品持有上限,请选择丢弃(下标1~5),或不拾取(6)')
v = 1
for i in a:
if v == 6:
break
print(v,end=' ')
v+=1
i.viewEquipment()
try:
c = int(input())
if c == 6:
print('装备已丢弃')
elif c < 6:
c = int(c)
print(a[c-1].Ename+'已丢弃')
del a[c-1]
a.append(b)
else:
print('物品默认不拾取,物品已丢弃')
except:
print('物品默认不拾取,物品已丢弃')
可以看到,我是通过只读五次列表的方式来限制列表读写以实现装备栏上限,而拾取装备是直接替换列表内的值。
物品的拾取也是同样的。
不超过上限拾取物品
def Get_Items(a,b):#不超上限拾取物品
if len(a)<5:
a.append(b)
else:
print('物品持有上限,请选择丢弃(下标1~5),或不拾取(6)')
v = 1
for i in a:
if v == 6:
break
print(v,end=' ')
v+=1
i.viewItems()
try:
c = int(input())
if c == 6:
print('装备已丢弃')
elif c < 6:
c = int(c)
print(a[c-1].Iname+'已丢弃')
del a[c-1]
a.append(b)
else:
print('物品默认不拾取,物品已丢弃')
except: