osrs-tools 2.8.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/runescape/model/Item/all/Black2hSword.d.ts +3 -0
- package/dist/runescape/model/Item/all/Black2hSword.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Black2hSword.js +21 -0
- package/dist/runescape/model/Item/all/BlackChainbody.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackChainbody.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackChainbody.js +21 -0
- package/dist/runescape/model/Item/all/BlackKiteshield.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackKiteshield.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackKiteshield.js +21 -0
- package/dist/runescape/model/Item/all/BlackMace.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackMace.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackMace.js +21 -0
- package/dist/runescape/model/Item/all/BlackMedHelm.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackMedHelm.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackMedHelm.js +21 -0
- package/dist/runescape/model/Item/all/BlackRobe.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackRobe.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackRobe.js +21 -0
- package/dist/runescape/model/Item/all/BlackScimitar.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackScimitar.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackScimitar.js +21 -0
- package/dist/runescape/model/Item/all/BlackSword.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackSword.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackSword.js +21 -0
- package/dist/runescape/model/Item/all/BlackWarhammer.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlackWarhammer.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlackWarhammer.js +21 -0
- package/dist/runescape/model/Item/all/BlueWizardHat.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlueWizardHat.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlueWizardHat.js +21 -0
- package/dist/runescape/model/Item/all/BlueWizardRobe.d.ts +3 -0
- package/dist/runescape/model/Item/all/BlueWizardRobe.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BlueWizardRobe.js +21 -0
- package/dist/runescape/model/Item/all/BronzeArrow.d.ts +3 -0
- package/dist/runescape/model/Item/all/BronzeArrow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/BronzeArrow.js +21 -0
- package/dist/runescape/model/Item/all/DeathRune.d.ts +3 -0
- package/dist/runescape/model/Item/all/DeathRune.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/DeathRune.js +21 -0
- package/dist/runescape/model/Item/all/DragonLongsword.d.ts +3 -0
- package/dist/runescape/model/Item/all/DragonLongsword.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/DragonLongsword.js +21 -0
- package/dist/runescape/model/Item/all/GreenDHideBody.d.ts +1 -1
- package/dist/runescape/model/Item/all/GreenDHideBody.js +7 -7
- package/dist/runescape/model/Item/all/GreenDHideChaps.d.ts +3 -0
- package/dist/runescape/model/Item/all/GreenDHideChaps.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/GreenDHideChaps.js +27 -0
- package/dist/runescape/model/Item/all/HardleatherBody.d.ts +3 -0
- package/dist/runescape/model/Item/all/HardleatherBody.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/HardleatherBody.js +21 -0
- package/dist/runescape/model/Item/all/Herring.d.ts +3 -0
- package/dist/runescape/model/Item/all/Herring.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Herring.js +21 -0
- package/dist/runescape/model/Item/all/IronArrow.d.ts +3 -0
- package/dist/runescape/model/Item/all/IronArrow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/IronArrow.js +21 -0
- package/dist/runescape/model/Item/all/IronPickaxe.d.ts +3 -0
- package/dist/runescape/model/Item/all/IronPickaxe.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/IronPickaxe.js +21 -0
- package/dist/runescape/model/Item/all/LeatherBody.d.ts +3 -0
- package/dist/runescape/model/Item/all/LeatherBody.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/LeatherBody.js +21 -0
- package/dist/runescape/model/Item/all/LeatherCowl.d.ts +3 -0
- package/dist/runescape/model/Item/all/LeatherCowl.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/LeatherCowl.js +21 -0
- package/dist/runescape/model/Item/all/LeatherVambraces.d.ts +3 -0
- package/dist/runescape/model/Item/all/LeatherVambraces.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/LeatherVambraces.js +21 -0
- package/dist/runescape/model/Item/all/Longbow.d.ts +3 -0
- package/dist/runescape/model/Item/all/Longbow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Longbow.js +21 -0
- package/dist/runescape/model/Item/all/OakLongbow.d.ts +3 -0
- package/dist/runescape/model/Item/all/OakLongbow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/OakLongbow.js +21 -0
- package/dist/runescape/model/Item/all/OakShortbow.d.ts +3 -0
- package/dist/runescape/model/Item/all/OakShortbow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/OakShortbow.js +21 -0
- package/dist/runescape/model/Item/all/Sardine.d.ts +3 -0
- package/dist/runescape/model/Item/all/Sardine.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Sardine.js +21 -0
- package/dist/runescape/model/Item/all/Shortbow.d.ts +3 -0
- package/dist/runescape/model/Item/all/Shortbow.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Shortbow.js +21 -0
- package/dist/runescape/model/Item/all/Shrimps.d.ts +3 -0
- package/dist/runescape/model/Item/all/Shrimps.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/Shrimps.js +21 -0
- package/dist/runescape/model/Item/all/SoulRune.d.ts +3 -0
- package/dist/runescape/model/Item/all/SoulRune.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/SoulRune.js +21 -0
- package/dist/runescape/model/Item/all/StaffOfEarth.d.ts +3 -0
- package/dist/runescape/model/Item/all/StaffOfEarth.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/StaffOfEarth.js +21 -0
- package/dist/runescape/model/Item/all/StaffOfFire.d.ts +3 -0
- package/dist/runescape/model/Item/all/StaffOfFire.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/StaffOfFire.js +21 -0
- package/dist/runescape/model/Item/all/StaffOfWater.d.ts +3 -0
- package/dist/runescape/model/Item/all/StaffOfWater.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/StaffOfWater.js +21 -0
- package/dist/runescape/model/Item/all/SteelAxe.d.ts +3 -0
- package/dist/runescape/model/Item/all/SteelAxe.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/SteelAxe.js +21 -0
- package/dist/runescape/model/Item/all/SteelDagger.d.ts +3 -0
- package/dist/runescape/model/Item/all/SteelDagger.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/SteelDagger.js +21 -0
- package/dist/runescape/model/Item/all/SteelLongsword.d.ts +3 -0
- package/dist/runescape/model/Item/all/SteelLongsword.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/SteelLongsword.js +21 -0
- package/dist/runescape/model/Item/all/SummerPie.d.ts +3 -0
- package/dist/runescape/model/Item/all/SummerPie.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/SummerPie.js +21 -0
- package/dist/runescape/model/Item/all/TunaPotato.d.ts +3 -0
- package/dist/runescape/model/Item/all/TunaPotato.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/TunaPotato.js +21 -0
- package/dist/runescape/model/Item/all/WizardHat.d.ts +3 -0
- package/dist/runescape/model/Item/all/WizardHat.d.ts.map +1 -0
- package/dist/runescape/model/Item/all/WizardHat.js +21 -0
- package/dist/runescape/model/clue/ClueScrollHelper.d.ts +1 -1
- package/dist/runescape/model/clue/ClueScrollHelper.d.ts.map +1 -1
- package/dist/runescape/model/clue/ClueScrollHelper.js +114 -197
- package/dist/runescape/model/clue/ClueScrollRewards.d.ts +17 -40
- package/dist/runescape/model/clue/ClueScrollRewards.d.ts.map +1 -1
- package/dist/runescape/model/clue/ClueScrollRewards.js +668 -501
- package/dist/runescape/model/collection-log/CollectionLog.d.ts +8 -0
- package/dist/runescape/model/collection-log/CollectionLog.d.ts.map +1 -0
- package/dist/runescape/model/collection-log/CollectionLog.js +124 -0
- package/dist/runescape/model/collection-log/CollectionLog.model.d.ts +48 -0
- package/dist/runescape/model/collection-log/CollectionLog.model.d.ts.map +1 -0
- package/dist/runescape/model/collection-log/CollectionLog.model.js +13 -0
- package/dist/runescape/model/collection-log/index.d.ts +4 -0
- package/dist/runescape/model/collection-log/index.d.ts.map +1 -0
- package/dist/runescape/model/collection-log/index.js +2 -0
- package/dist/runescape/model/combat-achievements/CombatAchievement.model.d.ts +37 -0
- package/dist/runescape/model/combat-achievements/CombatAchievement.model.d.ts.map +1 -0
- package/dist/runescape/model/combat-achievements/CombatAchievement.model.js +17 -0
- package/dist/runescape/model/combat-achievements/CombatAchievements.d.ts +8 -0
- package/dist/runescape/model/combat-achievements/CombatAchievements.d.ts.map +1 -0
- package/dist/runescape/model/combat-achievements/CombatAchievements.js +80 -0
- package/dist/runescape/model/combat-achievements/index.d.ts +4 -0
- package/dist/runescape/model/combat-achievements/index.d.ts.map +1 -0
- package/dist/runescape/model/combat-achievements/index.js +2 -0
- package/dist/runescape/model/guilds/HunterGuild.d.ts +18 -0
- package/dist/runescape/model/guilds/HunterGuild.d.ts.map +1 -0
- package/dist/runescape/model/guilds/HunterGuild.js +65 -0
- package/dist/runescape/model/guilds/HunterGuildMaster.d.ts +29 -0
- package/dist/runescape/model/guilds/HunterGuildMaster.d.ts.map +1 -0
- package/dist/runescape/model/guilds/HunterGuildMaster.js +39 -0
- package/dist/runescape/model/guilds/HunterGuildProgress.d.ts +12 -0
- package/dist/runescape/model/guilds/HunterGuildProgress.d.ts.map +1 -0
- package/dist/runescape/model/guilds/HunterGuildProgress.js +27 -0
- package/dist/runescape/model/guilds/HunterRumour.d.ts +23 -0
- package/dist/runescape/model/guilds/HunterRumour.d.ts.map +1 -0
- package/dist/runescape/model/guilds/HunterRumour.js +43 -0
- package/dist/runescape/model/guilds/RumourLocation.d.ts +10 -0
- package/dist/runescape/model/guilds/RumourLocation.d.ts.map +1 -0
- package/dist/runescape/model/guilds/RumourLocation.js +12 -0
- package/dist/runescape/model/guilds/Rumours.d.ts +3 -0
- package/dist/runescape/model/guilds/Rumours.d.ts.map +1 -0
- package/dist/runescape/model/guilds/Rumours.js +303 -0
- package/dist/runescape/model/guilds/hunter/HunterGuild.d.ts +33 -0
- package/dist/runescape/model/guilds/hunter/HunterGuild.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/HunterGuild.js +107 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMaster.d.ts +52 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMaster.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMaster.js +71 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMasterName.d.ts +21 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMasterName.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/HunterGuildMasterName.js +8 -0
- package/dist/runescape/model/guilds/hunter/HunterRumour.d.ts +33 -0
- package/dist/runescape/model/guilds/hunter/HunterRumour.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/HunterRumour.js +52 -0
- package/dist/runescape/model/guilds/hunter/RumourLocation.d.ts +48 -0
- package/dist/runescape/model/guilds/hunter/RumourLocation.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/RumourLocation.js +42 -0
- package/dist/runescape/model/guilds/hunter/Rumours.d.ts +11 -0
- package/dist/runescape/model/guilds/hunter/Rumours.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/Rumours.js +325 -0
- package/dist/runescape/model/guilds/hunter/index.d.ts +5 -0
- package/dist/runescape/model/guilds/hunter/index.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/index.js +4 -0
- package/dist/runescape/model/guilds/hunter/types.d.ts +32 -0
- package/dist/runescape/model/guilds/hunter/types.d.ts.map +1 -0
- package/dist/runescape/model/guilds/hunter/types.js +10 -0
- package/dist/runescape/model/guilds/index.d.ts +2 -0
- package/dist/runescape/model/guilds/index.d.ts.map +1 -0
- package/dist/runescape/model/guilds/index.js +1 -0
- package/dist/runescape/model/guilds/types.d.ts +44 -0
- package/dist/runescape/model/guilds/types.d.ts.map +1 -0
- package/dist/runescape/model/guilds/types.js +21 -0
- package/dist/runescape/model/hunter/HunterRumour.d.ts +155 -0
- package/dist/runescape/model/hunter/HunterRumour.d.ts.map +1 -0
- package/dist/runescape/model/hunter/HunterRumour.js +183 -0
- package/dist/runescape/model/hunter/HunterRumours.d.ts +70 -0
- package/dist/runescape/model/hunter/HunterRumours.d.ts.map +1 -0
- package/dist/runescape/model/hunter/HunterRumours.js +346 -0
- package/dist/runescape/model/hunter/index.d.ts +9 -0
- package/dist/runescape/model/hunter/index.d.ts.map +1 -0
- package/dist/runescape/model/hunter/index.js +9 -0
- package/dist/runescape/model/leagues/DemonicPact.d.ts +23 -0
- package/dist/runescape/model/leagues/DemonicPact.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPact.js +210 -0
- package/dist/runescape/model/leagues/DemonicPact.model.d.ts +103 -0
- package/dist/runescape/model/leagues/DemonicPact.model.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPact.model.js +17 -0
- package/dist/runescape/model/leagues/DemonicPactClasses.d.ts +539 -0
- package/dist/runescape/model/leagues/DemonicPactClasses.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPactClasses.js +1085 -0
- package/dist/runescape/model/leagues/DemonicPactPlanningData.d.ts +4 -0
- package/dist/runescape/model/leagues/DemonicPactPlanningData.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPactPlanningData.js +174 -0
- package/dist/runescape/model/leagues/DemonicPacts.d.ts +4 -0
- package/dist/runescape/model/leagues/DemonicPacts.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPacts.js +66 -0
- package/dist/runescape/model/leagues/DemonicPactsLeague/DemonicPactsLeagueAreas.d.ts +23 -0
- package/dist/runescape/model/leagues/DemonicPactsLeague/DemonicPactsLeagueAreas.d.ts.map +1 -0
- package/dist/runescape/model/leagues/DemonicPactsLeague/DemonicPactsLeagueAreas.js +442 -0
- package/dist/runescape/model/leagues/LeaguesRegion.model.d.ts +33 -0
- package/dist/runescape/model/leagues/LeaguesRegion.model.d.ts.map +1 -0
- package/dist/runescape/model/leagues/LeaguesRegion.model.js +14 -0
- package/dist/runescape/model/leagues/LeaguesRegions.d.ts +10 -0
- package/dist/runescape/model/leagues/LeaguesRegions.d.ts.map +1 -0
- package/dist/runescape/model/leagues/LeaguesRegions.js +69 -0
- package/dist/runescape/model/leagues/LeaguesRelic.model.d.ts +31 -0
- package/dist/runescape/model/leagues/LeaguesRelic.model.d.ts.map +1 -0
- package/dist/runescape/model/leagues/LeaguesRelic.model.js +11 -0
- package/dist/runescape/model/leagues/LeaguesRelics.d.ts +8 -0
- package/dist/runescape/model/leagues/LeaguesRelics.d.ts.map +1 -0
- package/dist/runescape/model/leagues/LeaguesRelics.js +237 -0
- package/dist/runescape/model/leagues/RagingEchoesLeague/RagingEchoesLeague.d.ts +749 -0
- package/dist/runescape/model/leagues/RagingEchoesLeague/RagingEchoesLeague.d.ts.map +1 -0
- package/dist/runescape/model/leagues/RagingEchoesLeague/RagingEchoesLeague.js +856 -0
- package/dist/runescape/model/leagues/general/Leagues.d.ts +70 -0
- package/dist/runescape/model/leagues/general/Leagues.d.ts.map +1 -0
- package/dist/runescape/model/leagues/general/Leagues.js +141 -0
- package/dist/runescape/model/leagues/index.d.ts +4 -0
- package/dist/runescape/model/leagues/index.d.ts.map +1 -0
- package/dist/runescape/model/leagues/index.js +3 -0
- package/dist/runescape/model/leagues/model.d.ts +32 -0
- package/dist/runescape/model/leagues/model.d.ts.map +1 -0
- package/dist/runescape/model/leagues/model.js +19 -0
- package/dist/runescape/model/skills/Skill.d.ts +22 -0
- package/dist/runescape/model/skills/Skill.d.ts.map +1 -0
- package/dist/runescape/model/skills/Skill.js +1 -0
- package/dist/runescape/model/skills/attack/Attack.d.ts +15 -0
- package/dist/runescape/model/skills/attack/Attack.d.ts.map +1 -0
- package/dist/runescape/model/skills/attack/Attack.js +19 -0
- package/dist/runescape/model/skills/attack/AttackLevelUnlocks.d.ts +6 -0
- package/dist/runescape/model/skills/attack/AttackLevelUnlocks.d.ts.map +1 -0
- package/dist/runescape/model/skills/attack/AttackLevelUnlocks.js +47 -0
- package/dist/runescape/model/skills/attack/index.d.ts +3 -0
- package/dist/runescape/model/skills/attack/index.d.ts.map +1 -0
- package/dist/runescape/model/skills/attack/index.js +2 -0
- package/dist/runescape/model/skills/hunter/Hunter.d.ts +5 -0
- package/dist/runescape/model/skills/hunter/Hunter.d.ts.map +1 -0
- package/dist/runescape/model/skills/hunter/Hunter.js +6 -0
- package/dist/runescape/model/skills/hunter/HunterNpcs.d.ts +1 -0
- package/dist/runescape/model/skills/hunter/HunterNpcs.d.ts.map +1 -0
- package/dist/runescape/model/skills/hunter/HunterNpcs.js +1 -0
- package/dist/runescape/model/skills/hunter/index.d.ts +2 -0
- package/dist/runescape/model/skills/hunter/index.d.ts.map +1 -0
- package/dist/runescape/model/skills/hunter/index.js +1 -0
- package/dist/runescape/model/skills/index.d.ts +3 -0
- package/dist/runescape/model/skills/index.d.ts.map +1 -0
- package/dist/runescape/model/skills/index.js +2 -0
- package/dist/runescape/resources/QuestData.json +5454 -0
- package/dist/runescape/resources/diary/diaries.json +1484 -0
- package/dist/runescape/resources/diary/diariesArray.json +0 -0
- package/dist/runescape/resources/leagues/demonicPacts.leagues7.json +2449 -0
- package/dist/runescape/resources/quest/exp.json +1333 -0
- package/dist/runescape/resources/quest/questData.json +5790 -0
- package/dist/runescape/resources/quest/questDataArray.json +5489 -0
- package/dist/runescape/resources/quest/subquestArray.json +58 -0
- package/dist/runescape/resources/quest/testObj.json +5682 -0
- package/dist/runescape/resources/quest/testarray.json +5589 -0
- package/dist/runescape/resources/quests/CooksAssistant.json +34 -0
- package/dist/runescape/resources/slayer/slayer.json +3581 -0
- package/dist/runescape/resources/slayer/slayerData.json +4431 -0
- package/dist/runescape/resources/slayer/tasks/json/Chaeldar.json +348 -0
- package/dist/runescape/resources/slayer/tasks/json/Duradel.json +541 -0
- package/dist/runescape/resources/slayer/tasks/json/Krystilia.json +2 -0
- package/dist/runescape/resources/slayer/tasks/json/Mazchna.json +379 -0
- package/dist/runescape/resources/slayer/tasks/json/Neive.json +320 -0
- package/dist/runescape/resources/slayer/tasks/json/Spria.json +345 -0
- package/dist/runescape/resources/slayer/tasks/json/Tureal.json +341 -0
- package/dist/runescape/resources/slayer/tasks/json/Vannaka.json +547 -0
- package/package.json +1 -1
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { HUNTER_RUMOUR_REGISTRY } from './Rumours';
|
|
2
|
+
export const HunterGuildMasterName = {
|
|
3
|
+
GILMAN: { name: 'Gilman' },
|
|
4
|
+
CERVUS: { name: 'Cervus' },
|
|
5
|
+
ORNUS: { name: 'Ornus' },
|
|
6
|
+
ACO: { name: 'Aco' },
|
|
7
|
+
TECO: { name: 'Teco' }
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Represents a Hunter Guild Master, who can assign rumours to players based on their
|
|
11
|
+
* Hunter level,
|
|
12
|
+
* completed quests, and the tier of the rumour.
|
|
13
|
+
* Each master has specific requirements for assigning rumours,
|
|
14
|
+
* and some may require the completion of certain quests (e.g., "At First Light")
|
|
15
|
+
* to unlock higher-tier rumours.
|
|
16
|
+
* The HunterGuildMaster class encapsulates the properties and logic related to each master,
|
|
17
|
+
* allowing for easy retrieval and eligibility checks when assigning rumours to players.
|
|
18
|
+
*/
|
|
19
|
+
export class HunterGuildMaster {
|
|
20
|
+
name; //name of the master
|
|
21
|
+
tier; // the tier of rumour they give
|
|
22
|
+
minimumLevel; // required level for it to be assigned by this master
|
|
23
|
+
requiresAtFirstLight; // whether the master requires completion of "At First Light" to assign their rumours
|
|
24
|
+
currentRumourId; // the ID of the currently assigned rumour, if any
|
|
25
|
+
constructor(name, tier, minimumLevel, requiresAtFirstLight = false) {
|
|
26
|
+
this.name = name;
|
|
27
|
+
this.tier = tier;
|
|
28
|
+
this.minimumLevel = minimumLevel;
|
|
29
|
+
this.requiresAtFirstLight = requiresAtFirstLight;
|
|
30
|
+
this.currentRumourId = '';
|
|
31
|
+
}
|
|
32
|
+
canAssignRumour(hunterLevel, completedQuests = []) {
|
|
33
|
+
if (hunterLevel < this.minimumLevel) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
if (this.requiresAtFirstLight && !completedQuests.includes('At First Light')) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
get wikiUrl() {
|
|
42
|
+
return `https://runescape.wiki/w/${this.name}`;
|
|
43
|
+
}
|
|
44
|
+
get isAssigned() {
|
|
45
|
+
return this.currentRumourId !== '';
|
|
46
|
+
}
|
|
47
|
+
// Assigns a rumour to this master by setting the currentRumourId. This method can be called when a new rumour is assigned to the master, allowing us to track which rumour is currently active for that master. When a rumour is completed, the currentRumourId can be cleared to indicate that the master is ready for a new assignment.
|
|
48
|
+
assignRumour(rumourId) {
|
|
49
|
+
this.currentRumourId = rumourId;
|
|
50
|
+
}
|
|
51
|
+
get rumoursThatCanBeAssigned() {
|
|
52
|
+
return HUNTER_RUMOUR_REGISTRY.filter((rumour) => rumour.canBeAssignedByMaster(this.name));
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* When having a master assign a Hunter Rumour, it needs to check all the current assigned rumours from the other masters;
|
|
56
|
+
* It cannot give a rumour that is already assigned from another master, even if it is eligible for assignment.
|
|
57
|
+
* This method takes in the list of eligible rumours for this master and the list of currently assigned rumours from the other masters,
|
|
58
|
+
* and returns a random rumour ID that can be assigned to this master without conflicts.
|
|
59
|
+
* @param eligibleRumours
|
|
60
|
+
* @param otherMasterRumours
|
|
61
|
+
*/
|
|
62
|
+
getRandomRumour(eligibleRumours, otherMasterRumours) {
|
|
63
|
+
const otherAssignedRumourIds = new Set(otherMasterRumours.map((rumour) => rumour.id));
|
|
64
|
+
const assignableRumours = eligibleRumours.filter((rumour) => !otherAssignedRumourIds.has(rumour.id));
|
|
65
|
+
if (assignableRumours.length === 0) {
|
|
66
|
+
throw new Error(`No assignable rumours available for master ${this.name}`);
|
|
67
|
+
}
|
|
68
|
+
const randomIndex = Math.floor(Math.random() * assignableRumours.length);
|
|
69
|
+
return assignableRumours[randomIndex];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare const HunterGuildMasterName: {
|
|
2
|
+
GILMAN: {
|
|
3
|
+
name: string;
|
|
4
|
+
};
|
|
5
|
+
CERVUS: {
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
ORNUS: {
|
|
9
|
+
name: string;
|
|
10
|
+
};
|
|
11
|
+
ACO: {
|
|
12
|
+
name: string;
|
|
13
|
+
};
|
|
14
|
+
TECO: {
|
|
15
|
+
name: string;
|
|
16
|
+
};
|
|
17
|
+
WOLF: {
|
|
18
|
+
name: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=HunterGuildMasterName.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HunterGuildMasterName.d.ts","sourceRoot":"","sources":["../../../../../source/runescape/model/guilds/hunter/HunterGuildMasterName.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;CAOjC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { HunterRumourDefinition, HunterRumourTier } from './types';
|
|
2
|
+
import { RumourLocation } from './RumourLocation';
|
|
3
|
+
/**
|
|
4
|
+
* Represents a Hunter Rumour that can be assigned by a Hunter Guild Master. Contains all the necessary information about the rumour, including the creature, method, locations, required hunter level, tier, and any quest requirements. Provides methods to check if the rumour can be assigned to a specific master and if a player is eligible for the rumour based on their hunter level and completed quests.
|
|
5
|
+
*/
|
|
6
|
+
export declare class HunterRumour {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly creature: string;
|
|
9
|
+
readonly method: string;
|
|
10
|
+
readonly locations: RumourLocation[];
|
|
11
|
+
readonly requiredHunterLevel: number;
|
|
12
|
+
readonly tier: HunterRumourTier;
|
|
13
|
+
readonly masterNames: string[];
|
|
14
|
+
readonly questRequirements: string[];
|
|
15
|
+
readonly notes?: string;
|
|
16
|
+
readonly leagueRegions: string[];
|
|
17
|
+
constructor(definition: HunterRumourDefinition);
|
|
18
|
+
get wikiUrls(): string[];
|
|
19
|
+
/**
|
|
20
|
+
* Checks if this rumour can be assigned by the specified master based on the masterNames property, which lists the names of masters that can assign this rumour. This method is used to determine if a particular rumour is eligible to be assigned by a given Hunter Guild Master when players are looking for available rumours.
|
|
21
|
+
* @param masterName The name of the Hunter Guild Master to check against the masterNames list for this rumour.
|
|
22
|
+
* @returns A boolean indicating whether this rumour can be assigned by the specified master.
|
|
23
|
+
*/
|
|
24
|
+
canBeAssignedByMaster(masterName: string): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Checks if a player is eligible for this rumour based on their hunter level and completed quests. This method verifies that the player's hunter level meets or exceeds the requiredHunterLevel for the rumour, and that they have completed all quests listed in the questRequirements property. This is used to ensure that players only receive rumours that they are qualified to pursue, based on their in-game progress and achievements.
|
|
27
|
+
* @param hunterLevel The Hunter level of the player, which must meet or exceed the requiredHunterLevel for this rumour.
|
|
28
|
+
* @param completedQuests An array of quest names that the player has completed, which must include all quests listed in the questRequirements for this rumour.
|
|
29
|
+
* @returns A boolean indicating whether the player is eligible for this rumour.
|
|
30
|
+
*/
|
|
31
|
+
isEligible(hunterLevel: number, completedQuests?: string[]): boolean;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=HunterRumour.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HunterRumour.d.ts","sourceRoot":"","sources":["../../../../../source/runescape/model/guilds/hunter/HunterRumour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAMlD;;GAEG;AACH,qBAAa,YAAY;IAGvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAGpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAG1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE,CAAC;IAErC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAErC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAEhC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;IAE/B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAErC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBAGrB,UAAU,EAAE,sBAAsB;IAa9C,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAGD;;;;OAIG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIlD;;;;;OAKG;IACH,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,EAAO,GAAG,OAAO;CAKzE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a Hunter Rumour that can be assigned by a Hunter Guild Master. Contains all the necessary information about the rumour, including the creature, method, locations, required hunter level, tier, and any quest requirements. Provides methods to check if the rumour can be assigned to a specific master and if a player is eligible for the rumour based on their hunter level and completed quests.
|
|
3
|
+
*/
|
|
4
|
+
export class HunterRumour {
|
|
5
|
+
/// Unique identifier for the rumour, typically derived from the creature name and method.
|
|
6
|
+
id;
|
|
7
|
+
// The name of the creature that the rumour is about.
|
|
8
|
+
creature;
|
|
9
|
+
// A brief description of the method to catch the creature.
|
|
10
|
+
method;
|
|
11
|
+
locations;
|
|
12
|
+
requiredHunterLevel;
|
|
13
|
+
tier;
|
|
14
|
+
masterNames;
|
|
15
|
+
questRequirements;
|
|
16
|
+
notes;
|
|
17
|
+
leagueRegions;
|
|
18
|
+
constructor(definition) {
|
|
19
|
+
this.id = definition.id;
|
|
20
|
+
this.creature = definition.creature;
|
|
21
|
+
this.method = definition.method;
|
|
22
|
+
this.locations = [...definition.locations];
|
|
23
|
+
this.requiredHunterLevel = definition.requiredHunterLevel;
|
|
24
|
+
this.tier = definition.tier;
|
|
25
|
+
this.masterNames = [...definition.masterNames];
|
|
26
|
+
this.questRequirements = [...(definition.questRequirements ?? [])];
|
|
27
|
+
this.notes = definition.notes;
|
|
28
|
+
this.leagueRegions = [...(definition.leagueRegions ?? [])];
|
|
29
|
+
}
|
|
30
|
+
get wikiUrls() {
|
|
31
|
+
return this.locations.map((location) => location.wikiUrl);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Checks if this rumour can be assigned by the specified master based on the masterNames property, which lists the names of masters that can assign this rumour. This method is used to determine if a particular rumour is eligible to be assigned by a given Hunter Guild Master when players are looking for available rumours.
|
|
35
|
+
* @param masterName The name of the Hunter Guild Master to check against the masterNames list for this rumour.
|
|
36
|
+
* @returns A boolean indicating whether this rumour can be assigned by the specified master.
|
|
37
|
+
*/
|
|
38
|
+
canBeAssignedByMaster(masterName) {
|
|
39
|
+
return this.masterNames.includes(masterName);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Checks if a player is eligible for this rumour based on their hunter level and completed quests. This method verifies that the player's hunter level meets or exceeds the requiredHunterLevel for the rumour, and that they have completed all quests listed in the questRequirements property. This is used to ensure that players only receive rumours that they are qualified to pursue, based on their in-game progress and achievements.
|
|
43
|
+
* @param hunterLevel The Hunter level of the player, which must meet or exceed the requiredHunterLevel for this rumour.
|
|
44
|
+
* @param completedQuests An array of quest names that the player has completed, which must include all quests listed in the questRequirements for this rumour.
|
|
45
|
+
* @returns A boolean indicating whether the player is eligible for this rumour.
|
|
46
|
+
*/
|
|
47
|
+
isEligible(hunterLevel, completedQuests = []) {
|
|
48
|
+
const meetsLevel = hunterLevel >= this.requiredHunterLevel;
|
|
49
|
+
const meetsQuests = this.questRequirements.every((quest) => completedQuests.includes(quest));
|
|
50
|
+
return meetsLevel && meetsQuests;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents a location where a rumour can be found in Gielinor.
|
|
3
|
+
* Each location has a name and a corresponding wiki URL for more information. This class is used to provide players with details about where they can find specific rumours within the guild, helping them to navigate and complete their tasks more efficiently.
|
|
4
|
+
*/
|
|
5
|
+
export interface RumourLocation {
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly wikiUrl: string;
|
|
8
|
+
}
|
|
9
|
+
export declare const FELDIP_HUNTER_AREA: RumourLocation;
|
|
10
|
+
export declare const THE_GREAT_CONCH: RumourLocation;
|
|
11
|
+
export declare const TLATI_RAINFOREST: RumourLocation;
|
|
12
|
+
export declare const PISCATORIS_HUNTER_AREA: RumourLocation;
|
|
13
|
+
export declare const AUBURNVALE: RumourLocation;
|
|
14
|
+
export declare const FOSSIL_ISLAND_HUNTER_AREA: RumourLocation;
|
|
15
|
+
export declare const MOSS_GIANT_ISLAND: RumourLocation;
|
|
16
|
+
export declare const MOS_LE_HARMLESS_ISLAND: RumourLocation;
|
|
17
|
+
export declare const WATERBIRTH_ISLAND: RumourLocation;
|
|
18
|
+
export declare const CATHERBY: RumourLocation;
|
|
19
|
+
export declare const MISCELLANIA: RumourLocation;
|
|
20
|
+
export declare const RELLEKKA_HUNTER_AREA: RumourLocation;
|
|
21
|
+
export declare const FARMING_GUILD: RumourLocation;
|
|
22
|
+
export declare const PISCATORIS_FALCONRY_AREA: RumourLocation;
|
|
23
|
+
export declare const AVIUM_SAVANNAH: RumourLocation;
|
|
24
|
+
export declare const MONS_GRATIA: RumourLocation;
|
|
25
|
+
export declare const NEYPOTZLI: RumourLocation;
|
|
26
|
+
export declare const THE_BURROW: RumourLocation;
|
|
27
|
+
export declare const CANIFIS_HUNTER_AREA: RumourLocation;
|
|
28
|
+
export declare const NORTH_WEST_OF_SLEPE: RumourLocation;
|
|
29
|
+
export declare const WEISS: RumourLocation;
|
|
30
|
+
export declare const WEST_OF_HUNTER_GUILD: RumourLocation;
|
|
31
|
+
export declare const NORTH_WEST_OF_THE_LOCUS_OASIS: RumourLocation;
|
|
32
|
+
export declare const CRYPT_OF_TONALI_HUNTER_AREA: RumourLocation;
|
|
33
|
+
export declare const SHIMMERING_ATOLL: RumourLocation;
|
|
34
|
+
export declare const UZER_HUNTER_AREA: RumourLocation;
|
|
35
|
+
export declare const NECROPOLIS_HUNTER_AREA: RumourLocation;
|
|
36
|
+
export declare const KARAMJA_HUNTER_AREA: RumourLocation;
|
|
37
|
+
export declare const OURANIA_HUNTER_AREA: RumourLocation;
|
|
38
|
+
export declare const CHARRED_ISLAND: RumourLocation;
|
|
39
|
+
export declare const CHINCHOMPA_ISLAND: RumourLocation;
|
|
40
|
+
export declare const GWENITH_HUNTER_AREA: RumourLocation;
|
|
41
|
+
export declare const RED_CHINCHOMPA_HUNTING_GROUND: RumourLocation;
|
|
42
|
+
export declare const KOUREND_WOODLAND: RumourLocation;
|
|
43
|
+
export declare const ISLE_OF_SOULS: RumourLocation;
|
|
44
|
+
export declare const RALOS_RISE: RumourLocation;
|
|
45
|
+
export declare const MUSHROOM_FOREST_ON_FOSSIL_ISLAND: RumourLocation;
|
|
46
|
+
export declare const RUINS_OF_TAPOYAUIP: RumourLocation;
|
|
47
|
+
export declare const TONALI_CAVERN: RumourLocation;
|
|
48
|
+
//# sourceMappingURL=RumourLocation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RumourLocation.d.ts","sourceRoot":"","sources":["../../../../../source/runescape/model/guilds/hunter/RumourLocation.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAE7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAKD,eAAO,MAAM,kBAAkB,EAAE,cAAmH,CAAC;AACrJ,eAAO,MAAM,eAAe,EAAE,cAA6G,CAAC;AAC5I,eAAO,MAAM,gBAAgB,EAAE,cAA+G,CAAC;AAC/I,eAAO,MAAM,sBAAsB,EAAE,cAA2H,CAAC;AACjK,eAAO,MAAM,UAAU,EAAE,cAAmG,CAAC;AAC7H,eAAO,MAAM,yBAAyB,EAAE,cAAiI,CAAC;AAC1K,eAAO,MAAM,iBAAiB,EAAE,cAAiH,CAAC;AAClJ,eAAO,MAAM,sBAAsB,EAAE,cAAgH,CAAC;AACtJ,eAAO,MAAM,iBAAiB,EAAE,cAAiH,CAAC;AAClJ,eAAO,MAAM,QAAQ,EAAE,cAA+F,CAAC;AACvH,eAAO,MAAM,WAAW,EAAE,cAAqG,CAAC;AAChI,eAAO,MAAM,oBAAoB,EAAE,cAAuH,CAAC;AAC3J,eAAO,MAAM,aAAa,EAAE,cAAyG,CAAC;AACtI,eAAO,MAAM,wBAAwB,EAAE,cAA+H,CAAC;AACvK,eAAO,MAAM,cAAc,EAAE,cAA2G,CAAC;AACzI,eAAO,MAAM,WAAW,EAAE,cAAqG,CAAC;AAChI,eAAO,MAAM,SAAS,EAAE,cAAiG,CAAC;AAC1H,eAAO,MAAM,UAAU,EAAE,cAAmG,CAAC;AAC7H,eAAO,MAAM,mBAAmB,EAAE,cAAqH,CAAC;AACxJ,eAAO,MAAM,mBAAmB,EAAE,cAA8G,CAAC;AACjJ,eAAO,MAAM,KAAK,EAAE,cAAgG,CAAC;AACrH,eAAO,MAAM,oBAAoB,EAAE,cAAqH,CAAC;AACzJ,eAAO,MAAM,6BAA6B,EAAE,cAA8H,CAAC;AAC3K,eAAO,MAAM,2BAA2B,EAAE,cAAuH,CAAC;AAClK,eAAO,MAAM,gBAAgB,EAAE,cAA4G,CAAC;AAC5I,eAAO,MAAM,gBAAgB,EAAE,cAAgH,CAAC;AAChJ,eAAO,MAAM,sBAAsB,EAAE,cAAsH,CAAC;AAC5J,eAAO,MAAM,mBAAmB,EAAE,cAA+G,CAAC;AAClJ,eAAO,MAAM,mBAAmB,EAAE,cAAgH,CAAC;AACnJ,eAAO,MAAM,cAAc,EAAE,cAA2G,CAAC;AACzI,eAAO,MAAM,iBAAiB,EAAE,cAA8G,CAAC;AAC/I,eAAO,MAAM,mBAAmB,EAAE,cAAgH,CAAC;AACnJ,eAAO,MAAM,6BAA6B,EAAE,cAA0H,CAAC;AACvK,eAAO,MAAM,gBAAgB,EAAE,cAA8G,CAAC;AAC9I,eAAO,MAAM,aAAa,EAAE,cAA2G,CAAC;AACxI,eAAO,MAAM,UAAU,EAAE,cAAyG,CAAC;AACnI,eAAO,MAAM,gCAAgC,EAAE,cAAwH,CAAC;AACxK,eAAO,MAAM,kBAAkB,EAAE,cAA+G,CAAC;AACjJ,eAAO,MAAM,aAAa,EAAE,cAA0G,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Predefined RumourLocation instances for commonly referenced locations in Hunter Guild rumours.
|
|
2
|
+
// These can be reused across multiple rumours that share the same location, ensuring consistency and reducing redundancy in the codebase.
|
|
3
|
+
export const FELDIP_HUNTER_AREA = { 'name': 'Feldip Hunter Area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Feldip_Hunter_Area' };
|
|
4
|
+
export const THE_GREAT_CONCH = { 'name': 'The Great Conch', 'wikiUrl': 'https://oldschool.runescape.wiki/w/The_Great_Conch' };
|
|
5
|
+
export const TLATI_RAINFOREST = { 'name': 'Tlati Rainforest', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Tlati_Rainforest' };
|
|
6
|
+
export const PISCATORIS_HUNTER_AREA = { 'name': 'Piscatoris Hunter Area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Piscatoris_Hunter_Area' };
|
|
7
|
+
export const AUBURNVALE = { 'name': 'Auburnvale', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Auburnvale' };
|
|
8
|
+
export const FOSSIL_ISLAND_HUNTER_AREA = { 'name': 'Fossil Island Hunter Area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Fossil_Island_Hunter_Area' };
|
|
9
|
+
export const MOSS_GIANT_ISLAND = { 'name': 'Moss Giant Island', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Moss_Giant_Island' };
|
|
10
|
+
export const MOS_LE_HARMLESS_ISLAND = { 'name': 'Mos Le\'Harmless', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Mos_Le%27Harmless' };
|
|
11
|
+
export const WATERBIRTH_ISLAND = { 'name': 'Waterbirth Island', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Waterbirth_Island' };
|
|
12
|
+
export const CATHERBY = { 'name': 'Catherby', 'wikiUrl': 'https://oldschool.runescape.w/wiki/Catherby' };
|
|
13
|
+
export const MISCELLANIA = { 'name': 'Miscellania', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Miscellania' };
|
|
14
|
+
export const RELLEKKA_HUNTER_AREA = { 'name': 'Rellekka Hunter Area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Rellekka_Hunter_Area' };
|
|
15
|
+
export const FARMING_GUILD = { 'name': 'Farming Guild', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Farming_Guild' };
|
|
16
|
+
export const PISCATORIS_FALCONRY_AREA = { 'name': 'Piscatoris falconry area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Piscatoris_Falconry_Area' };
|
|
17
|
+
export const AVIUM_SAVANNAH = { 'name': 'Avium Savannah', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Avium_Savannah' };
|
|
18
|
+
export const MONS_GRATIA = { 'name': 'Mons Gratia', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Mons_Gratia' };
|
|
19
|
+
export const NEYPOTZLI = { 'name': 'Neypotzli', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Neypotzli' };
|
|
20
|
+
export const THE_BURROW = { 'name': 'The Burrow', 'wikiUrl': 'https://oldschool.runescape.wiki/w/The_Burrow' };
|
|
21
|
+
export const CANIFIS_HUNTER_AREA = { 'name': 'Canifis Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Canifis_Hunter_Area' };
|
|
22
|
+
export const NORTH_WEST_OF_SLEPE = { 'name': 'North-west of Slepe', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Swamp_lizard' };
|
|
23
|
+
export const WEISS = { 'name': 'Weiss', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Snowy_knight' };
|
|
24
|
+
export const WEST_OF_HUNTER_GUILD = { 'name': 'West of Hunter Guild', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Embertailed_jerboa' };
|
|
25
|
+
export const NORTH_WEST_OF_THE_LOCUS_OASIS = { 'name': 'North-west of the Locus Oasis', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Embertailed_jerboa' };
|
|
26
|
+
export const CRYPT_OF_TONALI_HUNTER_AREA = { 'name': 'Crypt of Tonali hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Black_warlock' };
|
|
27
|
+
export const SHIMMERING_ATOLL = { 'name': 'Shimmering Atoll', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Black_warlock' };
|
|
28
|
+
export const UZER_HUNTER_AREA = { 'name': 'Uzer Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Orange_salamander' };
|
|
29
|
+
export const NECROPOLIS_HUNTER_AREA = { 'name': 'Necropolis Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Orange_salamander' };
|
|
30
|
+
export const KARAMJA_HUNTER_AREA = { 'name': 'Karamja Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Horned_graahk' };
|
|
31
|
+
export const OURANIA_HUNTER_AREA = { 'name': 'Ourania Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Red_salamander' };
|
|
32
|
+
export const CHARRED_ISLAND = { 'name': 'Charred Island', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Red_salamander' };
|
|
33
|
+
export const CHINCHOMPA_ISLAND = { 'name': 'Chinchompa Island', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Red_chinchompa' };
|
|
34
|
+
export const GWENITH_HUNTER_AREA = { 'name': 'Gwenith Hunter area', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Red_chinchompa' };
|
|
35
|
+
export const RED_CHINCHOMPA_HUNTING_GROUND = { 'name': 'Red chinchompa hunting ground', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Red_chinchompa' };
|
|
36
|
+
export const KOUREND_WOODLAND = { 'name': 'Kourend Woodland', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Grey_chinchompa' };
|
|
37
|
+
export const ISLE_OF_SOULS = { 'name': 'Isle of Souls', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Grey_chinchompa' };
|
|
38
|
+
export const RALOS_RISE = { 'name': "Ralos' Rise", 'wikiUrl': 'https://oldschool.runescape.wiki/w/Tecu_salamander' };
|
|
39
|
+
export const MUSHROOM_FOREST_ON_FOSSIL_ISLAND = { 'name': 'Mushroom Forest on Fossil Island', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Herbiboar' };
|
|
40
|
+
export const RUINS_OF_TAPOYAUIP = { 'name': 'Ruins of Tapoyauik', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Moonlight_moth' };
|
|
41
|
+
export const TONALI_CAVERN = { 'name': 'Tonali Cavern', 'wikiUrl': 'https://oldschool.runescape.wiki/w/Moonlight_moth' };
|
|
42
|
+
// Additional locations can be added here as needed, following the same structure.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HunterRumour } from "./HunterRumour";
|
|
2
|
+
/**
|
|
3
|
+
* Registry of all the Rumours in the Hunter Guild, along with their properties such as the creature they pertain to,
|
|
4
|
+
* the method of hunting,
|
|
5
|
+
* locations where the creature can be found, required Hunter level, tier, which masters can assign them,
|
|
6
|
+
* and any quest requirements or notes.
|
|
7
|
+
* This registry serves as the central source of truth for all Hunter Rumours and is used by the HunterGuildMaster
|
|
8
|
+
* class to determine which rumours can be assigned to players based on their eligibility.
|
|
9
|
+
*/
|
|
10
|
+
export declare const HUNTER_RUMOUR_REGISTRY: HunterRumour[];
|
|
11
|
+
//# sourceMappingURL=Rumours.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Rumours.d.ts","sourceRoot":"","sources":["../../../../../source/runescape/model/guilds/hunter/Rumours.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AA8T9C;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,YAAY,EA6BhD,CAAC"}
|
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import { HunterRumour } from "./HunterRumour";
|
|
2
|
+
import * as RumourLocation from "./RumourLocation";
|
|
3
|
+
import { HunterGuildMasterName } from "./HunterGuildMasterName";
|
|
4
|
+
import { GenericLeagueRegion } from "../../leagues";
|
|
5
|
+
const TropicalWagtail = {
|
|
6
|
+
id: 'tropical-wagtail',
|
|
7
|
+
creature: 'Tropical wagtail',
|
|
8
|
+
method: 'Bird snare',
|
|
9
|
+
locations: [RumourLocation.FELDIP_HUNTER_AREA, RumourLocation.THE_GREAT_CONCH, RumourLocation.TLATI_RAINFOREST],
|
|
10
|
+
requiredHunterLevel: 19,
|
|
11
|
+
tier: 'Novice',
|
|
12
|
+
masterNames: [HunterGuildMasterName.GILMAN.name],
|
|
13
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN, GenericLeagueRegion.VARLAMORE],
|
|
14
|
+
};
|
|
15
|
+
const WildKebbit = {
|
|
16
|
+
id: 'wild-kebbit',
|
|
17
|
+
creature: 'Wild kebbit',
|
|
18
|
+
method: 'Deadfall',
|
|
19
|
+
locations: [RumourLocation.PISCATORIS_HUNTER_AREA, RumourLocation.AUBURNVALE],
|
|
20
|
+
requiredHunterLevel: 23,
|
|
21
|
+
tier: 'Novice',
|
|
22
|
+
masterNames: [HunterGuildMasterName.GILMAN.name],
|
|
23
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN, GenericLeagueRegion.VARLAMORE],
|
|
24
|
+
};
|
|
25
|
+
const SapphireGlacialis = {
|
|
26
|
+
id: 'sapphire-glacialis',
|
|
27
|
+
creature: 'Sapphire glacialis',
|
|
28
|
+
method: 'Butterfly net',
|
|
29
|
+
locations: [RumourLocation.RELLEKKA_HUNTER_AREA, RumourLocation.FARMING_GUILD, RumourLocation.MONS_GRATIA],
|
|
30
|
+
requiredHunterLevel: 25,
|
|
31
|
+
tier: 'Novice',
|
|
32
|
+
masterNames: [HunterGuildMasterName.GILMAN.name],
|
|
33
|
+
leagueRegions: [GenericLeagueRegion.FREMENNIK, GenericLeagueRegion.KOUREND, GenericLeagueRegion.VARLAMORE],
|
|
34
|
+
};
|
|
35
|
+
const SwampLizard = {
|
|
36
|
+
id: 'swamp-lizard',
|
|
37
|
+
creature: 'Swamp lizard',
|
|
38
|
+
method: 'Net trap',
|
|
39
|
+
locations: [RumourLocation.CANIFIS_HUNTER_AREA, RumourLocation.NORTH_WEST_OF_SLEPE],
|
|
40
|
+
requiredHunterLevel: 29,
|
|
41
|
+
tier: 'Adept',
|
|
42
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name],
|
|
43
|
+
leagueRegions: [GenericLeagueRegion.MORYTANIA],
|
|
44
|
+
};
|
|
45
|
+
const SpinedLarupia = {
|
|
46
|
+
id: 'spined-larupia',
|
|
47
|
+
creature: 'Spined larupia',
|
|
48
|
+
method: 'Spiked pit',
|
|
49
|
+
locations: [RumourLocation.FELDIP_HUNTER_AREA,],
|
|
50
|
+
requiredHunterLevel: 31,
|
|
51
|
+
tier: 'Expert',
|
|
52
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, 'Aco'],
|
|
53
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
54
|
+
};
|
|
55
|
+
const BarbTailedKebbit = {
|
|
56
|
+
id: 'barb-tailed-kebbit',
|
|
57
|
+
creature: 'Barb-tailed kebbit',
|
|
58
|
+
method: 'Deadfall',
|
|
59
|
+
locations: [RumourLocation.FELDIP_HUNTER_AREA],
|
|
60
|
+
requiredHunterLevel: 33,
|
|
61
|
+
tier: 'Novice',
|
|
62
|
+
masterNames: [HunterGuildMasterName.GILMAN.name],
|
|
63
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
64
|
+
};
|
|
65
|
+
const SnowyKnight = {
|
|
66
|
+
id: 'snowy-knight',
|
|
67
|
+
creature: 'Snowy knight',
|
|
68
|
+
method: 'Butterfly net',
|
|
69
|
+
locations: [RumourLocation.FELDIP_HUNTER_AREA, RumourLocation.WEISS, RumourLocation.FARMING_GUILD, RumourLocation.MONS_GRATIA],
|
|
70
|
+
requiredHunterLevel: 35,
|
|
71
|
+
tier: 'Expert',
|
|
72
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.ACO.name],
|
|
73
|
+
leagueRegions: [GenericLeagueRegion.FREMENNIK, GenericLeagueRegion.KANDARIN, GenericLeagueRegion.KOUREND, GenericLeagueRegion.VARLAMORE],
|
|
74
|
+
};
|
|
75
|
+
const PricklyKebbit = {
|
|
76
|
+
id: 'prickly-kebbit',
|
|
77
|
+
creature: 'Prickly kebbit',
|
|
78
|
+
method: 'Deadfall',
|
|
79
|
+
locations: [RumourLocation.PISCATORIS_HUNTER_AREA],
|
|
80
|
+
requiredHunterLevel: 37,
|
|
81
|
+
tier: 'Novice',
|
|
82
|
+
masterNames: [HunterGuildMasterName.GILMAN.name],
|
|
83
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
84
|
+
};
|
|
85
|
+
const RazorBackedKebbit = {
|
|
86
|
+
id: 'razor-backed-kebbit',
|
|
87
|
+
creature: 'Razor-backed kebbit',
|
|
88
|
+
method: 'Tracking',
|
|
89
|
+
locations: [RumourLocation.PISCATORIS_HUNTER_AREA],
|
|
90
|
+
requiredHunterLevel: 49,
|
|
91
|
+
tier: 'Adept',
|
|
92
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name],
|
|
93
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
94
|
+
};
|
|
95
|
+
const SabreToothedKebbit = {
|
|
96
|
+
id: 'sabre-toothed-kebbit',
|
|
97
|
+
creature: 'Sabre-toothed kebbit',
|
|
98
|
+
method: 'Deadfall',
|
|
99
|
+
locations: [RumourLocation.RELLEKKA_HUNTER_AREA],
|
|
100
|
+
requiredHunterLevel: 51,
|
|
101
|
+
tier: 'Expert',
|
|
102
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ORNUS.name],
|
|
103
|
+
leagueRegions: [GenericLeagueRegion.FREMENNIK],
|
|
104
|
+
};
|
|
105
|
+
const GreyChinchompa = {
|
|
106
|
+
id: 'grey-chinchompa',
|
|
107
|
+
creature: 'Grey chinchompa',
|
|
108
|
+
method: 'Box trap',
|
|
109
|
+
locations: [RumourLocation.PISCATORIS_HUNTER_AREA, RumourLocation.KOUREND_WOODLAND, RumourLocation.ISLE_OF_SOULS],
|
|
110
|
+
requiredHunterLevel: 53,
|
|
111
|
+
tier: 'Expert',
|
|
112
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name],
|
|
113
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN, GenericLeagueRegion.KOUREND, GenericLeagueRegion.MISTHALIN],
|
|
114
|
+
};
|
|
115
|
+
const SabreToothedKyatt = {
|
|
116
|
+
id: 'sabre-toothed-kyatt',
|
|
117
|
+
creature: 'Sabre-toothed kyatt',
|
|
118
|
+
method: 'Spiked pit',
|
|
119
|
+
locations: [RumourLocation.RELLEKKA_HUNTER_AREA],
|
|
120
|
+
requiredHunterLevel: 55,
|
|
121
|
+
tier: 'Expert',
|
|
122
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.ORNUS.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name],
|
|
123
|
+
leagueRegions: [GenericLeagueRegion.FREMENNIK],
|
|
124
|
+
};
|
|
125
|
+
const DarkKebbit = {
|
|
126
|
+
id: 'dark-kebbit',
|
|
127
|
+
creature: 'Dark kebbit',
|
|
128
|
+
method: 'Falconry',
|
|
129
|
+
locations: [RumourLocation.PISCATORIS_FALCONRY_AREA],
|
|
130
|
+
requiredHunterLevel: 57,
|
|
131
|
+
tier: 'Expert',
|
|
132
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name],
|
|
133
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
134
|
+
};
|
|
135
|
+
const PyreFox = {
|
|
136
|
+
id: 'pyre-fox',
|
|
137
|
+
creature: 'Pyre fox',
|
|
138
|
+
method: 'Deadfall',
|
|
139
|
+
locations: [RumourLocation.AVIUM_SAVANNAH],
|
|
140
|
+
requiredHunterLevel: 57,
|
|
141
|
+
tier: 'Expert',
|
|
142
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ORNUS.name],
|
|
143
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
144
|
+
};
|
|
145
|
+
const RedSalamander = {
|
|
146
|
+
id: 'red-salamander',
|
|
147
|
+
creature: 'Red salamander',
|
|
148
|
+
method: 'Net trap',
|
|
149
|
+
locations: [RumourLocation.OURANIA_HUNTER_AREA, RumourLocation.CHARRED_ISLAND],
|
|
150
|
+
requiredHunterLevel: 59,
|
|
151
|
+
tier: 'Master',
|
|
152
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name, HunterGuildMasterName.WOLF.name],
|
|
153
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
154
|
+
};
|
|
155
|
+
const RedChinchompa = {
|
|
156
|
+
id: 'red-chinchompa',
|
|
157
|
+
creature: 'Red chinchompa',
|
|
158
|
+
method: 'Box trap',
|
|
159
|
+
locations: [RumourLocation.CHINCHOMPA_ISLAND, RumourLocation.FELDIP_HUNTER_AREA, RumourLocation.THE_GREAT_CONCH, RumourLocation.GWENITH_HUNTER_AREA, RumourLocation.RED_CHINCHOMPA_HUNTING_GROUND, RumourLocation.TLATI_RAINFOREST],
|
|
160
|
+
requiredHunterLevel: 63,
|
|
161
|
+
tier: 'Master',
|
|
162
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ORNUS.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name, HunterGuildMasterName.WOLF.name],
|
|
163
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN, GenericLeagueRegion.TIRANNWN, GenericLeagueRegion.VARLAMORE],
|
|
164
|
+
};
|
|
165
|
+
const DashingKebbit = {
|
|
166
|
+
id: 'dashing-kebbit',
|
|
167
|
+
creature: 'Dashing kebbit',
|
|
168
|
+
method: 'Falconry',
|
|
169
|
+
locations: [RumourLocation.PISCATORIS_FALCONRY_AREA],
|
|
170
|
+
requiredHunterLevel: 69,
|
|
171
|
+
tier: 'Master',
|
|
172
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.ACO.name, HunterGuildMasterName.TECO.name, HunterGuildMasterName.WOLF.name],
|
|
173
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
174
|
+
};
|
|
175
|
+
const SunlightAntelope = {
|
|
176
|
+
id: 'sunlight-antelope',
|
|
177
|
+
creature: 'Sunlight antelope',
|
|
178
|
+
method: 'Spiked pit',
|
|
179
|
+
locations: [RumourLocation.AVIUM_SAVANNAH],
|
|
180
|
+
requiredHunterLevel: 72,
|
|
181
|
+
tier: 'Master',
|
|
182
|
+
masterNames: ['Aco', 'Teco', 'Wolf'],
|
|
183
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
184
|
+
};
|
|
185
|
+
const SunlightMoth = {
|
|
186
|
+
id: 'sunlight-moth',
|
|
187
|
+
creature: 'Sunlight moth',
|
|
188
|
+
method: 'Butterfly net',
|
|
189
|
+
locations: [RumourLocation.AVIUM_SAVANNAH, RumourLocation.NEYPOTZLI],
|
|
190
|
+
requiredHunterLevel: 75,
|
|
191
|
+
tier: 'Master',
|
|
192
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.TECO.name],
|
|
193
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
194
|
+
};
|
|
195
|
+
const TecuSalamander = {
|
|
196
|
+
id: 'tecu-salamander',
|
|
197
|
+
creature: 'Tecu salamander',
|
|
198
|
+
method: 'Net trap',
|
|
199
|
+
locations: [RumourLocation.RALOS_RISE],
|
|
200
|
+
requiredHunterLevel: 79,
|
|
201
|
+
tier: 'Master',
|
|
202
|
+
masterNames: ['Aco', 'Wolf'],
|
|
203
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
204
|
+
};
|
|
205
|
+
const Herbiboar = {
|
|
206
|
+
id: 'herbiboar',
|
|
207
|
+
creature: 'Herbiboar',
|
|
208
|
+
method: 'Tracking',
|
|
209
|
+
locations: [RumourLocation.MUSHROOM_FOREST_ON_FOSSIL_ISLAND],
|
|
210
|
+
requiredHunterLevel: 80,
|
|
211
|
+
tier: 'Master',
|
|
212
|
+
masterNames: ['Teco', 'Wolf'],
|
|
213
|
+
questRequirements: ['Bone Voyage'],
|
|
214
|
+
notes: 'Also requires Herblore 31',
|
|
215
|
+
leagueRegions: [GenericLeagueRegion.MISTHALIN],
|
|
216
|
+
};
|
|
217
|
+
const EmbertailedJerboa = {
|
|
218
|
+
id: 'embertailed-jerboa',
|
|
219
|
+
creature: 'Embertailed jerboa',
|
|
220
|
+
method: 'Box trap',
|
|
221
|
+
locations: [RumourLocation.WEST_OF_HUNTER_GUILD, RumourLocation.NORTH_WEST_OF_THE_LOCUS_OASIS],
|
|
222
|
+
requiredHunterLevel: 39,
|
|
223
|
+
tier: 'Expert',
|
|
224
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.ACO.name],
|
|
225
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
226
|
+
};
|
|
227
|
+
const HornedGraahk = {
|
|
228
|
+
id: 'horned-graahk',
|
|
229
|
+
creature: 'Horned graahk',
|
|
230
|
+
method: 'Spiked pit',
|
|
231
|
+
locations: [RumourLocation.KARAMJA_HUNTER_AREA],
|
|
232
|
+
requiredHunterLevel: 41,
|
|
233
|
+
tier: 'Adept',
|
|
234
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name],
|
|
235
|
+
leagueRegions: [GenericLeagueRegion.KARAMJA],
|
|
236
|
+
};
|
|
237
|
+
const SpottedKebbit = {
|
|
238
|
+
id: 'spotted-kebbit',
|
|
239
|
+
creature: 'Spotted kebbit',
|
|
240
|
+
method: 'Falconry',
|
|
241
|
+
locations: [RumourLocation.PISCATORIS_FALCONRY_AREA],
|
|
242
|
+
requiredHunterLevel: 43,
|
|
243
|
+
tier: 'Adept',
|
|
244
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ORNUS.name],
|
|
245
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN],
|
|
246
|
+
};
|
|
247
|
+
const BlackWarlock = {
|
|
248
|
+
id: 'black-warlock',
|
|
249
|
+
creature: 'Black warlock',
|
|
250
|
+
method: 'Butterfly net',
|
|
251
|
+
locations: [RumourLocation.FELDIP_HUNTER_AREA, RumourLocation.FARMING_GUILD, RumourLocation.TLATI_RAINFOREST, RumourLocation.SHIMMERING_ATOLL, RumourLocation.CRYPT_OF_TONALI_HUNTER_AREA, RumourLocation.UZER_HUNTER_AREA, RumourLocation.NECROPOLIS_HUNTER_AREA],
|
|
252
|
+
requiredHunterLevel: 45,
|
|
253
|
+
tier: 'Adept',
|
|
254
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name],
|
|
255
|
+
leagueRegions: [GenericLeagueRegion.KANDARIN, GenericLeagueRegion.KOUREND, GenericLeagueRegion.VARLAMORE],
|
|
256
|
+
};
|
|
257
|
+
const OrangeSalamander = {
|
|
258
|
+
id: 'orange-salamander',
|
|
259
|
+
creature: 'Orange salamander',
|
|
260
|
+
method: 'Net trap',
|
|
261
|
+
locations: [RumourLocation.THE_GREAT_CONCH, RumourLocation.UZER_HUNTER_AREA, RumourLocation.NECROPOLIS_HUNTER_AREA],
|
|
262
|
+
requiredHunterLevel: 47,
|
|
263
|
+
tier: 'Expert',
|
|
264
|
+
masterNames: [HunterGuildMasterName.GILMAN.name, HunterGuildMasterName.CERVUS.name, HunterGuildMasterName.ORNUS.name],
|
|
265
|
+
leagueRegions: [GenericLeagueRegion.DESERT],
|
|
266
|
+
};
|
|
267
|
+
const MoonlightMoth = {
|
|
268
|
+
id: 'moonlight-moth',
|
|
269
|
+
creature: 'Moonlight moth',
|
|
270
|
+
method: 'Butterfly net',
|
|
271
|
+
locations: [RumourLocation.THE_BURROW, RumourLocation.NEYPOTZLI, RumourLocation.TONALI_CAVERN],
|
|
272
|
+
requiredHunterLevel: 85,
|
|
273
|
+
tier: 'Master',
|
|
274
|
+
masterNames: ['Aco', 'Wolf'],
|
|
275
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
276
|
+
};
|
|
277
|
+
const MoonlightAntelope = {
|
|
278
|
+
id: 'moonlight-antelope',
|
|
279
|
+
creature: 'Moonlight antelope',
|
|
280
|
+
method: 'Spiked pit',
|
|
281
|
+
locations: [RumourLocation.THE_BURROW],
|
|
282
|
+
requiredHunterLevel: 91,
|
|
283
|
+
tier: 'Master',
|
|
284
|
+
masterNames: ['Wolf'],
|
|
285
|
+
questRequirements: ['At First Light'],
|
|
286
|
+
leagueRegions: [GenericLeagueRegion.VARLAMORE],
|
|
287
|
+
};
|
|
288
|
+
/**
|
|
289
|
+
* Registry of all the Rumours in the Hunter Guild, along with their properties such as the creature they pertain to,
|
|
290
|
+
* the method of hunting,
|
|
291
|
+
* locations where the creature can be found, required Hunter level, tier, which masters can assign them,
|
|
292
|
+
* and any quest requirements or notes.
|
|
293
|
+
* This registry serves as the central source of truth for all Hunter Rumours and is used by the HunterGuildMaster
|
|
294
|
+
* class to determine which rumours can be assigned to players based on their eligibility.
|
|
295
|
+
*/
|
|
296
|
+
export const HUNTER_RUMOUR_REGISTRY = [
|
|
297
|
+
new HunterRumour(TropicalWagtail),
|
|
298
|
+
new HunterRumour(WildKebbit),
|
|
299
|
+
new HunterRumour(SapphireGlacialis),
|
|
300
|
+
new HunterRumour(SwampLizard),
|
|
301
|
+
new HunterRumour(SpinedLarupia),
|
|
302
|
+
new HunterRumour(BarbTailedKebbit),
|
|
303
|
+
new HunterRumour(SnowyKnight),
|
|
304
|
+
new HunterRumour(PricklyKebbit),
|
|
305
|
+
new HunterRumour(EmbertailedJerboa),
|
|
306
|
+
new HunterRumour(HornedGraahk),
|
|
307
|
+
new HunterRumour(SpottedKebbit),
|
|
308
|
+
new HunterRumour(BlackWarlock),
|
|
309
|
+
new HunterRumour(OrangeSalamander),
|
|
310
|
+
new HunterRumour(RazorBackedKebbit),
|
|
311
|
+
new HunterRumour(SabreToothedKebbit),
|
|
312
|
+
new HunterRumour(GreyChinchompa),
|
|
313
|
+
new HunterRumour(SabreToothedKyatt),
|
|
314
|
+
new HunterRumour(DarkKebbit),
|
|
315
|
+
new HunterRumour(PyreFox),
|
|
316
|
+
new HunterRumour(RedSalamander),
|
|
317
|
+
new HunterRumour(RedChinchompa),
|
|
318
|
+
new HunterRumour(DashingKebbit),
|
|
319
|
+
new HunterRumour(SunlightAntelope),
|
|
320
|
+
new HunterRumour(SunlightMoth),
|
|
321
|
+
new HunterRumour(TecuSalamander),
|
|
322
|
+
new HunterRumour(Herbiboar),
|
|
323
|
+
new HunterRumour(MoonlightMoth),
|
|
324
|
+
new HunterRumour(MoonlightAntelope),
|
|
325
|
+
];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../source/runescape/model/guilds/hunter/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|