mh3-data
Version:
Monster Hunter Tri data for monsters, quests, and weapons
44 lines (43 loc) • 2.37 kB
TypeScript
import { SkillGroup } from './enum';
/** Number of points required for an armor skill to be active */
export type PointThreshold = 10 | 15 | 20 | -10 | -15 | -20;
export declare const skillIdentifiers: readonly ["sharpness", "handicraft", "fencing", "recoil", "normals_up", "pierces_up", "pellets_up", "normal_s+", "pierce_s+", "status", "elemental", "hearing", "fate", "stamina", "loading", "carving", "evade_dist", "tranquilzr", "fastcharge", "punishdraw", "freeelemnt", "rapid_fire", "poison", "health", "rec_speed", "expert", "sharpener", "guard", "guard_up", "reload_spd", "pellet_s+", "crag_s+", "clust_s+", "bomb_boost", "hunger", "attack", "defense", "protection", "wide-range", "wind_res", "gathering", "spd_gather", "psychic", "rec_level", "evasion", "potential", "eating", "tremor_res", "crit_draw", "constitutn", "swimming", "dungmaster", "flame_aura", "paralysis", "sleep", "stun", "mud/snow", "sense", "gluttony", "anti-theft", "transportr", "fire_res", "water_res", "thunderres", "ice_res", "dragon_res", "heat_res", "cold_res", "map", "whim", "fishing", "combo_rate", "combo_plus", "lastingpwr", "precision", "bbq", "speedsetup", "perception", "oxygen", "currentres", "survivor", "blight_res", "auto-guard"];
export type SkillIdentifier = (typeof skillIdentifiers)[number];
/**
* Defines an active armor skill and the number of points required
* for the skill to be active.
*/
export interface ArmorSkill {
/** Used to uniquely identify skill */
readonly key: SkillIdentifier;
readonly skillName: string;
readonly pointThreshold: PointThreshold;
readonly skillDescription?: string;
}
/**
* Defines a skill name, description, and a list of {@link ArmorSkill}s that
* can be activated.
*/
export interface SkillTree {
/** Used to uniquely identify skill */
readonly key: SkillIdentifier;
readonly name: string;
readonly description: string;
readonly group: SkillGroup;
readonly armorSkills: ArmorSkill[];
/**
* If true then the skill can only be acquired via pre-defined equipment
*
* @example
* Autoguard // Talisman from village
* Blight Res // Escadora armor
* Survivor // Hellhunter and Soulhunter Jackets
*/
readonly restricted?: boolean;
}
/**
* Skill ID mapped to a count of points
*/
export type SkillPointRecord = {
[x in SkillIdentifier]?: number;
};