我试图写出坚固的方法,检查给定的以太是否足以购买我的硬币。如果它足够我会给他们相应数量的硬币,但如果以太不够,我需要送回用于购买硬币的以太币。有没有办法做到这一点?
这是我写的买硬币的方法。
function buyTokens(uint256 noOfCoins) public payable returns (bool success){
if(CoinValue*noOfCoins <= msg.value)
{
balances[msg.sender] += noOfCoins;
return true;
}
else{
emit TokenIssues("You doesnt have enough balances to purchase these quartz base coins");
msg.sender.transfer(msg.value);
return false;
}
}
如果msg.value低于那么你想要的金额就会抛入else子句。这样,以太将返回给用户。