player增加cardQueue用于记录上一手牌
This commit is contained in:
parent
29d1cd73d3
commit
e8ddc4112f
@ -53,9 +53,9 @@ export class DiscardCommand extends Command<CardGameState, { client: Client, car
|
|||||||
let newCount = player.extraTime - Math.min(count, 0);
|
let newCount = player.extraTime - Math.min(count, 0);
|
||||||
player.extraTime = Math.max(newCount, 0);
|
player.extraTime = Math.max(newCount, 0);
|
||||||
}
|
}
|
||||||
let tmpCard = player.cards.get(cards[0] + '');
|
|
||||||
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.cardQueue.push(player.cards.get(id + ''));
|
||||||
player.cards.delete(id + '');
|
player.cards.delete(id + '');
|
||||||
player.cardSet.delete(id + '');
|
player.cardSet.delete(id + '');
|
||||||
}
|
}
|
||||||
|
@ -69,11 +69,13 @@ export class EatConfirmCommand extends Command<CardGameState, { timeUp: boolean
|
|||||||
debugRoom(`真的开始吃牌了: ${player.id}, 场上牌: ${this.state.cards.size}, isFirst: ${isFirst}, timeUp: ${timeUp}`);
|
debugRoom(`真的开始吃牌了: ${player.id}, 场上牌: ${this.state.cards.size}, isFirst: ${isFirst}, timeUp: ${timeUp}`);
|
||||||
// 如果有吃牌计时的话,停止吃牌计时
|
// 如果有吃牌计时的话,停止吃牌计时
|
||||||
this.room.stopSchedule('eat_round');
|
this.room.stopSchedule('eat_round');
|
||||||
// if (this.room.mainClock?.active) {
|
let currentPlayer = this.state.players.get(this.state.currentTurn);
|
||||||
// this.room.mainClock.clear();
|
currentPlayer.cardQueue.clear();
|
||||||
// }
|
player.cardQueue.clear();
|
||||||
|
player.cardQueue.push(this.state.cards.values().next().value);
|
||||||
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.cardQueue.push(player.cards.get(id + ''));
|
||||||
player.cards.delete(id + '');
|
player.cards.delete(id + '');
|
||||||
player.cardSet.delete(id + '');
|
player.cardSet.delete(id + '');
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@ export class NextTurnCommand extends Command<CardGameState, {}> {
|
|||||||
? sessionIds[(sessionIds.indexOf(this.state.currentTurn) + 1) % sessionIds.length]
|
? sessionIds[(sessionIds.indexOf(this.state.currentTurn) + 1) % sessionIds.length]
|
||||||
: sessionIds[0]);
|
: sessionIds[0]);
|
||||||
let player = this.state.players.get(this.state.currentTurn);
|
let player = this.state.players.get(this.state.currentTurn);
|
||||||
|
player.cardQueue.clear();
|
||||||
if (!player) {
|
if (!player) {
|
||||||
error('未找到玩家');
|
error('未找到玩家');
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import {filter, MapSchema, Schema, SetSchema, type} from "@colyseus/schema";
|
import {ArraySchema, filter, MapSchema, Schema, SetSchema, type} from "@colyseus/schema";
|
||||||
import {Pet} from "./Pet";
|
import {Pet} from "./Pet";
|
||||||
import {Card} from "./Card";
|
import {Card} from "./Card";
|
||||||
import {GameEnv} from "../../cfg/GameEnv";
|
import {GameEnv} from "../../cfg/GameEnv";
|
||||||
@ -22,6 +22,12 @@ export class Player extends Schema {
|
|||||||
|
|
||||||
@type({ set: "string" })
|
@type({ set: "string" })
|
||||||
cardSet = new SetSchema<string>();
|
cardSet = new SetSchema<string>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 玩家出的牌
|
||||||
|
*/
|
||||||
|
@type([Card])
|
||||||
|
cardQueue = new ArraySchema<Card>();
|
||||||
/**
|
/**
|
||||||
* 当前hp
|
* 当前hp
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user