Files
ZYZ/game-server/app/services/gvg/gvgRecService.ts
2023-02-17 10:58:06 +08:00

37 lines
1.6 KiB
TypeScript

// 动态
import { GVG_REC_ID, GVG_REC_TYPE, GVG_RESOURCE_TYPE } from "../../consts";
import { GVGRecModel } from "../../db/GVGRec";
import { nowSeconds } from "../../pubUtils/timeUtil";
import { getGVGConfig } from "./gvgService";
// 加入军团
export async function guildJoinLeagueRecord(leagueCode: string, guildName: string) {
await leagueJoinOrQuitGuild(leagueCode, guildName, GVG_REC_ID.LEAGUE_JOIN_GUILD);
}
// 退出军团
export async function guildQuitLeagueRecord(leagueCode: string, guildName: string) {
await leagueJoinOrQuitGuild(leagueCode, guildName, GVG_REC_ID.LEAGUE_QUIT_GUILD);
}
async function leagueJoinOrQuitGuild(leagueCode: string, guildName: string, recId: GVG_REC_ID.LEAGUE_JOIN_GUILD|GVG_REC_ID.LEAGUE_QUIT_GUILD) {
let { configId } = getGVGConfig();
let params = [guildName];
await GVGRecModel.addRec({ leagueCode, configId, type: GVG_REC_TYPE.PREPARE, recId, createTime: nowSeconds(), params })
}
// 获得资源
export async function addResourceRecord(roleId: string, roleName: string, leagueCode: string, resourceType: GVG_RESOURCE_TYPE, output: number) {
let { configId } = getGVGConfig();
let params = [roleName, getResourceNameByType(resourceType), `${output}`];
await GVGRecModel.addRec({ roleId, leagueCode, configId, type: GVG_REC_TYPE.PREPARE, recId: GVG_REC_ID.ADD_RESOURCE, createTime: nowSeconds(), params })
}
function getResourceNameByType(resourceType: GVG_RESOURCE_TYPE) {
switch(resourceType) {
case GVG_RESOURCE_TYPE.FOOD: return '粮食';
case GVG_RESOURCE_TYPE.MINERAL: return '矿物';
case GVG_RESOURCE_TYPE.WOOD: return '木堆';
}
}