账户
0x1f...4d0b
0x1f...4D0b

0x1f...4D0b

$500
此合同的源代码已经过验证!
合同元数据
编译器
0.4.24+commit.e67f0147
语言
Solidity
合同源代码
文件 1 的 1:TakeSeat.sol
pragma solidity ^0.4.18;

contract TakeSeatEvents {
	// 
	event BuyTicket (
        address indexed plyr
    );
	//
	event Withdraw (
        address indexed plyr,
		uint256 indexed value,
		uint256 indexed num
    );
}

contract TakeSeat is TakeSeatEvents {
	uint256 constant private BuyValue = 1000000000000000000;
	address private admin_;

	constructor() public {
		admin_ = msg.sender;
	}
	
	modifier olnyAdmin() {
        require(msg.sender == admin_, "only for admin"); 
        _;
    }
	
	modifier checkBuyValue(uint256 value) {
        require(value == BuyValue, "please use right buy value"); 
        _;
    }
	
	modifier isHuman() {
        address _addr = msg.sender;
        uint256 _codeLength;
        
        assembly {_codeLength := extcodesize(_addr)}
        require(_codeLength == 0, "sorry humans only");
        _;
    }
	
	function buyTicket() isHuman() checkBuyValue(msg.value) public payable {
		emit TakeSeatEvents.BuyTicket(msg.sender);
	}
	
	function withdraw(address addr, uint256 value, uint256 num) olnyAdmin() public {
		addr.transfer(value);
		emit TakeSeatEvents.Withdraw(addr, value, num);
	}
}
设置
{
  "compilationTarget": {
    "TakeSeat.sol": "TakeSeat"
  },
  "evmVersion": "byzantium",
  "libraries": {},
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "remappings": []
}
ABI
[{"constant":false,"inputs":[{"name":"addr","type":"address"},{"name":"value","type":"uint256"},{"name":"num","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buyTicket","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"plyr","type":"address"}],"name":"BuyTicket","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"plyr","type":"address"},{"indexed":true,"name":"value","type":"uint256"},{"indexed":true,"name":"num","type":"uint256"}],"name":"Withdraw","type":"event"}]