Pembungkus API Old School RuneScape yang melakukan lebih banyak!
API hiscores resmi untuk Old School RuneScape (OSRS) dapat mengembalikan CSV atau array JSON sederhana. Pembungkus ini mengubah data hiscore menjadi objek JSON yang lebih berguna dan memberikan informasi tambahan tentang pemain tertentu. Dengan membandingkan info pemain, ini menyimpulkan mode permainan pemain, serta mode sebelumnya (de-ultimated, de-ironed dan/atau mati sebagai ironman hardcore).
Fungsi tambahan disediakan untuk menyaring papan peringkat OSRS dan mengembalikan daftar pemain sebagai json. Fungsi utilitas sederhana juga disediakan untuk mengambil respons mentah dari API Jagex, jika diinginkan.
osrs-json-hiscores
memiliki dukungan TypeScript, dengan definisi lengkap untuk semua fungsi dan tipe data khusus.
Jagex tidak menyediakan header Access-Control-Allow-Origin
dalam tanggapannya. Artinya CORS akan memblokir semua permintaan browser ke API hiscoresnya. Untuk menyiasatinya, osrs-json-hiscores perlu diinstal di sisi server dan diekspos ke front end melalui API sederhana. Berikut ini contoh penggunaannya: codeandbox.io/s/osrs-json-hiscores-demo
TLDR: Anda tidak dapat menggunakan perpustakaan ini secara langsung di aplikasi sisi klien Anda misalnya React atau Vue, Anda harus menyiapkan server yang menggunakan lib ini secara internal dan meminta klien Anda mengambil data dari server Anda.
Dengan npm:
$ npm install osrs-json-hiscores
Dengan Benang:
$ yarn add osrs-json-hiscores
Instal paket lalu impor ke proyek Anda:
import { getStatsByGamemode , getSkillPage } from 'osrs-json-hiscores' ;
Setelah Anda mengimpornya, Anda dapat memanggil fungsi-fungsi tersebut secara asinkron:
const stats = await getStatsByGamemode ( 'Lynx Titan' ) ;
const topPage = await getSkillPage ( 'overall' ) ;
getStats
akan mengembalikan objek pemain lengkap dengan gamemode.
getStatsByGameMode
akan mengembalikan objek stats dan menerima parameter gamemode:
Modus permainan | Param |
---|---|
Biasa | main |
manusia besi | ironman |
Manusia Besi Keras | hardcore |
Manusia Besi Terhebat | ultimate |
Mode Orang Mati | deadman |
Turnamen | tournament |
Liga | seasonal |
getSkillPage
dan getActivityPage
memerlukan keterampilan/aktivitas dan opsional gamemode dan halaman:
getSkillPage ( 'attack' , 'main' , 1 )
. then ( ( res ) => console . log ( res ) )
. catch ( ( err ) => console . error ( err ) ) ;
Aktivitas terdiri dari semua level gulungan petunjuk serta minigame dan bos:
Jenis | Param |
---|---|
Semua | allClues |
Pemula | beginnerClues |
Mudah | easyClues |
Sedang | mediumClues |
Keras | hardClues |
Elite | eliteClues |
Menguasai | masterClues |
permainan mini | Param |
---|---|
Pemburu Hadiah (Warisan – Nakal) | rogueBH |
Pemburu Hadiah (Warisan - Pemburu) | hunterBH |
Pemburu Hadiah (Nakal) | rogueBHV2 |
Pemburu Hadiah (Pemburu) | hunterBHV2 |
LMS - Pangkat | lastManStanding |
Arena PvP - Peringkat | pvpArena |
Semangat Perang Jiwa | soulWarsZeal |
Perpecahan tertutup | riftsClosed |
Kemuliaan Colosseum | colosseumGlory |
Aktivitas | Param |
---|---|
Poin Liga | leaguePoints |
Poin Orang Mati | deadmanPoints |
Nama Bos | Param |
---|---|
Baginda Neraka | abyssalSire |
Alkimia Hydra | alchemicalHydra |
Amoxliatl | amoxliatl |
Araxxor | araxxor |
Arti | artio |
Peti Barrow | barrows |
Bryophyta | bryophyta |
Callisto | callisto |
Calvar'ion | calvarion |
Cerberus | cerberus |
Kamar Xeric | chambersOfXeric |
Chambers Of Xeric: Mode Tantangan | chambersOfXericChallengeMode |
Elemen Kekacauan | chaosElemental |
Fanatik Kekacauan | chaosFanatic |
Komandan Zilyana | commanderZilyana |
Binatang Buas | corporealBeast |
Arkeolog Gila | crazyArchaeologist |
Dagannoth Perdana | dagannothPrime |
Dagannoth Rex | dagannothRex |
Dagannoth Agung | dagannothSupreme |
Arkeolog Gila | derangedArchaeologist |
Adipati Sucellus | dukeSucellus |
Jenderal Graardor | generalGraardor |
Tahi Lalat Raksasa | giantMole |
Penjaga yang Aneh | grotesqueGuardians |
Hespori | hespori |
Ratu Kalfit | kalphiteQueen |
Raja Naga Hitam | kingBlackDragon |
Kraken | kraken |
Kreearra | kreeArra |
K'ril Tsutsaroth | krilTsutsaroth |
Peti Bulan | lunarChests |
Meniru | mimic |
Berikutnya | nex |
Mimpi buruk | nightmare |
Mimpi Buruk Phosani | phosanisNightmare |
Obor | obor |
Hantu Muspah | phantomMuspah |
Sarachnis | sarachnis |
kalajengking | scorpia |
Scurry | scurrius |
Skotizo | skotizo |
Sol turun temurun | solHeredit |
spindel | spindel |
Temporos | tempoross |
Tantangan itu | gauntlet |
Tantangan yang Rusak | corruptedGauntlet |
Hueycoatl | hueycoatl |
Leviathan | leviathan |
Pembisik | whisperer |
Teater Darah | theatreOfBlood |
Teater Darah: Mode Keras | theatreOfBloodHardMode |
Setan Asap Termonuklir | thermonuclearSmokeDevil |
Makam Amascut | tombsOfAmascut |
Makam Amascut: Mode Pakar | tombsOfAmascutExpertMode |
TzKal-Zuk | tzKalZuk |
TzTok-Jad | tzTokJad |
Vardorvis | vardorvis |
Venenatis | venenatis |
Vesi | vetion |
kerja keras | vorkath |
Musim Dingin | wintertodt |
Zalcano | zalcano |
Zulrah | zulrah |
getStats
mengembalikan objek pemain yang terlihat seperti ini:
{
name : 'Lynx Titan' ,
mode : 'main' ,
dead : false ,
deulted : false ,
deironed : false ,
main : {
skills : {
overall : { rank : 1 , level : 2277 , xp : 4600000000 } ,
attack : { } ,
defence : { } ,
// ...
} ,
clues : { } ,
leaguePoints : { } ,
bountyHunter : { } ,
lastManStanding : { } ,
pvpArena : { } ,
soulWarsZeal : { } ,
riftsClosed : { } ,
bosses : { }
}
}
getSkillPage
kembali dan susunan 25 pemain (Ini mewakili halaman pada skor hiscore):
[
{ rank : 1 , name : 'Lynx Titan' , level : 2277 , xp : 4600000000 , dead : false } ,
{ } ,
{ }
// ...
] ;
Dapatkan nama keterampilan, bos, petunjuk, atau aktivitas lainnya yang diformat dengan benar:
// kril === "K'ril Tsutsaroth"
const kril = FORMATTED_BOSS_NAMES [ 'krilTsutsaroth' ] ;