diff --git a/server/web3dbspider/services/events/FounderTag/transfer.js b/server/web3dbspider/services/events/FounderTag/transfer.js new file mode 100644 index 0000000..09ed843 --- /dev/null +++ b/server/web3dbspider/services/events/FounderTag/transfer.js @@ -0,0 +1,34 @@ +const log = require('j7/log'); +const bcutils = require('j7/bcutils'); +const utils = require('j7/utils'); +const bcconst = require('common/bcconst'); +const BaseEventProcess = require('../common/BaseEventProcess'); +const metaFactory = require('../../../metadata/factory'); + +class Transfer extends BaseEventProcess { + + async start() { + const returnValues = this.getReturnValues(); + const from = bcutils.toNormalAddress(returnValues['from']); + const to = bcutils.toNormalAddress(returnValues['to']); + const tokenId = returnValues['tokenId']; + + await this.mustBeMint(to, tokenId, bcconst.BC_NFT_GOLD_BULLION); + if (bcutils.isSysAddress(from)) { + await this.ingameActivate(from, to, tokenId, bcconst.BC_NFT_GOLD_BULLION); + } else { + await this.add721NftRefresh + ( + this.getNetId(), + this.getContractAddress(), + this.getContractName(), + tokenId + ); + } + await this.update721NftOwner(tokenId, this.getContractAddress(), to, from); + await this.markOk(); + } + +} + +module.exports = Transfer; diff --git a/server/web3dbspider/services/events/factory.js b/server/web3dbspider/services/events/factory.js index a431342..0f70b32 100644 --- a/server/web3dbspider/services/events/factory.js +++ b/server/web3dbspider/services/events/factory.js @@ -21,6 +21,7 @@ async function init() { await add('CFHero.Transfer', 'CFHero/transfer'); await add('CFHero_normal.Transfer', 'CFHero_normal/transfer'); await add('GoldBrick.Transfer', 'GoldBrick/transfer'); + await add('FounderTag.Transfer', 'FounderTag/transfer'); await add('NFTLock.Lock', 'NFTLock/lock'); }