RoleData.ts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. //服务器端返回的英雄数据
  2. interface RoleServer {
  3. id: string; //英雄id (种族id*10000 +动物形象id)
  4. grade: number; //星级
  5. dna_lv: string; //基因等级
  6. dna_attr:{any} //基因属性
  7. equip: [];//读取状态
  8. skin: [];//皮肤
  9. fight_force: number;//战力
  10. }
  11. class Data {
  12. private _roles: { [id: string]: RoleServer } = {};
  13. //上阵英雄
  14. private _fightRole:Array<Number> = [];
  15. setData(data: {[id: string]:RoleServer}): void {
  16. if (data) {
  17. for(const id in data) {
  18. if (data.hasOwnProperty(id)) {
  19. const role = data[id];
  20. this._roles[id] = role;
  21. // console.log(`ID: ${id}, Name: ${role.name}, Level: ${role.level}`);
  22. }
  23. }
  24. }
  25. }
  26. getRoleDataByID(id: string | number): RoleServer {
  27. if (typeof id === 'number') {
  28. id = id.toString();
  29. }
  30. return this._roles[id];
  31. }
  32. //设置出战角色 data {"1":"xxx","2":"xxx","3":"xxx","4":"xxx"}
  33. setFightRole(data) {
  34. if(!data) return
  35. this._fightRole = [0,0,0,0];
  36. for(let i = 0; i < this._fightRole.length; i++) {
  37. this._fightRole[i] = Number(data[(i+1).toString()] || "0");
  38. }
  39. }
  40. //获取出战角色
  41. getFightRole() :[number,number,number,number]{
  42. return [101,201,301,401];
  43. // return this._fightRole;
  44. }
  45. }
  46. export let RoleData = new Data;