Skip to content

Instantly share code, notes, and snippets.

@khofesh
Created September 8, 2021 15:07
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 khofesh/2e6fdfde5aa1015b9cd9a12bd3756e99 to your computer and use it in GitHub Desktop.
Save khofesh/2e6fdfde5aa1015b9cd9a12bd3756e99 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.7.6+commit.7338295f.js&optimize=false&runs=200&gist=
pragma solidity ^0.8.4;
contract SendMoney {
uint public balanceReceived;
uint public lockedUntil;
function receiveMoney() public payable {
balanceReceived += msg.value;
lockedUntil = block.timestamp + 1 minutes;
}
function getBalance() public view returns(uint) {
return address(this).balance;
}
function withdrawMoney() public {
if(lockedUntil < block.timestamp) {
address payable destination = payable(msg.sender);
destination.transfer(getBalance());
}
}
function withdrawMoneyTo(address payable _destination) public {
if(lockedUntil < block.timestamp) {
_destination.transfer(getBalance());
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment