我正在尝试为我的游戏组创建一个等级系统,在性质上类似于Supercell在其Clash of Clans和Clash Royale android/iOS系统游戏中的奖杯系统。你知道吗
我已经弄清楚了队伍的布局,我们已经有了一个有效的积分系统。。。我现在只需要在实际的队伍中编程。你知道吗
等级的工作非常简单:个人的积分平衡落在特定的值内,与该值对应的等级就是个人的等级。我创建了一个简单的表来显示我的意思。。。下面是它的样子摘录:
Rank: Balance Range
Private: 0-500
Private I: 501-1000
Private II: 1001-1500
Private III: 1501-2500
Corporal: 2501-3000
...
这是一个简单的军衔系统布局,一直到42000点的指挥官。我的问题是:如何将秩与点值相关联,而不必像这样键入所有代码行?你知道吗
0 <= Private <= 500
501 <= PrivateI <= 1000
...
对Daniel Roseman的
bisect
解决方案的一个小小改进是使用一个2元组列表:这里的优点是更容易一目了然,并且在编辑代码以引入新的列组、调整限制等时不容易出错
当提供的点数余额高于
RANKS
(在您的注释中指定)中的任何值时,它也返回最高等级,而不是引发异常。你知道吗示例:
你可以用bisect来做这个。你知道吗
相关问题 更多 >
编程相关推荐