活动:支持礼包兑换

This commit is contained in:
qiaoxin
2021-04-27 20:52:42 +08:00
parent 2996a899e2
commit 2ec957c619
8 changed files with 326 additions and 131 deletions

View File

@@ -38,10 +38,10 @@ import { dicHeroScroll, preHeroScroll } from './dictionary/DicHeroScroll';
import { dicPvpOpponent } from './dictionary/DicPvpOpponent';
import { dicPvpTeamLevel } from './dictionary/DicPvpTeamLevel';
import { dicPvpRefreshConsume, maxPvpRefreshCnt } from './dictionary/DicPvpRefreshConsume';
import { dicGkPvp, dicGkPvps } from './dictionary/DicGkPvp';
import { dicHeroRewads } from './dictionary/DicPvpHeroReward';
import { dicRankRewads, dicRankMax } from './dictionary/DicPvpRankReward';
import { dicPvpBoxs } from './dictionary/DicPvpBox';
import { dicGkPvp, dicGkPvps } from './dictionary/DicGkPvp';
import { dicHeroRewads } from './dictionary/DicPvpHeroReward';
import { dicRankRewads, dicRankMax } from './dictionary/DicPvpRankReward';
import { dicPvpBoxs } from './dictionary/DicPvpBox';
import { dicGuildAuth } from './dictionary/DicGuildAuth';
import { dicCenterBase, dicEquipPriduceBase, dicBossBase, dicTrainBase, dicDonateBase, dicWishPoolBase, dicStoreBase, dicStructureConsume } from "./dictionary/DicStructure";
import { dicGuildActiveDayReward } from './dictionary/DicGuildActiveDayReward';
@@ -78,6 +78,7 @@ import { dicMainTaskStage } from "./dictionary/DicMainTaskStage";
import { dicTaskBox } from './dictionary/DicTaskBox';
import { dicGacha } from "./dictionary/DicGacha";
import { dicGachaContent, dicGachaContentHero } from "./dictionary/DicGachaContent";
import { dicGiftPackage } from "./dictionary/DicGiftPackage";
export const gameData = {
blurprtCompose: dicBlueprtCompose,
@@ -108,7 +109,7 @@ export const gameData = {
warJson: dicWarJson,
xunbao: dicXunbao,
btlBossHpSum: new Map<number, number>(),
btlBossHp: new Map<number, Array<{dataId: number, hp: number, actorId: number}>>(),
btlBossHp: new Map<number, Array<{ dataId: number, hp: number, actorId: number }>>(),
blueprtToWar: new Map<number, number>(),
blueprt: blueprt,
fashion: dicFashions,
@@ -190,7 +191,8 @@ export const gameData = {
gachaContentHero: dicGachaContentHero,
gachaHope: getGachaHopePercent(),
gachaTurntable: getGachaTurntablePercent(),
heroTransPiece: getHeroTransPiece()
heroTransPiece: getHeroTransPiece(),
giftPackage: dicGiftPackage
};
// 在此提供一些原先在gamedata中提供的方法以便更方便获取gameData数据
@@ -202,9 +204,9 @@ export const gameData = {
export function getLvByExp(exp: number) {
let curLv = 0;
let entries = gameData.kingexp.entries();
for (let [lv, {sum}] of entries) {
for (let [lv, { sum }] of entries) {
curLv = lv;
if(exp < sum) break;
if (exp < sum) break;
}
return curLv;
@@ -227,7 +229,7 @@ export function getHeroLvByExp(exp: number) {
let entries = gameData.charexp.entries();
for (let [lv, sum] of entries) {
curLv = lv;
if(exp < sum) break;
if (exp < sum) break;
}
return curLv;
@@ -250,7 +252,7 @@ export function getFavourLvByExp(exp: number) {
let entries = gameData.friendShipLevelMap.entries();
for (let [lv, { expSum: sum }] of entries) {
curLv = lv;
if(exp < sum) break;
if (exp < sum) break;
}
return curLv;
@@ -269,9 +271,9 @@ export function getBossHpByWarId(warId: number) {
newAttr.setByWarJson(attribute, 1);
let attrJson = newAttr.getReduceAttributes();
const hp = attrJson.hp||0;
const hp = attrJson.hp || 0;
if (hp > 0) {
bossHpArr.push({dataId, hp, actorId});
bossHpArr.push({ dataId, hp, actorId });
bossHpSum += hp;
}
}
@@ -288,10 +290,10 @@ export function getWarIdByBlueprtId(blueprtId: number) {
let warId = gameData.blueprtToWar.get(blueprtId);
if (!warId) {
let blueprt = gameData.goods.get(blueprtId);
if(blueprt) {
if (blueprt) {
const { specialAttr } = blueprt;
warId = specialAttr.get(SPECIAL_ATTR.WAR_ID);
if(warId)
if (warId)
gameData.blueprtToWar.set(blueprtId, warId);
}
}
@@ -312,22 +314,22 @@ export function getMaxGradeByjobClass(jobClass: number) {
}
export function getJobByGradeAndClass(jobClass: number, grade: number) {
return gameData.jobClassAndgrades.get(jobClass +'_' + grade);
return gameData.jobClassAndgrades.get(jobClass + '_' + grade);
}
export function getFriendShipById(shipId: number, level: number) {
return gameData.friendShips.get(shipId +'_' + level);
return gameData.friendShips.get(shipId + '_' + level);
}
export function getGoodById(gid:number) {
export function getGoodById(gid: number) {
return gameData.goods.get(gid);
}
export function getJewelById(gid:number) {
export function getJewelById(gid: number) {
return gameData.jewels.get(gid);
}
export function getHeroEquipByClassId(classId:number) {
export function getHeroEquipByClassId(classId: number) {
return gameData.dicHeroEquip.get(classId);
}
@@ -342,7 +344,7 @@ export function getTitle(titleLv: number) {
}
export function getTeraph(id: number, grade: number) {
const teraphInfo = gameData.teraphs.get(id +'_'+ grade);
const teraphInfo = gameData.teraphs.get(id + '_' + grade);
return teraphInfo;
}
@@ -361,21 +363,21 @@ export function getSuit(id: number) {
return suitInfo;
}
export function getFuncsSwitch(id:number) {
export function getFuncsSwitch(id: number) {
const funcInfo = gameData.funcsSwitch.get(id);
return funcInfo;
}
export function getPLvByScore(score: number) {
let lv = 0;
for(let {teamLv, topLineupMin, topLineupMax} of gameData.pvpTeamLevel) {
if(score >= topLineupMin) lv = teamLv;
if(score < topLineupMax) break;
for (let { teamLv, topLineupMin, topLineupMax } of gameData.pvpTeamLevel) {
if (score >= topLineupMin) lv = teamLv;
if (score < topLineupMax) break;
}
return lv;
}
export function getPvpGkByWarId (warId: number) {
export function getPvpGkByWarId(warId: number) {
return gameData.pvpGk.get(warId);
}
@@ -426,17 +428,17 @@ export function getTrainBaseByLv(lv: number) {
export function getGuildActiveWeekReward(rank: number) {
let result = gameData.guildActiveWeekReward.find(cur => {
let {rankMax, rankMin} = cur;
let { rankMax, rankMin } = cur;
return rank >= rankMin && rank <= (rankMax || rankMax == -1);
});
let reward = new Array<RewardInter>();
if(result) reward = result.reward;
if (result) reward = result.reward;
return reward;
}
export function getGuildActiveByIdAndType(id: number, type: number) {
let dicWay = gameData.guildActiveWays.get(id);
if(!dicWay) return 0;
if (!dicWay) return 0;
return dicWay.activePoint.get(type.toString());
}
export function getArmyDevelopConsumeById(id: number) {
@@ -465,9 +467,9 @@ export function getArmyWishPoolBaseByLv(lv: number) {
export function getFriendLvByExp(exp: number) {
let resultLv = 1;
for(let [lv, {sum}] of gameData.roleFriendLv.entries()) {
for (let [lv, { sum }] of gameData.roleFriendLv.entries()) {
resultLv = lv;
if(exp < sum) break;
if (exp < sum) break;
}
return resultLv;
}
@@ -479,9 +481,9 @@ export function getFriendLvByExp(exp: number) {
export function getDicFriendByLv(lv: number) {
let dicFriend: DicRoleFriend;
let entries = gameData.roleFriend.entries();
for (let [dicLv, dic ] of entries) {
for (let [dicLv, dic] of entries) {
dicFriend = dic;
if(lv > dicLv) break;
if (lv > dicLv) break;
}
return dicFriend;
@@ -494,8 +496,8 @@ export function getDicFriendByLv(lv: number) {
export function getTodayGuildActivity() {
let today = getCurDay();
let dic: DicGuildActivity;
for(let [_id, dicGuildActivity] of gameData.guildActivity) {
if(dicGuildActivity.openDay.includes(today)) {
for (let [_id, dicGuildActivity] of gameData.guildActivity) {
if (dicGuildActivity.openDay.includes(today)) {
dic = dicGuildActivity;
break;
}
@@ -509,11 +511,11 @@ export function getTodayGuildActivity() {
* @param rank 排名
*/
export function getGuildAuctionRewards(aid: number, rank: number) {
let ranksReward = gameData.guildAuction.get(aid)||[];
let ranksReward = gameData.guildAuction.get(aid) || [];
let dic = ranksReward.find(cur => {
return rank >= cur.min && (rank <= cur.max || cur.max == 0);
});
return dic?dic.rewards: new Array<RewardInter>();
return dic ? dic.rewards : new Array<RewardInter>();
}
/**
@@ -523,11 +525,11 @@ export function getGuildAuctionRewards(aid: number, rank: number) {
* @param rank 成员在军团内部排名
*/
export function getCityActivityRewards(type: number, guildRank: number, rank: number) {
let ranksReward = gameData.cityActivityReward.get(type)||[];
let ranksReward = gameData.cityActivityReward.get(type) || [];
let dic = ranksReward.find(cur => {
return cur.guildRank == guildRank && (rank >= cur.min && (rank <= cur.max || cur.max == 0));
});
return dic?dic.honour: 0;
return dic ? dic.honour : 0;
}
function decodeRaceActivityEncounter() {
@@ -535,8 +537,8 @@ function decodeRaceActivityEncounter() {
let map = decodeIdCntArrayStr(str, 1);
let newMap = new Map<number, number>();
let eventNum = 0;
for(let [key, value] of map) {
if(value == RACE_EVENT_TYPE.EVENT) eventNum ++;
for (let [key, value] of map) {
if (value == RACE_EVENT_TYPE.EVENT) eventNum++;
newMap.set(parseInt(key), value);
}
return { events: newMap, eventNum };
@@ -558,14 +560,14 @@ function decodeRaceNormalItems() {
}
function decodeRaceEventItems() {
let str = GUILDACTIVITY.RACEACTIVITY_EVENT_ITEMS||"";
let str = GUILDACTIVITY.RACEACTIVITY_EVENT_ITEMS || "";
return parseGoodStr(str);
}
export function getRaceEventItems() {
let items = gameData.raceNormalItems;
let result = new Array<RewardInter>();
for(let {id, min, max} of items) {
for (let { id, min, max } of items) {
let count = getRandValueByMinMax(min, max, 0);
result.push({ id, count });
}
@@ -581,7 +583,7 @@ export function getDicGachaFloor(id: number) {
export function getRandExpedition(cnt = 1) {
let arr: DicExpedition[] = [];
for(let [_id, dicExpedition] of gameData.expedition) {
for (let [_id, dicExpedition] of gameData.expedition) {
arr.push(dicExpedition);
}
return getRandEelm(arr, cnt);
@@ -606,7 +608,7 @@ function getGachaTurntablePercent() {
function getHeroTransPiece() {
let map = decodeIdCntArrayStr(RECRUIT.RECRUIT_CHANGE_SHARD, 1);
let newMap = new Map<number, number>();
for(let [id, count] of map) {
for (let [id, count] of map) {
newMap.set(parseInt(id), count);
}
return newMap