becrypto/migrations/16_deploy_genesis.js

60 lines
2.1 KiB
JavaScript

const Box = artifacts.require("tokens/erc721/BEBadge");
const Metadata = artifacts.require("core/JSONMetadata");
const base = require("../scripts/base");
const config = require("../config/config");
const Wallet = artifacts.require("core/BEMultiSigWallet");
module.exports = async function (deployer, network, accounts) {
const name = "Genesis";
const symbol = "GENESIS";
// await deployer.deploy(Box, name, symbol, 0);
const gachaInstance = await Box.deployed();
if (gachaInstance) {
console.log("genesis successfully deployed.");
}
// base.updateArray({
// name: "Genesis",
// type: "erc721",
// json: "assets/contracts/BEBadge.json",
// address: gachaInstance.address,
// network,
// });
// await deployer.deploy(Metadata);
const metadataInstance = await Metadata.deployed();
if (metadataInstance) {
console.log("metadataInstance successfully deployed.");
}
// base.updateArray({
// name: "JSONMetadata",
// type: "logic",
// json: "assets/contracts/JSONMetadata.json",
// address: metadataInstance.address,
// network,
// });
const mtname = name
const mtdesc = "This is a Badge exclusive to Genesis players.\\nIt not only symbolizes your identity but also grants you multiple privileges in CounterFire.\\nCounterFire is the highly-anticipated first blockchain-based game to offer a unique combination of MOBA and Battle Royale gameplay."
const mtimg = "https://gateway.pinata.cloud/ipfs/QmZMACm4KkPCVJmpfbBy1qjKQ9HnA1UPWvMLFnoCgWCB7L"
const mtex = ',"animation_url": "https://gateway.pinata.cloud/ipfs/QmULSKeUJAEzU8RA8iYsqTgGi88ZQuGWQdjrQfrLeFpaKD"'
await metadataInstance.setMetaData(
gachaInstance.address,
mtname,
mtdesc,
mtimg,
mtex
);
console.log(`success update metadata for: ${gachaInstance.address}`);
await gachaInstance.updateMetaAddress(metadataInstance.address);
console.log(`success update meta address for: ${gachaInstance.address}`);
const walletInstance = await Wallet.deployed();
await gachaInstance.setMintRole(walletInstance.address);
console.log(
`success set mint role to: ${walletInstance.address} claim box `
);
};