我正在制作一个非常简单的基于文本的宠物游戏,我需要一种方法让宠物的“食物计量器”增加。用户可以打开一个菜单,在那里可以通过写出来选择“FEED”,这需要在食品计量器上添加1个条。
我将每个版本的食物计量器设置为单独的变量,如下所示:
statfull = "[▇▇▇▇▇▇▇▇▇▇]"
stat9 = "[▇▇▇▇▇▇▇▇▇_]"
stat8 = "[▇▇▇▇▇▇▇▇__]"
stat7 = "[▇▇▇▇▇▇▇___]"
stat6 = "[▇▇▇▇▇▇____]"
stat5 = "[▇▇▇▇▇_____]"
stat4 = "[▇▇▇▇______]"
stat3 = "[▇▇▇_______]"
stat2 = "[▇▇________]"
stat1 = "[▇_________]"
statempty = "[__________]"
如果食物条的变量当前打印stat7,当用户输入单词“FEED”时,如何使其上升一级(在这种情况下更改为stat8)? 我的意思是:
currentFStat = stat7
print("Your food bar is at " + currentFStat)
看起来像
您的食物栏位于[▇▇▇▇▇▇▇___]
我希望播放器能够在出现提示时输入“FEED”,然后让程序将currentFStat的值更改为stat8,以便当它
时print("Your food bar is at " + currentFStat)
输出现在是
您的食物栏位于[▇▇▇▇▇▇▇▇__]
我能想到的唯一方法是为它可能处于的每个可能的状态都有一个if语句,如果是那个状态,则改为下一个状态,但这似乎太乏味了,我确信它有一个更容易的方式我想念...
答案 0 :(得分:1)
如何用整数变量表示宠物的食物水平:
foodlevel = 5 # for example
如果用户FEED您的宠物,请增加foodlevel
。否则减少。
使用foodlevel
随时随地创建健康指标:
>>> '▇' * foodlevel + '_' * (10 - foodlevel)
'▇▇▇▇▇_____'
我认为10是"完全",而0是"空"。您可以根据需要修改此设计。