修改机器人的吃牌逻辑
This commit is contained in:
parent
58f5e92e6c
commit
4b684bb524
@ -165,7 +165,7 @@ export class Robot {
|
|||||||
let self = this;
|
let self = this;
|
||||||
let cardArr = [...self.player.cards.values()];
|
let cardArr = [...self.player.cards.values()];
|
||||||
let cards = assistantUtil.checkTriple(cardArr, targetCard);
|
let cards = assistantUtil.checkTriple(cardArr, targetCard);
|
||||||
if (!cards) {
|
if (!cards || cards.length == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let cardIds: number[] = [];
|
let cardIds: number[] = [];
|
||||||
|
@ -142,7 +142,7 @@ export class RobotClient implements Client {
|
|||||||
let self = this;
|
let self = this;
|
||||||
let cardArr = [...self.selfPlayer.cards.values()];
|
let cardArr = [...self.selfPlayer.cards.values()];
|
||||||
let cards = assistantUtil.checkTriple(cardArr, targetCard);
|
let cards = assistantUtil.checkTriple(cardArr, targetCard);
|
||||||
if (!cards) {
|
if (!cards || cards.length == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let cardIds: number[] = [];
|
let cardIds: number[] = [];
|
||||||
|
@ -21,7 +21,6 @@ let assistantUtil = {
|
|||||||
* @param card 目标牌
|
* @param card 目标牌
|
||||||
*/
|
*/
|
||||||
checkTriple(cardArr: Card[], card?: Card): Card[] {
|
checkTriple(cardArr: Card[], card?: Card): Card[] {
|
||||||
if (card) cardArr.push(card);
|
|
||||||
let maxCount = card ? new GameEnv().otherEatCount : new GameEnv().selfEatCount;
|
let maxCount = card ? new GameEnv().otherEatCount : new GameEnv().selfEatCount;
|
||||||
let pointMap: Map<number, Card[]> = new Map();
|
let pointMap: Map<number, Card[]> = new Map();
|
||||||
let cardIdSet: Set<number> = new Set();
|
let cardIdSet: Set<number> = new Set();
|
||||||
@ -38,6 +37,16 @@ let assistantUtil = {
|
|||||||
}
|
}
|
||||||
cardIdSet.add(c.number);
|
cardIdSet.add(c.number);
|
||||||
}
|
}
|
||||||
|
if (card && (card.type == CardType.general || card.type == CardType.variable_unit)) {
|
||||||
|
if (pointMap.has(card.number)) {
|
||||||
|
let arr = pointMap.get(card.number);
|
||||||
|
arr.push(card);
|
||||||
|
pointMap.set(card.number, arr);
|
||||||
|
} else {
|
||||||
|
pointMap.set(card.number, [card]);
|
||||||
|
}
|
||||||
|
cardIdSet.add(card.number);
|
||||||
|
}
|
||||||
let fetched = false;
|
let fetched = false;
|
||||||
let result: Card[] = [];
|
let result: Card[] = [];
|
||||||
// 优先出对子
|
// 优先出对子
|
||||||
|
Loading…
x
Reference in New Issue
Block a user