2023-10-21 18:54:45 +00:00
|
|
|
import { Data, Meta } from '#miao'
|
2023-05-16 05:04:43 +00:00
|
|
|
import lodash from 'lodash'
|
2023-10-25 19:03:33 +00:00
|
|
|
import { abbr, aliasCfg } from './alias.js'
|
2023-05-16 05:04:43 +00:00
|
|
|
|
2023-05-20 13:51:44 +00:00
|
|
|
const types = '存护,丰饶,毁灭,同谐,虚无,巡猎,智识'.split(',')
|
2023-05-16 05:04:43 +00:00
|
|
|
let data = Data.readJSON('/resources/meta-sr/weapon/data.json', 'miao')
|
|
|
|
|
2023-10-23 14:14:09 +00:00
|
|
|
const meta = Meta.create('sr', 'weapon')
|
2023-10-21 18:54:45 +00:00
|
|
|
meta.addData(data)
|
2023-10-23 14:14:09 +00:00
|
|
|
meta.addAlias(aliasCfg)
|
|
|
|
meta.addAbbr(abbr)
|
2023-05-20 13:51:44 +00:00
|
|
|
|
|
|
|
const weaponBuffs = {}
|
|
|
|
let loadBuffs = async function () {
|
|
|
|
for (let type of types) {
|
|
|
|
let calc = await Data.importDefault(`/resources/meta-sr/weapon/${type}/calc.js`, 'miao')
|
|
|
|
if (lodash.isFunction(calc)) {
|
|
|
|
calc = calc((idx, key) => {
|
|
|
|
return {
|
|
|
|
isStatic: true,
|
|
|
|
idx,
|
|
|
|
key
|
|
|
|
}
|
2023-05-22 19:19:45 +00:00
|
|
|
}, (title, key, idx) => {
|
2023-05-23 19:30:30 +00:00
|
|
|
if (lodash.isPlainObject(key)) {
|
2023-05-22 19:19:45 +00:00
|
|
|
return (tables) => {
|
|
|
|
let data = {}
|
|
|
|
lodash.forEach(key, (idx, k) => {
|
|
|
|
data[k] = tables[idx]
|
|
|
|
})
|
|
|
|
return {
|
|
|
|
title,
|
|
|
|
data
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
return {
|
|
|
|
title,
|
|
|
|
idx,
|
|
|
|
key
|
|
|
|
}
|
2023-05-21 18:13:38 +00:00
|
|
|
}
|
2023-05-20 13:51:44 +00:00
|
|
|
})
|
|
|
|
}
|
|
|
|
lodash.forEach(calc, (ds, key) => {
|
2023-10-23 14:14:09 +00:00
|
|
|
let id = meta.getId(key)
|
|
|
|
if (id) {
|
|
|
|
weaponBuffs[id] = ds
|
|
|
|
}
|
2023-05-20 13:51:44 +00:00
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
await loadBuffs()
|
|
|
|
|
2023-10-21 18:54:45 +00:00
|
|
|
meta.addMeta({ weaponBuffs })
|