squidGame/tgx-games-client/assets/module_arean/scripts/DataConfig/Managers/NameDataManager.ts

48 lines
1.9 KiB
TypeScript

import {IPlayerNameCfg} from "db://assets/module_basic/shared/configs/interface/IPlayerNameCfg";
import {Logger} from "db://assets/core_tgx/base/utils/Logger";
import {CommonFun} from "db://assets/module_arean/scripts/CommonFun";
/************************************************************************************
* FileName : NameDataManager.ts
* Description : 名字表
* Version : v1.0.0
* CreateTime : 2025-01-08 15:37:03
* Author :
* Copyright (c) since 2025
* ==============================================================
* Method Description:
*
* ==============================================================
************************************************************************************/
export default class NameDataManager {
private _data : IPlayerNameCfg[] = [];
private _firstNameList : string[] = [];
private _secondNameList : string[] = [];
init(data: any): void
{
this._data = data;
let len = this._data.length;
for (let i = 0; i < len; i++) {
let element = this._data[i];
let firstName = element.name1;
let secondName = element.name2;
if(firstName.length > 0) this._firstNameList.push(firstName);
if(secondName.length > 0) this._secondNameList.push(secondName);
}
console.log(`配置数据(IPlayerNameCfg)加载完毕...`,this._data);
}
getAllData() : IPlayerNameCfg[]{
return this._data;
}
/**
* 获取随机名字
*/
getRandomName() : string{
let firstName = this._firstNameList[CommonFun.getInstance().getRandomBetween(0,this._firstNameList.length - 1)]
let secondName = this._secondNameList[CommonFun.getInstance().getRandomBetween(0,this._secondNameList.length - 1)]
return `${firstName}·${secondName}`;
}
}