osrs-tools
Version:
A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and game item information
52 lines • 2.14 kB
TypeScript
import type { HunterRumour } from './HunterRumour';
import { HunterRumourTier } from './types';
export declare const HunterGuildMasterName: {
GILMAN: {
name: string;
};
CERVUS: {
name: string;
};
ORNUS: {
name: string;
};
ACO: {
name: string;
};
TECO: {
name: string;
};
};
/**
* Represents a Hunter Guild Master, who can assign rumours to players based on their
* Hunter level,
* completed quests, and the tier of the rumour.
* Each master has specific requirements for assigning rumours,
* and some may require the completion of certain quests (e.g., "At First Light")
* to unlock higher-tier rumours.
* The HunterGuildMaster class encapsulates the properties and logic related to each master,
* allowing for easy retrieval and eligibility checks when assigning rumours to players.
*/
export declare class HunterGuildMaster {
readonly name: string;
readonly tier: HunterRumourTier;
readonly minimumLevel: number;
readonly requiresAtFirstLight: boolean;
currentRumourId: string;
constructor(name: string, tier: HunterRumourTier, minimumLevel: number, requiresAtFirstLight?: boolean);
canAssignRumour(hunterLevel: number, completedQuests?: string[]): boolean;
get wikiUrl(): string;
get isAssigned(): boolean;
assignRumour(rumourId: string): void;
get rumoursThatCanBeAssigned(): HunterRumour[];
/**
* When having a master assign a Hunter Rumour, it needs to check all the current assigned rumours from the other masters;
* It cannot give a rumour that is already assigned from another master, even if it is eligible for assignment.
* This method takes in the list of eligible rumours for this master and the list of currently assigned rumours from the other masters,
* and returns a random rumour ID that can be assigned to this master without conflicts.
* @param eligibleRumours
* @param otherMasterRumours
*/
getRandomRumour(eligibleRumours: HunterRumour[], otherMasterRumours: HunterRumour[]): HunterRumour;
}
//# sourceMappingURL=HunterGuildMaster.d.ts.map