技能结果处理
This commit is contained in:
parent
a9b13f83c1
commit
6dde5183f2
BIN
doc/todolist2021.xmind
Normal file
BIN
doc/todolist2021.xmind
Normal file
Binary file not shown.
@ -468,6 +468,7 @@ export class Skill {
|
||||
let n = efftype == SkillEffectType.POWER_ENHANCE? tgt.dst.addBaseAP(effvalue, tgt.srcPet())
|
||||
: tgt.dst.addExAP(effvalue, tgt.srcPet());
|
||||
tgt.success(efftype, n);
|
||||
tgt.success(SkillEffectType.CHG_AP, n);
|
||||
}else{
|
||||
tgt.fail(efftype, -1);
|
||||
}
|
||||
@ -478,12 +479,16 @@ export class Skill {
|
||||
if(tgt.dsttype != GameUnitType.NONE){
|
||||
let oldhp = tgt.dst.getHP();
|
||||
let n = tgt.dst.beHurt(effv, tgt.srcPet());
|
||||
tgt.success(efftype, n);
|
||||
if(n != 0){
|
||||
tgt.success(SkillEffectType.HURT_POWER, n);
|
||||
tgt.success(SkillEffectType.CHG_AP, n);
|
||||
}
|
||||
let dthp = tgt.dst.getHP() - oldhp;
|
||||
if(dthp != 0){
|
||||
tgt.success(SkillEffectType.HURT_HP, dthp);
|
||||
tgt.success(SkillEffectType.CHG_HP, dthp);
|
||||
}
|
||||
if(n == 0 && dthp == 0){
|
||||
tgt.success(SkillEffectType.CHG_AP, 0);
|
||||
}
|
||||
let hv = n + dthp;
|
||||
let pet = tgt.srcPet();
|
||||
@ -491,7 +496,7 @@ export class Skill {
|
||||
//吸血
|
||||
let sv = pet.HPS(hv);
|
||||
if(sv != 0){
|
||||
tgt.success(SkillEffectType.HURT_POWER, sv, true);
|
||||
tgt.success(SkillEffectType.CHG_AP, sv, true);
|
||||
}
|
||||
}
|
||||
}else{
|
||||
@ -509,6 +514,7 @@ export class Skill {
|
||||
let effv = this.EMV(effvalue);
|
||||
let n = tgt.dst.addHP(effv, tgt.srcPet());
|
||||
tgt.success(efftype, n);
|
||||
tgt.success(SkillEffectType.CHG_HP, n);
|
||||
}else{
|
||||
tgt.fail(efftype, -1);
|
||||
}
|
||||
@ -694,7 +700,10 @@ export class Skill {
|
||||
// let n = obj.canAttack()? obj.attack(this, dst, param, v, isAtkBack): 1;
|
||||
let n = obj.attack(this, dst, param, v, isAtkBack);
|
||||
if(n <= 0){
|
||||
tgt.success(SkillEffectType.HURT_POWER, n);
|
||||
tgt.success(efftype, n);
|
||||
if(n != 0){
|
||||
tgt.success(SkillEffectType.CHG_AP, n);
|
||||
}
|
||||
// if(this._data.quoteskillid){
|
||||
// let dp = this._data.skill_users? param.oppClone(): param;
|
||||
// let pet = tgt.srcpet;
|
||||
@ -705,7 +714,10 @@ export class Skill {
|
||||
// }
|
||||
let dthp = tgt.dst.getHP() - oldhp;
|
||||
if(dthp != 0){
|
||||
tgt.success(SkillEffectType.HURT_HP, dthp);
|
||||
tgt.success(SkillEffectType.CHG_HP, dthp);
|
||||
}
|
||||
if(n == 0 && dthp == 0){
|
||||
tgt.success(SkillEffectType.CHG_AP, 0);
|
||||
}
|
||||
let hv = n + dthp;
|
||||
let pet = tgt.srcPet();
|
||||
@ -713,7 +725,7 @@ export class Skill {
|
||||
//吸血
|
||||
let sv = pet.HPS(hv);
|
||||
if(sv != 0){
|
||||
tgt.success(SkillEffectType.HURT_POWER, sv, true);
|
||||
tgt.success(SkillEffectType.CHG_AP, sv, true);
|
||||
}
|
||||
}
|
||||
tgt.success(efftype, hv);
|
||||
|
@ -190,7 +190,7 @@ export const enum SkillRangeUnitType{
|
||||
* 3.抽别人牌
|
||||
* 4.将几张点数卡变为一张效果强化卡
|
||||
* 5.强化战力(HP性质的战力)
|
||||
* 6.强化战力(护盾性质的战力)
|
||||
* 6.强化战力(护盾性质的战力)// 暂无用
|
||||
* 7.扣除战力(伤害)
|
||||
* 8.召唤随从(需引用ID)
|
||||
* 9.触发技能(需引用ID) // 已废弃
|
||||
@ -239,6 +239,9 @@ export const enum SkillEffectType
|
||||
CARD_DROP = 29,
|
||||
BUFF_SHIELD = 30,
|
||||
HP_STEAL_ENHANCE = 31,
|
||||
|
||||
CHG_HP = 10001,
|
||||
CHG_AP = 10002,
|
||||
};
|
||||
|
||||
// 技能效果参数类型
|
||||
|
@ -238,7 +238,7 @@ export class SkillTarget{
|
||||
obj.datas = [];
|
||||
lst.forEach((item: SkillTarget) => {
|
||||
let eds = item.exportEffDatas();
|
||||
obj.datas.push(...eds);
|
||||
eds && obj.datas.push(...eds);
|
||||
// item.res && item.res.forEach((skres: SkillResult) => {
|
||||
// let ed = item.exportResData(skres);
|
||||
// ed && obj.datas.push(ed);
|
||||
@ -312,6 +312,9 @@ export class SkillTarget{
|
||||
};
|
||||
|
||||
public exportEffDatas(): SKillEffectData[]{
|
||||
if(!this.res){
|
||||
return null;
|
||||
}
|
||||
let r1: SkillResult[] = [];
|
||||
let r2: SkillResult[] = [];
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user