紅酒鏈遊WineGometa系統模式開發原始碼詳情

JT1769119發表於2023-03-17

智慧合約是區塊技術世界不可或缺的一區域性。這些合約是軟體程式,當滿足了規則的條件時,在兩個或多個參與方之間執行特定的任務。從實質上說,它就像一個自執行的常規合約,不需求中介,由於它依賴於它的程式設計值。


下面是一個基本的WineGometa紅酒鏈遊NFT智慧合約的程式設計示例:

typescriptCopy codepragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract WineGometaNFT is ERC721, Ownable {
    uint256 public constant MAX_TOKENS = 10000;
    
    uint256 public constant PRICE = 0.1 ether;
    
    uint256 public constant MAX_PER_MINT = 10;
    
        string private _baseURIExtended;
        constructor(string memory _name, string memory _symbol, string memory baseURI) ERC721(_name, _symbol) {
                setBaseURI(baseURI);
    }
        function mint(uint256 _count) public payable {
            require(_count > 0 && _count <= MAX_PER_MINT, "Invalid number of tokens requested");
                    require(totalSupply() + _count <= MAX_TOKENS, "Purchase would exceed max supply");
                            require(msg.value == PRICE * _count, "Ether value sent is not correct");
                                    for (uint256 i = 0; i < _count; i++) {
                                                _safeMint(msg.sender, totalSupply() + 1);
        }
        
    }
        function setBaseURI(string memory baseURI_) public onlyOwner {
        _baseURIExtended = baseURI_;
    }
        function _baseURI() internal view virtual override returns (string memory) {
                return _baseURIExtended;
    }
}

這個合約是一個WineGometa紅酒鏈遊的NFT智慧合約。它使用了OpenZeppelin的ERC721和Ownable合約。它允許使用者購買NFT,每個NFT的價格為0.1 ETH,每次最多購買10個NFT,最多發行10000個NFT。


使用者可以使用 mint函式購買NFT,並使用 setBaseURI函式設定NFT的後設資料URI。這個示例僅僅是一個基礎的示例,你可以根據你的需求來修改和擴充套件它。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69982110/viewspace-2940255/,如需轉載,請註明出處,否則將追究法律責任。

相關文章