osrs-tools 0.2.0 → 0.2.1
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 +8 -0
- package/dist/index.js +12 -0
- package/dist/jest.config.dev.js +7 -0
- package/dist/model/Requirement.d.ts +65 -0
- package/dist/model/Requirement.js +130 -0
- package/dist/model/account/OsrsAccount.d.ts +31 -0
- package/dist/model/account/OsrsAccount.js +64 -0
- package/dist/model/quest/Quest.d.ts +41 -0
- package/dist/model/quest/Quest.js +2 -0
- package/dist/model/quest/QuestTool.d.ts +51 -0
- package/{src/model/quest/QuestTool.ts → dist/model/quest/QuestTool.js} +78 -96
- package/dist/model/slayer/Assignment.d.ts +17 -0
- package/dist/model/slayer/Assignment.js +28 -0
- package/dist/model/slayer/SlayerMaster.d.ts +67 -0
- package/dist/model/slayer/SlayerMaster.js +112 -0
- package/dist/model/slayer/SlayerReward.d.ts +33 -0
- package/dist/model/slayer/SlayerReward.js +30 -0
- package/dist/model/slayer/Task.d.ts +85 -0
- package/dist/model/slayer/Task.js +117 -0
- package/dist/resources/slayer/Masters.d.ts +10 -0
- package/dist/resources/slayer/Masters.js +100 -0
- package/dist/resources/slayer/SlayerData.d.ts +13 -0
- package/dist/resources/slayer/SlayerData.js +42 -0
- package/dist/resources/slayer/SlayerExtends.d.ts +23 -0
- package/dist/resources/slayer/SlayerExtends.js +184 -0
- package/dist/resources/slayer/SlayerUnlock.d.ts +7 -0
- package/dist/resources/slayer/SlayerUnlock.js +67 -0
- package/dist/resources/slayer/slayerBuys.d.ts +3 -0
- package/dist/resources/slayer/slayerBuys.js +34 -0
- package/dist/resources/slayer/tasks/ChaelderTasks.d.ts +3 -0
- package/dist/resources/slayer/tasks/ChaelderTasks.js +78 -0
- package/dist/resources/slayer/tasks/DuradelTasks.d.ts +2 -0
- package/dist/resources/slayer/tasks/DuradelTasks.js +18 -0
- package/{src/resources/slayer/tasks/KonarTasks.ts → dist/resources/slayer/tasks/KonarTasks.d.ts} +3 -6
- package/dist/resources/slayer/tasks/KonarTasks.js +5 -0
- package/dist/resources/slayer/tasks/MazchnaTasks.d.ts +3 -0
- package/dist/resources/slayer/tasks/MazchnaTasks.js +4 -0
- package/dist/resources/slayer/tasks/NieveTasks.d.ts +3 -0
- package/dist/resources/slayer/tasks/NieveTasks.js +78 -0
- package/dist/resources/slayer/tasks/ReadTasks.d.ts +1 -0
- package/dist/resources/slayer/tasks/ReadTasks.js +63 -0
- package/dist/resources/slayer/tasks/SpriaTasks.d.ts +2 -0
- package/dist/resources/slayer/tasks/SpriaTasks.js +117 -0
- package/dist/resources/slayer/tasks/Tureal.d.ts +3 -0
- package/dist/resources/slayer/tasks/Tureal.js +125 -0
- package/dist/resources/slayer/tasks/VannakaTasks.d.ts +3 -0
- package/dist/resources/slayer/tasks/VannakaTasks.js +78 -0
- package/package.json +22 -19
- package/src/index.ts +0 -11
- package/src/model/Requirement.ts +0 -173
- package/src/model/account/OsrsAccount.ts +0 -82
- package/src/model/quest/Quest.ts +0 -44
- package/src/model/slayer/Assignment.ts +0 -40
- package/src/model/slayer/SlayerMaster.ts +0 -137
- package/src/model/slayer/SlayerReward.ts +0 -39
- package/src/model/slayer/Task.ts +0 -168
- package/src/resources/QuestData.json +0 -754
- package/src/resources/quest/diaries.json +0 -1171
- package/src/resources/quest/diariesArray.json +0 -0
- package/src/resources/quest/exp.json +0 -1333
- package/src/resources/quest/questData.js +0 -5628
- package/src/resources/quest/questData.json +0 -5790
- package/src/resources/quest/questDataArray.js +0 -5489
- package/src/resources/quest/questDataArray.json +0 -5489
- package/src/resources/quest/subquestArray.js +0 -58
- package/src/resources/quest/subquestArray.json +0 -58
- package/src/resources/quest/testObj.json +0 -5682
- package/src/resources/quest/testarray.json +0 -5589
- package/src/resources/quests/CooksAssistant.json +0 -34
- package/src/resources/slayer/Masters.ts +0 -180
- package/src/resources/slayer/SlayerData.ts +0 -45
- package/src/resources/slayer/SlayerExtends.ts +0 -218
- package/src/resources/slayer/SlayerUnlock.ts +0 -194
- package/src/resources/slayer/slayer.json +0 -3581
- package/src/resources/slayer/slayerBuys.ts +0 -38
- package/src/resources/slayer/slayerData.json +0 -4431
- package/src/resources/slayer/tasks/ChaelderTasks.ts +0 -235
- package/src/resources/slayer/tasks/DuradelTasks.ts +0 -75
- package/src/resources/slayer/tasks/MazchnaTasks.ts +0 -5
- package/src/resources/slayer/tasks/NieveTasks.ts +0 -235
- package/src/resources/slayer/tasks/ReadTasks.ts +0 -55
- package/src/resources/slayer/tasks/SpriaTasks.ts +0 -344
- package/src/resources/slayer/tasks/Tureal.ts +0 -436
- package/src/resources/slayer/tasks/VannakaTasks.ts +0 -236
- package/src/resources/slayer/tasks/json/Chaeldar.json +0 -348
- package/src/resources/slayer/tasks/json/Duradel.json +0 -541
- package/src/resources/slayer/tasks/json/Krystilia.json +0 -2
- package/src/resources/slayer/tasks/json/Mazchna.json +0 -379
- package/src/resources/slayer/tasks/json/Neive.json +0 -320
- package/src/resources/slayer/tasks/json/Spria.json +0 -345
- package/src/resources/slayer/tasks/json/Tureal.json +0 -341
- package/src/resources/slayer/tasks/json/Vannaka.json +0 -547
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SlayerExtends = exports.SlayerExtend = void 0;
|
|
4
|
+
class SlayerExtend {
|
|
5
|
+
constructor({ cost, name, notes, }) {
|
|
6
|
+
this.name = name;
|
|
7
|
+
this.cost = cost;
|
|
8
|
+
this.notes = notes;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Get the name of the Slayer Extend
|
|
12
|
+
*/
|
|
13
|
+
getName() {
|
|
14
|
+
return this.name;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Get the cost of the Slayer Extend
|
|
18
|
+
*/
|
|
19
|
+
getCost() {
|
|
20
|
+
return this.cost;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Get the notes of the Slayer Extend
|
|
24
|
+
*/
|
|
25
|
+
getNotes() {
|
|
26
|
+
return this.notes;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.SlayerExtend = SlayerExtend;
|
|
30
|
+
// Define each SlayerExtend as a const
|
|
31
|
+
const NeedMoreDarkness = new SlayerExtend({
|
|
32
|
+
cost: 100,
|
|
33
|
+
name: "Need more darkness",
|
|
34
|
+
notes: "Number of dark beasts assigned is increased to 100-149.",
|
|
35
|
+
});
|
|
36
|
+
const AnkouVeryMuch = new SlayerExtend({
|
|
37
|
+
cost: 100,
|
|
38
|
+
name: "Ankou very much",
|
|
39
|
+
notes: "Number of ankous assigned is increased to 91-149.",
|
|
40
|
+
});
|
|
41
|
+
const SuqAnotherOne = new SlayerExtend({
|
|
42
|
+
cost: 100,
|
|
43
|
+
name: "Suq-a-nother one",
|
|
44
|
+
notes: "Number of suqahs assigned is increased to 185-250.",
|
|
45
|
+
});
|
|
46
|
+
const FireAndDarkness = new SlayerExtend({
|
|
47
|
+
cost: 50,
|
|
48
|
+
name: "Fire & Darkness",
|
|
49
|
+
notes: "Number of black dragons assigned is increased to 40-60.",
|
|
50
|
+
});
|
|
51
|
+
const PedalToTheMetals = new SlayerExtend({
|
|
52
|
+
cost: 100,
|
|
53
|
+
name: "Pedal to the metals",
|
|
54
|
+
notes: "Number of bronze, iron and steel dragons assigned is increased to 30-50, 60-100 and 40-60, respectively.",
|
|
55
|
+
});
|
|
56
|
+
const IReallyMithYou = new SlayerExtend({
|
|
57
|
+
cost: 120,
|
|
58
|
+
name: "I really mith you",
|
|
59
|
+
notes: "Number of mithril dragons assigned is increased to 20-40.",
|
|
60
|
+
});
|
|
61
|
+
const AdaMindSomeMore = new SlayerExtend({
|
|
62
|
+
cost: 100,
|
|
63
|
+
name: "Ada'mind some more",
|
|
64
|
+
notes: "Number of adamant dragons assigned is increased to 20-30.",
|
|
65
|
+
});
|
|
66
|
+
const Ruuuuune = new SlayerExtend({
|
|
67
|
+
cost: 100,
|
|
68
|
+
name: "RUUUUUNE",
|
|
69
|
+
notes: "Number of rune dragons assigned is increased to 30-60.",
|
|
70
|
+
});
|
|
71
|
+
const SpiritualFervour = new SlayerExtend({
|
|
72
|
+
cost: 100,
|
|
73
|
+
name: "Spiritual fervour",
|
|
74
|
+
notes: "Number of spiritual creatures assigned is increased to 181-250.",
|
|
75
|
+
});
|
|
76
|
+
const BirdsOfAFeather = new SlayerExtend({
|
|
77
|
+
cost: 100,
|
|
78
|
+
name: "Birds of a Feather",
|
|
79
|
+
notes: "Number of aviansies assigned is increased to 130-250.",
|
|
80
|
+
});
|
|
81
|
+
const GreaterChallenge = new SlayerExtend({
|
|
82
|
+
cost: 100,
|
|
83
|
+
name: "Greater challenge",
|
|
84
|
+
notes: "Number of greater demons assigned is increased to 150-200.",
|
|
85
|
+
});
|
|
86
|
+
const ItsDarkInHere = new SlayerExtend({
|
|
87
|
+
cost: 100,
|
|
88
|
+
name: "It's dark in here",
|
|
89
|
+
notes: "Number of black demons assigned is increased to 200-250.",
|
|
90
|
+
});
|
|
91
|
+
const BleedMeDry = new SlayerExtend({
|
|
92
|
+
cost: 75,
|
|
93
|
+
name: "Bleed me dry",
|
|
94
|
+
notes: "Number of bloodvelds assigned is increased to 200-250.",
|
|
95
|
+
});
|
|
96
|
+
const SmellYaLater = new SlayerExtend({
|
|
97
|
+
cost: 100,
|
|
98
|
+
name: "Smell ya later",
|
|
99
|
+
notes: "Number of aberrant spectres assigned is increased to 200-250.",
|
|
100
|
+
});
|
|
101
|
+
const Horrorific = new SlayerExtend({
|
|
102
|
+
cost: 100,
|
|
103
|
+
name: "Horrorific",
|
|
104
|
+
notes: "Number of cave horrors assigned is increased to 200-250.",
|
|
105
|
+
});
|
|
106
|
+
const ToDustYouShallReturn = new SlayerExtend({
|
|
107
|
+
cost: 100,
|
|
108
|
+
name: "To dust you shall return",
|
|
109
|
+
notes: "Number of dust devils assigned is increased to 200-250.",
|
|
110
|
+
});
|
|
111
|
+
const WyverNotherOne = new SlayerExtend({
|
|
112
|
+
cost: 100,
|
|
113
|
+
name: "Wyver-nother one",
|
|
114
|
+
notes: "Number of skeletal Wyverns assigned is increased to 50-75.",
|
|
115
|
+
});
|
|
116
|
+
const GetSmashed = new SlayerExtend({
|
|
117
|
+
cost: 100,
|
|
118
|
+
name: "Get smashed",
|
|
119
|
+
notes: "Number of gargoyles assigned is increased to 200-250.",
|
|
120
|
+
});
|
|
121
|
+
const NechsPlease = new SlayerExtend({
|
|
122
|
+
cost: 100,
|
|
123
|
+
name: "Nechs please",
|
|
124
|
+
notes: "Number of nechryael assigned is increased to 200-250.",
|
|
125
|
+
});
|
|
126
|
+
const AugmentMyAbbies = new SlayerExtend({
|
|
127
|
+
cost: 100,
|
|
128
|
+
name: "Augment my abbies",
|
|
129
|
+
notes: "Number of abyssal demons assigned is increased to 200-250.",
|
|
130
|
+
});
|
|
131
|
+
const KrackOn = new SlayerExtend({
|
|
132
|
+
cost: 100,
|
|
133
|
+
name: "Krack on",
|
|
134
|
+
notes: "Number of cave kraken assigned is increased to 150-200.",
|
|
135
|
+
});
|
|
136
|
+
const GetScabarightOnIt = new SlayerExtend({
|
|
137
|
+
cost: 50,
|
|
138
|
+
name: "Get scabaright on it",
|
|
139
|
+
notes: "Number of scabarites assigned is increased to 130-170.",
|
|
140
|
+
});
|
|
141
|
+
const WyverNotherTwo = new SlayerExtend({
|
|
142
|
+
cost: 100,
|
|
143
|
+
name: "Wyver-nother two",
|
|
144
|
+
notes: "Number of Fossil Island wyverns assigned is increased to 55-75.",
|
|
145
|
+
});
|
|
146
|
+
const Basilonger = new SlayerExtend({
|
|
147
|
+
cost: 100,
|
|
148
|
+
name: "Basilonger",
|
|
149
|
+
notes: "Number of Basilisks assigned is increased to 200-250.",
|
|
150
|
+
});
|
|
151
|
+
const MoreAtStake = new SlayerExtend({
|
|
152
|
+
cost: 100,
|
|
153
|
+
name: "More at stake",
|
|
154
|
+
notes: "Number of Vampyres assigned is increased to 200-250.",
|
|
155
|
+
});
|
|
156
|
+
// Add all defined SlayerExtend objects to the array
|
|
157
|
+
exports.SlayerExtends = [
|
|
158
|
+
NeedMoreDarkness,
|
|
159
|
+
AnkouVeryMuch,
|
|
160
|
+
SuqAnotherOne,
|
|
161
|
+
FireAndDarkness,
|
|
162
|
+
PedalToTheMetals,
|
|
163
|
+
IReallyMithYou,
|
|
164
|
+
AdaMindSomeMore,
|
|
165
|
+
Ruuuuune,
|
|
166
|
+
SpiritualFervour,
|
|
167
|
+
BirdsOfAFeather,
|
|
168
|
+
GreaterChallenge,
|
|
169
|
+
ItsDarkInHere,
|
|
170
|
+
BleedMeDry,
|
|
171
|
+
SmellYaLater,
|
|
172
|
+
Horrorific,
|
|
173
|
+
ToDustYouShallReturn,
|
|
174
|
+
WyverNotherOne,
|
|
175
|
+
GetSmashed,
|
|
176
|
+
NechsPlease,
|
|
177
|
+
AugmentMyAbbies,
|
|
178
|
+
KrackOn,
|
|
179
|
+
GetScabarightOnIt,
|
|
180
|
+
WyverNotherTwo,
|
|
181
|
+
Basilonger,
|
|
182
|
+
MoreAtStake,
|
|
183
|
+
// Add additional SlayerExtend objects here...
|
|
184
|
+
];
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SlayerUnlocks = exports.SlayerUnlock = void 0;
|
|
4
|
+
class SlayerUnlock {
|
|
5
|
+
constructor(name, cost, description) {
|
|
6
|
+
this.name = name;
|
|
7
|
+
this.cost = cost;
|
|
8
|
+
this.description = description;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.SlayerUnlock = SlayerUnlock;
|
|
12
|
+
const WatchTheBirdie = new SlayerUnlock("Watch the birdie", 80, "Konar, Duradel, Nieve and Chaeldar will be able to assign you Aviansie as your task.");
|
|
13
|
+
const GargoyleSmasher = new SlayerUnlock("Gargoyle smasher", 120, "Gargoyles are automatically dealt the finishing blow if the player has a Rock hammer in their inventory.");
|
|
14
|
+
const SlugSalter = new SlayerUnlock("Slug salter", 80, "Rock slugs are automatically dealt the finishing blow if the player has a Bag of salt in their inventory.");
|
|
15
|
+
const ReptileFreezer = new SlayerUnlock("Reptile freezer", 90, "Desert lizards are automatically dealt the finishing blow if the player has an Ice cooler in their inventory.");
|
|
16
|
+
const ShroomSprayer = new SlayerUnlock("Shroom sprayer", 110, "Mutated zygomites are automatically dealt the finishing blow if the player has Fungicide spray & Fungicide.");
|
|
17
|
+
const BroaderFletching = new SlayerUnlock("Broader fletching", 300, "Learn to fletch Broad arrows (level 52 Fletching), Broad bolts (level 55 Fletching), and Amethyst broad bolts (level 76 Fletching).");
|
|
18
|
+
const Malevolent = new SlayerUnlock("Malevolent masquerade", 400, "Learn to assemble a Slayer helmet, which requires level 55 Crafting.");
|
|
19
|
+
const ringbling = new SlayerUnlock("Ring bling", 300, "Learn to craft a Slayer ring, which requires level 75 Crafting.");
|
|
20
|
+
const Seeingred = new SlayerUnlock("Seeing red", 50, "Konar, Duradel and Nieve will be able to assign you Red dragons as your task.");
|
|
21
|
+
const mithme = new SlayerUnlock("I hope you mith me", 80, "Konar, Duradel and Nieve will be able to assign you Mithril dragons as your task.");
|
|
22
|
+
const HotStuff = new SlayerUnlock("Hot stuff", 100, "Duradel, Nieve and Chaeldar will be able to assign TzHaar as your task. You may also be offered a chance to slay TzTok-Jad.");
|
|
23
|
+
const ReptileGotRipped = new SlayerUnlock("Reptile got ripped", 75, "Konar, Duradel, Nieve, and Chaeldar will be able to assign Lizardmen as your task.");
|
|
24
|
+
const LikeABoss = new SlayerUnlock("Like a boss", 200, "Konar, Duradel, Krystilia and Nieve will be able to assign boss monsters as your task, excluding the Corporeal Beast.");
|
|
25
|
+
const BiggerAndBadder = new SlayerUnlock("Bigger and Badder", 150, "Certain slayer monsters will have the chance of spawning a superior version whilst on a slayer task.");
|
|
26
|
+
const KingBlackBonnet = new SlayerUnlock("King black bonnet", 1000, "Learn how to combine a KBD head with your slayer helm to colour it black.");
|
|
27
|
+
const KalphiteKhat = new SlayerUnlock("Kalphite khat", 1000, "Learn how to combine a Kalphite Queen head with your slayer helm to colour it green.");
|
|
28
|
+
const UnholyHelmet = new SlayerUnlock("Unholy helmet", 1000, "Learn how to combine an Abyssal Demon head with your slayer helm to colour it red.");
|
|
29
|
+
const DarkMantle = new SlayerUnlock("Dark Mantle", 1000, "Learn how to combine a Dark Claw with your slayer helm to colour it purple.");
|
|
30
|
+
const UndeadHead = new SlayerUnlock("Undead Head", 1000, "Learn how to combine Vorkath's head with your slayer helm to colour it turquoise.");
|
|
31
|
+
const UseMoreHead = new SlayerUnlock("Use more head", 1000, "Learn how to combine a Hydra head with your slayer helm to theme it like the Alchemical Hydra.");
|
|
32
|
+
const TwistedVision = new SlayerUnlock("Twisted Vision", 1000, "Learn how to combine the Twisted Horns with your slayer helm to theme it like the Great Olm.");
|
|
33
|
+
const DulyNoted = new SlayerUnlock("Duly noted", 200, "Mithril dragons drop mithril bars in banknote form while killed on assignment.");
|
|
34
|
+
const StopTheWyvern = new SlayerUnlock("Stop the Wyvern", 500, "Stops you getting Fossil Island Wyvern tasks, without counting towards your blocked task limit. This does not cancel a current fossil wyvern task.");
|
|
35
|
+
const DoubleTrouble = new SlayerUnlock("Double Trouble", 500, "Slaying Dusk and Dawn now counts for two kills towards your task rather than one.");
|
|
36
|
+
const Basilocked = new SlayerUnlock("Basilocked", 80, "Konar, Duradel and Nieve will be able to assign Basilisks as your task.");
|
|
37
|
+
const ActualVampyreSlayer = new SlayerUnlock("Actual Vampyre Slayer", 80, "Konar, Duradel, Nieve, and Chaeldar will be able to assign Vampyres as your task.");
|
|
38
|
+
const TaskStorage = new SlayerUnlock("Task Storage", 1000, "Gain the ability to store your task for 50 points, allowing you to take it at a later time.");
|
|
39
|
+
exports.SlayerUnlocks = [
|
|
40
|
+
GargoyleSmasher,
|
|
41
|
+
SlugSalter,
|
|
42
|
+
ReptileFreezer,
|
|
43
|
+
ShroomSprayer,
|
|
44
|
+
BroaderFletching,
|
|
45
|
+
Malevolent,
|
|
46
|
+
ringbling,
|
|
47
|
+
Seeingred,
|
|
48
|
+
mithme,
|
|
49
|
+
WatchTheBirdie,
|
|
50
|
+
HotStuff,
|
|
51
|
+
ReptileGotRipped,
|
|
52
|
+
LikeABoss,
|
|
53
|
+
BiggerAndBadder,
|
|
54
|
+
KingBlackBonnet,
|
|
55
|
+
KalphiteKhat,
|
|
56
|
+
UnholyHelmet,
|
|
57
|
+
DarkMantle,
|
|
58
|
+
UndeadHead,
|
|
59
|
+
UseMoreHead,
|
|
60
|
+
TwistedVision,
|
|
61
|
+
DulyNoted,
|
|
62
|
+
StopTheWyvern,
|
|
63
|
+
DoubleTrouble,
|
|
64
|
+
Basilocked,
|
|
65
|
+
ActualVampyreSlayer,
|
|
66
|
+
TaskStorage,
|
|
67
|
+
];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SlayerBuys = exports.SlayerBuy = void 0;
|
|
4
|
+
const SlayerReward_1 = require("../../model/slayer/SlayerReward");
|
|
5
|
+
Object.defineProperty(exports, "SlayerBuy", { enumerable: true, get: function () { return SlayerReward_1.SlayerBuy; } });
|
|
6
|
+
const SlayerBuys = [
|
|
7
|
+
{
|
|
8
|
+
item: "Slayer ring",
|
|
9
|
+
notes: "An equippable ring that provides all the functions of an Enchanted gem, and provides 8 charges for teleporting to useful Slayer sites.",
|
|
10
|
+
priceSoldAt: 75,
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
item: "Broad bolts (x250)",
|
|
14
|
+
notes: "Bolts that can damage Turoths and Kurask. Level 55 Slayer and 61 Ranged, alongside a suitable bow, are required to fire these bolts.",
|
|
15
|
+
priceSoldAt: 35,
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
item: "Broad arrows (x250)",
|
|
19
|
+
notes: "Arrows that can damage Turoths and Kurask. Level 55 Slayer and 50 Ranged, alongside a suitable bow, are required to fire these arrows.",
|
|
20
|
+
priceSoldAt: 35,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
item: "Herb sack",
|
|
24
|
+
notes: "Stores up to 30 of each type of grimy herb (for a total of 420 herbs). Level 58 Herblore is required to use it.",
|
|
25
|
+
priceSoldAt: 750,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
item: "Rune pouch",
|
|
29
|
+
notes: "Stores up to 16,000 of three types of runes. Only one can be owned. Can also be obtained by exchanging a rune pouch note at a bank.",
|
|
30
|
+
priceSoldAt: 750,
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
exports.SlayerBuys = SlayerBuys;
|
|
34
|
+
module.exports = exports = { SlayerBuys };
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NieveTasks = void 0;
|
|
4
|
+
const Requirement_1 = require("../../../model/Requirement");
|
|
5
|
+
const Task_1 = require("../../../model/slayer/Task");
|
|
6
|
+
const NieveTasks = [
|
|
7
|
+
new Task_1.Task("Aberrant spectres", 40, 90, [
|
|
8
|
+
new Requirement_1.SlayerLevelRequirement(60),
|
|
9
|
+
new Requirement_1.CombatLevelRequirement(65),
|
|
10
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
11
|
+
], 200, 250, ["Deviant spectres"], 8),
|
|
12
|
+
new Task_1.Task("Abyssal demons", 40, 90, [
|
|
13
|
+
new Requirement_1.SlayerLevelRequirement(85),
|
|
14
|
+
new Requirement_1.CombatLevelRequirement(85),
|
|
15
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
16
|
+
new Requirement_1.QuestRequirement("Fairytale II - Cure a Queen"),
|
|
17
|
+
], 200, 250, ["Abyssal Sire"], 5),
|
|
18
|
+
new Task_1.Task("Ankou", 25, 35, [new Requirement_1.CombatLevelRequirement(40)], 91, 150, ["Dark Ankou"], 7),
|
|
19
|
+
new Task_1.Task("Basilisks", 40, 90, [
|
|
20
|
+
new Requirement_1.SlayerLevelRequirement(40),
|
|
21
|
+
new Requirement_1.CombatLevelRequirement(40),
|
|
22
|
+
new Requirement_1.CombatLevelRequirement(20), // Defense requirement
|
|
23
|
+
], 200, 250, ["Basilisk Knight"], 8),
|
|
24
|
+
new Task_1.Task("Bloodveld", 40, 90, [
|
|
25
|
+
new Requirement_1.SlayerLevelRequirement(50),
|
|
26
|
+
new Requirement_1.CombatLevelRequirement(50),
|
|
27
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
28
|
+
], 200, 250, ["Mutated Bloodveld"], 8),
|
|
29
|
+
new Task_1.Task("Blue dragons", 40, 90, [
|
|
30
|
+
new Requirement_1.CombatLevelRequirement(65),
|
|
31
|
+
new Requirement_1.QuestRequirement("Dragon Slayer I (partial completion)"),
|
|
32
|
+
], null, null, ["Baby blue dragons", "Brutal blue dragons", "Vorkath"], 7),
|
|
33
|
+
new Task_1.Task("Brine rats", 40, 90, [
|
|
34
|
+
new Requirement_1.SlayerLevelRequirement(47),
|
|
35
|
+
new Requirement_1.CombatLevelRequirement(45),
|
|
36
|
+
new Requirement_1.QuestRequirement("Olaf's Quest (partial completion)"),
|
|
37
|
+
], null, null, [], 7),
|
|
38
|
+
new Task_1.Task("Cockatrice", 40, 90, [
|
|
39
|
+
new Requirement_1.SlayerLevelRequirement(25),
|
|
40
|
+
new Requirement_1.CombatLevelRequirement(25),
|
|
41
|
+
new Requirement_1.CombatLevelRequirement(20), // Defense requirement
|
|
42
|
+
], null, null, ["Moonlight Cockatrice"], 8),
|
|
43
|
+
new Task_1.Task("Crabs", 40, 90, [new Requirement_1.SlayerLevelRequirement(1)], null, null, [
|
|
44
|
+
"Ammonite crabs",
|
|
45
|
+
"Frost crabs",
|
|
46
|
+
"Rock crabs",
|
|
47
|
+
"Sand crabs",
|
|
48
|
+
"Swamp crabs",
|
|
49
|
+
], 8),
|
|
50
|
+
new Task_1.Task("Crocodiles", 40, 90, [new Requirement_1.CombatLevelRequirement(50)], null, null, [], 6),
|
|
51
|
+
new Task_1.Task("Dagannoth", 40, 90, [
|
|
52
|
+
new Requirement_1.CombatLevelRequirement(75),
|
|
53
|
+
new Requirement_1.QuestRequirement("Horror from the Deep"),
|
|
54
|
+
], null, null, ["Dagannoth spawn", "Dagannoth fledgeling", "Dagannoth Kings"], 7),
|
|
55
|
+
new Task_1.Task("Dust devils", 40, 90, [
|
|
56
|
+
new Requirement_1.SlayerLevelRequirement(65),
|
|
57
|
+
new Requirement_1.CombatLevelRequirement(70),
|
|
58
|
+
new Requirement_1.QuestRequirement("Desert Treasure I (partial completion)"),
|
|
59
|
+
], 200, 250, [], 8),
|
|
60
|
+
new Task_1.Task("Elves", 30, 70, [
|
|
61
|
+
new Requirement_1.CombatLevelRequirement(70),
|
|
62
|
+
new Requirement_1.QuestRequirement("Regicide (partial completion)"),
|
|
63
|
+
], null, null, ["Elf warrior", "Mourner (Mourner Headquarters)"], 7),
|
|
64
|
+
new Task_1.Task("Fever spiders", 30, 90, [
|
|
65
|
+
new Requirement_1.SlayerLevelRequirement(42),
|
|
66
|
+
new Requirement_1.CombatLevelRequirement(40),
|
|
67
|
+
new Requirement_1.QuestRequirement("Rum Deal (partial completion)"),
|
|
68
|
+
], null, null, [], 7),
|
|
69
|
+
new Task_1.Task("Fire giants", 40, 90, [new Requirement_1.CombatLevelRequirement(65)], null, null, [], 7),
|
|
70
|
+
new Task_1.Task("Gargoyles", 40, 90, [
|
|
71
|
+
new Requirement_1.SlayerLevelRequirement(75),
|
|
72
|
+
new Requirement_1.CombatLevelRequirement(80),
|
|
73
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
74
|
+
], 200, 250, ["Grotesque Guardians"], 5),
|
|
75
|
+
new Task_1.Task("Ghouls", 10, 40, [new Requirement_1.CombatLevelRequirement(25), new Requirement_1.QuestRequirement("Priest in Peril")], null, null, [], 7),
|
|
76
|
+
// Add more tasks here following the same structure...
|
|
77
|
+
];
|
|
78
|
+
exports.NieveTasks = NieveTasks;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DuradelTasks = void 0;
|
|
4
|
+
const Task_1 = require("../../../model/slayer/Task");
|
|
5
|
+
exports.DuradelTasks = [
|
|
6
|
+
new Task_1.Task("Aberrant Spectres", 15, 50, [], null, null, [
|
|
7
|
+
"Aberrant spectre",
|
|
8
|
+
"Aberrant spectre (blood)",
|
|
9
|
+
"Aberrant spectre (dark)",
|
|
10
|
+
"Aberrant spectre (light)",
|
|
11
|
+
"Aberrant spectre (shadow)",
|
|
12
|
+
], 6),
|
|
13
|
+
new Task_1.Task("Abyssal Demons", 85, 100, [], null, null, ["Abyssal demon", "Abyssal demon (blood)", "Abyssal demon (dark)"], 6),
|
|
14
|
+
new Task_1.Task("Black Demons", 50, 100, [], null, null, ["Black demon", "Black demon (blood)", "Black demon (dark)"], 6),
|
|
15
|
+
new Task_1.Task("Bloodvelds", 10, 50, [], null, null, ["Bloodveld", "Bloodveld (blood)", "Bloodveld (dark)"], 6),
|
|
16
|
+
new Task_1.Task("Cave Horrors", 20, 50, [], null, null, ["Cave horror", "Cave horror (blood)", "Cave horror (dark)"], 6),
|
|
17
|
+
new Task_1.Task("Cave Kraken", 40, 70, [], null, null, ["Cave kraken", "Cave kraken (blood)", "Cave kraken (dark)"], 6),
|
|
18
|
+
];
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NieveTasks = void 0;
|
|
4
|
+
const Requirement_1 = require("../../../model/Requirement");
|
|
5
|
+
const Task_1 = require("../../../model/slayer/Task");
|
|
6
|
+
const NieveTasks = [
|
|
7
|
+
new Task_1.Task("Aberrant spectres", 40, 90, [
|
|
8
|
+
new Requirement_1.SlayerLevelRequirement(60),
|
|
9
|
+
new Requirement_1.CombatLevelRequirement(65),
|
|
10
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
11
|
+
], 200, 250, ["Deviant spectres"], 8),
|
|
12
|
+
new Task_1.Task("Abyssal demons", 40, 90, [
|
|
13
|
+
new Requirement_1.SlayerLevelRequirement(85),
|
|
14
|
+
new Requirement_1.CombatLevelRequirement(85),
|
|
15
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
16
|
+
new Requirement_1.QuestRequirement("Fairytale II - Cure a Queen"),
|
|
17
|
+
], 200, 250, ["Abyssal Sire"], 5),
|
|
18
|
+
new Task_1.Task("Ankou", 25, 35, [new Requirement_1.CombatLevelRequirement(40)], 91, 150, ["Dark Ankou"], 7),
|
|
19
|
+
new Task_1.Task("Basilisks", 40, 90, [
|
|
20
|
+
new Requirement_1.SlayerLevelRequirement(40),
|
|
21
|
+
new Requirement_1.CombatLevelRequirement(40),
|
|
22
|
+
new Requirement_1.CombatLevelRequirement(20), // Defense requirement
|
|
23
|
+
], 200, 250, ["Basilisk Knight"], 8),
|
|
24
|
+
new Task_1.Task("Bloodveld", 40, 90, [
|
|
25
|
+
new Requirement_1.SlayerLevelRequirement(50),
|
|
26
|
+
new Requirement_1.CombatLevelRequirement(50),
|
|
27
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
28
|
+
], 200, 250, ["Mutated Bloodveld"], 8),
|
|
29
|
+
new Task_1.Task("Blue dragons", 40, 90, [
|
|
30
|
+
new Requirement_1.CombatLevelRequirement(65),
|
|
31
|
+
new Requirement_1.QuestRequirement("Dragon Slayer I (partial completion)"),
|
|
32
|
+
], null, null, ["Baby blue dragons", "Brutal blue dragons", "Vorkath"], 7),
|
|
33
|
+
new Task_1.Task("Brine rats", 40, 90, [
|
|
34
|
+
new Requirement_1.SlayerLevelRequirement(47),
|
|
35
|
+
new Requirement_1.CombatLevelRequirement(45),
|
|
36
|
+
new Requirement_1.QuestRequirement("Olaf's Quest (partial completion)"),
|
|
37
|
+
], null, null, [], 7),
|
|
38
|
+
new Task_1.Task("Cockatrice", 40, 90, [
|
|
39
|
+
new Requirement_1.SlayerLevelRequirement(25),
|
|
40
|
+
new Requirement_1.CombatLevelRequirement(25),
|
|
41
|
+
new Requirement_1.CombatLevelRequirement(20), // Defense requirement
|
|
42
|
+
], null, null, ["Moonlight Cockatrice"], 8),
|
|
43
|
+
new Task_1.Task("Crabs", 40, 90, [new Requirement_1.SlayerLevelRequirement(1)], null, null, [
|
|
44
|
+
"Ammonite crabs",
|
|
45
|
+
"Frost crabs",
|
|
46
|
+
"Rock crabs",
|
|
47
|
+
"Sand crabs",
|
|
48
|
+
"Swamp crabs",
|
|
49
|
+
], 8),
|
|
50
|
+
new Task_1.Task("Crocodiles", 40, 90, [new Requirement_1.CombatLevelRequirement(50)], null, null, [], 6),
|
|
51
|
+
new Task_1.Task("Dagannoth", 40, 90, [
|
|
52
|
+
new Requirement_1.CombatLevelRequirement(75),
|
|
53
|
+
new Requirement_1.QuestRequirement("Horror from the Deep"),
|
|
54
|
+
], null, null, ["Dagannoth spawn", "Dagannoth fledgeling", "Dagannoth Kings"], 7),
|
|
55
|
+
new Task_1.Task("Dust devils", 40, 90, [
|
|
56
|
+
new Requirement_1.SlayerLevelRequirement(65),
|
|
57
|
+
new Requirement_1.CombatLevelRequirement(70),
|
|
58
|
+
new Requirement_1.QuestRequirement("Desert Treasure I (partial completion)"),
|
|
59
|
+
], 200, 250, [], 8),
|
|
60
|
+
new Task_1.Task("Elves", 30, 70, [
|
|
61
|
+
new Requirement_1.CombatLevelRequirement(70),
|
|
62
|
+
new Requirement_1.QuestRequirement("Regicide (partial completion)"),
|
|
63
|
+
], null, null, ["Elf warrior", "Mourner (Mourner Headquarters)"], 7),
|
|
64
|
+
new Task_1.Task("Fever spiders", 30, 90, [
|
|
65
|
+
new Requirement_1.SlayerLevelRequirement(42),
|
|
66
|
+
new Requirement_1.CombatLevelRequirement(40),
|
|
67
|
+
new Requirement_1.QuestRequirement("Rum Deal (partial completion)"),
|
|
68
|
+
], null, null, [], 7),
|
|
69
|
+
new Task_1.Task("Fire giants", 40, 90, [new Requirement_1.CombatLevelRequirement(65)], null, null, [], 7),
|
|
70
|
+
new Task_1.Task("Gargoyles", 40, 90, [
|
|
71
|
+
new Requirement_1.SlayerLevelRequirement(75),
|
|
72
|
+
new Requirement_1.CombatLevelRequirement(80),
|
|
73
|
+
new Requirement_1.QuestRequirement("Priest in Peril"),
|
|
74
|
+
], 200, 250, ["Grotesque Guardians"], 5),
|
|
75
|
+
new Task_1.Task("Ghouls", 10, 40, [new Requirement_1.CombatLevelRequirement(25), new Requirement_1.QuestRequirement("Priest in Peril")], null, null, [], 7),
|
|
76
|
+
// Add more tasks here following the same structure...
|
|
77
|
+
];
|
|
78
|
+
exports.NieveTasks = NieveTasks;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const fs = __importStar(require("fs"));
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
const Requirement_1 = require("../../../model/Requirement");
|
|
39
|
+
const Task_1 = require("../../../model/slayer/Task");
|
|
40
|
+
// Path to your JSON file (adjust as necessary)
|
|
41
|
+
const filePath = path.join(__dirname, "../slayerData.json");
|
|
42
|
+
let parsedJson;
|
|
43
|
+
try {
|
|
44
|
+
// Read the JSON file synchronously
|
|
45
|
+
const data = fs.readFileSync(filePath, "utf8");
|
|
46
|
+
// Parse the JSON string
|
|
47
|
+
parsedJson = JSON.parse(data);
|
|
48
|
+
}
|
|
49
|
+
catch (error) {
|
|
50
|
+
console.error("Error reading or parsing the file:", error);
|
|
51
|
+
}
|
|
52
|
+
const turaelData = parsedJson.Turael;
|
|
53
|
+
// Create Assignment objects dynamically from the assignments array
|
|
54
|
+
const assignments = Object.keys(turaelData.assignments).reduce((acc, key) => {
|
|
55
|
+
var _a, _b;
|
|
56
|
+
const assignmentData = turaelData.assignments[key];
|
|
57
|
+
const unlockRequirements = new Requirement_1.CombatLevelRequirement(assignmentData.unlockRequirements.combat);
|
|
58
|
+
const questRequirements = assignmentData.unlockRequirements.quests.map((quest) => new Requirement_1.QuestRequirement(quest)) || [];
|
|
59
|
+
const partialQuestRequirements = assignmentData.unlockRequirements.partialQuests.map((quest) => new Requirement_1.QuestRequirement(quest)) || [];
|
|
60
|
+
const assignment = new Task_1.Task(assignmentData.name, assignmentData.amountMin, assignmentData.amountMax, [questRequirements, partialQuestRequirements, unlockRequirements], (_a = assignmentData.extendedAmountMin) !== null && _a !== void 0 ? _a : null, (_b = assignmentData.extendedAmountMax) !== null && _b !== void 0 ? _b : null, assignmentData.alternatives, assignmentData.weight);
|
|
61
|
+
acc[key] = assignment;
|
|
62
|
+
return acc;
|
|
63
|
+
}, {});
|