我如何在我的游戏应用程序中分配奖品给获胜者?



我正在制作一款基于知识的游戏,用户参与其中,如果他们获胜并获得符合标准的排名,他们将获得宝石,硬币等。

示例-游戏中500,并且预定义的奖品分配就像…

Rank 1 gets 50000 coins
Rank 2 gets 40000 coins
Rank 3 to 50 gets 20000 coins
Rank 51 to 200 gets 5000 coins
Rank 201 to 500 gets 1000coins

如果用户玩游戏,假设他得到81的排名。那么我该如何检查分配并奖励他5000个硬币呢?

我可以使用Hashmap来创建某种键值对吗?如下图所示……

HashMap<Integer, Integer> distribution = new HashMap<>();
distribution.add(1,50000);
.
.
.
distribution.add(500,1000);

任何建议都会促进我的工作。

如果你想使用HashMaps,你可以做一些循环。

HashMap<Integer, Integer> distribution = new HashMap<>();
//first and second place
distribution.add(1,50000); 
distribution.add(2,40000);
//3rd through 50th place
for(int i = 3; i < 51; i++) 
distribution.add(i,20000);
//51 through 200th place
for(int i = 51; i < 201; i++) 
distribution.add(i, 5000);
//201 through 500th place
for (int i = 201; i < 501; i++)
distribution.add(i, 1000);

和tada你完成了!然而,除非你想让它每次都运行,否则我会让distribution成为一个静态变量,这样你只需要运行一次,之后的每次运行它都会保持不变。

我建议您创建一个范围包装器类并查找范围中的键值;这可能会有所帮助:https://stackoverflow.com/a/1314708/10052779

相关内容

  • 没有找到相关文章

最新更新