sendではなく、recipient.callで送信してますね。
pragma solidity ^0.8.0; constract ConditionTransfer { address public owner; address payable public recipient; uint256 public unlockTime; constructor(address payable _recipient, uint256 _unlockTime) { owner = msg.sender; recipient = _recipient; unlockTime = _unlockTime; } receive() external payable {} function release() external { require(msg.sender == owner, "Only owner can release funds"); require(block.timestamp >= unlockTime, "Funds are locked"); uint256 amount = address(this).balance; require(amount > 0, "No funds to send"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Transfer failed"); } }