42 lines
1.4 KiB
TypeScript
42 lines
1.4 KiB
TypeScript
import { HardhatRuntimeEnvironment } from "hardhat/types";
|
|
import { DeployFunction } from "hardhat-deploy/types";
|
|
import { loadData, updateArray } from "../scripts/utils"
|
|
|
|
|
|
const deployNFTClaim: DeployFunction =
|
|
async function (hre: HardhatRuntimeEnvironment) {
|
|
const provider = hre.ethers.provider;
|
|
const from = await (await provider.getSigner()).getAddress();
|
|
const config = require(`../config/config_${hre.network.name}`);
|
|
const cfgs = loadData({network: hre.network.name})
|
|
const nftAddress = cfgs.find((c: any) => c.name === "CFHero").address
|
|
const mintConfig = [
|
|
config.mint.maxSupply,
|
|
config.mint.mintCurrency,
|
|
config.mint.mintPrice,
|
|
config.mint.mintFeeAddress,
|
|
config.mint.airdropCount
|
|
]
|
|
const startNftId = config.mint.mintStartNftId
|
|
const ret = await hre.deployments.deploy("NFTClaimStage2WL", {
|
|
from,
|
|
args: [nftAddress, startNftId, mintConfig],
|
|
log: true,
|
|
});
|
|
console.log("==NFTClaimStage2WL addr=", ret.address);
|
|
const _contract = new hre.ethers.Contract(ret.address, ret.abi, provider);
|
|
var mintCfg= await _contract.mintConfig();
|
|
console.log("list", mintCfg);
|
|
updateArray({
|
|
name: "NFTClaimStage2WL",
|
|
type: "logic",
|
|
json: "assets/contracts/NFTClaimStage2WL.json",
|
|
address: ret.address,
|
|
network: hre.network.name,
|
|
});
|
|
};
|
|
|
|
deployNFTClaim.tags = ["NFTClaimStage2WL"];
|
|
|
|
export default deployNFTClaim;
|