3-я различными токенами. Назовем это золото, дерево и хлеб. Все эти токены - отдельные ERC20.
Они есть на адресе игрока. игрок кликает "выполнить" на действии. как бы выглядел процесс без наличия внутриигрового счета?
ПРЕДЛОЖЕНИЕ:
Есть идея сделать внутриигровой счет игрока, на котором учитываются ресурсы. Все ресурсы - erc777 токены. ресурсы можно вывести или ввести в/из контракта. Все игровые действия осуществляются на основе внутриигрового состояния счета.
В таком случаем нам не нужно делать много транзакций для запуска игрового действия и мы можем заранее проверить возможно ли данное действие для данного игрока.
777 используется для возможности нотификации контракта о транзацкии. Я так понимаю, что в erc20 просто переписывается состояние счета владельца токена, но нет нотификации.
777 выглядит подходящим вариантом и предоставляет это. При транзацкии со счета в игровой контракт мы высылаем нотификацию в контракт (и изменяется внутриигровой баланс игрока).
А при выводе ИЗ контракта на счет - мы сначала запрашиваем соотв уменьшение внутриигрового счета, и если удачно - то меняем балансы в котракте токена.
Вот накидал концепт как можно было бы получить approveAndCall, но штука сложная, проще пермит использовать: https://gist.github.com/k06a/0ea02ecd824bd3d44c760825b62bc264
Те по сути мультисвап!?
Обсуждают сегодня