Skip to content

Instantly share code, notes, and snippets.

@dexXxed
Last active June 28, 2022 12:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dexXxed/2fb3f31cba7a18a01af9a528d0c40395 to your computer and use it in GitHub Desktop.
Save dexXxed/2fb3f31cba7a18a01af9a528d0c40395 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.7+commit.e28d00a7.js&optimize=false&runs=200&gist=
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
import "erc721a/contracts/ERC721A.sol";
import "@openzeppelin/contracts/utils/Strings.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract ABSTRACT_NFT is ERC721A, Ownable { // edit contract name
string private baseURI = "ipfs://bafybeievvphzbpan4l7nbem25nehiizhh3wcdnizycsm7my3qh5ggj3m6m/";
constructor() ERC721A("ABSTRACT NFT", "ABSTRACT NFT") { // edit
_safeMint(msg.sender, 100);
}
function tokenURI(uint256 tokenId) public view override returns (string memory) {
return string(abi.encodePacked(baseURI, Strings.toString(tokenId), ".json"));
}
function setNewBaseURI(string memory _newbaseURI) public onlyOwner {
baseURI = _newbaseURI;
}
function mintQuantity(uint256 _quantity) public onlyOwner {
_safeMint(msg.sender, _quantity);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment