文件 1 的 1:OfferingOne.sol
pragma solidity ^0.8.7;
contract OfferingOne {
mapping(address => bool) private gifts;
uint private i = 0;
uint private constant w = 10 ** 16;
function acceptGift() external payable {
if (!gifts[msg.sender] && i < 99 && address(this).balance >= w) {
(bool _success, ) = payable(msg.sender).call{value: w}("");
if (_success) {
gifts[msg.sender] = true;
i++;
}
}
}
receive () external payable {}
}
{
"compilationTarget": {
"contracts/OfferingOne.sol": "OfferingOne"
},
"evmVersion": "london",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": true,
"runs": 200
},
"remappings": []
}