一、说明
合约部署到coinbase layer2 base主网,上线baseswap交易所。主要实现base链上持币分红、lp分红ETH、营销钱包回流ETH功能。并且在合约部署完成后自动将90%代币映射到合约地址,从合约地址直接添加流动性,不再才有钱包地址手动添加流动性的方式,避免被抢开盘的软件检测到流动性初始添加影响代币价格。可以控制代币上线baseswap后的交易时间,单笔交易最大限额,手续费白名单等。设置不同的买入,卖出,转账,添加及撤销流动性不同的交易手续费。合约具体功能如下:
1. 该合约功能主要包括:持币分红+营销钱包分红eth+lp分红eth(lpfee部分)回流eth
2. 具备单笔交易最大交易额限制
3. 代币发行90%直接映射到合约地址中,10%给接收者钱包地址
4. 启动launch,直接从合约地址添加流动性,90%代币全部进入资金池
5. 可以分别设置买入,卖出、转账,添加及撤销流动性手续费
6.手续费包括:持币分红,营销钱包回流eth,lp分红eth
二、功能核心模块代码说明
- 本币跨资金池兑换eth部分核心功能
function _swapBack() internal swapping {
Fee memory __sellFee = sellFee;
uint256 __swapThreshold = swapThreshold;
uint256 amountToSwap = __swapThreshold;
approve(address(ROCKETSWAP_ROUTER), amountToSwap);
// swap
address[] memory path = new address[](2);
path[0] = address(this);
path[1] = ROCKETSWAP_ROUTER.WETH();
ROCKETSWAP_ROUTER.swapExactTokensForETHSupportingFeeOnTransferTokens(
amountToSwap,
0,
path,
address(this),
block.timestamp
);
uint256 amountETH = address(this).balance;
uint256 totalSwapFee = __sellFee.total - __sellFee.reflection;
uint256 amountETHLP = (amountETH * __sellFee.lp) / totalSwapFee;
uint256 amountETHBuyback = (amountETH * __sellFee.buyback) /
totalSwapFee;
// send
(tmpSuccess, ) = payable(buybackFeeReceiver).call{
value: amountETHBuyback
}("");
}
2. 持币分红部分代币reflect核心代码
function _takeFeeInProportions(
bool buying,
address sender,
uint256 proportionAmount
) internal returns (uint256) {
Fee memory __buyFee = buyFee;
Fee memory __sellFee = sellFee;
uint256 proportionFeeAmount = buying
? (proportionAmount * __buyFee.total) / 100
: (proportionAmount * __sellFee.total) / 100;
// reflect
uint256 proportionReflected = buying == true
? (proportionFeeAmount * __buyFee.reflection) / __buyFee.total
_totalProportion = _totalProportion - proportionAmount ;
// take fees
uint256 _proportionToContract = proportionFeeAmount -
proportionReflected;
if (_proportionToContract > 0) {
_rOwned[address(this)] =
_rOwned[address(this)];
emit Transfer(
sender,
address(this),
tokenFromReflection(_proportionToContract)
);
}
emit Reflect(proportionReflected, _totalProportion);
return proportionAmount - proportionFeeAmount;
}
3. 合约地址直接添加流动性代码部分
ROCKETSWAP_ROUTER.addLiquidityETH{value: address(this).balance}(
address(this),
balanceOf(address(this)),
0,
0,
_owner,
block.timestamp
);
4. LP分红eth完整核心代码
function processReward(uint256 gas) private {
if (progressRewardBlock.add(progressRewardBlockDebt) > block.number) {
return;
}
uint256 balance = FIST.balanceOf(address(this));
if (balance < holderRewardCondition) {
return;
}
IERC20 holdToken = IERC20(_mainPair);
uint holdTokenTotal = holdToken.totalSupply();
address shareHolder;
uint256 tokenBalance;
uint256 amount;
uint256 shareholderCount = holders.length;
uint256 gasUsed = 0;
uint256 iterations = 0;
uint256 gasLeft = gasleft();
uint256 holdCondition = holderCondition;
while (gasUsed < gas && iterations < shareholderCount) {
shareHolder = holders[currentIndex];
tokenBalance = holdToken.balanceOf(shareHolder);
if (tokenBalance >= holdCondition && !excludeHolder[shareHolder]) {
amount = balance.mul(tokenBalance).div(holdTokenTotal);
if (amount > 0) {
_takeInviterReward(shareHolder, amount);
}
}
gasUsed = gasUsed + (gasLeft - gasleft());
gasLeft = gasleft();
iterations++;
}
progressRewardBlock = block.number;
}
三、开源操作合约部署详情
四、完整版持币分红+lp分红ETH+营销钱包回流ETH功能源代码
源码及合约部署、开源、上线交易所、动态参数配置教程下载地址:
至此,完成base链上部署合约实现持币分红+lp分红ETH+营销钱包回流ETH功能上线baseswap交易所的所有操作流程。
pdf+视频Coinbase base链发币教程及多模式组合合约源代码下载:
Coinbase base链发币(合约部署、开源、锁仓、LP、参数配置、开发、故障处理、工具使用)教程下载:
多模式(燃烧、回流指定营销地址、分红本币及任意币种,邀请推广八代收益,LP加池分红、交易分红、复利分红、NFT分红、自动筑池、动态手续费、定时开盘、回购)组合合约源代码下载:
pdf+视频Coinbase base发币教程及多模式组合合约源代码下载地址:
添加VX或者telegram获取全程线上免费指导
评论前必须登录!
注册