refactor(i18n): 引入 I18nString 类优化多语言配置定义
将多个配置文件中的多语言字符串从 getter 函数改为使用 I18nString 类实例。 修改 CardSet、HighlightSet、heroSet 和 SkillSet 中的 name、info、title、desc 等字段, 统一使用 t(key) 返回的 I18nString 实例,简化配置对象结构并保持动态语言切换能力。
This commit is contained in:
@@ -2,7 +2,14 @@ import { v3 } from "cc"
|
||||
import { BoxSet, FacSet } from "./GameSet"
|
||||
import { oops } from "db://oops-framework/core/Oops"
|
||||
|
||||
const t = (key: string) => oops.language.getLangByID(key);
|
||||
class I18nString {
|
||||
constructor(private key: string) {}
|
||||
toString() { return oops.language.getLangByID(this.key) || this.key; }
|
||||
valueOf() { return oops.language.getLangByID(this.key) || this.key; }
|
||||
toJSON() { return oops.language.getLangByID(this.key) || this.key; }
|
||||
get length() { return this.toString().length; }
|
||||
}
|
||||
export const t = (key: string) => new I18nString(key) as unknown as string;
|
||||
|
||||
export enum HType {
|
||||
Melee = 0,
|
||||
@@ -105,48 +112,48 @@ export interface HSkillInfo {
|
||||
|
||||
export const HeroInfo: Record<number, heroInfo> = {
|
||||
// ========== 近战英雄 ==========
|
||||
5001:{uuid:5001,get name(){return t("hero_name_5001")},path:"hk1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Melee,hp:150,ap:25,speed:800,atking:[{s_uuid:6301,t_num:2}],
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},get info(){return t("hero_info_5001")}},
|
||||
5002:{uuid:5002,get name(){return t("hero_name_5002")},path:"hk3", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Melee,hp:150,ap:75,speed:800,atked:[{s_uuid:6301,t_num:2}],
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},get info(){return t("hero_info_5002")}},
|
||||
5003:{uuid:5003,get name(){return t("hero_name_5003")},path:"hk4", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Melee,hp:100,ap:100,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},get info(){return t("hero_info_5003")}},
|
||||
5004:{uuid:5004,get name(){return t("hero_name_5004")},path:"hc1", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Melee,hp:100,ap:200,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.7,ccd:0}},get info(){return t("hero_info_5004")}},
|
||||
5005:{uuid:5005,get name(){return t("hero_name_5005")},path:"hk2", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Melee,hp:100,ap:200,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},get info(){return t("hero_info_5005")}},
|
||||
5001:{uuid:5001,name:t("hero_name_5001"),path:"hk1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Melee,hp:150,ap:25,speed:800,atking:[{s_uuid:6301,t_num:2}],
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},info:t("hero_info_5001")},
|
||||
5002:{uuid:5002,name:t("hero_name_5002"),path:"hk3", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Melee,hp:150,ap:75,speed:800,atked:[{s_uuid:6301,t_num:2}],
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},info:t("hero_info_5002")},
|
||||
5003:{uuid:5003,name:t("hero_name_5003"),path:"hk4", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Melee,hp:100,ap:100,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},info:t("hero_info_5003")},
|
||||
5004:{uuid:5004,name:t("hero_name_5004"),path:"hc1", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Melee,hp:100,ap:200,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.7,ccd:0}},info:t("hero_info_5004")},
|
||||
5005:{uuid:5005,name:t("hero_name_5005"),path:"hk2", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Melee,hp:100,ap:200,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:1.5,ccd:0}},info:t("hero_info_5005")},
|
||||
|
||||
|
||||
// ========== 法师英雄 ==========
|
||||
5101:{uuid:5101,get name(){return t("hero_name_5101")},path:"hm2", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:50,ap:60,speed:800,revive:{s_uuid:6501,r_num:1,upr:0.5},
|
||||
skills:{6201:{uuid:6007,lv:1,cd:1,ccd:0}},get info(){return t("hero_info_5101")}},
|
||||
5102:{uuid:5102,get name(){return t("hero_name_5102")},path:"hm1", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Long,hp:30,ap:120,speed:800,
|
||||
skills:{6203:{uuid:6002,lv:1,cd:1,ccd:0}},get info(){return t("hero_info_5102")}},
|
||||
5103:{uuid:5103,get name(){return t("hero_name_5103")},path:"hm9", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6201:{uuid:6002,lv:1,cd:1,ccd:0}},get info(){return t("hero_info_5103")}},
|
||||
5104:{uuid:5104,get name(){return t("hero_name_5104")},path:"hm4", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Long,hp:60,ap:240,speed:800,
|
||||
skills:{6201:{uuid:66002201,lv:1,cd:1,ccd:0}},get info(){return t("hero_info_5104")}},
|
||||
5105:{uuid:5105,get name(){return t("hero_name_5105")},path:"hm3", fac:FacSet.HERO,cards_lv:5,lv:1,type:HType.Long,hp:75,ap:300,speed:800,
|
||||
skills:{6203:{uuid:6002,lv:1,cd:1,ccd:0}},get info(){return t("hero_info_5105")} },
|
||||
5101:{uuid:5101,name:t("hero_name_5101"),path:"hm2", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:50,ap:60,speed:800,revive:{s_uuid:6501,r_num:1,upr:0.5},
|
||||
skills:{6201:{uuid:6007,lv:1,cd:1,ccd:0}},info:t("hero_info_5101")},
|
||||
5102:{uuid:5102,name:t("hero_name_5102"),path:"hm1", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Long,hp:30,ap:120,speed:800,
|
||||
skills:{6203:{uuid:6002,lv:1,cd:1,ccd:0}},info:t("hero_info_5102")},
|
||||
5103:{uuid:5103,name:t("hero_name_5103"),path:"hm9", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6201:{uuid:6002,lv:1,cd:1,ccd:0}},info:t("hero_info_5103")},
|
||||
5104:{uuid:5104,name:t("hero_name_5104"),path:"hm4", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Long,hp:60,ap:240,speed:800,
|
||||
skills:{6201:{uuid:66002201,lv:1,cd:1,ccd:0}},info:t("hero_info_5104")},
|
||||
5105:{uuid:5105,name:t("hero_name_5105"),path:"hm3", fac:FacSet.HERO,cards_lv:5,lv:1,type:HType.Long,hp:75,ap:300,speed:800,
|
||||
skills:{6203:{uuid:6002,lv:1,cd:1,ccd:0}},info:t("hero_info_5105") },
|
||||
|
||||
// ========== 远程英雄 ==========
|
||||
5201:{uuid:5201,get name(){return t("hero_name_5201")},path:"ha1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:15,ap:60,speed:800,
|
||||
skills:{6101:{uuid:6005,lv:1,cd:0.9,ccd:0}},get info(){return t("hero_info_5201")}},
|
||||
5202:{uuid:5202,get name(){return t("hero_name_5202")},path:"ha2", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6011:{uuid:6005,lv:1,cd:0.9,ccd:0}},get info(){return t("hero_info_5202")}},
|
||||
5203:{uuid:5203,get name(){return t("hero_name_5203")},path:"ha3", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6011:{uuid:6005,lv:1,cd:0.9,ccd:0}},get info(){return t("hero_info_5203")}},
|
||||
5201:{uuid:5201,name:t("hero_name_5201"),path:"ha1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:15,ap:60,speed:800,
|
||||
skills:{6101:{uuid:6005,lv:1,cd:0.9,ccd:0}},info:t("hero_info_5201")},
|
||||
5202:{uuid:5202,name:t("hero_name_5202"),path:"ha2", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6011:{uuid:6005,lv:1,cd:0.9,ccd:0}},info:t("hero_info_5202")},
|
||||
5203:{uuid:5203,name:t("hero_name_5203"),path:"ha3", fac:FacSet.HERO,cards_lv:3,lv:1,type:HType.Long,hp:45,ap:180,speed:800,
|
||||
skills:{6011:{uuid:6005,lv:1,cd:0.9,ccd:0}},info:t("hero_info_5203")},
|
||||
|
||||
// ========== 腐竹英雄 ==========
|
||||
5301:{uuid:5301,get name(){return t("hero_name_5301")},path:"hh1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:15,ap:20,speed:800,atking:[{s_uuid:6302,t_num:2}],
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},get info(){return t("hero_info_5301")} },
|
||||
5302:{uuid:5302,get name(){return t("hero_name_5302")},path:"hz1", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Long,hp:30,ap:40,speed:800,atking:[{s_uuid:6304,t_num:2}],
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},get info(){return t("hero_info_5302")}},
|
||||
5301:{uuid:5301,name:t("hero_name_5301"),path:"hh1", fac:FacSet.HERO,cards_lv:1,lv:1,type:HType.Long,hp:15,ap:20,speed:800,atking:[{s_uuid:6302,t_num:2}],
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},info:t("hero_info_5301") },
|
||||
5302:{uuid:5302,name:t("hero_name_5302"),path:"hz1", fac:FacSet.HERO,cards_lv:2,lv:1,type:HType.Long,hp:30,ap:40,speed:800,atking:[{s_uuid:6304,t_num:2}],
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},info:t("hero_info_5302")},
|
||||
|
||||
5303:{uuid:5303,get name(){return t("hero_name_5303")},path:"hm6", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Long,hp:60,ap:80,speed:800,
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},get info(){return t("hero_info_5303")}},
|
||||
5304:{uuid:5304,get name(){return t("hero_name_5304")},path:"hm7", fac:FacSet.HERO,cards_lv:6,lv:1,type:HType.Long,hp:90,ap:120,speed:800,
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},get info(){return t("hero_info_5304")}},
|
||||
5303:{uuid:5303,name:t("hero_name_5303"),path:"hm6", fac:FacSet.HERO,cards_lv:4,lv:1,type:HType.Long,hp:60,ap:80,speed:800,
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},info:t("hero_info_5303")},
|
||||
5304:{uuid:5304,name:t("hero_name_5304"),path:"hm7", fac:FacSet.HERO,cards_lv:6,lv:1,type:HType.Long,hp:90,ap:120,speed:800,
|
||||
skills:{6202:{uuid:6004,lv:1,cd:1.2,ccd:0}},info:t("hero_info_5304")},
|
||||
|
||||
|
||||
|
||||
@@ -164,36 +171,36 @@ export const HeroInfo: Record<number, heroInfo> = {
|
||||
|
||||
//============== 兽人系列 ===============
|
||||
// 近战型
|
||||
6001:{uuid:6001,get name(){return t("mon_name_6001")},path:"mo1", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},get info(){return ""}},
|
||||
6002:{uuid:6002,get name(){return t("mon_name_6002")},path:"mo3", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0},6004:{uuid:6004,lv:1,cd:10,ccd:0}},get info(){return ""}},
|
||||
6003:{uuid:6003,get name(){return t("mon_name_6003")},path:"mo4", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:350,ap:30,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:2,ccd:0}},get info(){return ""}},
|
||||
6001:{uuid:6001,name:t("mon_name_6001"),path:"mo1", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},info:""},
|
||||
6002:{uuid:6002,name:t("mon_name_6002"),path:"mo3", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0},6004:{uuid:6004,lv:1,cd:10,ccd:0}},info:""},
|
||||
6003:{uuid:6003,name:t("mon_name_6003"),path:"mo4", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:350,ap:30,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:2,ccd:0}},info:""},
|
||||
// 4. 远程
|
||||
6004:{uuid:6004,get name(){return t("mon_name_6004")},path:"mo2", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:45,speed:800,
|
||||
skills:{6001:{uuid:6101,lv:1,cd:1.5,ccd:0}},get info(){return ""}},
|
||||
6005:{uuid:6005,get name(){return t("mon_name_6005")},path:"mo5", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:20,speed:800,
|
||||
skills:{6001:{uuid:6203,lv:1,cd:1.5,ccd:0}},get info(){return ""}},
|
||||
6004:{uuid:6004,name:t("mon_name_6004"),path:"mo2", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:45,speed:800,
|
||||
skills:{6001:{uuid:6101,lv:1,cd:1.5,ccd:0}},info:""},
|
||||
6005:{uuid:6005,name:t("mon_name_6005"),path:"mo5", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:20,speed:800,
|
||||
skills:{6001:{uuid:6203,lv:1,cd:1.5,ccd:0}},info:""},
|
||||
// 6. 精英/BOSS型
|
||||
6006:{uuid:6006,get name(){return t("mon_name_6006")},path:"mo6", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:1500,ap:20,speed:800,
|
||||
skills:{6002:{uuid:6002,lv:1,cd:2,ccd:0},6004:{uuid:6004,lv:1,cd:10,ccd:0}},get info(){return ""}},
|
||||
6006:{uuid:6006,name:t("mon_name_6006"),path:"mo6", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:1500,ap:20,speed:800,
|
||||
skills:{6002:{uuid:6002,lv:1,cd:2,ccd:0},6004:{uuid:6004,lv:1,cd:10,ccd:0}},info:""},
|
||||
//============== 亡灵系列 ===============
|
||||
// 近战型
|
||||
6101:{uuid:6101,get name(){return t("mon_name_6101")},path:"mud1", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},get info(){return ""}},
|
||||
6103:{uuid:6103,get name(){return t("mon_name_6103")},path:"mud3", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},get info(){return ""}},
|
||||
6101:{uuid:6101,name:t("mon_name_6101"),path:"mud1", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},info:""},
|
||||
6103:{uuid:6103,name:t("mon_name_6103"),path:"mud3", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:120,ap:12,speed:800,
|
||||
skills:{6001:{uuid:6001,lv:1,cd:0.65,ccd:0}},info:""},
|
||||
// 4. 远程
|
||||
6102:{uuid:6102,get name(){return t("mon_name_6102")},path:"mud2", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:45,speed:800,
|
||||
skills:{6001:{uuid:6101,lv:1,cd:1.5,ccd:0}},get info(){return ""}},
|
||||
6102:{uuid:6102,name:t("mon_name_6102"),path:"mud2", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:80,ap:45,speed:800,
|
||||
skills:{6001:{uuid:6101,lv:1,cd:1.5,ccd:0}},info:""},
|
||||
// 6105:{uuid:6105,name:"兽人法师",path:"mud5", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:80,ap:20,speed:800,
|
||||
// skills:{6001:{uuid:6001,lv:1,cd:1,ccd:0},6003:{uuid:6003,lv:1,cd:10,ccd:0}},info:""},
|
||||
// 6. 精英/BOSS型
|
||||
6104:{uuid:6104,get name(){return t("mon_name_6104")},path:"mud4", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:350,ap:30,speed:800,
|
||||
skills:{6204:{uuid:6204,lv:1,cd:2,ccd:0},6206:{uuid:6206,lv:1,cd:10,ccd:0}},get info(){return ""}},
|
||||
6105:{uuid:6105,get name(){return t("mon_name_6105")},path:"mud5", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:1500,ap:20,speed:800,
|
||||
skills:{6002:{uuid:6002,lv:1,cd:2,ccd:0},6005:{uuid:6005,lv:1,cd:10,ccd:0}},get info(){return ""}},
|
||||
6104:{uuid:6104,name:t("mon_name_6104"),path:"mud4", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Long,hp:350,ap:30,speed:800,
|
||||
skills:{6204:{uuid:6204,lv:1,cd:2,ccd:0},6206:{uuid:6206,lv:1,cd:10,ccd:0}},info:""},
|
||||
6105:{uuid:6105,name:t("mon_name_6105"),path:"mud5", fac:FacSet.MON,cards_lv:1,lv:1,type:HType.Melee,hp:1500,ap:20,speed:800,
|
||||
skills:{6002:{uuid:6002,lv:1,cd:2,ccd:0},6005:{uuid:6005,lv:1,cd:10,ccd:0}},info:""},
|
||||
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user