✨ feat(宝物): 添加宝物系统
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { ITEM_CHANGE_REASON, LADDER_OPP_STATUS, LADDER_SERVER_GAP_TIME, LADDER_STATUS, MAIL_TYPE, PUSH_ROUTE, REDIS_KEY, TA_USERSET_TYPE } from "../consts";
|
||||
import { ArtifactModel } from "../db/Artifact";
|
||||
import { HeroType } from "../db/Hero";
|
||||
import { LadderMatchModel, LadderMatchType, LadderUpdateInter } from "../db/LadderMatch";
|
||||
import { LadderMatchRecModel, LadderMatchRecType } from "../db/LadderMatchRec";
|
||||
@@ -236,7 +237,7 @@ export async function getLadderOppStatus(ladderData: LadderMatchType, targetRole
|
||||
* @param ladderData 需要populate过的ladderMatch表
|
||||
* @returns
|
||||
*/
|
||||
export function generateInitRecInfo(isRobot: boolean, isDefense: boolean, rank: number, ladderData: LadderMatchType) {
|
||||
export async function generateInitRecInfo(isRobot: boolean, isDefense: boolean, rank: number, ladderData: LadderMatchType) {
|
||||
if(isRobot) {
|
||||
let dicLadderDifficultRatio = gameData.ladderDifficultRatio.get(rank);
|
||||
let dicWar = gameData.war.get(dicLadderDifficultRatio.gkId);
|
||||
@@ -261,7 +262,12 @@ export function generateInitRecInfo(isRobot: boolean, isDefense: boolean, rank:
|
||||
let defenseHeroes = ladderData.defense?.heroes||[];
|
||||
for(let defenseHero of defenseHeroes) {
|
||||
let hero = new LadderOppPlayerHeroInfo();
|
||||
hero.setByDefenseHero(<HeroType>defenseHero.hero);
|
||||
let dbHero = <HeroType>defenseHero.hero;
|
||||
hero.setByDefenseHero(dbHero);
|
||||
if(dbHero && dbHero.artifact) {
|
||||
let artifact = await ArtifactModel.findbySeqId(role.roleId, dbHero.artifact);
|
||||
hero.setArtifact(artifact);
|
||||
}
|
||||
heroes.push(hero);
|
||||
}
|
||||
}
|
||||
@@ -411,7 +417,9 @@ export async function getLadderOppDetailData(rec: LadderMatchRecType) {
|
||||
let hisLadderData = await LadderMatchModel.findByRoleIdAndInclude(rec.roleId2);
|
||||
let dicWar = gameData.war.get(dicLadderDifficultRatio.gkId);
|
||||
let dicWarJson = gameData.warJson.get(dicWar.dispatchJsonId);
|
||||
result.setByPlayer(hisLadderData, dicWarJson);
|
||||
let artifactSeids = hisLadderData.defense.heroes.map(cur => (<HeroType>cur.hero).artifact);
|
||||
let artifacts = await ArtifactModel.findbySeqIds(rec.roleId2, artifactSeids);
|
||||
result.setByPlayer(hisLadderData, dicWarJson, artifacts);
|
||||
let attrByHid = await getHeroesAttributes(rec.roleId2);
|
||||
for(let [hid, attribute] of attrByHid) {
|
||||
result.setAttribute(hid, attribute.getAttributesToString());
|
||||
|
||||
Reference in New Issue
Block a user