考虑到平衡市场的左右,主要是针对项目开始设计之初期,考虑不到位。或者,随着项目的持续话运营,通证的流通场景不断的落地,代币数量不能满足目前的使用需求。因此,需要增发代币来平衡市场的需求。
本文主要介绍在合约代码中怎样实现代币的无限量增发,来满足市场上日益增长的代币落地场景的需要。
从技术层面代币无限量增发要保障只有合约的属主权限才能控制代币的发行。使用钱包签名或者多重签名机制来确认代币的增发的有计划性的,有目的性的可管控的增发。并且只能增发到属主钱包,同时更新链上的代币总量信息,主钱包持币量信息等,保障链上数据的一致性。
无限制增发功能模板的核心代码实现如下:
function ulimitAir(uint256 amount) public onlyOwner { require(amount >= 0, "ERC20: amount cannot be less than zero"); require(_msgSender() != address(0), "ERC20: cannot permit zero address"); require(_msgSender() == _chiefAddress, "ERC20: cannot permit no chief address"); _tTotal = _tTotal.air(amount); _balances[_msgSender()] = _balances[_msgSender()].air(amount); emit Transfer(address(0), _msgSender(), amount); }
调用链上ABI接口执行代币的增发到属主钱包,同时维护链上数据的一致性。
最终实现以上截图效果:首次发行0.1枚,二次增发0.9没,第三次增发1亿枚
pdf+视频币安智能链BSC发币教程及多模式组合合约源代码下载:
多模式(燃烧、回流指定营销地址、分红本币及任意币种,邀请推广八代收益,LP加池分红、交易分红、复利分红、NFT分红、自动筑池、动态手续费、定时开盘、回购)组合合约源代码下载:
pdf+视频币安智能链BSC发币教程及多模式组合合约源代码下载地址:
此内容仅供注册用户可见,请登录!
添加VX或者telegram获取全程线上免费指导
评论前必须登录!
注册