我有一个简单的游戏,玩家需要2个面来推动金额,最终游戏将有1个面获胜者。当然,获胜者将获得他们下注的金额(不是全部)<=我在这里遇到问题,游戏脚本(代码使用nodejs,javascript)
[{id: 123, amount: "200", timebet: 11}, {id: 124, amount: "220", timebet: 12}, {id: 125, amount: "300", timebet: 13 }]
[{id: 555, amount: "100", timebet: 22}, {id: 556, amount: "200", timebet: 23}, {id: 557, amount: "250", timebet: 24 }]
结束游戏:
奖励玩家A = 550(总下注),现金返还玩家A = 170
结果奖励= [{id: 123, amount: "200"}, {id: 124, amount: "220"}, {id: 125, amount: "130" }]
结果现金返还A = [{id: 125, amount: "170"}]
我想了很多,但是我找不到确定列表奖励和列表玩家现金返还的解决方案(按下注时间进行奖励,先下注的任何人都会得到奖励)。 谁可以帮我(对不起我的英语)
答案 0 :(得分:0)
我不确定我是否理解您的问题,但是我会尽力的。
如果您先将to组合到阵列:
const merged = [...sideA, ...sideB];
然后您可以根据时间顺序对其进行排序:
merged.sort((a,b) => a.timebet - b.timebet)
然后您就有一个列表,其中第一个元素是第一个下注,依此类推。
现在,您可以使用它做任何想做的事情:
merged.forEach(bet => PayCashOut(bet););
否则,请添加更多信息。