Функция, которая награждает несколько копий NFT, возвращает ошибку

      function awardCard(address to, string memory hash, string memory _tokenURI, int _numberOfTokens) public returns (uint256){
    require(hashes[hash] != 1);
    require(_numberOfTokens < 30);

    hashes[hash] = 1;
    uint256 tokenId = _tokenIds.current();

    for(int i = 0; i < _numberOfTokens; i++) {
        _tokenIds.increment();
        uint256 tokenId = _tokenIds.current();
        _mint(to, tokenId);
        _setTokenURI(tokenId, _tokenURI);
    }
    return tokenId;
}

Здравствуйте, я пытаюсь запустить свою функцию AwardCard для одновременной отправки нескольких копий NFT на адрес, увеличивая его tokenId. Я взял большую часть кода из openZeppelin, все компилируется, но я получаю классическую ошибку отката транзакции. Мне было интересно, правильно ли я структурировал функцию, может ли кто-нибудь дать мне какое-нибудь руководство, которое было бы потрясающе.

0 ответов

Другие вопросы по тегам