select_pet_c2s增加字段oldpos, 用于替换随从

This commit is contained in:
zhl 2020-12-24 13:56:05 +08:00
parent f03af7591f
commit b10cbb906a
2 changed files with 5 additions and 4 deletions

View File

@ -68,7 +68,7 @@ export class GeneralRoom extends Room {
this.onMessage("select_pet_c2s", (client, message) => { this.onMessage("select_pet_c2s", (client, message) => {
msgLog('select_pet from ', client.sessionId, message); msgLog('select_pet from ', client.sessionId, message);
this.dispatcher.dispatch(new SelectPetCommand(), {client, cardId: message.card, playerId: message.player, pos: message.pos, effCards: message.effCards }); this.dispatcher.dispatch(new SelectPetCommand(), {client, cardId: message.card, playerId: message.player, pos: message.pos, effCards: message.effCards, oldpos: message.oldpos });
}); });
this.onMessage("select_hero_c2s", (client, message) => { this.onMessage("select_hero_c2s", (client, message) => {

View File

@ -12,9 +12,10 @@ export class SelectPetCommand extends Command<CardGameState, {client: Client,
cardId: number, cardId: number,
playerId: string, playerId: string,
pos: number, pos: number,
effCards: number[] effCards: number[],
oldpos: number
}> { }> {
async execute({client, cardId, playerId, pos, effCards} = this.payload) { async execute({client, cardId, playerId, pos, effCards, oldpos} = this.payload) {
let sessionId = client.sessionId; let sessionId = client.sessionId;
let player = this.state.players.get(sessionId); let player = this.state.players.get(sessionId);
let ap = 0; let ap = 0;
@ -72,7 +73,7 @@ export class SelectPetCommand extends Command<CardGameState, {client: Client,
dstpet = dstplayer.pets.get(pos+''); dstpet = dstplayer.pets.get(pos+'');
} }
let cardpoint = moreAp + ap; let cardpoint = moreAp + ap;
let data = {srcplayer: player, card: targetCard.effect, cardpoint, eff_cnt, dstplayer, dstpet, dbpt_cnt} let data = {srcplayer: player, card: targetCard.effect, cardpoint, eff_cnt, dstplayer, dstpet, dbpt_cnt, oldpos}
let time = this.room.battleMan.useCard(data); let time = this.room.battleMan.useCard(data);
await this.delay(time); await this.delay(time);
return [new TurnEndCommand()]; return [new TurnEndCommand()];