This commit is contained in:
yuexin 2020-12-03 13:21:56 +08:00
parent c25a0d5c1c
commit 51d27a4612
2 changed files with 33 additions and 10 deletions

View File

@ -1,3 +1,4 @@
import { UnitCfg } from "cfg/parsers/UnitCfg";
import { Pet } from "../../schema/Pet";
import CfgMan from "../CfgMan";
@ -8,10 +9,16 @@ export class PetHandler {
private _pet: Pet;
private _owner: PlayerHandler;
_id: number;
_cfg: any;
_cfg: UnitCfg;
_exskills: number[];
_ap: number;
_baseap: number;
_exap: number;
_exredhurt: number;
_halos: Map<number, Skill> = new Map();
public init(apet: Pet, owner: PlayerHandler){
this._pet = apet;
@ -24,17 +31,21 @@ export class PetHandler {
};
public setParam(id: number, ap: number, effcnt: number, exskillid: number[]){
this._id = id;
this._cfg = CfgMan.findUnitCfg(id);
public setParam(obj:{
id: number, ap?: number, effcnt?: number, exskillid: number[]}
){
this._id = obj.id || 0;
this._cfg = CfgMan.findUnitCfg(this._id);
if(!obj.ap){
this._baseap = 0;//this._cfg.powernum;
}else{
this._baseap = obj.ap;
}
this._exskills.length = 0;
exskillid.forEach((skillid: number)=>{
obj.exskillid && obj.exskillid.forEach((skillid: number)=>{
if(skillid > 0){
this._exskills.push(skillid);
}
});
}
}

View File

@ -7,22 +7,33 @@ import { Card } from "rooms/schema/Card";
import { Pet } from "rooms/schema/Pet";
import { EffectCardType } from "../skill/SkillConst";
import { UnitCfg } from "cfg/parsers/UnitCfg";
import { Skill } from "../skill/Skill";
export class PlayerHandler {
public _player: Player;
public _playercfg: HeroCfg;
public _self: PetHandler;
public _unitcfg: UnitCfg;
public _pets: PetHandler[];
public _skills: Skill[];
public _exskills: Skill[];
private _owner: BattleHandler;
public init(aplayer: Player, owner: BattleHandler){
this._owner = owner;
this._player = aplayer;
this._playercfg = CfgMan.findPlayerCfg(this._player.heroId);
this._self = new PetHandler();
this._self.init(null, this);
let lst = this._playercfg.exSkill? [this._playercfg.exSkill]: null;
this._self.setParam({id: this._playercfg.unitId, exskillid: lst});
this._unitcfg = this._playercfg && CfgMan.findUnitCfg(this._playercfg.unitId);
};
@ -67,7 +78,8 @@ export class PlayerHandler {
if(!pet){
return false;
}
pet.setParam(cfg.eff1Id, obj.cardpoint, obj.eff_cnt, [cfg.eff2Id, cfg.eff3Id, cfg.eff4Id, cfg.eff5Id]);
pet.setParam({id: cfg.eff1Id, ap:obj.cardpoint, effcnt: obj.eff_cnt, exskillid:
[cfg.eff2Id, cfg.eff3Id, cfg.eff4Id, cfg.eff5Id]});
}else if(cfg.typeId == EffectCardType.MAGIC){