88 lines
3.2 KiB
JavaScript
88 lines
3.2 KiB
JavaScript
const MarketPlace = artifacts.require('MarketPlace');
|
|
const Factory = artifacts.require('MinterFactory');
|
|
const EvolveProxy = artifacts.require('EvolveProxy');
|
|
const Box = artifacts.require('BEBoxMall');
|
|
const Hero = artifacts.require('BEHero');
|
|
const Equip = artifacts.require('BEEquipment');
|
|
const Chip = artifacts.require('BEChip');
|
|
const Coin = artifacts.require('BECoin');
|
|
const config = require("../config/config");
|
|
|
|
|
|
module.exports = async function (deployer, network, accounts) {
|
|
|
|
const heroInstance = await Hero.deployed();
|
|
const equipInstance = await Equip.deployed();
|
|
const chipInstance = await Chip.deployed();
|
|
|
|
await heroInstance.updateBaseURI(config.token.baseTokenURI)
|
|
console.log("BEHero baseURI update success.")
|
|
|
|
|
|
await equipInstance.updateBaseURI(config.token.baseTokenURI)
|
|
console.log("Equip baseURI update success.")
|
|
|
|
await chipInstance.updateBaseURI(config.token.baseTokenURI)
|
|
console.log("Chip baseURI update success.")
|
|
|
|
const marketInstance = await MarketPlace.deployed();
|
|
if(marketInstance) {
|
|
await marketInstance.setFeeToAddress(config.market.feeToAddress);
|
|
await marketInstance.setTransactionFee(400);
|
|
const coinInstance = await Coin.deployed();
|
|
config.market.paymentTokens.push(coinInstance.address);
|
|
await marketInstance.setPaymentTokens(config.market.paymentTokens);
|
|
|
|
|
|
await heroInstance.addApprovalWhitelist(marketInstance.address);
|
|
await heroInstance.setApprovalForAll(marketInstance.address);
|
|
await equipInstance.addApprovalWhitelist(marketInstance.address);
|
|
await equipInstance.setApprovalForAll(marketInstance.address);
|
|
await chipInstance.addApprovalWhitelist(marketInstance.address);
|
|
await chipInstance.setApprovalForAll(marketInstance.address);
|
|
console.log(
|
|
`Allow operation ${marketInstance.address} to reduce gas fee`
|
|
);
|
|
}
|
|
|
|
const factoryInstance = await Factory.deployed();
|
|
if(factoryInstance) {
|
|
await factoryInstance.init([
|
|
heroInstance.address,
|
|
equipInstance.address,
|
|
chipInstance.address
|
|
])
|
|
await heroInstance.setMintFactory(factoryInstance.address);
|
|
await equipInstance.setMintFactory(factoryInstance.address);
|
|
await 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}`
|
|
);
|
|
}
|
|
|
|
const proxyInstance = await EvolveProxy.deployed();
|
|
if(proxyInstance) {
|
|
await proxyInstance.init([
|
|
heroInstance.address,
|
|
equipInstance.address,
|
|
chipInstance.address
|
|
])
|
|
await heroInstance.setBurnProxy(proxyInstance.address);
|
|
await equipInstance.setBurnProxy(proxyInstance.address);
|
|
await chipInstance.setBurnProxy(proxyInstance.address);
|
|
console.log(
|
|
`Allow proxy ${proxyInstance.address} to burn contract \n hero: ${heroInstance.address}, \n equip: ${equipInstance.address}, \n chip: ${chipInstance.address}`
|
|
);
|
|
}
|
|
|
|
|
|
const boxInstance = await Box.deployed();
|
|
if(boxInstance) {
|
|
await boxInstance.setPaymentReceivedAddress(config.market.mallFeeAddress);
|
|
console.log(
|
|
`update payment received address: ${config.market.mallFeeAddress}`
|
|
);
|
|
}
|
|
|
|
|
|
} |