修改解锁英雄的逻辑

This commit is contained in:
zhl 2021-01-21 20:56:57 +08:00
parent e71d984e53
commit 3ebd25f3ce
4 changed files with 61 additions and 22 deletions

View File

@ -450,6 +450,34 @@
}
```
### 17. 分解卡片
1. Method: POST
2. URI: /api/:accountid/card/destory
| 字段 | 说明 |
| -------- | -------------------------------------- |
| accountid | 帐号id |
> POST参数
| 字段 | 说明 |
| -------- | -------------------------------------- |
| cardid |卡牌id |
| count |使用数量 |
3. Response: JSON
```js
[ //物品列表
{
"itemid": 0, //道具id
"itemnum": 0, //道具数量
},
]
```
@ -473,6 +501,4 @@
```
```

View File

@ -40,16 +40,17 @@ export default class AccountController extends BaseController {
let cards: Card[] = []
for (let i = 1; i <= 4; i++) {
const cardid = cfg[`follower${ i }id`]
let card = new Card()
card.cardid = cardid
card.owned = true
card.ban = false
card.usetype = 0
card.free = true
card.free_expire = 0
card.time = Date.now()
cards.push(card)
if (!cardMap.has(cardid + '')) {
let card = cardMap.get(cardid + '')
if (!card) {
card = new Card()
card.cardid = cardid
card.owned = true
card.ban = false
card.usetype = 0
card.free = true
card.free_expire = 0
card.time = Date.now()
cards.push(card)
cardMap.set(cardid + '', card)
}
}

View File

@ -165,4 +165,11 @@ export default class CardController extends BaseController {
await account.save()
return results
}
@router('post /api/:accountid/card/destory')
async destoryCard(req: any) {
let { cardid, count, accountid } = req.params
return {}
}
}

View File

@ -34,7 +34,7 @@ export default class HeroController extends BaseController {
hero = await account.unlockHero(heroid, userMoney)
// 将该英雄的默认卡组添加到玩家的卡组中,
// 将默认卡组里的卡添加到玩家可用卡牌中
let cardSet = new Set(account.cards)
let cardMap = account.cardMap
let cfg = global.$cfg.get(BaseConst.HERO).get(parseInt(hero.heroid))
let cardgroup = new CardGroup({})
let cards: Card[] = []
@ -42,15 +42,21 @@ export default class HeroController extends BaseController {
if (!cfg[`follower${ i }id`]) {
break
}
let card = new Card()
card.cardid = cfg[`follower${ i }id`]
card.owned = false
card.ban = false
card.usetype = 0
card.free = true
card.free_expire = 0
const cardid = cfg[`follower${ i }id`]
let card = cardMap.get(cardid + '')
if (!card) {
card = new Card()
card.cardid = cardid
card.owned = false
card.ban = false
card.usetype = 0
card.free = true
card.time = Date.now()
card.free_expire = 0
cardMap.set(card.cardid + '', card)
}
cards.push(card)
cardSet.add(card.cardid)
}
cardgroup.accountid = account.id
cardgroup.heroid = hero.heroid
@ -58,7 +64,6 @@ export default class HeroController extends BaseController {
cardgroup.isdefault = true
cardgroup.cards = cards
await cardgroup.save()
account.cards = [...cardSet]
await account.save()
} else {
hero = await account.tryHero(heroid)