增加获取卡牌对象的方法
This commit is contained in:
parent
9fa0280608
commit
54c161a8e1
@ -3,13 +3,14 @@ import { HeroCfg } from "cfg/parsers/HeroCfg";
|
|||||||
import { SkillCfg } from "cfg/parsers/SkillCfg";
|
import { SkillCfg } from "cfg/parsers/SkillCfg";
|
||||||
import { UnitCfg } from "cfg/parsers/UnitCfg";
|
import { UnitCfg } from "cfg/parsers/UnitCfg";
|
||||||
import { BaseConst } from "../../constants/BaseConst";
|
import { BaseConst } from "../../constants/BaseConst";
|
||||||
import { EnhanceEffectType, SkillEffectSignType, SkillEffectValueType } from "./skill/SkillConst";
|
import { EffectCardType, EnhanceEffectType, SkillEffectSignType, SkillEffectValueType, SkillTargetType } from "./skill/SkillConst";
|
||||||
|
|
||||||
let CfgMan = {
|
let CfgMan = {
|
||||||
/**
|
/**
|
||||||
* findPlayerCfg
|
* findPlayerCfg
|
||||||
*playerid: numer
|
*playerid: numer
|
||||||
*/
|
*/
|
||||||
|
_cardcache: new Map(),
|
||||||
|
|
||||||
findPlayerCfg(playerid: number): HeroCfg{
|
findPlayerCfg(playerid: number): HeroCfg{
|
||||||
return global.$cfg.get(BaseConst.HERO).get(playerid);
|
return global.$cfg.get(BaseConst.HERO).get(playerid);
|
||||||
@ -67,6 +68,47 @@ let CfgMan = {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return n;
|
return n;
|
||||||
|
},
|
||||||
|
|
||||||
|
getTargetByCard(cardid: number): SkillTargetType{
|
||||||
|
let obj = this._cardcache.get(cardid + '');
|
||||||
|
if(obj){
|
||||||
|
return obj.target;
|
||||||
|
}
|
||||||
|
|
||||||
|
let cardcfg = this.findEffCardCfg(cardid);
|
||||||
|
if(!cardcfg){
|
||||||
|
return SkillTargetType.NONE;
|
||||||
|
}
|
||||||
|
let res = SkillTargetType.NONE;
|
||||||
|
|
||||||
|
let skilllst: number[] = [];
|
||||||
|
|
||||||
|
cardcfg.quoteskill1id && skilllst.push(cardcfg.quoteskill1id);
|
||||||
|
cardcfg.quoteskill2id && skilllst.push(cardcfg.quoteskill2id);
|
||||||
|
cardcfg.quoteskill3id && skilllst.push(cardcfg.quoteskill3id);
|
||||||
|
cardcfg.quoteskill4id && skilllst.push(cardcfg.quoteskill4id);
|
||||||
|
|
||||||
|
if(cardcfg.type_id == EffectCardType.NPC){
|
||||||
|
let unitcfg = this.findUnitCfg(cardcfg.stageunit_id);
|
||||||
|
if(unitcfg){
|
||||||
|
unitcfg.base_skill1id && skilllst.push(unitcfg.base_skill1id);
|
||||||
|
unitcfg.base_skill2id && skilllst.push(unitcfg.base_skill2id);
|
||||||
|
unitcfg.base_skill3id && skilllst.push(unitcfg.base_skill3id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(let i = 0; i < skilllst.length; i++){
|
||||||
|
let skillcfg = this.findSkillCfg(skilllst[i]);
|
||||||
|
if(skillcfg && skillcfg.select_targetID != SkillTargetType.NONE){
|
||||||
|
res = skillcfg.select_targetID;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this._cardcache.set(cardid + '', {target: res});
|
||||||
|
|
||||||
|
return res;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -183,3 +183,19 @@ export const enum PowerValueType {
|
|||||||
NUMBER = 1,
|
NUMBER = 1,
|
||||||
RATIO = 2,
|
RATIO = 2,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 目标类型
|
||||||
|
/**
|
||||||
|
* 0.无需选择
|
||||||
|
* 1.红色标识敌方玩家
|
||||||
|
* 2.红色标识敌方单位
|
||||||
|
* 3.蓝色标识自己单位
|
||||||
|
* 4.蓝色标识(自己以外)友方单位
|
||||||
|
*/
|
||||||
|
export const enum SkillTargetType {
|
||||||
|
NONE = 0,
|
||||||
|
ENEMY_PLAYER = 1,
|
||||||
|
ENEMY_PET = 2,
|
||||||
|
SELF_PET = 3,
|
||||||
|
FRIEND_PET = 4,
|
||||||
|
};
|
Loading…
x
Reference in New Issue
Block a user