becrypto/migrations/5_deploy_factory.js

30 lines
1.1 KiB
JavaScript

const Factory = artifacts.require('MinterFactory');
const Hero = artifacts.require('BEHero');
const Equip = artifacts.require('BEEquipment');
const Chip = artifacts.require('BEChip');
module.exports = async function (deployer, network, accounts) {
await deployer.deploy(Factory);
const factoryInstance = await Factory.deployed();
if(factoryInstance) {
console.log("Mint Factory successfully deployed.")
}
try {
let heroInstance = await Hero.deployed();
let equipInstance = await Equip.deployed();
let chipInstance = await Chip.deployed();
factoryInstance.init([
heroInstance.address,
equipInstance.address,
chipInstance.address
])
heroInstance.setMintFactory(factoryInstance.address);
equipInstance.setMintFactory(factoryInstance.address);
chipInstance.setMintFactory(factoryInstance.address);
console.log(
`Allow factory ${factoryInstance.address} to mint contract \n hero: ${heroInstance.address}, \n equip: ${equipInstance.address}, \n chip: ${chipInstance.address}`
);
} catch(err) {
console.log(err);
}
}