UNPKG

osrs-tools

Version:

A comprehensive TypeScript library for Old School RuneScape (OSRS) data and utilities, including quest data, skill requirements, and game item information

185 lines 10.3 kB
"use strict"; var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) { if (kind === "m") throw new TypeError("Private method is not writable"); if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it"); return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value; }; var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) { if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter"); if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it"); return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver); }; var _OsrsAccount_name, _OsrsAccount_combatLevel, _OsrsAccount_questPoints, _OsrsAccount_skills, _OsrsAccount_skillsDetail, _OsrsAccount_bosses, _OsrsAccount_clues, _OsrsAccount_bountyHunter, _OsrsAccount_lastManStanding, _OsrsAccount_pvpArena, _OsrsAccount_soulWarsZeal, _OsrsAccount_riftsClosed, _OsrsAccount_colosseumGlory, _OsrsAccount_collectionsLogged, _OsrsAccount_leaguePoints, _OsrsAccount_deadmanPoints; Object.defineProperty(exports, "__esModule", { value: true }); exports.OsrsAccount = void 0; class OsrsAccount { constructor(data) { _OsrsAccount_name.set(this, void 0); _OsrsAccount_combatLevel.set(this, void 0); _OsrsAccount_questPoints.set(this, void 0); _OsrsAccount_skills.set(this, void 0); _OsrsAccount_skillsDetail.set(this, void 0); _OsrsAccount_bosses.set(this, void 0); _OsrsAccount_clues.set(this, void 0); _OsrsAccount_bountyHunter.set(this, void 0); _OsrsAccount_lastManStanding.set(this, void 0); _OsrsAccount_pvpArena.set(this, void 0); _OsrsAccount_soulWarsZeal.set(this, void 0); _OsrsAccount_riftsClosed.set(this, void 0); _OsrsAccount_colosseumGlory.set(this, void 0); _OsrsAccount_collectionsLogged.set(this, void 0); _OsrsAccount_leaguePoints.set(this, void 0); _OsrsAccount_deadmanPoints.set(this, void 0); __classPrivateFieldSet(this, _OsrsAccount_name, data.name, "f"); __classPrivateFieldSet(this, _OsrsAccount_combatLevel, data.combatLevel, "f"); __classPrivateFieldSet(this, _OsrsAccount_questPoints, data.questPoints, "f"); __classPrivateFieldSet(this, _OsrsAccount_skills, data.skills, "f"); __classPrivateFieldSet(this, _OsrsAccount_skillsDetail, data.skillsDetail, "f"); __classPrivateFieldSet(this, _OsrsAccount_bosses, data.bosses, "f"); __classPrivateFieldSet(this, _OsrsAccount_clues, data.clues, "f"); __classPrivateFieldSet(this, _OsrsAccount_bountyHunter, data.bountyHunter, "f"); __classPrivateFieldSet(this, _OsrsAccount_lastManStanding, data.lastManStanding, "f"); __classPrivateFieldSet(this, _OsrsAccount_pvpArena, data.pvpArena, "f"); __classPrivateFieldSet(this, _OsrsAccount_soulWarsZeal, data.soulWarsZeal, "f"); __classPrivateFieldSet(this, _OsrsAccount_riftsClosed, data.riftsClosed, "f"); __classPrivateFieldSet(this, _OsrsAccount_colosseumGlory, data.colosseumGlory, "f"); __classPrivateFieldSet(this, _OsrsAccount_collectionsLogged, data.collectionsLogged, "f"); __classPrivateFieldSet(this, _OsrsAccount_leaguePoints, data.leaguePoints, "f"); __classPrivateFieldSet(this, _OsrsAccount_deadmanPoints, data.deadmanPoints, "f"); } static fromJson(json) { const name = json.name || ''; const combatLevel = json.main?.combatLevel ?? json.combatLevel ?? 3; const questPoints = json.main?.questPoints ?? json.questPoints ?? 0; // Accept both lower and upper case skill keys const skills = {}; const skillsDetail = {}; const srcSkills = json.main?.skills || json.skills || {}; for (const key of Object.keys(srcSkills)) { skills[key.toLowerCase()] = { level: srcSkills[key].level }; skillsDetail[key.toLowerCase()] = { rank: srcSkills[key].rank, level: srcSkills[key].level, xp: srcSkills[key].xp, }; } const bosses = json.bosses ? { ...json.bosses } : undefined; const clues = json.clues ? { ...json.clues } : undefined; const bountyHunter = json.bountyHunter ? { ...json.bountyHunter } : undefined; const lastManStanding = json.lastManStanding; const pvpArena = json.pvpArena; const soulWarsZeal = json.soulWarsZeal; const riftsClosed = json.riftsClosed; const colosseumGlory = json.colosseumGlory; const collectionsLogged = json.collectionsLogged; const leaguePoints = json.leaguePoints; const deadmanPoints = json.deadmanPoints; return new OsrsAccount({ name, combatLevel, questPoints, skills, skillsDetail, bosses, clues, bountyHunter, lastManStanding, pvpArena, soulWarsZeal, riftsClosed, colosseumGlory, collectionsLogged, leaguePoints, deadmanPoints, }); } get name() { return __classPrivateFieldGet(this, _OsrsAccount_name, "f"); } get combatLevel() { return __classPrivateFieldGet(this, _OsrsAccount_combatLevel, "f"); } get questPoints() { return __classPrivateFieldGet(this, _OsrsAccount_questPoints, "f"); } get skills() { return __classPrivateFieldGet(this, _OsrsAccount_skills, "f"); } get skillsDetail() { return __classPrivateFieldGet(this, _OsrsAccount_skillsDetail, "f"); } get bosses() { return __classPrivateFieldGet(this, _OsrsAccount_bosses, "f"); } get clues() { return __classPrivateFieldGet(this, _OsrsAccount_clues, "f"); } get bountyHunter() { return __classPrivateFieldGet(this, _OsrsAccount_bountyHunter, "f"); } get lastManStanding() { return __classPrivateFieldGet(this, _OsrsAccount_lastManStanding, "f"); } get pvpArena() { return __classPrivateFieldGet(this, _OsrsAccount_pvpArena, "f"); } get soulWarsZeal() { return __classPrivateFieldGet(this, _OsrsAccount_soulWarsZeal, "f"); } get riftsClosed() { return __classPrivateFieldGet(this, _OsrsAccount_riftsClosed, "f"); } get colosseumGlory() { return __classPrivateFieldGet(this, _OsrsAccount_colosseumGlory, "f"); } get collectionsLogged() { return __classPrivateFieldGet(this, _OsrsAccount_collectionsLogged, "f"); } get leaguePoints() { return __classPrivateFieldGet(this, _OsrsAccount_leaguePoints, "f"); } get deadmanPoints() { return __classPrivateFieldGet(this, _OsrsAccount_deadmanPoints, "f"); } getSkill(skillName) { return __classPrivateFieldGet(this, _OsrsAccount_skills, "f")[skillName.toLowerCase()]; } getSkillDetail(skillName) { return __classPrivateFieldGet(this, _OsrsAccount_skillsDetail, "f")?.[skillName.toLowerCase()]; } getBossScore(bossName) { return __classPrivateFieldGet(this, _OsrsAccount_bosses, "f")?.[bossName]; } getClueScore(clueType) { return __classPrivateFieldGet(this, _OsrsAccount_clues, "f")?.[clueType]; } toString() { return `${__classPrivateFieldGet(this, _OsrsAccount_name, "f")}:\nCombat Level: ${__classPrivateFieldGet(this, _OsrsAccount_combatLevel, "f")}\nQuestPoints: ${__classPrivateFieldGet(this, _OsrsAccount_questPoints, "f")}`; } toJson() { return { name: __classPrivateFieldGet(this, _OsrsAccount_name, "f"), combatLevel: __classPrivateFieldGet(this, _OsrsAccount_combatLevel, "f"), questPoints: __classPrivateFieldGet(this, _OsrsAccount_questPoints, "f"), skills: __classPrivateFieldGet(this, _OsrsAccount_skills, "f"), skillsDetail: __classPrivateFieldGet(this, _OsrsAccount_skillsDetail, "f"), bosses: __classPrivateFieldGet(this, _OsrsAccount_bosses, "f"), clues: __classPrivateFieldGet(this, _OsrsAccount_clues, "f"), bountyHunter: __classPrivateFieldGet(this, _OsrsAccount_bountyHunter, "f"), lastManStanding: __classPrivateFieldGet(this, _OsrsAccount_lastManStanding, "f"), pvpArena: __classPrivateFieldGet(this, _OsrsAccount_pvpArena, "f"), soulWarsZeal: __classPrivateFieldGet(this, _OsrsAccount_soulWarsZeal, "f"), riftsClosed: __classPrivateFieldGet(this, _OsrsAccount_riftsClosed, "f"), colosseumGlory: __classPrivateFieldGet(this, _OsrsAccount_colosseumGlory, "f"), collectionsLogged: __classPrivateFieldGet(this, _OsrsAccount_collectionsLogged, "f"), leaguePoints: __classPrivateFieldGet(this, _OsrsAccount_leaguePoints, "f"), deadmanPoints: __classPrivateFieldGet(this, _OsrsAccount_deadmanPoints, "f"), }; } } exports.OsrsAccount = OsrsAccount; _OsrsAccount_name = new WeakMap(), _OsrsAccount_combatLevel = new WeakMap(), _OsrsAccount_questPoints = new WeakMap(), _OsrsAccount_skills = new WeakMap(), _OsrsAccount_skillsDetail = new WeakMap(), _OsrsAccount_bosses = new WeakMap(), _OsrsAccount_clues = new WeakMap(), _OsrsAccount_bountyHunter = new WeakMap(), _OsrsAccount_lastManStanding = new WeakMap(), _OsrsAccount_pvpArena = new WeakMap(), _OsrsAccount_soulWarsZeal = new WeakMap(), _OsrsAccount_riftsClosed = new WeakMap(), _OsrsAccount_colosseumGlory = new WeakMap(), _OsrsAccount_collectionsLogged = new WeakMap(), _OsrsAccount_leaguePoints = new WeakMap(), _OsrsAccount_deadmanPoints = new WeakMap(); //# sourceMappingURL=OsrsAccount.js.map