gj-boomlings-api 1.4.5 → 1.5.0

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.
Files changed (52) hide show
  1. package/config.json +1 -10
  2. package/functions/blockUser.js +8 -2
  3. package/functions/deleteAccountPost.js +8 -2
  4. package/functions/deleteLevel.js +7 -1
  5. package/functions/dlLevel.js +5 -1
  6. package/functions/dlMessage.js +9 -2
  7. package/functions/getAccountPosts.js +8 -2
  8. package/functions/getBlockedList.js +6 -1
  9. package/functions/getCommentHistory.js +10 -3
  10. package/functions/getComments.js +9 -2
  11. package/functions/getCreatorScores.js +6 -2
  12. package/functions/getDailyLevel.js +3 -0
  13. package/functions/getFriendsList.js +6 -1
  14. package/functions/getGauntlets.js +6 -2
  15. package/functions/getLevelByID.js +153 -10
  16. package/functions/getLevelScores.js +50 -0
  17. package/functions/getMapPacks.js +5 -1
  18. package/functions/getMessages.js +7 -1
  19. package/functions/getOfficialSongInfo.js +4 -0
  20. package/functions/getProfile.js +5 -1
  21. package/functions/getSongInfo.js +5 -1
  22. package/functions/getTab.js +95 -0
  23. package/functions/getTop100.js +4 -1
  24. package/functions/getUserLevels.js +6 -1
  25. package/functions/getWeeklyDemon.js +5 -2
  26. package/functions/reportLevel.js +7 -1
  27. package/functions/searchLevels.js +6 -1
  28. package/functions/searchUsers.js +5 -1
  29. package/functions/unblockUser.js +7 -1
  30. package/functions/updateLevelDesc.js +8 -1
  31. package/functions/uploadAccountPost.js +7 -1
  32. package/functions/uploadComment.js +22 -14
  33. package/functions/uploadMessage.js +9 -1
  34. package/index.js +1 -65
  35. package/misc/GJDecode.js +1 -0
  36. package/misc/colors.json +1 -44
  37. package/misc/decB64.js +1 -2
  38. package/misc/encB64.js +1 -3
  39. package/misc/officialsongs.json +1 -216
  40. package/misc/rgbToHEX.js +1 -0
  41. package/package.json +4 -1
  42. package/misc/decCommentFromHistory.js +0 -38
  43. package/misc/decMessage.js +0 -34
  44. package/misc/decMsg.js +0 -30
  45. package/misc/decScoresUser.js +0 -45
  46. package/misc/decodeAccountPost.js +0 -23
  47. package/misc/decodeGJComment.js +0 -36
  48. package/misc/decodeGJGauntlet.js +0 -43
  49. package/misc/decodeLevel.js +0 -144
  50. package/misc/decodeLevelRes.js +0 -118
  51. package/misc/decodeMapPack.js +0 -54
  52. package/misc/decodeUserResult.js +0 -41
@@ -1,118 +0,0 @@
1
- module.exports = {
2
- decodeLevelRes:
3
- function(level){
4
- const {decB64} = require("./decB64.js");
5
-
6
- let spl = level.split(':');
7
- let levelInfo = [];
8
- for(let i =0;i<spl.length;i++) {
9
- if(i%2!=0) {
10
- levelInfo.push(spl[i-1]+`:`+spl[i]);
11
- }
12
- }
13
-
14
- let id = levelInfo[0].split("1:")[1];
15
- let name = levelInfo[1].split("2:")[1];
16
- let version = levelInfo[2].split("5:")[1];
17
- let playerID = levelInfo[3].split("6:")[1];
18
- let difficulty = levelInfo[5].split("9:")[1];
19
- let downloads = levelInfo[6].split("10:")[1];
20
- let officialSong = levelInfo[7].split("12:")[1];
21
- let gameVersion = levelInfo[8].split("13:")[1];
22
- let likes = levelInfo[9].split("14:")[1];
23
- let demonBool = levelInfo[10].split("17:")[1];
24
- let stars = levelInfo[13].split("18:")[1];
25
- let ftrd = levelInfo[14].split("19:")[1];
26
- let epic = levelInfo[15].split("42:")[1];
27
- let objs = levelInfo[16].split("45:")[1];
28
- let desc = levelInfo[17].split("3:")[1];
29
- let length = levelInfo[18].split("15:")[1];
30
- let copiedID = levelInfo[19].split("30:")[1];
31
- let twoPlayer = levelInfo[20].split("31:")[1];
32
- let coins = levelInfo[21].split("37:")[1];
33
- let verifiedCoins = levelInfo[22].split("38:")[1];
34
- let starsRequested = levelInfo[23].split("39:")[1];
35
- let customSong = levelInfo[26].split("35:")[1].split("#")[0];
36
-
37
- let disliked = likes.includes("-") ? true : false;
38
-
39
- if(desc.includes("/")) desc = desc.split("/")[0];
40
- if(decB64(desc) == '') desc = "KE5vIGRlc2NyaXB0aW9uIHByb3ZpZGVkKQ=="
41
-
42
- let featured = Boolean(Number(ftrd));
43
-
44
- let difficultyDecoding = {
45
- "-10": "Auto",
46
- "0": "Unrated",
47
- "10": "Easy",
48
- "20": "Normal",
49
- "30": "Hard",
50
- "40": "Harder",
51
- "50": "Insane"
52
- }
53
-
54
- if(Boolean(Number(demonBool))) {
55
- difficultyDecoding = {
56
- "10": "Easy Demon",
57
- "20": "Medium Demon",
58
- "30": "Hard Demon",
59
- "40": "Insane Demon",
60
- "50": "Extreme Demon"
61
- }
62
- }
63
-
64
- const lengthDecoding = {
65
- "0": "Tiny",
66
- "1": "Short",
67
- "2": "Medium",
68
- "3": "Long",
69
- "4": "XL"
70
- }
71
-
72
- const decodeGameVersion = {
73
- "1": "Pre-1.7",
74
- "2": "Pre-1.7",
75
- "3": "Pre-1.7",
76
- "4": "Pre-1.7",
77
- "5": "Pre-1.7",
78
- "6": "Pre-1.7",
79
- "7": "Pre-1.7",
80
- "10": "1.7",
81
- "18": "1.8",
82
- "19": "1.9",
83
- "20": "2.0",
84
- "21": "2.1"
85
- }
86
-
87
- let result = {
88
- id: Number(id),
89
- name: name,
90
- description: decB64(desc),
91
- level_version: Number(version),
92
- difficulty: difficultyDecoding[difficulty],
93
- stars: Number(stars),
94
- downloads: Number(downloads),
95
- likes: Number(likes),
96
- disliked: disliked,
97
- length: lengthDecoding[length],
98
- demon: Boolean(Number(demonBool)),
99
- featured: featured,
100
- epic: Boolean(Number(epic)),
101
- objects: Number(objs),
102
- stars_requested: Number(starsRequested),
103
- game_version: decodeGameVersion[gameVersion],
104
- copied: Number(copiedID),
105
- large: Number(objs) > 40000 ? true : false,
106
- two_p: Boolean(Number(twoPlayer)),
107
- coins: Number(coins),
108
- verified_coins: Boolean(Number(verifiedCoins))
109
- }
110
-
111
- return {
112
- res: result,
113
- playerID: playerID,
114
- officialSong: officialSong,
115
- customSong: customSong
116
- };
117
- }
118
- }
@@ -1,54 +0,0 @@
1
- module.exports = {
2
- decodeMapPack:
3
- function(mp) {
4
- let spl = mp.split(':');
5
- let mpInfo = [];
6
- for(let i =0;i<spl.length;i++) {
7
- if(i%2!=0) {
8
- mpInfo.push(spl[i-1]+`:`+spl[i]);
9
- }
10
- }
11
-
12
- let mappackID = mpInfo[0].split("1:")[1];
13
- let name = mpInfo[1].split("2:")[1];
14
- let unarrayedList = mpInfo[2].split("3:")[1];
15
- let stars = mpInfo[3].split("4:")[1];
16
- let coins = mpInfo[4].split("5:")[1];
17
- let difficulty = mpInfo[5].split("6:")[1];
18
- let txtCol = mpInfo[6].split("7:")[1];
19
- let barCol = mpInfo[7].split("8:")[1];
20
-
21
- let firstLvl = unarrayedList.split(",")[0];
22
- let secondLvl = unarrayedList.split(",")[1].split(",")[0];
23
- let thirdLvl = unarrayedList.split(",")[2].split(",")[0];
24
-
25
- let difficultyDecoder = {
26
- "0": "Auto",
27
- "1": "Easy",
28
- "2": "Normal",
29
- "3": "Hard",
30
- "4": "Harder",
31
- "5": "Insane",
32
- "6": "Hard Demon",
33
- "7": "Easy Demon",
34
- "8": "Medium Demon",
35
- "9": "Insane Demon",
36
- "10": "Extreme Demon",
37
- }
38
-
39
- const { rgbToHEX } = require("./rgbToHEX.js");
40
-
41
- const result = {
42
- name: name,
43
- id: Number(mappackID),
44
- levels: [Number(firstLvl),Number(secondLvl),Number(thirdLvl)],
45
- stars: Number(stars),
46
- coins: Number(coins),
47
- difficulty: difficultyDecoder[difficulty],
48
- textColor: rgbToHEX(txtCol),
49
- barColor: rgbToHEX(barCol)
50
- }
51
-
52
- return result;
53
- }
54
- }
@@ -1,41 +0,0 @@
1
- module.exports = {
2
- decodeUserResult:
3
- function(user) {
4
- let spl = user.split(':');
5
- let userInfo = [];
6
- for(let i =0;i<spl.length;i++) {
7
- if(i%2!=0) {
8
- userInfo.push(spl[i-1]+`:`+spl[i]);
9
- }
10
- }
11
-
12
- let name = userInfo[0].split("1:")[1];
13
- let playerID = userInfo[1].split("2:")[1];
14
- let coins = userInfo[2].split("13:")[1];
15
- let userCoins = userInfo[3].split("17:")[1];
16
- let p1col = userInfo[6].split("10:")[1];
17
- let p2col = userInfo[7].split("11:")[1];
18
- let accID = userInfo[10].split("16:")[1];
19
- let stars = userInfo[11].split("3:")[1];
20
- let cp = userInfo[12].split("8:")[1];
21
- let demons = userInfo[13].split("4:")[1].split("#")[0];
22
-
23
- let colors = require("./colors.json");
24
- const { rgbToHEX } = require("./rgbToHEX.js");
25
-
26
- const result = {
27
- username: name.trim(),
28
- playerID: Number(playerID),
29
- accountID: Number(accID),
30
- color1: rgbToHEX(colors[p1col]),
31
- color2: rgbToHEX(colors[p2col]),
32
- stars: Number(stars),
33
- secretCoins: Number(coins),
34
- userCoins: Number(userCoins),
35
- demons: Number(demons),
36
- creatorPoints: Number(cp)
37
- }
38
-
39
- return result;
40
- }
41
- }