card id改为number后, 修改对应的方法
This commit is contained in:
parent
1e49ef6def
commit
576f22786a
@ -22,7 +22,7 @@ export class ChangeCardCommand extends Command<CardGameState, { client: Client,
|
|||||||
let player = this.state.players.get(sessionId);
|
let player = this.state.players.get(sessionId);
|
||||||
let cardToRemove:Card[] = [];
|
let cardToRemove:Card[] = [];
|
||||||
for (let id of cards) {
|
for (let id of cards) {
|
||||||
let card = player.cards.get(id);
|
let card = player.cards.get(id + '');
|
||||||
cardToRemove.push(card);
|
cardToRemove.push(card);
|
||||||
}
|
}
|
||||||
let newCards = gameUtil.changeCard(this.state.cardQueue, player, cardToRemove);
|
let newCards = gameUtil.changeCard(this.state.cardQueue, player, cardToRemove);
|
||||||
|
@ -17,7 +17,7 @@ export class DiscardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
execute({ client, cards } = this.payload) {
|
execute({ client, cards } = this.payload) {
|
||||||
const player = this.state.players.get(client.sessionId);
|
const player = this.state.players.get(client.sessionId);
|
||||||
if (!player) {
|
if (!player) {
|
||||||
client.send('discard_card_s2c', {errcode: 1, errmsg: 'player不存在或者'});
|
client.send('discard_card_s2c', {errcode: 1, errmsg: 'player不存在'});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!gameUtil.checkCardsExists(player.cards, cards)) {
|
if (!gameUtil.checkCardsExists(player.cards, cards)) {
|
||||||
@ -30,7 +30,7 @@ export class DiscardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
}
|
}
|
||||||
let tmpCards = [];
|
let tmpCards = [];
|
||||||
for (let id of cards) {
|
for (let id of cards) {
|
||||||
tmpCards.push(player.cards.get(id));
|
tmpCards.push(player.cards.get(id + ''));
|
||||||
}
|
}
|
||||||
if (!gameUtil.checkDiscard(tmpCards)) {
|
if (!gameUtil.checkDiscard(tmpCards)) {
|
||||||
client.send('discard_card_s2c', {errcode: 4, errmsg: '出牌不符合规则'});
|
client.send('discard_card_s2c', {errcode: 4, errmsg: '出牌不符合规则'});
|
||||||
@ -38,9 +38,9 @@ export class DiscardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
}
|
}
|
||||||
this.state.cards.clear();
|
this.state.cards.clear();
|
||||||
for (let id of cards) {
|
for (let id of cards) {
|
||||||
this.state.cards.set(id, player.cards.get(id));
|
this.state.cards.set(id+'', player.cards.get(id + ''));
|
||||||
player.cards.delete(id);
|
player.cards.delete(id + '');
|
||||||
player.cardSet.delete(id);
|
player.cardSet.delete(id + '');
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 这说明是当前轮正常出牌,
|
* 这说明是当前轮正常出牌,
|
||||||
|
@ -22,15 +22,15 @@ export class EatCardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
client.send('eat_card_s2c', {errcode: 3, errmsg: '不能吃自己的牌'});
|
client.send('eat_card_s2c', {errcode: 3, errmsg: '不能吃自己的牌'});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!this.state.cards.has(target)) {
|
if (!this.state.cards.has(target + '')) {
|
||||||
client.send('eat_card_s2c', {errcode: 4, errmsg: '找不到要吃的牌'});
|
client.send('eat_card_s2c', {errcode: 4, errmsg: '找不到要吃的牌'});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let tmpCards = [];
|
let tmpCards = [];
|
||||||
for (let id of cards) {
|
for (let id of cards) {
|
||||||
tmpCards.push(player.cards.get(id));
|
tmpCards.push(player.cards.get(id + ''));
|
||||||
}
|
}
|
||||||
tmpCards.push(this.state.cards.get(target));
|
tmpCards.push(this.state.cards.get(target + ''));
|
||||||
if (!gameUtil.checkDiscard(tmpCards)) {
|
if (!gameUtil.checkDiscard(tmpCards)) {
|
||||||
client.send('discard_card_s2c', {errcode: 5, errmsg: '不符合吃牌规则'});
|
client.send('discard_card_s2c', {errcode: 5, errmsg: '不符合吃牌规则'});
|
||||||
return;
|
return;
|
||||||
@ -40,9 +40,9 @@ export class EatCardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for (let id of cards) {
|
for (let id of cards) {
|
||||||
this.state.cards.set(id, player.cards.get(id));
|
this.state.cards.set(id+'', player.cards.get(id + ''));
|
||||||
player.cards.delete(id);
|
player.cards.delete(id + '');
|
||||||
player.cardSet.delete(id);
|
player.cardSet.delete(id+'');
|
||||||
}
|
}
|
||||||
this.state.gameState = GameStateConst.STATE_PICK_PET;
|
this.state.gameState = GameStateConst.STATE_PICK_PET;
|
||||||
// 成功后广播吃牌成功消息
|
// 成功后广播吃牌成功消息
|
||||||
|
@ -12,6 +12,7 @@ export class BattleHandler {
|
|||||||
|
|
||||||
public init(cs: CardGameState){
|
public init(cs: CardGameState){
|
||||||
this._cs = cs;
|
this._cs = cs;
|
||||||
|
this._players = [];
|
||||||
};
|
};
|
||||||
|
|
||||||
public addPlayer(aplayer: Player){
|
public addPlayer(aplayer: Player){
|
||||||
@ -50,10 +51,10 @@ export class BattleHandler {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(cfg.typeId == EffectCardType.NPC){
|
if(cfg.typeId == EffectCardType.NPC){
|
||||||
|
|
||||||
}else if(cfg.typeId == EffectCardType.MAGIC){
|
}else if(cfg.typeId == EffectCardType.MAGIC){
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@ let gameUtil = {
|
|||||||
}
|
}
|
||||||
arrUtil.randomSort(types);
|
arrUtil.randomSort(types);
|
||||||
for (let i = 0; i < nums.length; i++) {
|
for (let i = 0; i < nums.length; i++) {
|
||||||
cards.push(new Card(nums[i] + 1, types[i] + '', i + ''));
|
cards.push(new Card(nums[i] + 1, types[i] + '', i));
|
||||||
}
|
}
|
||||||
arrUtil.randomSort(cards);
|
arrUtil.randomSort(cards);
|
||||||
return cards;
|
return cards;
|
||||||
@ -37,7 +37,7 @@ let gameUtil = {
|
|||||||
checkCardsExists(cardMap: Map<string, Card>, cardIds: Array<string>) {
|
checkCardsExists(cardMap: Map<string, Card>, cardIds: Array<string>) {
|
||||||
let result = true;
|
let result = true;
|
||||||
for (let id of cardIds) {
|
for (let id of cardIds) {
|
||||||
if (!cardMap.has(id)) {
|
if (!cardMap.has(id + '')) {
|
||||||
result = false;
|
result = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -55,8 +55,8 @@ let gameUtil = {
|
|||||||
for (let i = 0; i < count; i++) {
|
for (let i = 0; i < count; i++) {
|
||||||
let card = cardArr.pop();
|
let card = cardArr.pop();
|
||||||
cards.push(card);
|
cards.push(card);
|
||||||
player.cards.set(card.id, card);
|
player.cards.set(card.id + '', card);
|
||||||
player.cardSet.add(card.id);
|
player.cardSet.add(card.id + '');
|
||||||
}
|
}
|
||||||
return cards;
|
return cards;
|
||||||
},
|
},
|
||||||
@ -69,16 +69,16 @@ let gameUtil = {
|
|||||||
changeCard(cardArr: Card[], player: Player, targetCards: Card[]): Card[] {
|
changeCard(cardArr: Card[], player: Player, targetCards: Card[]): Card[] {
|
||||||
let cards: Card[] = [];
|
let cards: Card[] = [];
|
||||||
for (let card of targetCards) {
|
for (let card of targetCards) {
|
||||||
player.cards.delete(card.id);
|
player.cards.delete(card.id + '');
|
||||||
player.cardSet.delete(card.id);
|
player.cardSet.delete(card.id + '');
|
||||||
}
|
}
|
||||||
arrUtil.randomInsert(cardArr, targetCards);
|
arrUtil.randomInsert(cardArr, targetCards);
|
||||||
let count = targetCards.length;
|
let count = targetCards.length;
|
||||||
for (let i = 0; i < count; i++) {
|
for (let i = 0; i < count; i++) {
|
||||||
let card = cardArr.pop();
|
let card = cardArr.pop();
|
||||||
cards.push(card);
|
cards.push(card);
|
||||||
player.cards.set(card.id, card);
|
player.cards.set(card.id + '', card);
|
||||||
player.cardSet.add(card.id);
|
player.cardSet.add(card.id + '');
|
||||||
}
|
}
|
||||||
return cards;
|
return cards;
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user