osrs-tools
Version:
A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and game item information
70 lines • 2.79 kB
TypeScript
import { GuildHunter, HunterRumour, RumourTier } from "./HunterRumour";
/** All hunter rumours sorted by Hunter level */
export declare const ALL_RUMOURS: readonly HunterRumour[];
/**
* Huntmaster Gilman (Novice) - Can assign all rumours.
*/
export declare const Gilman: GuildHunter;
/**
* Guild Hunter Cervus (Adept) - Has a distinct adept rumour list.
*/
export declare const Cervus: GuildHunter;
/**
* Guild Hunter Ornus (Adept) - Has a distinct adept rumour list.
*/
export declare const Ornus: GuildHunter;
/**
* Guild Hunter Aco (Expert) - Has a distinct expert rumour list.
*/
export declare const Aco: GuildHunter;
/**
* Guild Hunter Teco (Expert) - Has a distinct expert rumour list.
*/
export declare const Teco: GuildHunter;
/**
* Guild Hunter Wolf (Master) - Requires completion of At First Light.
*/
export declare const Wolf: GuildHunter;
/** All guild hunters */
export declare const ALL_GUILD_HUNTERS: readonly GuildHunter[];
/**
* Get a guild hunter by name.
* @param name - The guild hunter's name (enum or string)
* @returns The guild hunter, or undefined if not found
*/
export declare function getGuildHunterByName(name: string): GuildHunter | undefined;
/**
* Get all guild hunters for a specific tier.
* @param tier - The rumour tier
* @returns Array of guild hunters for that tier
*/
export declare function getGuildHuntersByTier(tier: RumourTier): GuildHunter[];
/**
* Get the available rumours for a guild hunter, excluding any creatures
* already assigned as active rumours from other hunters.
*
* This implements the "blocking" mechanic: players cannot receive the same
* task from multiple guild hunters at once. By obtaining a task from one
* hunter first, it is blocked from appearing with another.
*
* Example: If Gilman assigns "Swamp lizard", Cervus cannot assign "Swamp lizard"
* until the Gilman assignment is completed or reset.
*
* @param hunter - The guild hunter to get available rumours for
* @param activeRumours - Rumours currently assigned from other guild hunters
* @returns Rumours the hunter can assign, excluding blocked ones
*/
export declare function getAvailableRumours(hunter: GuildHunter, activeRumours?: HunterRumour[]): HunterRumour[];
/**
* Find a rumour by creature name.
* @param creature - The creature name to search for (case-insensitive)
* @returns The matching rumour, or undefined if not found
*/
export declare function getRumourByCreature(creature: string): HunterRumour | undefined;
/**
* Get all guild hunters that can assign a specific rumour.
* @param rumour - The rumour to check
* @returns Array of guild hunters who include this rumour in their list
*/
export declare function getHuntersForRumour(rumour: HunterRumour): GuildHunter[];
//# sourceMappingURL=HunterRumours.d.ts.map