请求用户向合约中投(金币数量)枚金币
如果投币成功
那么将金币 20% 分配给(地图制造者用户 ID)
将金币 10% 分配给作者
剩余金币存放在合约账户
返回「成功」
否则返回「失败」
如果合约账户可用金币数 > 1000
那么向玩家社区钱包发放(金币数量)枚金币
返回「发放成功」
否则返回「金币不足」
如果合约账户可用金币数 > 1000
那么当前可获得最高金币 = 合约账户可用资金 * 0.0009596 + 4.04(最高 100)
将 x 设为 1 到 100 之间的随机数
如果x <= 80
那么将(随机金币)设为 1 到 “可获得最高金币数 * 20%” 之间的随机数
否则将(随机金币)设为“可获得最高金币数 * 20%”到“可获得最高金币数” 之间的随机数
向玩家社区钱包发放(随机金币)枚金币
返回(随机金币)
否则返回「金币不足」