Merge branch 'master' of git.kingsome.cn:node/card_svr
This commit is contained in:
commit
7740507c3c
@ -51,8 +51,7 @@ let CfgMan = {
|
||||
eVT: SkillEffectValueType,
|
||||
eST: SkillEffectSignType,
|
||||
eV: number,
|
||||
aP: number,
|
||||
enV: number
|
||||
aP: number
|
||||
): number{
|
||||
let n = eV;
|
||||
switch(eST){
|
||||
@ -67,7 +66,6 @@ let CfgMan = {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
n += enV;
|
||||
return n;
|
||||
}
|
||||
};
|
||||
|
@ -271,12 +271,14 @@ export class BattleHandler {
|
||||
};
|
||||
|
||||
public onAddPetNotify(apet: PetHandler){
|
||||
this._room.bAddPet(apet.exportData());
|
||||
return this._room.bAddPet(apet.exportData());
|
||||
};
|
||||
|
||||
public onPlayerAddCard(aplayer: PlayerHandler, count: number, maxcount: number){
|
||||
this._room.addCard(aplayer._player.heroId + '', count, maxcount);
|
||||
return this._room.addCard(aplayer.getId(), count, maxcount);
|
||||
};
|
||||
|
||||
|
||||
public onPlayerStealCard(srcplayer: PlayerHandler, dstplayer: PlayerHandler, count: number){
|
||||
return this._room.drawCardFromPlayer(srcplayer.getId(), dstplayer.getId(), count);
|
||||
};
|
||||
}
|
||||
|
@ -170,6 +170,7 @@ export class PetHandler {
|
||||
ap: this._baseap,
|
||||
extAp: this._exap,
|
||||
pos: this._idx,
|
||||
player: this._owner.getId(),
|
||||
harmReduce: this._exredhurt,
|
||||
skills: this._selfskills,
|
||||
extSkills: this._exskills
|
||||
|
@ -49,6 +49,10 @@ export class PlayerHandler {
|
||||
return 0;
|
||||
};
|
||||
|
||||
public getId(): string{
|
||||
return this._player.heroId + '';
|
||||
};
|
||||
|
||||
public newPet(): PetHandler {
|
||||
let res = null;
|
||||
let pr = null;
|
||||
@ -146,6 +150,10 @@ export class PlayerHandler {
|
||||
return this._owner.onPlayerAddCard(this, 0, maxcount);
|
||||
};
|
||||
|
||||
public stealCard(dstplayer: PlayerHandler, count: number){
|
||||
return this._owner.onPlayerStealCard(this, dstplayer, count);
|
||||
};
|
||||
|
||||
public checkHalo(apet:PetHandler){
|
||||
this._pets.forEach((obj: PetHandler)=>{
|
||||
if(obj != apet){
|
||||
|
@ -200,6 +200,11 @@ export class Skill {
|
||||
return CfgMan.calcEnhanceValue(this._data.edd_effid, this._data.edd_effnum, param.edd_cnt, param.cardpoint);
|
||||
};
|
||||
|
||||
getEffValue(param: SkillParam): number{
|
||||
return CfgMan.calcEffectValue(this._data.eff_numtypeid,
|
||||
this._data.num_signid, this._data.eff_num, param.cardpoint);
|
||||
};
|
||||
|
||||
trigger(param: SkillParam) {
|
||||
//触发buff效果
|
||||
let res = TriggerManager.onTrigger(this, param);
|
||||
@ -230,9 +235,8 @@ export class Skill {
|
||||
});
|
||||
};
|
||||
|
||||
handleCard(efftype: SkillEffectType, enhanceV: number, power: number, tgt: SkillTarget){
|
||||
let res = CfgMan.calcEffectValue(this._data.eff_numtypeid,
|
||||
this._data.num_signid, this._data.eff_num, power, enhanceV);
|
||||
handleCard(efftype: SkillEffectType, effvalue: number, enhanceV: number, tgt: SkillTarget){
|
||||
let res = effvalue + enhanceV;
|
||||
switch(efftype){
|
||||
case SkillEffectType.CARD_ADD:
|
||||
if(tgt.dsttype == GameUnitType.PLAYER){
|
||||
@ -249,18 +253,35 @@ export class Skill {
|
||||
}
|
||||
break;
|
||||
case SkillEffectType.CARD_STEAL:
|
||||
|
||||
if(tgt.dsttype == GameUnitType.PLAYER){
|
||||
let n = tgt.srcplayer.stealCard(tgt.dst, res);
|
||||
if(n >= 0){
|
||||
tgt.success(efftype, n);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case SkillEffectType.CARD_CHG_EN:
|
||||
//todo: 暂不处理
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
getRealEffValue(enhanceV: number){
|
||||
switch(this._data.eff_numtypeid){
|
||||
case SkillEffectValueType.NUMBER:
|
||||
return
|
||||
}
|
||||
handlePower(efftype: SkillEffectType, effvalue: number, enhanceV: number, tgt: SkillTarget){
|
||||
|
||||
};
|
||||
|
||||
handleHP(efftype: SkillEffectType, effvalue: number, enhanceV: number, tgt: SkillTarget){
|
||||
|
||||
};
|
||||
|
||||
summon(efftype: SkillEffectType, effvalue: number, enhanceV: number, tgt: SkillTarget){
|
||||
|
||||
};
|
||||
|
||||
addBuff(efftype: SkillEffectType, effvalue: number, enhanceV: number, tgt: SkillTarget){
|
||||
|
||||
};
|
||||
|
||||
setOwner(owner: PetHandler) {
|
||||
|
@ -111,7 +111,7 @@ export const enum SkillEffectType
|
||||
SUMMON_SKILL = 8,
|
||||
TAUNT = 9,
|
||||
HURT_HP = 10,
|
||||
POWER_ADD_BORN = 11,
|
||||
POWER_ADD_BUFF = 11,
|
||||
HURT_RED = 12,
|
||||
};
|
||||
|
||||
|
@ -74,8 +74,8 @@ let TriggerManager = {
|
||||
|
||||
onTrigger(sender: Skill, param: SkillParam): SkillTarget[] {
|
||||
let effectid = sender._type;
|
||||
let bResOk = true;
|
||||
let env = sender.getEnhanceValue(param);
|
||||
let effv = sender.getEffValue(param);
|
||||
let tgts = sender.getTargets(param);
|
||||
if(!tgts || !tgts.length){
|
||||
return null;
|
||||
@ -84,22 +84,39 @@ let TriggerManager = {
|
||||
switch (effectid) {
|
||||
case SkillEffectType.NONE:
|
||||
return null;
|
||||
|
||||
case SkillEffectType.CARD_ADD:
|
||||
case SkillEffectType.CARD_ADD_LIMIT:
|
||||
case SkillEffectType.CARD_STEAL:
|
||||
case SkillEffectType.CARD_CHG_EN:
|
||||
tgts.forEach((item)=>{
|
||||
sender.handleCard(effectid, env, param.cardpoint, item);
|
||||
sender.handleCard(effectid, effv, env, item);
|
||||
});
|
||||
break;
|
||||
case SkillEffectType.POWER_ENHANCE:
|
||||
case SkillEffectType.HURT_POWER:
|
||||
tgts.forEach((item)=>{
|
||||
sender.handlePower(effectid, effv, env, item);
|
||||
});
|
||||
break;
|
||||
case SkillEffectType.SUMMON_NPC:
|
||||
case SkillEffectType.SUMMON_SKILL:
|
||||
tgts.forEach((item)=>{
|
||||
sender.summon(effectid, effv, env, item);
|
||||
});
|
||||
break;
|
||||
case SkillEffectType.TAUNT:
|
||||
//todo: 不处理
|
||||
case SkillEffectType.HURT_HP:
|
||||
case SkillEffectType.POWER_ADD_BORN:
|
||||
tgts.forEach((item)=>{
|
||||
sender.handleHP(effectid, effv, env, item);
|
||||
});
|
||||
break;
|
||||
case SkillEffectType.POWER_ADD_BUFF:
|
||||
case SkillEffectType.HURT_RED:
|
||||
tgts.forEach((item)=>{
|
||||
sender.addBuff(effectid, effv, env, item);
|
||||
});
|
||||
break;
|
||||
}
|
||||
|
||||
@ -121,7 +138,7 @@ let TriggerManager = {
|
||||
case SkillEffectType.SUMMON_SKILL:
|
||||
case SkillEffectType.TAUNT:
|
||||
case SkillEffectType.HURT_HP:
|
||||
case SkillEffectType.POWER_ADD_BORN:
|
||||
case SkillEffectType.POWER_ADD_BUFF:
|
||||
case SkillEffectType.HURT_RED:
|
||||
break;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user