重构key武将包的character.js,初步处理部分屎山
This commit is contained in:
parent
c7209ee903
commit
4b029b7686
|
@ -6,87 +6,441 @@ const characters = {
|
|||
skills: ["mubing", "ziqu", "diaoling"],
|
||||
groupBorder: "key",
|
||||
},
|
||||
key_lucia: ["female", "key", "2/3", ["lucia_duqu", "lucia_zhenren"]],
|
||||
key_kyousuke: ["male", "key", 4, ["nk_shekong", "key_huanjie"]],
|
||||
key_yuri: ["female", "key", 3, ["yuri_xingdong", "key_huanjie", "yuri_wangxi"], ["zhu"]],
|
||||
key_haruko: ["female", "key", 4, ["haruko_haofang", "haruko_zhuishi"]],
|
||||
key_umi: ["female", "key", 3, ["umi_chaofan", "umi_lunhui", "umi_qihuan"]],
|
||||
key_umi2: ["female", "key", 3, [], ["unseen"]],
|
||||
key_rei: ["male", "key", 4, ["xiandeng", "shulv", "xisheng"]],
|
||||
key_komari: ["female", "key", 3, ["komari_tiankou", "komari_xueshang"]],
|
||||
key_yukine: ["female", "key", 3, ["yukine_wenzhou"]],
|
||||
key_yusa: ["female", "key", 3, ["yusa_yanyi", "yusa_misa", "dualside"], ["dualside:key_misa"]],
|
||||
key_misa: ["female", "key", 3, ["misa_yehuo", "misa_yusa", "dualside"], ["unseen"]],
|
||||
key_masato: ["male", "key", "4/8", ["masato_baoquan"]],
|
||||
key_iwasawa: ["female", "key", 3, ["iwasawa_yinhang", "iwasawa_mysong"]],
|
||||
key_kengo: ["male", "key", 4, ["kengo_weishang", "kengo_guidui"]],
|
||||
key_yoshino: ["male", "key", 4, ["yoshino_jueyi"]],
|
||||
key_yui: ["female", "key", 3, ["yui_jiang", "yui_lieyin", "yui_takaramono"]],
|
||||
key_tsumugi: ["female", "key", 3, ["tsumugi_mugyu", "tsumugi_huilang"]],
|
||||
key_saya: ["female", "key", 3, ["saya_shouji", "saya_powei"]],
|
||||
key_harukakanata: ["female", "key", 3, ["haruka_shuangche"]],
|
||||
key_inari: ["female", "key", 2, ["inari_baiwei", "inari_huhun"]],
|
||||
key_shiina: ["female", "key", 3, ["shiina_qingshen", "shiina_feiyan"]],
|
||||
key_sunohara: [
|
||||
"double",
|
||||
"key",
|
||||
"3/3/2",
|
||||
["sunohara_chengshuang", "sunohara_tiaoyin", "sunohara_jianren"],
|
||||
],
|
||||
key_rin: ["female", "key", 3, ["rin_baoqiu"]],
|
||||
key_sasami: ["female", "key", 3, ["sasami_miaobian"]],
|
||||
key_akane: ["female", "key", 3, ["akane_jugu", "akane_quanqing", "akane_yifu"], ["zhu"]],
|
||||
key_doruji: ["female", "key", 16, ["doruji_feiqu"]],
|
||||
key_yuiko: ["female", "key", 3, ["yuiko_fenglun", "yuiko_dilve"]],
|
||||
key_riki: ["double", "key", 3, ["riki_spwenji", "riki_nvzhuang", "riki_mengzhong"]],
|
||||
key_hisako: ["female", "key", 3, ["hisako_yinbao", "hisako_zhuanyun"]],
|
||||
key_hinata: ["male", "key", 4, ["hinata_qiulve", "hinata_ehou"]],
|
||||
key_noda: ["male", "key", 4, ["noda_fengcheng", "noda_xunxin"]],
|
||||
key_tomoya: ["male", "key", 4, ["tomoya_shangxian", "tomoya_wangjin"]],
|
||||
key_nagisa: ["female", "key", 3, ["nagisa_tiandu", "nagisa_fuxin"]],
|
||||
key_ayato: ["male", "key", 3, ["ayato_jianshen", "ayato_zonghuan"]],
|
||||
key_ao: ["female", "key", 3, ["ao_xishi", "ao_kuihun", "ao_shixin"]],
|
||||
key_yuzuru: ["male", "key", 5, ["yuzuru_wuxin", "yuzuru_deyi"]],
|
||||
sp_key_kanade: ["female", "key", 3, ["kanade_mapo", "kanade_benzhan"]],
|
||||
key_mio: ["female", "key", 3, ["mio_tuifu", "mio_tishen"]],
|
||||
key_midori: ["female", "key", 3, ["midori_nonghuan", "midori_tishen"]],
|
||||
key_kyoko: ["female", "key", 3, ["kyoko_juwu", "kyoko_zhengyi"]],
|
||||
key_shizuru: ["female", "key", 3, ["shizuru_nianli", "shizuru_benzhan"]],
|
||||
key_shiorimiyuki: ["female", "key", 3, ["shiorimiyuki_banyin", "shiorimiyuki_tingxian"]],
|
||||
key_miki: ["female", "key", 3, ["miki_shenqiang", "miki_huanmeng", "miki_zhiluo"]],
|
||||
key_shiori: ["female", "key", "2/3", ["shiori_huijuan"]],
|
||||
key_kaori: ["female", "key", "3/4", ["kaori_siyuan"]],
|
||||
key_akiko: ["female", "key", 3, ["akiko_dongcha"]],
|
||||
key_abyusa: ["female", "key", 3, ["abyusa_jueqing", "abyusa_dunying"]],
|
||||
key_godan: ["male", "key", 6, ["godan_yuanyi", "godan_feiqu", "godan_xiaoyuan"]],
|
||||
key_yuu: ["male", "key", 3, ["yuu_lveduo"]],
|
||||
key_ryoichi: ["male", "key", 4, ["ryoichi_baoyi", "ryoichi_tuipi"]],
|
||||
key_kotori: ["female", "key", 3, ["kotori_yumo", "kotori_huazhan"]],
|
||||
key_jojiro: ["male", "key", 4, ["jojiro_shensu", "jojiro_shunying"]],
|
||||
key_shiroha: ["female", "key", 3, ["shiroha_yuzhao", "shiroha_guying", "shiroha_jiezhao"]],
|
||||
key_shizuku: ["female", "key", 3, ["shizuku_sizhi", "shizuku_biyi", "shizuku_sanhua"]],
|
||||
key_hiroto: ["male", "key", 3, ["hiroto_huyu", "hiroto_tuolao"]],
|
||||
key_sakuya: ["male", "key", 3, ["youlong", "luanfeng", "sakuya_junbu"]],
|
||||
key_youta: ["male", "key", 4, []],
|
||||
key_rumi: ["female", "key", "3/4", ["rumi_shuwu"]],
|
||||
key_chihaya: ["female", "key", 3, ["chihaya_liewu", "chihaya_youfeng"]],
|
||||
key_yukito: ["male", "key", 4, ["yukito_kongwu", "yukito_yaxiang"]],
|
||||
key_crow: ["male", "key", 4, [], ["unseen"]],
|
||||
key_asara: ["female", "key", 3, ["asara_shelu", "asara_yingwei"]],
|
||||
key_kotomi: ["female", "key", 3, ["kotomi_qinji", "kotomi_chuanxiang"]],
|
||||
key_mia: ["female", "key", 3, ["mia_shihui", "mia_qianmeng"]],
|
||||
key_kano: ["female", "key", 3, ["kano_liezhen", "kano_poyu"]],
|
||||
db_key_liyingxia: [
|
||||
"female",
|
||||
"shu",
|
||||
3,
|
||||
["liyingxia_sanli", "liyingxia_zhenjun", "liyingxia_wumai"],
|
||||
["doublegroup:shu:key"],
|
||||
],
|
||||
key_erika: ["female", "key", "3/3/2", ["erika_shisong", "erika_yousheng"]],
|
||||
key_satomi: ["female", "key", 3, ["satomi_luodao", "satomi_daohai"]],
|
||||
key_iriya: ["female", "key", 3, ["iriya_yinji", "iriya_haozhi"]],
|
||||
key_fuuko: ["female", "key", 3, ["fuuko_xingdiao", "fuuko_chuanyuan"]],
|
||||
key_lucia: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 2,
|
||||
maxHp: 3,
|
||||
skills: ["lucia_duqu", "lucia_zhenren"]
|
||||
},
|
||||
key_kyousuke: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["nk_shekong", "key_huanjie"]
|
||||
},
|
||||
key_yuri: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yuri_xingdong", "key_huanjie", "yuri_wangxi"],
|
||||
isZhugong: true,
|
||||
},
|
||||
key_haruko: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["haruko_haofang", "haruko_zhuishi"]
|
||||
},
|
||||
key_umi: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["umi_chaofan", "umi_lunhui", "umi_qihuan"]
|
||||
},
|
||||
key_umi2: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
isUnseen: true,
|
||||
},
|
||||
key_rei: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["xiandeng", "shulv", "xisheng"]
|
||||
},
|
||||
key_komari: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["komari_tiankou", "komari_xueshang"]
|
||||
},
|
||||
key_yukine: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yukine_wenzhou"]
|
||||
},
|
||||
key_yusa: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yusa_yanyi", "yusa_misa", "dualside"],
|
||||
dualSideCharacter: "key_misa",
|
||||
},
|
||||
key_misa: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["misa_yehuo", "misa_yusa", "dualside"],
|
||||
isUnseen: true,
|
||||
},
|
||||
key_masato: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
maxHp: 8,
|
||||
skills: ["masato_baoquan"]
|
||||
},
|
||||
key_iwasawa: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["iwasawa_yinhang", "iwasawa_mysong"]
|
||||
},
|
||||
key_kengo: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["kengo_weishang", "kengo_guidui"]
|
||||
},
|
||||
key_yoshino: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["yoshino_jueyi"]
|
||||
},
|
||||
key_yui: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yui_jiang", "yui_lieyin", "yui_takaramono"]
|
||||
},
|
||||
key_tsumugi: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["tsumugi_mugyu", "tsumugi_huilang"]
|
||||
},
|
||||
key_saya: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["saya_shouji", "saya_powei"]
|
||||
},
|
||||
key_harukakanata: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["haruka_shuangche"]
|
||||
},
|
||||
key_inari: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 2,
|
||||
skills: ["inari_baiwei", "inari_huhun"]
|
||||
},
|
||||
key_shiina: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["shiina_qingshen", "shiina_feiyan"]
|
||||
},
|
||||
key_sunohara: {
|
||||
sex: "double",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
hujia: 2,
|
||||
skills: ["sunohara_chengshuang", "sunohara_tiaoyin", "sunohara_jianren"]
|
||||
},
|
||||
key_rin: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["rin_baoqiu"]
|
||||
},
|
||||
key_sasami: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["sasami_miaobian"]
|
||||
},
|
||||
key_akane: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["akane_jugu", "akane_quanqing", "akane_yifu"],
|
||||
isZhugong: true,
|
||||
},
|
||||
key_doruji: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 16,
|
||||
skills: ["doruji_feiqu"]
|
||||
},
|
||||
key_yuiko: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yuiko_fenglun", "yuiko_dilve"]
|
||||
},
|
||||
key_riki: {
|
||||
sex: "double",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["riki_spwenji", "riki_nvzhuang", "riki_mengzhong"]
|
||||
},
|
||||
key_hisako: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["hisako_yinbao", "hisako_zhuanyun"]
|
||||
},
|
||||
key_hinata: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["hinata_qiulve", "hinata_ehou"]
|
||||
},
|
||||
key_noda: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: [
|
||||
"noda_fengcheng",
|
||||
"noda_xunxin"]
|
||||
},
|
||||
key_tomoya: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["tomoya_shangxian", "tomoya_wangjin"]
|
||||
},
|
||||
key_nagisa: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["nagisa_tiandu", "nagisa_fuxin"]
|
||||
},
|
||||
key_ayato: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["ayato_jianshen", "ayato_zonghuan"]
|
||||
},
|
||||
key_ao: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["ao_xishi", "ao_kuihun", "ao_shixin"]
|
||||
},
|
||||
key_yuzuru: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 5,
|
||||
skills: ["yuzuru_wuxin", "yuzuru_deyi"]
|
||||
},
|
||||
sp_key_kanade: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["kanade_mapo", "kanade_benzhan"]
|
||||
},
|
||||
key_mio: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["mio_tuifu", "mio_tishen"]
|
||||
},
|
||||
key_midori: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["midori_nonghuan", "midori_tishen"]
|
||||
},
|
||||
key_kyoko: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["kyoko_juwu", "kyoko_zhengyi"]
|
||||
},
|
||||
key_shizuru: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["shizuru_nianli", "shizuru_benzhan"]
|
||||
},
|
||||
key_shiorimiyuki: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["shiorimiyuki_banyin", "shiorimiyuki_tingxian"]
|
||||
},
|
||||
key_miki: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["miki_shenqiang", "miki_huanmeng", "miki_zhiluo"]
|
||||
},
|
||||
key_shiori: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 2,
|
||||
maxHp: 3,
|
||||
skills: ["shiori_huijuan"]
|
||||
},
|
||||
key_kaori: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
maxHp: 4,
|
||||
skills: ["kaori_siyuan"]
|
||||
},
|
||||
key_akiko: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["akiko_dongcha"]
|
||||
},
|
||||
key_abyusa: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["abyusa_jueqing", "abyusa_dunying"]
|
||||
},
|
||||
key_godan: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 6,
|
||||
skills: ["godan_yuanyi", "godan_feiqu", "godan_xiaoyuan"]
|
||||
},
|
||||
key_yuu: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["yuu_lveduo"]
|
||||
},
|
||||
key_ryoichi: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["ryoichi_baoyi", "ryoichi_tuipi"]
|
||||
},
|
||||
key_kotori: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["kotori_yumo", "kotori_huazhan"]
|
||||
},
|
||||
key_jojiro: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["jojiro_shensu", "jojiro_shunying"]
|
||||
},
|
||||
key_shiroha: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["shiroha_yuzhao", "shiroha_guying", "shiroha_jiezhao"]
|
||||
},
|
||||
key_shizuku: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["shizuku_sizhi", "shizuku_biyi", "shizuku_sanhua"]
|
||||
},
|
||||
key_hiroto: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["hiroto_huyu", "hiroto_tuolao"]
|
||||
},
|
||||
key_sakuya: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["youlong", "luanfeng", "sakuya_junbu"]
|
||||
},
|
||||
key_youta: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: []
|
||||
},
|
||||
key_rumi: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
maxHp: 4,
|
||||
skills: ["rumi_shuwu"]
|
||||
},
|
||||
key_chihaya: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["chihaya_liewu", "chihaya_youfeng"]
|
||||
},
|
||||
key_yukito: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: ["yukito_kongwu", "yukito_yaxiang"]
|
||||
},
|
||||
key_crow: {
|
||||
sex: "male",
|
||||
group: "key",
|
||||
hp: 4,
|
||||
skills: [],
|
||||
isUnseen: true,
|
||||
},
|
||||
key_asara: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["asara_shelu", "asara_yingwei"]
|
||||
},
|
||||
key_kotomi: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["kotomi_qinji", "kotomi_chuanxiang"]
|
||||
},
|
||||
key_mia: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["mia_shihui", "mia_qianmeng"]
|
||||
},
|
||||
key_kano: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["kano_liezhen", "kano_poyu"]
|
||||
},
|
||||
db_key_liyingxia: {
|
||||
sex: "female",
|
||||
group: "shu",
|
||||
hp: 3,
|
||||
skills: ["liyingxia_sanli", "liyingxia_zhenjun", "liyingxia_wumai"],
|
||||
doubleGroup: ['shu', 'key'],
|
||||
},
|
||||
key_erika: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
hujia: 2,
|
||||
skills: ["erika_shisong", "erika_yousheng"]
|
||||
},
|
||||
key_satomi: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["satomi_luodao", "satomi_daohai"]
|
||||
},
|
||||
key_iriya: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["iriya_yinji", "iriya_haozhi"]
|
||||
},
|
||||
key_fuuko: {
|
||||
sex: "female",
|
||||
group: "key",
|
||||
hp: 3,
|
||||
skills: ["fuuko_xingdiao", "fuuko_chuanyuan"]
|
||||
}
|
||||
};
|
||||
|
||||
export default characters;
|
|
@ -31,6 +31,15 @@ export class Get {
|
|||
const [major, minor, patch] = result[1].split(".");
|
||||
return ["safari", parseInt(major), parseInt(minor), parseInt(patch)];
|
||||
}
|
||||
/**
|
||||
* 将一个传统格式的character转化为Character对象格式
|
||||
* @param { Array|Object|import("../library/element/character").Character } data
|
||||
* @returns {import("../library/element/character").Character}
|
||||
*/
|
||||
convertedCharacter(data){
|
||||
if(!(data instanceof lib.element.Character)) return new lib.element.Character(data);
|
||||
return data;
|
||||
}
|
||||
/**
|
||||
* 返回 VCard[] 形式的所有牌,用于印卡将遍历
|
||||
* @param {Function} filter
|
||||
|
@ -591,7 +600,7 @@ export class Get {
|
|||
/**
|
||||
* @overload
|
||||
* @param { string } name
|
||||
* @returns { Character }
|
||||
* @returns { import("../library/element/character").Character }
|
||||
*/
|
||||
/**
|
||||
* @template { 0 | 1 | 2 | 3 | 4 } T
|
||||
|
@ -604,7 +613,7 @@ export class Get {
|
|||
let info = lib.character[name];
|
||||
if (!info) {
|
||||
const pack = Object.keys(lib.characterPack).find((pack) => name in lib.characterPack[pack]);
|
||||
if (pack) info = new lib.element.Character(lib.characterPack[pack][name]);
|
||||
if (pack) info = get.convertedCharacter(lib.characterPack[pack][name]);
|
||||
}
|
||||
if (typeof num === "number") {
|
||||
if (!info) info = [];
|
||||
|
@ -2610,7 +2619,7 @@ export class Get {
|
|||
if (lib.character[name][4].includes("boss")) return list;
|
||||
if (lib.character[name][4].includes("hiddenboss")) return list;
|
||||
if (lib.character[name][4].includes("minskin")) return list;
|
||||
if (lib.character[name][4].includes("unseen")) return list;
|
||||
if (lib.character[name].isUnseen) return list;
|
||||
}
|
||||
for (var j = 0; j < lib.character[name][3].length; j++) {
|
||||
var skill = lib.character[name][3][j];
|
||||
|
|
|
@ -206,15 +206,13 @@ export class Is {
|
|||
/**
|
||||
* 是否是双势力武将
|
||||
* @param { string } name
|
||||
* @param { string[] } array
|
||||
* @param { string[] } [array]
|
||||
* @returns { boolean | string[] }
|
||||
*/
|
||||
double(name, array) {
|
||||
const extraInformations = get.character(name, 4);
|
||||
if (!extraInformations) return false;
|
||||
for (const extraInformation of extraInformations) {
|
||||
if (!extraInformation.startsWith("doublegroup:")) continue;
|
||||
return array ? extraInformation.split(":").slice(1) : true;
|
||||
const extraInformation = get.character(name);
|
||||
if(extraInformation && extraInformation.doubleGroup && extraInformation.doubleGroup.length>0){
|
||||
return array ? extraInformation.doubleGroup.slice(0) : true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -29,6 +29,22 @@ export class Character {
|
|||
hasHiddenSkill = false;
|
||||
/** @type { Array } */
|
||||
trashBin = [];
|
||||
/** @type { string } */
|
||||
dualSideCharacter;
|
||||
/** @type { Array } */
|
||||
doubleGroup = [];
|
||||
/** @type { boolean } */
|
||||
isMinskin = false;
|
||||
/** @type { boolean } */
|
||||
isBoss = false;
|
||||
/** @type { boolean } */
|
||||
isHiddenBoss = false;
|
||||
/** @type { boolean } */
|
||||
isAiForbidden = false;
|
||||
/** @type { boolean } */
|
||||
isHiddenInStoneMode = false;
|
||||
/** @type { boolean } */
|
||||
isBossAllowed = false;
|
||||
/**
|
||||
* @param { Array|Object } [data]
|
||||
*/
|
||||
|
@ -45,31 +61,55 @@ export class Character {
|
|||
}
|
||||
else if (get.is.object(data)) {
|
||||
Object.assign(this, data);
|
||||
if(typeof this.maxHp !== 'number') this.maxHp = this.hp;
|
||||
if (typeof this.maxHp !== 'number') this.maxHp = this.hp;
|
||||
}
|
||||
};
|
||||
/**
|
||||
* @param { Character } character
|
||||
* @param { Array } trash
|
||||
*/
|
||||
static convertTrashToProperties(character, trash){
|
||||
for(let i = 0; i < trash.length; i++){
|
||||
static convertTrashToProperties(character, trash) {
|
||||
for (let i = 0; i < trash.length; i++) {
|
||||
let item = trash[i];
|
||||
if (i === 0 && lib.group.includes(item)){
|
||||
if (i === 0 && lib.group.includes(item)) {
|
||||
character.groupInGuozhan = item;
|
||||
}
|
||||
else if(item === 'zhu'){
|
||||
else if (item === 'zhu') {
|
||||
character.isZhugong = true;
|
||||
}
|
||||
else if(item === 'unseen'){
|
||||
else if (item === 'unseen') {
|
||||
character.isUnseen = true;
|
||||
}
|
||||
else if(item === 'hiddenSkill'){
|
||||
else if (item === 'minskin') {
|
||||
character.isMinskin = true;
|
||||
}
|
||||
else if (item === 'boss') {
|
||||
character.isBoss = true;
|
||||
}
|
||||
else if (item === 'bossallowed') {
|
||||
character.isBossAllowed = true;
|
||||
}
|
||||
else if (item === 'hiddenBoss') {
|
||||
character.isHiddenBoss = true;
|
||||
}
|
||||
else if (item === 'forbidai') {
|
||||
character.isAiForbidden = true;
|
||||
}
|
||||
else if (item === 'stonehidden') {
|
||||
character.isHiddenInStoneMode = true;
|
||||
}
|
||||
else if (item === 'hiddenSkill') {
|
||||
character.hasHiddenSkill = true;
|
||||
}
|
||||
else if(item.startsWith('border:')){
|
||||
else if (item.startsWith('border:')) {
|
||||
character.groupBorder = item.slice(7);
|
||||
}
|
||||
else if (item.startsWith('dualside:')) {
|
||||
character.dualSideCharacter = item.slice(9);
|
||||
}
|
||||
else if (item.startsWith('doublegroup:')) {
|
||||
character.doubleGroup = item.slice(12).split(":")
|
||||
}
|
||||
}
|
||||
};
|
||||
/**
|
||||
|
|
|
@ -2358,7 +2358,7 @@ export class Player extends HTMLDivElement {
|
|||
}
|
||||
var info = lib.character[character];
|
||||
if (!info) {
|
||||
info = new lib.element.Character(["", "", 1, [], []]);
|
||||
info = get.convertedCharacter(["", "", 1, [], []]);
|
||||
}
|
||||
var skills = info.skills.slice(0);
|
||||
this.clearSkills(true);
|
||||
|
@ -2398,7 +2398,7 @@ export class Player extends HTMLDivElement {
|
|||
if (character2 && lib.character[character2]) {
|
||||
var info2 = lib.character[character2];
|
||||
if (!info2) {
|
||||
info2 = new lib.element.Character(["", "", 1, [], []]);
|
||||
info2 = get.convertedCharacter(["", "", 1, [], []]);
|
||||
}
|
||||
|
||||
this.name2 = character2;
|
||||
|
@ -2487,7 +2487,7 @@ export class Player extends HTMLDivElement {
|
|||
this.classList.add("fullskin");
|
||||
var info = lib.character[character];
|
||||
if (!info) {
|
||||
info = new lib.element.Character(["", "", 1, [], []]);
|
||||
info = get.convertedCharacter(["", "", 1, [], []]);
|
||||
}
|
||||
|
||||
if (!game.minskin && get.is.newLayout() && !info[4].includes("minskin")) {
|
||||
|
@ -2530,7 +2530,7 @@ export class Player extends HTMLDivElement {
|
|||
if (character2 && lib.character[character2]) {
|
||||
var info2 = lib.character[character2];
|
||||
if (!info2) {
|
||||
info2 = new lib.element.Character(["", "", 1, [], []]);
|
||||
info2 = get.convertedCharacter(["", "", 1, [], []]);
|
||||
}
|
||||
this.classList.add("fullskin2");
|
||||
this.node.avatar2.setBackground(character2, "character");
|
||||
|
|
|
@ -10533,7 +10533,7 @@ export class Library {
|
|||
characterDisabled: function (i, libCharacter) {
|
||||
if (!lib.character[i] || (lib.character[i][4] && lib.character[i][4].includes("forbidai")))
|
||||
return true;
|
||||
if (lib.character[i][4] && lib.character[i][4].includes("unseen")) return true;
|
||||
if (lib.character[i].isUnseen) return true;
|
||||
if (lib.config.forbidai.includes(i)) return true;
|
||||
if (lib.characterFilter[i] && !lib.characterFilter[i](get.mode())) return true;
|
||||
if (_status.connectMode) {
|
||||
|
@ -10605,7 +10605,7 @@ export class Library {
|
|||
if (info[4].includes("boss")) return true;
|
||||
if (info[4].includes("hiddenboss")) return true;
|
||||
if (info[4].includes("minskin")) return true;
|
||||
if (info[4].includes("unseen")) return true;
|
||||
if (info.isUnseen) return true;
|
||||
if (info[4].includes("forbidai") && (!_status.event.isMine || !_status.event.isMine()))
|
||||
return true;
|
||||
if (lib.characterFilter[i] && !lib.characterFilter[i](get.mode())) return true;
|
||||
|
@ -12777,8 +12777,7 @@ export class Library {
|
|||
};
|
||||
character = new Proxy({}, {
|
||||
set(target, prop, newValue) {
|
||||
if(!(newValue instanceof Element.Character)) newValue = new Element.Character(newValue);
|
||||
return Reflect.set(target, prop, newValue);
|
||||
return Reflect.set(target, prop, get.convertedCharacter(newValue));
|
||||
}
|
||||
});
|
||||
perfectPair = {};
|
||||
|
|
|
@ -1316,7 +1316,7 @@ export class Create {
|
|||
}
|
||||
|
||||
if (lib.character[i][4].includes("stonehidden")) continue;
|
||||
if (lib.character[i][4].includes("unseen")) continue;
|
||||
if (lib.character[i].isUnseen) continue;
|
||||
}
|
||||
if (lib.config.banned.includes(i)) continue;
|
||||
if (
|
||||
|
|
|
@ -159,18 +159,19 @@ export const characterPackMenu = function (connectMenu) {
|
|||
var alterableCharacters = [];
|
||||
var charactersToAlter = [];
|
||||
for (var i in _info) {
|
||||
if (_info[i][4] && _info[i][4].includes("unseen")) continue;
|
||||
const characterInfo = get.convertedCharacter( _info[i]);
|
||||
if (characterInfo.isUnseen) continue;
|
||||
if (connectMenu && lib.connectBanned.includes(i)) continue;
|
||||
list.push(i);
|
||||
if (boolAI && !lib.config.forbidai_user.includes(i)) boolAI = false;
|
||||
for (var j = 0; j < _info[i][3].length; j++) {
|
||||
if (!lib.skill[_info[i][3][j]]) {
|
||||
for (var j = 0; j < characterInfo.skills.length; j++) {
|
||||
if (!lib.skill[characterInfo.skills[j]]) {
|
||||
continue;
|
||||
}
|
||||
if (lib.skill[_info[i][3][j]].alter) {
|
||||
alterableSkills.add(_info[i][3][j]);
|
||||
if (lib.skill[characterInfo.skills[j]].alter) {
|
||||
alterableSkills.add(characterInfo.skills[j]);
|
||||
alterableCharacters.add(i);
|
||||
if (lib.config.vintageSkills.includes(_info[i][3][j])) {
|
||||
if (lib.config.vintageSkills.includes(characterInfo.skills[j])) {
|
||||
charactersToAlter.add(i);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue