This commit is contained in:
y.x 2020-12-07 10:50:47 +08:00
commit 32827a6d7b
5 changed files with 22 additions and 10 deletions

View File

@ -22,6 +22,10 @@ export class SKillEffectData {
* *
*/ */
val: number; val: number;
/**
* 0: 成功
*/
result: number;
} }
export class SkillInfoData { export class SkillInfoData {

View File

@ -2,6 +2,7 @@ import {Client, Room} from "colyseus";
import {IMsg} from "../message/IMsg"; import {IMsg} from "../message/IMsg";
import {PetInfoMsg} from "../message/PetInfo"; import {PetInfoMsg} from "../message/PetInfo";
import {SkillInfoMsg} from "../message/SkillInfo"; import {SkillInfoMsg} from "../message/SkillInfo";
import {Pet} from "./schema/Pet";
/** /**
* *
@ -46,12 +47,13 @@ Object.defineProperties(Room.prototype, {
let obj = data.data; let obj = data.data;
let pid = obj.player; let pid = obj.player;
let player = this.state.players.get(pid); let player = this.state.players.get(pid);
let pet = player.pets.get(obj.pos + ''); let pet = new Pet();
pet.id = obj.id; pet.id = obj.id;
pet.ap = obj.ap; pet.ap = obj.ap;
pet.extAp = obj.extAp; pet.extAp = obj.extAp;
pet.harmReduce = obj.harmReduce; pet.harmReduce = obj.harmReduce;
pet.skills.length = 0; pet.skills.length = 0;
player.pets.set(obj.pos + '', pet);
if (obj.skills) { if (obj.skills) {
for (let s of obj.skills) { for (let s of obj.skills) {
pet.skills.push(s); pet.skills.push(s);

View File

@ -24,7 +24,7 @@ export enum CompareEnum {
DRAW = 5 DRAW = 5
} }
const comparePlayer = function (p0: Player, p1: Player): CompareEnum { const comparePlayer = function (p0: Player, p1: Player): {} {
let s0 = gameUtil.calcTotalAp(p0); let s0 = gameUtil.calcTotalAp(p0);
let s1 = gameUtil.calcTotalAp(p1); let s1 = gameUtil.calcTotalAp(p1);
if (p0.state == PlayerStateConst.PLAYER_DEAD) { if (p0.state == PlayerStateConst.PLAYER_DEAD) {
@ -64,18 +64,18 @@ export class PartResultCommand extends Command<CardGameState, {}> {
execute() { execute() {
this.state.gameState = GameStateConst.STATE_ROUND_RESULT; this.state.gameState = GameStateConst.STATE_ROUND_RESULT;
const time = singleton(GameEnv).resultShowTime || 1; const time = singleton(GameEnv).resultShowTime || 1;
// let team0 = [];
// let team1 = []; let t0 = [];
// let t1 = [];
// for (let [sessionId, player] of this.state.players) { // for (let [sessionId, player] of this.state.players) {
// let score = gameUtil.calcTotalAp(player);
// if (player.team == 0) { // if (player.team == 0) {
// team0.push(score); // t0.push(player);
// } else { // } else {
// team1.unshift(score); // t1.unshift(player);
// } // }
// } // }
// let r0 = comparePlayer(team0[0], team1[0]); // let r0 = comparePlayer(t0[0], t1[0]);
// let r1 = comparePlayer(team0[1], team1[1]); // let r1 = comparePlayer(t0[1], t1[1]);

View File

@ -21,6 +21,9 @@ export class Pet extends Schema {
@type(["number"]) @type(["number"])
extSkills = new ArraySchema<number>() extSkills = new ArraySchema<number>()
@type("boolean")
isHero:boolean = false;
constructor() { constructor() {
super(); super();

View File

@ -57,7 +57,10 @@ export class Player extends Schema {
this.heroId = heroId; this.heroId = heroId;
this.team = team; this.team = team;
for (let i = 0; i < singleton(GameEnv).maxPlayerPetCount + 1; i++) { for (let i = 0; i < singleton(GameEnv).maxPlayerPetCount + 1; i++) {
this.pets.set(i+'', new Pet()); let pet = new Pet();
pet.isHero = i === 0;
this.pets.set(i+'', pet);
} }
} }
} }