# NERA ## function list - function getRewardPercents() /// @return uint8 rewardPcnt - 25% of game price /// @return uint8 gamePrizePcnt - 2% of game price /// @return uint8 megaPrizePcnt - 2% of game price /// @return uint8 fomoPcnt - of undistributed ref rewards /// @return uint8[] memory refRewardPcnts - [7, 5, 4, 3, 2]% of game price - function getUserId(address addr) /// @return uint32 userId; - `upd` function getUser(uint32 userId) /// @return address addr; /// @return uint32 refId; /// @return uint64 regtime; /// @return uint64 referrals; /// @return uint96 reward; /// @return uint96 refReward; /// @return uint96 missedRefReward; - `upd` function getUserGame(uint8 gameId, uint32 userId) /// @return uint64 level /// @return uint64 remainHops - общее количество /// @return uint96 reward /// @return uint96 refReward /// @return uint96 missedRefReward - function getUserGameProgress(uint8 gameId, uint32 userId) /// @return uint64 completet game hops /// @return uint64 max game hops /// @return uint96 gotten game reward /// @return uint96 max game reward - function getUserGameLevelProgress( uint8 gameId, uint32 userId, uint64 level ) /// @return uint64 completet level hops /// @return uint64 max level hops /// @return uint96 gotten level reward /// @return uint96 max level reward - `upd` function getGame(uint8 gameId) /// @return uint96 price /// @return uint64 enters /// @return uint96 reward /// @return uint96 refReward /// @return uint96 missedRefReward - `new` function getRegStatus() /// @return uint96 regPrice /// @return uint32 regRemainCount - `new` function getStartStatus() /// @return uint64 startTime /// @return bool isStarted - `upd` function getGameTop(uint8 gameId) /// @return uint96 fund /// @return uint64 curEnters /// @return uint64 minEnters /// @return bool isReady - `upd` function getMegaTop() /// @return uint96 fund /// @return uint64 curEnters /// @return uint64 minEnters /// @return bool isReady - `upd` function getGameTopList(uint8 gameId) /// @return uint32[] memory userIds /// @return uint256[] memory balances - `upd` function getMegaTopList() /// @return uint32[] memory userIds /// @return uint256[] memory balances - function getProvisionGamePrize(uint8 gameId, uint32 userId) /// @return uint96 prizeAmount - function getProvisionMegaPrize(uint32 userId) /// @return uint96 prizeAmount - function getGameFomo(uint8 gameId) /// @return uint96 fund /// @return uint32 lastUserId /// @return uint64 lastEnterAt /// @return uint64 timeRemain /// @return bool isReady - function register(uint32 refId) - function enter(uint8 gameId, uint32 refId) - function gamePrizeRaffle(uint8 gameId) - function megaPrizeRaffle() - function gameFomoRaffle(uint8 gameId) ## notes - getRegStatus - стаутус предрегистрации, показывает цену и сколько еще осталось - getStartStatus - стаутус cnfhnf buhs, показывает время старта и bool признак что игрна началась - getUserGame - выдаст текущее состояние юзера в игра, в частности его текущий level и сколько еще прыжков есть - getUserGameLevelHops - остаток прыжков по конкретному уровню юзера. Можно юзать для прогресс заполнения бара у юзера по уровням - getMegaTop/getGameTop - статус призовых фондов, сумма, сколько юзеров уже вошло после обнуления и сколько надо всео входов. Признак isReady указывает, что можно взывать метод распрделения призового фонда по то списку. - getGameFomo - инфо о фомо фонде, isReady = true значит можно забирать приз. - getGameTopList/getMegaTopList - выдаст списки топ юзеров. Важный момент - топ списки формируются исходя из баланса токенов у юзера, т.е. если их просто купить у кого-нибудь достаточное количество, то в топ попадешь. > В остальных случаях игра сравнивает уровни юзеров, а не баланс токенов (например при решении отправить рефку или нет). - gamePrizeRaffle/megaPrizeRaffle/gameFomoRaffle - методы розыгрыша призов, работают только при условии isReady = true в соотвествующем фонде. - register/enter - без изменения