feat(gvg): 添加贡献等接口

This commit is contained in:
luying
2023-02-17 10:58:05 +08:00
parent 6cc38053e7
commit 0530f931bc
17 changed files with 301 additions and 49 deletions
+45 -1
View File
@@ -1,8 +1,9 @@
import { RoleType } from "../../db/Role";
import { GVGLeagueType } from "../../db/GVGLeague";
import { GVGLeaguePrepareType } from "../../db/GVGLeaguePrepare";
import { GVGUserDataType } from "../../db/GVGUserData";
import { Distribute, GVGUserDataType } from "../../db/GVGUserData";
import { GuildType } from "../../db/Guild";
import { LEAGUE_JOB } from "../../consts";
class LeagueLeaderInfo {
name: string; // 盟主名
@@ -158,6 +159,7 @@ export class LeagueSimpleInfo extends LeagueListInfo {
export class LeagueGuildInfo {
guildCode: string; // 军团唯一id
icon: number;
name: string; // 军团名
serverName: string; // 区服名
lv: number; // 军团等级
@@ -165,10 +167,12 @@ export class LeagueGuildInfo {
leaderName: string; // 大将军的姓名
guildCe: number; // 军团战力
hasInvited: boolean; // 是否邀请过了
active: number;
constructor(guild: GuildType, serverNames: any) {
if(!guild) return;
this.guildCode = guild.code;
this.icon = guild.icon;
this.name = guild.name;
this.serverName = serverNames[guild.serverId];
this.lv = guild.lv;
@@ -181,6 +185,10 @@ export class LeagueGuildInfo {
setHasInvited(hasInvited: boolean) {
this.hasInvited = hasInvited;
}
setActive(active: number) {
this.active = active;
}
}
export class LeagueMemberListInfo {
@@ -189,6 +197,7 @@ export class LeagueMemberListInfo {
lv: number; // 玩家等级
head: number; // 玩家头像
frame: number; // 玩家相框
title: number; // 爵位
guildName: string; // 所处军团名
serverName: string; // 所处小区名
job: number = 0; // 官职 1-贤臣 2-猛将
@@ -205,6 +214,7 @@ export class LeagueMemberListInfo {
this.lv = role.lv;
this.head = role.head;
this.frame = role.frame;
this.title = role.title;
this.guildName = role.guildName;
this.serverName = serverNames[role.serverId];
this.ce = role.ce;
@@ -221,4 +231,38 @@ export class LeagueMemberListInfo {
setAuth(auth: number) {
this.auth = auth;
}
}
export class LeagueMemberDistributeInfo extends LeagueMemberListInfo{
food: number = 0;
mineral: number = 0;
wood: number = 0;
score: number = 0;
setByUserData(data: GVGUserDataType) {
if(!data) return;
this.active = data.active;
this.job = data.job;
this.food = data.distribute?.food||0;
this.mineral = data.distribute?.mineral||0;
this.wood = data.distribute?.wood||0;
this.score = data.distribute?.score||0
}
}
export class LeagueDistributeInfo {
job: number; // 1-内政 2-外政
sumDistribute: number; // 总贡献(宝箱显示)
receivedBox: number[]; // 已领取的宝箱id
members: LeagueMemberDistributeInfo[];
constructor(job: number, sumDistribute: number, receivedBox: number[]) {
this.job = job;
this.sumDistribute = sumDistribute||0;
this.receivedBox = receivedBox||[];
}
setMembers(members: LeagueMemberDistributeInfo[]) {
this.members = members;
}
}