409 lines
6.8 KiB
TypeScript
409 lines
6.8 KiB
TypeScript
import { resources } from "cc";
|
|
|
|
class herosList {
|
|
/**
|
|
* 静态对象
|
|
*
|
|
* @public
|
|
* @static
|
|
* @type {herosList}
|
|
* @memberof herosList
|
|
*/
|
|
private static instance: herosList;
|
|
/**
|
|
* 列表
|
|
*
|
|
* @public
|
|
* @type {Array<IherosInfo>}
|
|
* @memberof herosList
|
|
*/
|
|
public list: Array<IherosInfo> = [];
|
|
/**
|
|
* 配置单例
|
|
*
|
|
* @static
|
|
* @returns {herosList}
|
|
* @memberof herosList
|
|
*/
|
|
public static getInstance(): herosList {
|
|
if (!herosList.instance) {
|
|
herosList.instance = new herosList();
|
|
}
|
|
|
|
return herosList.instance;
|
|
}
|
|
|
|
/**
|
|
* 加载文件
|
|
*
|
|
* @return {*} {Promise<void>}
|
|
* @memberof LanguageList
|
|
*/
|
|
public async loadConfig(): Promise<void> {
|
|
const data: any = await new Promise((resolve: any, reject: any): any => {
|
|
resources.load('config\game/heros', (error: any, texture: any): any => {
|
|
if (error) {
|
|
console.log('loadRes error', 'config\game/heros', JSON.stringify(error));
|
|
resolve(null);
|
|
} else {
|
|
resolve(texture);
|
|
}
|
|
});
|
|
});
|
|
herosList.instance.list = data.json.list;
|
|
}
|
|
|
|
/**
|
|
* 初始化
|
|
*
|
|
* @memberof TableBigWheelConfigList
|
|
*/
|
|
public async init(): Promise<void> {
|
|
if(herosList.instance.list.length === 0) {
|
|
await this.loadConfig();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public uuid(index: number): number {
|
|
return this.list[index].uuid;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public path(index: number): number {
|
|
return this.list[index].path;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public type(index: number): number {
|
|
return this.list[index].type;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public level(index: number): number {
|
|
return this.list[index].level;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public name(index: number): string {
|
|
return this.list[index].name;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public atk(index: number): number {
|
|
return this.list[index].atk;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public hp(index: number): number {
|
|
return this.list[index].hp;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public atk_cd(index: number): number {
|
|
return this.list[index].atk_cd;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public power(index: number): number {
|
|
return this.list[index].power;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public speed(index: number): number {
|
|
return this.list[index].speed;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public skill(index: number): string {
|
|
return this.list[index].skill;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public max_skill(index: number): string {
|
|
return this.list[index].max_skill;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public skill_uuid(index: number): number {
|
|
return this.list[index].skill_uuid;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public max_skill_uuid(index: number): number {
|
|
return this.list[index].max_skill_uuid;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public word(index: number): string {
|
|
return this.list[index].word;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public info(index: number): string {
|
|
return this.list[index].info;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public atktype(index: number): string {
|
|
return this.list[index].atktype;
|
|
}
|
|
|
|
/**
|
|
* undefined
|
|
*
|
|
* @param {number} index
|
|
* @return {*} {string}
|
|
* @memberof herosList
|
|
*/
|
|
public mon(index: number): string {
|
|
return this.list[index].mon;
|
|
}
|
|
|
|
|
|
/**
|
|
* 数据长度
|
|
*
|
|
* @return {*} {number}
|
|
* @memberof herosList
|
|
*/
|
|
public dataLength(): number {
|
|
return this.list.length;
|
|
}
|
|
}
|
|
|
|
export default herosList.getInstance();
|
|
|
|
|
|
|
|
export interface IherosInfo {
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
uuid: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
path: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
type: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
level: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
name: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
atk: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
hp: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
atk_cd: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
power: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
speed: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
skill: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
max_skill: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
skill_uuid: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {number}
|
|
* @memberof IherosInfo
|
|
*/
|
|
max_skill_uuid: number
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
word: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
info: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
atktype: string
|
|
/**
|
|
* undefined
|
|
*
|
|
* @type {string}
|
|
* @memberof IherosInfo
|
|
*/
|
|
mon: string
|
|
|
|
} |