diff --git a/server/web3spider/metadata/Item.js b/server/web3spider/metadata/Item.js deleted file mode 100644 index 5daa397..0000000 --- a/server/web3spider/metadata/Item.js +++ /dev/null @@ -1,97 +0,0 @@ -const assert = require('assert'); -const utils = require('j7/utils'); -const bcutils = require('j7/bcutils'); -const basewrap = require('./basewrap'); -const factory = require('./factory'); - -const HERO_TYPE = 3; -const GUN_TYPE = 7; -const MATERIAL_TYPE = 10; -const BLIND_BOX_TYPE = 12; - -const CHIP_TYPE = 13; - -const MATERIAL_CHIP_SUBTYPE = 3; - -class Item extends basewrap.BaseWrap { - - getNftType() { - switch (this['type']) { - case HERO_TYPE: - { - return bcutils.HERO_TYPE; - } - break; - case GUN_TYPE: - { - return bcutils.EQUIP_TYPE; - } - break; - case MATERIAL_TYPE: - { - if (this['sub_type'] == MATERIAL_CHIP_SUBTYPE) { - return bcutils.CHIP_TYPE; - } else { - return bcutils.NONE_TYPE; - } - } - break; - case CHIP_TYPE: - { - return bcutils.CHIP_TYPE; - } - break; - case BLIND_BOX_TYPE: - { - return bcutils.BLIND_BOX_TYPE; - } - break; - default: - { - return bcutils.NONE_TYPE; - } - break; - } - return bcutils.NONE_TYPE; - } - - static randHero(transId) { - const val = Math.abs(utils.crc32Str(transId)); - const heros = [ - 30100, - 30200, - 30300, - 30400, - 30500, - 30600, - 30700, - 30800, - 30900, - 31000 - ]; - return heros[val % heros.length]; - } - - static randGun(transId) { - const val = Math.abs(utils.crc32Str(transId)); - const guns = [ - 70001, - 70002, - 70003, - 70004, - 70005, - 70006, - 70007 - ]; - return guns[val % guns.length]; - } - - randLuckBox(tokenType) { - const itemId = factory.callMetaStatic('LuckyBox', 'randLuckBox', this['id'], tokenType); - assert(itemId > 0); - return itemId; - } - -} - -module.exports = Item; diff --git a/server/web3spider/metadata/LuckyBox.js b/server/web3spider/metadata/LuckyBox.js deleted file mode 100644 index d9f3cd7..0000000 --- a/server/web3spider/metadata/LuckyBox.js +++ /dev/null @@ -1,52 +0,0 @@ -const assert = require('assert'); -const utils = require('j7/utils'); -const bcutils = require('j7/bcutils'); -const basewrap = require('./basewrap'); - -class LuckyBox extends basewrap.BaseWrap { - - static idTypeHash = { - - } - - _init0(factory) { - const key = this['box_id'] + '_' + this['type']; - if (!utils.hasKey(LuckyBox.idTypeHash, key)) { - LuckyBox.idTypeHash[key] = { - 'total_space': 0, - 'items': [] - }; - } - assert(this['weight'] > 0); - LuckyBox.idTypeHash[key]['total_space'] += this['weight']; - LuckyBox.idTypeHash[key]['items'].push({ - 'space': LuckyBox.idTypeHash[key]['total_space'], - 'meta': this - }); - const itemMeta = factory.getMetaByKey('Item', this['item_id']); - assert(itemMeta); - assert(itemMeta.getNftType() != bcutils.NONE_TYPE); - assert(itemMeta.getNftType() == this['type']); - } - - static randLuckBox(boxId, tokenType) { - const key = boxId + '_' + tokenType; - if (!utils.hasKey(LuckyBox.idTypeHash, key)) { - console.log(1111, key); - return 0; - } - const data = LuckyBox.idTypeHash[key]; - assert(data['total_space'] > 0); - const rand = utils.randRange(0, data['total_space'] - 1); - for (let i in data['items']) { - const item = data['items'][i]; - if (rand < item['space']) { - return item['meta']['item_id']; - } - } - return 0; - } - -} - -module.exports = LuckyBox; diff --git a/server/web3spider/metadata/Present.js b/server/web3spider/metadata/Present.js deleted file mode 100644 index f5b5540..0000000 --- a/server/web3spider/metadata/Present.js +++ /dev/null @@ -1,57 +0,0 @@ -const utils = require('j7/utils'); -const bcutils = require('j7/bcutils'); -const basewrap = require('./basewrap'); -const metaFactory = require('./factory'); - -class Present extends basewrap.BaseWrap { - - _init0 () { - const items = this['items'].split('|'); - let totalSpace = 0; - this._items = []; - items.forEach((tmpStr) => { - const item = tmpStr.split(':'); - item[1] = parseInt(item[1]); - totalSpace += item[1]; - const itemMeta = metaFactory.getMetaByKey('Item', item[0]); - if (!itemMeta) { - throw 'itemMeta is null' + this; - } - const nftType = itemMeta.getNftType(); - if (nftType == bcutils.NONE_TYPE) { - throw 'itemMeta nft type is null' + this; - } - this._items.push({ - 'space': totalSpace, - 'itemId': item[0], - 'tokenType': nftType - }); - }); - if (!(totalSpace > 0)) { - throw 'total not > 0' + this - } - this._totalSpace = totalSpace; - } - - randItem() { - const rand = utils.randRange(0, this._totalSpace); - for (let i in this._items) { - const item = this._items[i]; - if (rand < item['space']) { - return item; - } - } - return null; - } - - getCount() { - return this['quantity']; - } - - getTags() { - return this['tags']; - } - -} - -module.exports = Present; diff --git a/server/web3spider/metadata/PresentList.js b/server/web3spider/metadata/PresentList.js deleted file mode 100644 index 32d9535..0000000 --- a/server/web3spider/metadata/PresentList.js +++ /dev/null @@ -1,8 +0,0 @@ -const utils = require('j7/utils'); -const basewrap = require('./basewrap'); - -class PresentList extends basewrap.BaseWrap { - -} - -module.exports = PresentList; diff --git a/server/web3spider/metadata/factory.js b/server/web3spider/metadata/factory.js index 0860387..7c3ba48 100644 --- a/server/web3spider/metadata/factory.js +++ b/server/web3spider/metadata/factory.js @@ -113,20 +113,6 @@ function init() { '', 'GameDb' ); - registerMetaClass(configDir + 'present_list.json', - '', - 'PresentList' - ); - - registerMetaClass(resDir + 'item@item.json', - 'id', - 'Item' - ); - registerMetaClass(resDir + 'luckyBox@luckyBox.json', - 'id', - 'LuckyBox' - ); - load(); { const classList = [];