Created
February 20, 2018 11:02
-
-
Save sherlock-shi-x/bb1785ce4300b1848f08c19d7261543d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pragma solidity ^0.4.18; | |
contract BotBob { | |
address owner; | |
mapping (address => bool) isAdmins; | |
IMainContract private iMainContract; | |
function BotBob() public { | |
owner = msg.sender; | |
isAdmins[owner] = true; | |
iMainContract = IMainContract(0xd62ccc23c5e1db41c017913303bdb09e570284f6); | |
} | |
modifier onlyAdmins() { | |
require(isAdmins[msg.sender]); | |
_; | |
} | |
function queryMainContract() public view returns (address _addr) { | |
return iMainContract; | |
} | |
function queryAdmin(address _addr) public view returns(bool v) { | |
return isAdmins[_addr]; | |
} | |
function addAdmins(address _addr) public { | |
require(isAdmins[msg.sender]); | |
isAdmins[_addr] = true; | |
} | |
function setMainContractAddr(address _addr) onlyAdmins() public { | |
iMainContract = IMainContract(_addr); | |
} | |
function buy(uint256 _itemId) payable public { | |
iMainContract.buy(_itemId); | |
} | |
} | |
interface IMainContract { | |
function buy(uint256 _itemId) payable public; | |
function priceOf (uint256 _itemId) public view returns (uint256 _price); | |
function ownerOf (uint256 _itemId) public view returns (address _owner); | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment