Add leaderboards
This commit is contained in:
4 files changed
+69
-1
No files matched your search
@@ -0,0 +1,55 @@
|
||||
import axios from 'axios'
|
||||
import { jsonResponse, splitGd } from '../../lib/util'
|
||||
|
||||
export const handler = async (type: string) => {
|
||||
const request = await axios.post(
|
||||
'https://www.boomlings.com/database/getGJScores20.php',
|
||||
new URLSearchParams({
|
||||
gameVersion: '22',
|
||||
binaryVersion: '45',
|
||||
type,
|
||||
count: '100',
|
||||
secret: 'Wmfd2893gb7'
|
||||
}),
|
||||
{
|
||||
headers: {
|
||||
'User-Agent': ' ',
|
||||
Cookie: 'gd=1'
|
||||
}
|
||||
}
|
||||
)
|
||||
|
||||
const responseText = request.data as string
|
||||
const responseSplit = responseText.split('|')
|
||||
|
||||
return jsonResponse(
|
||||
responseSplit.map(item => {
|
||||
const split = splitGd(item)
|
||||
return {
|
||||
username: split['1'],
|
||||
playerId: +split['2'],
|
||||
accountId: +split['16'],
|
||||
rank: +split['6'],
|
||||
stats: {
|
||||
stars: +split['3'],
|
||||
diamonds: +split['46'],
|
||||
coins: +split['13'],
|
||||
userCoins: +split['17'],
|
||||
demons: +split['4'],
|
||||
moons: +split['52'],
|
||||
creatorPoints: +split['8']
|
||||
},
|
||||
icon: {
|
||||
form: ['icon', 'ship', 'ball', 'ufo', 'wave', 'robot', 'spider'][
|
||||
+split['14']
|
||||
],
|
||||
icon: +split['9'],
|
||||
col1: +split['10'],
|
||||
col2: +split['11'],
|
||||
colG: +split['51'],
|
||||
glow: +split['15'] > 1
|
||||
}
|
||||
}
|
||||
})
|
||||
)
|
||||
}
|
||||
Reference in new issue
Block a user