mh3-data
Version:
Monster Hunter Tri data for monsters, quests, and weapons
32 lines • 1.26 kB
JavaScript
import { getMonster, MonsterType } from '../monsters';
import { getQuestById } from '../quests';
import { MonsterLevelData } from './monster-level-data';
/**
* @returns Multipliers corresponding to a given level
*/
export function getMonsterLevelMultipliers(monsterName, level) {
const multipliers = MonsterLevelData[level];
if (!multipliers)
throw new Error(`No multipliers found for level ${level}`);
const monster = getMonster(monsterName);
// Elder dragons always have a stagger multiplier of 1
return monster.type !== MonsterType.EldDrg
? multipliers
: {
...multipliers,
stagger: 1
};
}
/**
* @returns MonsterLevelMultiplier for a given monster ID in a quest ID.
* @throw Error if monster is not present in quest
*/
export function getMonsterMultipliersForQuest(monsterName, questId) {
const quest = getQuestById(questId);
const monster = getMonster(monsterName);
const bossInfo = quest.bosses.find(boss => boss.monsterId === monster.id);
if (!bossInfo)
throw new Error(`Quest ID ${questId} does not include monster ID ${monster.id}`);
return getMonsterLevelMultipliers(monsterName, bossInfo.level);
}
//# sourceMappingURL=monster-level-util.js.map