账户
0x04...aea9
0x04...aea9

0x04...aea9

$500
此合同的源代码已经过验证!
合同元数据
编译器
0.8.6+commit.11564f7e
语言
Solidity
合同源代码
文件 1 的 1:NFTommo.sol
//SPDX-License-Identifier: UNLICENSED

pragma solidity 0.8.6;

contract NFTommo
{
    address private owner;
    
    uint256 private registerPrice;
    mapping (address => bool) private userToRegistered;
    
    constructor()
    {
        owner = msg.sender;   
        registerPrice = 0.1 ether;
    }
    
    //////////
    // Getters
    
    function getRegisterPrice() external view returns(uint256)
    {
        return(registerPrice);
    }

    function getOwner() external view returns(address)
    {
        return(owner);
    }
    
    function isAddressRegistered(address _account) external view returns(bool)
    {
        return(userToRegistered[_account]);
    }
    
    //////////
    // Setters
    function setOwner(address _owner) external
    {
        require(msg.sender == owner, "Function only callable by owner!");
    
        owner = _owner;    
    }
    
    function setRegisterPrice(uint256 _registerPrice) external
    {
        require(msg.sender == owner, "Function only callable by owner!");
        
        registerPrice = _registerPrice;
    }
    
    /////////////////////
    // Register functions
    receive() external payable
    {
        register();
    }
    
    function register() public payable
    {
        require(!userToRegistered[msg.sender], "Address already registered!");
        require(msg.value >= registerPrice);
        
        userToRegistered[msg.sender] = true;
    }
    
    /////////////////
    // Withdraw Ether
    function withdraw(uint256 _amount, address _receiver) external
    {   
        require(msg.sender == owner, "Function only callable by owner!");
        
        payable(_receiver).transfer(_amount);
    }
}
设置
{
  "compilationTarget": {
    "NFTommo.sol": "NFTommo"
  },
  "evmVersion": "berlin",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs"
  },
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "remappings": []
}
ABI
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRegisterPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"isAddressRegistered","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"register","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_registerPrice","type":"uint256"}],"name":"setRegisterPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_receiver","type":"address"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]