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