【问题标题】:increase total supply of TRC20 token daily每天增加 TRC20 代币的总供应量
【发布时间】:2021-08-23 03:47:01
【问题描述】:

我想在 Tron 区块链上发行一个代币,我从以下地址获得了它的模板: https://github.com/TRON-Developer-Hub/TRC20-Contract-Template

问题是我想将我的代币设置为每天自动铸造指定数量的代币。 (例如每天铸造 2000 个代币)

我应该在模板中添加什么?

【问题讨论】:

    标签: token blockchain ethereum solidity tron


    【解决方案1】:

    你可以在下面添加一个函数。 但是你必须手动执行 mintDaily()

        uint256 constant private dailyMinted = 2000e18;
        uint256 lastMintTime;
    
        address public _owner;
        
        constructor(
            string memory name,
            string memory symbol,
            uint8 decimals,
            address owner
        ) public {
            _name = name;
            _symbol = symbol;
            _decimals = decimals;
    
            _owner = owner;
            lastMintTime = block.timestamp;
        }
        
        function mintDaily() public {
            require(_owner == msg.sender, "not permitted");
            // 24h = 86400
            require(lastMintTime + 86400 >= block.timestamp, "mint already" );
            _mint(msg.sender, dailyMinted);
            lastMintTime = block.timestamp;
        }
    

    【讨论】:

    • 您好,感谢您的回答。一个问题:你的意思是我需要每天手动调用 mintDaily() 函数吗?
    • 代码有问题:require(lastMintTime + 86400 >= block.timestamp, "mint already" );一定是这样的:require(lastMintTime + 86400 <= block.timestamp, "mint already" ); and lastMintTime = block.timestamp;在 mintDaily() 中必须是这样的:lastMintTime += 86400;(只是为未来的读者注意了这一点。)非常感谢您回答我的问题。
    猜你喜欢
    • 2021-07-19
    • 2023-02-22
    • 2021-07-21
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    • 2020-01-26
    • 2021-08-28
    相关资源
    最近更新 更多