Rewards Claiming

Users claim rewards directly from the contract via the dApp interface:

// ```solidity
function claimRewards() external {
    uint256 amount = claimableRewards[msg.sender];
    require(amount > 0, "zero reward");
    if (balanceOf[rewardAddress] - amount > 0) {
        balanceOf[rewardAddress] -= amount;
        balanceOf[msg.sender] += amount;
        claimableRewards[msg.sender] = 0;
        claimedrewards[msg.sender] += amount;
        lastTXtime[rewardAddress] = block.timestamp;
        emit Transfer(rewardAddress, msg.sender, amount);
    }
}

Rewards accumulate in claimableRewards based on transaction activity and eligibility.

Last updated