feat: initial (broken) impl
This commit is contained in:
parent
b0af081d36
commit
a43f32d7c7
|
@ -56,11 +56,12 @@ import beammpmaster from './beammpmaster.js'
|
|||
import beammp from './beammp.js'
|
||||
import dayz from './dayz.js'
|
||||
import theisleevrima from './theisleevrima.js'
|
||||
import palworldmaster from './palworldmaster.js'
|
||||
|
||||
export {
|
||||
armagetron, ase, asa, assettocorsa, battlefield, buildandshoot, cs2d, discord, doom3, eco, epic, factorio, farmingsimulator, ffow,
|
||||
armagetron, ase, asa, assettocorsa, battlefield, buildandshoot, cs2d, discord, doom3, eco, epic, factorio, farmingsimulator, ffow,
|
||||
fivem, gamespy1, gamespy2, gamespy3, geneshift, goldsrc, gtasao, hexen2, jc2mp, kspdmp, mafia2mp, mafia2online, minecraft,
|
||||
minecraftbedrock, minecraftvanilla, mumble, mumbleping, nadeo, openttd, palworld, quake1, quake2, quake3, rfactor, samp,
|
||||
savage2, starmade, starsiege, teamspeak2, teamspeak3, terraria, tribes1, tribes1master, unreal2, ut3, valve,
|
||||
vcmp, ventrilo, warsow, eldewrito, beammpmaster, beammp, dayz, theisleevrima
|
||||
vcmp, ventrilo, warsow, eldewrito, beammpmaster, beammp, dayz, theisleevrima, palworldmaster
|
||||
}
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
import Core from './core.js'
|
||||
|
||||
export default class palworldmaster extends Core {
|
||||
async run (state) {
|
||||
let servers = []
|
||||
|
||||
for await (const batch of this.page()) {
|
||||
servers = servers.concat(batch)
|
||||
}
|
||||
|
||||
state.servers = servers
|
||||
}
|
||||
|
||||
async * page () {
|
||||
let hasNextPage = true
|
||||
let currentPage = 1
|
||||
while (hasNextPage) {
|
||||
const request = await this.request({
|
||||
url: `https://api.palworldgame.com/server/list?page=${currentPage + 1}`,
|
||||
responseType: 'json'
|
||||
})
|
||||
|
||||
currentPage = request.current_page
|
||||
hasNextPage = request.is_next_page
|
||||
yield request.server_list
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue