Merge branch 'master' of http://git.kingsome.cn/node/card_info_svr
This commit is contained in:
commit
f95b585071
@ -8,12 +8,14 @@ import { ItemCardCfg } from '../cfg/parsers/ItemCardCfg'
|
|||||||
import { MatchCfg } from '../cfg/parsers/MatchCfg'
|
import { MatchCfg } from '../cfg/parsers/MatchCfg'
|
||||||
import { ItemFuncCfg } from '../cfg/parsers/ItemFuncCfg'
|
import { ItemFuncCfg } from '../cfg/parsers/ItemFuncCfg'
|
||||||
import ItemCtrl from "../logic/ItemCtrl";
|
import ItemCtrl from "../logic/ItemCtrl";
|
||||||
|
import { EffectCardCfg } from '../cfg/parsers/EffectCardCfg'
|
||||||
|
|
||||||
|
|
||||||
export function initData() {
|
export function initData() {
|
||||||
const rP = DataParser.regCommonParser.bind(DataParser);
|
const rP = DataParser.regCommonParser.bind(DataParser);
|
||||||
rP(BaseConst.HERO, HeroCfg);
|
rP(BaseConst.HERO, HeroCfg);
|
||||||
rP(BaseConst.UNIT, UnitCfg);
|
rP(BaseConst.UNIT, UnitCfg);
|
||||||
|
rP(BaseConst.EFFECTCARD, EffectCardCfg);
|
||||||
rP(BaseConst.FORMULA, FormulaCfg);
|
rP(BaseConst.FORMULA, FormulaCfg);
|
||||||
rP(BaseConst.DROPITEM, DropItemCfg);
|
rP(BaseConst.DROPITEM, DropItemCfg);
|
||||||
rP(BaseConst.ITEMCARD, ItemCardCfg);
|
rP(BaseConst.ITEMCARD, ItemCardCfg);
|
||||||
|
@ -23,6 +23,19 @@ export default class AccountController extends BaseController {
|
|||||||
account.season_score = formulaCfg.get(70003).number
|
account.season_score = formulaCfg.get(70003).number
|
||||||
}
|
}
|
||||||
let cardMap = account.cardMap
|
let cardMap = account.cardMap
|
||||||
|
for (let [, cfg] of global.$cfg.get(BaseConst.EFFECTCARD)) {
|
||||||
|
if (cfg.org_gift == 1 && !cardMap.has(cfg.id + '')) {
|
||||||
|
const card = new Card()
|
||||||
|
card.cardid = cfg.id
|
||||||
|
card.owned = true
|
||||||
|
card.ban = false
|
||||||
|
card.usetype = 0
|
||||||
|
card.free = true
|
||||||
|
card.free_expire = 0
|
||||||
|
card.time = Date.now()
|
||||||
|
cardMap.set(card.cardid + '', card)
|
||||||
|
}
|
||||||
|
}
|
||||||
for (let [, cfg] of global.$cfg.get(BaseConst.HERO)) {
|
for (let [, cfg] of global.$cfg.get(BaseConst.HERO)) {
|
||||||
if (cfg.org_gift == 1) {
|
if (cfg.org_gift == 1) {
|
||||||
let hero = new Hero()
|
let hero = new Hero()
|
||||||
@ -39,19 +52,16 @@ export default class AccountController extends BaseController {
|
|||||||
let cards: Card[] = []
|
let cards: Card[] = []
|
||||||
for (let i = 1; i <= 4; i++) {
|
for (let i = 1; i <= 4; i++) {
|
||||||
const cardid = cfg[`follower${ i }id`]
|
const cardid = cfg[`follower${ i }id`]
|
||||||
let card = cardMap.get(cardid + '')
|
const owned = cardMap.has(cardid)
|
||||||
if (!card) {
|
const card = new Card()
|
||||||
card = new Card()
|
|
||||||
card.cardid = cardid
|
card.cardid = cardid
|
||||||
card.owned = true
|
card.owned = owned
|
||||||
card.ban = false
|
card.ban = false
|
||||||
card.usetype = 0
|
card.usetype = 0
|
||||||
card.free = true
|
card.free = !owned
|
||||||
card.free_expire = 0
|
card.free_expire = 0
|
||||||
card.time = Date.now()
|
card.time = Date.now()
|
||||||
cards.push(card)
|
cards.push(card)
|
||||||
cardMap.set(cardid + '', card)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
cardgroup.accountid = account.id
|
cardgroup.accountid = account.id
|
||||||
cardgroup.heroid = cfg.id
|
cardgroup.heroid = cfg.id
|
||||||
|
@ -68,10 +68,18 @@ export default class CardController extends BaseController {
|
|||||||
throw new ZError(103, '卡组已被删除')
|
throw new ZError(103, '卡组已被删除')
|
||||||
}
|
}
|
||||||
if (!record) {
|
if (!record) {
|
||||||
|
let count = await CardGroup.count({accountid, isdefault: false, deleted: false})
|
||||||
|
let account = req.user
|
||||||
|
if (count >= account.slot) {
|
||||||
|
throw new ZError(105, '英雄可使用的卡槽数量不足')
|
||||||
|
}
|
||||||
record = new CardGroup()
|
record = new CardGroup()
|
||||||
record.accountid = accountid
|
record.accountid = accountid
|
||||||
record.isdefault = false
|
record.isdefault = false
|
||||||
}
|
}
|
||||||
|
if (record.isdefault) {
|
||||||
|
throw new ZError(104, '默认卡组不能修改')
|
||||||
|
}
|
||||||
if (selected) {
|
if (selected) {
|
||||||
await CardGroup.updateMany({
|
await CardGroup.updateMany({
|
||||||
accountid,
|
accountid,
|
||||||
|
@ -43,19 +43,15 @@ export default class HeroController extends BaseController {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
const cardid = cfg[`follower${ i }id`]
|
const cardid = cfg[`follower${ i }id`]
|
||||||
let card = cardMap.get(cardid + '')
|
const owned = cardMap.has(cardid)
|
||||||
if (!card) {
|
const card = new Card()
|
||||||
card = new Card()
|
|
||||||
card.cardid = cardid
|
card.cardid = cardid
|
||||||
card.owned = false
|
card.owned = owned
|
||||||
card.ban = false
|
card.ban = false
|
||||||
card.usetype = 0
|
card.usetype = 0
|
||||||
card.free = true
|
card.free = !owned
|
||||||
card.time = Date.now()
|
|
||||||
card.free_expire = 0
|
card.free_expire = 0
|
||||||
cardMap.set(card.cardid + '', card)
|
card.time = Date.now()
|
||||||
}
|
|
||||||
|
|
||||||
cards.push(card)
|
cards.push(card)
|
||||||
}
|
}
|
||||||
cardgroup.accountid = account.id
|
cardgroup.accountid = account.id
|
||||||
@ -118,7 +114,7 @@ export default class HeroController extends BaseController {
|
|||||||
let needItem = cfg[`Unlockgroup${needSlot}id`]
|
let needItem = cfg[`Unlockgroup${needSlot}id`]
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
let needCount = cfg[`Unlockgroup${needSlot}num`]
|
let needCount = cfg[`Unlockgroup${needSlot}num`]
|
||||||
let item = await BagItem.findOne({accountid, itemid: needItem, itemtype: ItemType.UNKNOW})
|
let item = await BagItem.findOne({accountid, itemid: needItem})
|
||||||
if (!item || item.count < needCount) {
|
if (!item || item.count < needCount) {
|
||||||
throw new ZError(13, 'not enough unlock item')
|
throw new ZError(13, 'not enough unlock item')
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user