bonktools 1.0.1 → 2.0.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.
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Classe utilitária para analisar pacotes recebidos do servidor Bonk.io.
3
+ */
4
+ export declare class PacketParser {
5
+ /**
6
+ * Analisa um pacote PSON recebido.
7
+ * @param {any} data - O pacote bruto recebido do socket.
8
+ * @returns {{type: number, data: any}} Um objeto contendo o tipo e os dados do pacote.
9
+ */
10
+ static parse(data: any): {
11
+ type: number;
12
+ data: any;
13
+ };
14
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ // src/connection/PacketParser.ts
3
+ // Lógica de desserialização de pacotes (baseada no bonkbot original)
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.PacketParser = void 0;
6
+ /**
7
+ * Classe utilitária para analisar pacotes recebidos do servidor Bonk.io.
8
+ */
9
+ class PacketParser {
10
+ /**
11
+ * Analisa um pacote PSON recebido.
12
+ * @param {any} data - O pacote bruto recebido do socket.
13
+ * @returns {{type: number, data: any}} Um objeto contendo o tipo e os dados do pacote.
14
+ */
15
+ static parse(data) {
16
+ // O bonkbot original recebe um array onde o primeiro elemento é o tipo
17
+ // e o segundo é o objeto de dados.
18
+ if (Array.isArray(data) && data.length > 0) {
19
+ const [type, packetData] = data;
20
+ return { type, data: packetData };
21
+ }
22
+ // Se o pacote não for um array [type, data], retornamos o tipo -1 (desconhecido)
23
+ return { type: -1, data: data };
24
+ }
25
+ }
26
+ exports.PacketParser = PacketParser;
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,48 @@
1
+ import { BonkConnection } from './connection/BonkConnection';
2
+ export { BonkConnection };
3
+ export * from './connection/BonkConnection';
4
+ export * from './utils/constants';
5
+ export * from './utils/validation';
6
+ /**
7
+ * A classe principal da biblioteca BonkTools, que estende BonkConnection.
8
+ * Serve como ponto de entrada para todas as funcionalidades da biblioteca.
9
+ */
10
+ /**
11
+ * A classe principal da biblioteca BonkTools, que estende BonkConnection.
12
+ * Serve como ponto de entrada para todas as funcionalidades da biblioteca.
13
+ *
14
+ * @example
15
+ * \`\`\`typescript
16
+ * import BonkTools from 'bonktools';
17
+ *
18
+ * async function runBot() {
19
+ * const bot = new BonkTools({ username: 'GuestBot', guest: true });
20
+ * await bot.init();
21
+ * await bot.connect();
22
+ *
23
+ * // Criar uma sala
24
+ * await bot.createRoom({ roomname: 'Minha Sala BonkTools' });
25
+ *
26
+ * // Ouvir mensagens de chat
27
+ * bot.on('CHAT_MESSAGE', ({ player, message }) => {
28
+ * console.log(\`[\${player.username}]: \${message}\`);
29
+ * if (message === '!start') {
30
+ * bot.startGame();
31
+ * }
32
+ * });
33
+ *
34
+ * console.log(\`Sala criada! Nome: \${bot.room.name}\`);
35
+ * }
36
+ *
37
+ * runBot().catch(console.error);
38
+ * \`\`\`
39
+ */
40
+ export declare class BonkTools extends BonkConnection {
41
+ /**
42
+ * Cria uma nova instância de BonkTools.
43
+ * @param account - As informações da conta (nome de usuário, senha, se é convidado).
44
+ * @param server - O servidor Bonk.io para se conectar (opcional, padrão é 'b2ny1').
45
+ */
46
+ constructor(account: any, server?: string);
47
+ }
48
+ export default BonkTools;
package/dist/index.js ADDED
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ // src/index.ts
3
+ // API pública da biblioteca bonktools
4
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: function() { return m[k]; } };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }) : (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ o[k2] = m[k];
14
+ }));
15
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.BonkTools = exports.BonkConnection = void 0;
20
+ const BonkConnection_1 = require("./connection/BonkConnection");
21
+ Object.defineProperty(exports, "BonkConnection", { enumerable: true, get: function () { return BonkConnection_1.BonkConnection; } });
22
+ // Exporta tipos úteis
23
+ __exportStar(require("./connection/BonkConnection"), exports);
24
+ // Exporta constantes (opcional, mas útil para o desenvolvedor)
25
+ __exportStar(require("./utils/constants"), exports);
26
+ // Exporta utilitários (opcional)
27
+ __exportStar(require("./utils/validation"), exports);
28
+ /**
29
+ * A classe principal da biblioteca BonkTools, que estende BonkConnection.
30
+ * Serve como ponto de entrada para todas as funcionalidades da biblioteca.
31
+ */
32
+ /**
33
+ * A classe principal da biblioteca BonkTools, que estende BonkConnection.
34
+ * Serve como ponto de entrada para todas as funcionalidades da biblioteca.
35
+ *
36
+ * @example
37
+ * \`\`\`typescript
38
+ * import BonkTools from 'bonktools';
39
+ *
40
+ * async function runBot() {
41
+ * const bot = new BonkTools({ username: 'GuestBot', guest: true });
42
+ * await bot.init();
43
+ * await bot.connect();
44
+ *
45
+ * // Criar uma sala
46
+ * await bot.createRoom({ roomname: 'Minha Sala BonkTools' });
47
+ *
48
+ * // Ouvir mensagens de chat
49
+ * bot.on('CHAT_MESSAGE', ({ player, message }) => {
50
+ * console.log(\`[\${player.username}]: \${message}\`);
51
+ * if (message === '!start') {
52
+ * bot.startGame();
53
+ * }
54
+ * });
55
+ *
56
+ * console.log(\`Sala criada! Nome: \${bot.room.name}\`);
57
+ * }
58
+ *
59
+ * runBot().catch(console.error);
60
+ * \`\`\`
61
+ */
62
+ class BonkTools extends BonkConnection_1.BonkConnection {
63
+ /**
64
+ * Cria uma nova instância de BonkTools.
65
+ * @param account - As informações da conta (nome de usuário, senha, se é convidado).
66
+ * @param server - O servidor Bonk.io para se conectar (opcional, padrão é 'b2ny1').
67
+ */
68
+ constructor(account, server) {
69
+ super(account, server);
70
+ }
71
+ }
72
+ exports.BonkTools = BonkTools;
73
+ exports.default = BonkTools;
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
File without changes
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,175 @@
1
+ export declare const DEFAULT_SERVER: string;
2
+ export declare const MESSAGE_TYPES: {
3
+ PING_RESPONSE: number;
4
+ TEST_PING: number;
5
+ GET_DEBUG: number;
6
+ SEND_INPUTS: number;
7
+ TRIGGER_START: number;
8
+ CHANGE_OWN_TEAM: number;
9
+ TEAM_LOCK: number;
10
+ SILENCE_PLAYER: number;
11
+ KICK_BAN_PLAYER: number;
12
+ CHAT_MESSAGE: number;
13
+ INFORM_IN_LOBBY: number;
14
+ CREATE_ROOM: number;
15
+ JOIN_ROOM: number;
16
+ RETURN_TO_LOBBY: number;
17
+ SET_READY: number;
18
+ ALL_READY_RESET: number;
19
+ TIMESYNC: number;
20
+ SEND_MAP_REORDER: number;
21
+ SEND_MODE: number;
22
+ SEND_ROUNDS: number;
23
+ SEND_MAP_DELETE: number;
24
+ SEND_MAP_ADD: number;
25
+ SEND_TYPING: number;
26
+ CHANGE_OTHER_TEAM: number;
27
+ SEND_MAP_SUGGEST: number;
28
+ SEND_BALANCE: number;
29
+ VERSION_CHECK: number;
30
+ SEND_DEBUG_WINNER: number;
31
+ SEND_TEAM_SETTINGS: number;
32
+ SEND_ARM_RECORD: number;
33
+ SEND_HOST_CHANGE: number;
34
+ SEND_FRIENDED: number;
35
+ SEND_START_COUNTDOWN: number;
36
+ SEND_ABORT_COUNTDOWN: number;
37
+ SEND_REQUEST_XP: number;
38
+ SEND_MAP_VOTE: number;
39
+ INFORM_IN_GAME: number;
40
+ GET_PRE_VOTE: number;
41
+ TABBED: number;
42
+ DESYNC_TEST: number;
43
+ SEND_DESYNC_RESPONSE: number;
44
+ SEND_NO_HOST_SWAP: number;
45
+ SEND_CURATE: number;
46
+ PLAYER_PINGS: number;
47
+ ROOM_ADDRESS: number;
48
+ PLAYER_JOIN: number;
49
+ PLAYER_LEAVE: number;
50
+ HOST_LEAVE: number;
51
+ PLAYER_INPUT: number;
52
+ READY_CHANGE: number;
53
+ GAME_END: number;
54
+ GAME_START: number;
55
+ STATUS_MESSAGE: number;
56
+ TEAM_CHANGE: number;
57
+ TEAMLOCK_TOGGLE: number;
58
+ INITIAL_DATA: number;
59
+ PLAYER_KICK: number;
60
+ MAP_REORDER: number;
61
+ GAMEMODE_CHANGE: number;
62
+ CHANGE_ROUNDS: number;
63
+ MAP_SWITCH: number;
64
+ TYPING: number;
65
+ AFK_WARNING: number;
66
+ MAP_SUGGEST: number;
67
+ BALANCE_SET: number;
68
+ DEBUG_WINNER: number;
69
+ SAVE_REPLAY: number;
70
+ HOST_TRANSFER: number;
71
+ FRIEND_REQUEST: number;
72
+ COUNTDOWN: number;
73
+ ABORT_COUNTDOWN: number;
74
+ PLAYER_LEVEL_UP: number;
75
+ LOCAL_GAINED_XP: number;
76
+ STATE: number;
77
+ ROOM_SHARE_LINK: number;
78
+ PLAYER_TABBED: number;
79
+ CURATE_RESULT: number;
80
+ ROOM_NAME_UPDATE: number;
81
+ ROOM_PASSWORD_UPDATE: number;
82
+ };
83
+ export declare const CLIENT_MESSAGE_TYPES: {
84
+ PING_RESPONSE: number;
85
+ SEND_INPUTS: number;
86
+ TRIGGER_START: number;
87
+ CHANGE_OWN_TEAM: number;
88
+ TEAM_LOCK: number;
89
+ SILENCE_PLAYER: number;
90
+ KICK_BAN_PLAYER: number;
91
+ CHAT_MESSAGE: number;
92
+ INFORM_IN_LOBBY: number;
93
+ CREATE_ROOM: number;
94
+ JOIN_ROOM: number;
95
+ RETURN_TO_LOBBY: number;
96
+ SET_READY: number;
97
+ ALL_READY_RESET: number;
98
+ TIMESYNC: number;
99
+ SEND_MAP_REORDER: number;
100
+ SEND_MODE: number;
101
+ SEND_ROUNDS: number;
102
+ SEND_MAP_DELETE: number;
103
+ SEND_MAP_ADD: number;
104
+ SEND_TYPING: number;
105
+ CHANGE_OTHER_TEAM: number;
106
+ SEND_MAP_SUGGEST: number;
107
+ SEND_BALANCE: number;
108
+ VERSION_CHECK: number;
109
+ SEND_DEBUG_WINNER: number;
110
+ SEND_TEAM_SETTINGS: number;
111
+ SEND_ARM_RECORD: number;
112
+ SEND_HOST_CHANGE: number;
113
+ SEND_FRIENDED: number;
114
+ SEND_START_COUNTDOWN: number;
115
+ SEND_ABORT_COUNTDOWN: number;
116
+ SEND_REQUEST_XP: number;
117
+ SEND_MAP_VOTE: number;
118
+ INFORM_IN_GAME: number;
119
+ GET_PRE_VOTE: number;
120
+ TABBED: number;
121
+ DESYNC_TEST: number;
122
+ SEND_DESYNC_RESPONSE: number;
123
+ SEND_NO_HOST_SWAP: number;
124
+ SEND_CURATE: number;
125
+ };
126
+ export declare const SERVER_MESSAGE_TYPES: {
127
+ PLAYER_PINGS: number;
128
+ ROOM_ADDRESS: number;
129
+ PLAYER_JOIN: number;
130
+ PLAYER_LEAVE: number;
131
+ HOST_LEAVE: number;
132
+ PLAYER_INPUT: number;
133
+ READY_CHANGE: number;
134
+ GAME_END: number;
135
+ GAME_START: number;
136
+ STATUS_MESSAGE: number;
137
+ TEAM_CHANGE: number;
138
+ TEAMLOCK_TOGGLE: number;
139
+ INITIAL_DATA: number;
140
+ PLAYER_KICK: number;
141
+ MAP_REORDER: number;
142
+ GAMEMODE_CHANGE: number;
143
+ CHANGE_ROUNDS: number;
144
+ MAP_SWITCH: number;
145
+ TYPING: number;
146
+ AFK_WARNING: number;
147
+ MAP_SUGGEST: number;
148
+ BALANCE_SET: number;
149
+ DEBUG_WINNER: number;
150
+ SAVE_REPLAY: number;
151
+ HOST_TRANSFER: number;
152
+ FRIEND_REQUEST: number;
153
+ COUNTDOWN: number;
154
+ ABORT_COUNTDOWN: number;
155
+ PLAYER_LEVEL_UP: number;
156
+ LOCAL_GAINED_XP: number;
157
+ STATE: number;
158
+ ROOM_SHARE_LINK: number;
159
+ PLAYER_TABBED: number;
160
+ CURATE_RESULT: number;
161
+ ROOM_NAME_UPDATE: number;
162
+ ROOM_PASSWORD_UPDATE: number;
163
+ JOIN_ROOM: number;
164
+ CHAT_MESSAGE: number;
165
+ TIMESYNC: number;
166
+ };
167
+ export declare const API: {
168
+ LOGIN: string;
169
+ GET_ROOMS: string;
170
+ GET_ROOM_ADDRESS: string;
171
+ AUTOJOIN: string;
172
+ };
173
+ export declare const TEAM_NAMES: {
174
+ [key: number]: string;
175
+ };
@@ -0,0 +1,187 @@
1
+ "use strict";
2
+ // Constantes extraídas do bonkbot (utils/constants.js)
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TEAM_NAMES = exports.API = exports.SERVER_MESSAGE_TYPES = exports.CLIENT_MESSAGE_TYPES = exports.MESSAGE_TYPES = exports.DEFAULT_SERVER = void 0;
5
+ exports.DEFAULT_SERVER = "b2ny1";
6
+ exports.MESSAGE_TYPES = {
7
+ PING_RESPONSE: 1,
8
+ TEST_PING: 2,
9
+ GET_DEBUG: 3,
10
+ SEND_INPUTS: 4,
11
+ TRIGGER_START: 5,
12
+ CHANGE_OWN_TEAM: 6,
13
+ TEAM_LOCK: 7,
14
+ SILENCE_PLAYER: 8,
15
+ KICK_BAN_PLAYER: 9,
16
+ CHAT_MESSAGE: 10,
17
+ INFORM_IN_LOBBY: 11,
18
+ CREATE_ROOM: 12,
19
+ JOIN_ROOM: 13,
20
+ RETURN_TO_LOBBY: 14,
21
+ SET_READY: 15,
22
+ ALL_READY_RESET: 16,
23
+ TIMESYNC: 17,
24
+ SEND_MAP_REORDER: 18,
25
+ SEND_MODE: 19,
26
+ SEND_ROUNDS: 20,
27
+ SEND_MAP_DELETE: 21,
28
+ SEND_MAP_ADD: 22,
29
+ SEND_TYPING: 23,
30
+ CHANGE_OTHER_TEAM: 24,
31
+ SEND_MAP_SUGGEST: 25,
32
+ SEND_BALANCE: 26,
33
+ VERSION_CHECK: 27,
34
+ SEND_DEBUG_WINNER: 28,
35
+ SEND_TEAM_SETTINGS: 29,
36
+ SEND_ARM_RECORD: 30,
37
+ SEND_HOST_CHANGE: 31,
38
+ SEND_FRIENDED: 32,
39
+ SEND_START_COUNTDOWN: 33,
40
+ SEND_ABORT_COUNTDOWN: 34,
41
+ SEND_REQUEST_XP: 35,
42
+ SEND_MAP_VOTE: 36,
43
+ INFORM_IN_GAME: 37,
44
+ GET_PRE_VOTE: 38,
45
+ TABBED: 39,
46
+ DESYNC_TEST: 40,
47
+ SEND_DESYNC_RESPONSE: 41,
48
+ SEND_NO_HOST_SWAP: 42,
49
+ SEND_CURATE: 43,
50
+ PLAYER_PINGS: 44,
51
+ ROOM_ADDRESS: 45,
52
+ PLAYER_JOIN: 46,
53
+ PLAYER_LEAVE: 47,
54
+ HOST_LEAVE: 48,
55
+ PLAYER_INPUT: 49,
56
+ READY_CHANGE: 50,
57
+ GAME_END: 51,
58
+ GAME_START: 52,
59
+ STATUS_MESSAGE: 53,
60
+ TEAM_CHANGE: 54,
61
+ TEAMLOCK_TOGGLE: 55,
62
+ INITIAL_DATA: 56,
63
+ PLAYER_KICK: 57,
64
+ MAP_REORDER: 58,
65
+ GAMEMODE_CHANGE: 59,
66
+ CHANGE_ROUNDS: 60,
67
+ MAP_SWITCH: 61,
68
+ TYPING: 62,
69
+ AFK_WARNING: 63,
70
+ MAP_SUGGEST: 64,
71
+ BALANCE_SET: 65,
72
+ DEBUG_WINNER: 66,
73
+ SAVE_REPLAY: 67,
74
+ HOST_TRANSFER: 68,
75
+ FRIEND_REQUEST: 69,
76
+ COUNTDOWN: 70,
77
+ ABORT_COUNTDOWN: 71,
78
+ PLAYER_LEVEL_UP: 72,
79
+ LOCAL_GAINED_XP: 73,
80
+ STATE: 74,
81
+ ROOM_SHARE_LINK: 75,
82
+ PLAYER_TABBED: 76,
83
+ CURATE_RESULT: 77,
84
+ ROOM_NAME_UPDATE: 78,
85
+ ROOM_PASSWORD_UPDATE: 79,
86
+ };
87
+ // Mapeamento de tipos de mensagens do cliente (para envio)
88
+ exports.CLIENT_MESSAGE_TYPES = {
89
+ PING_RESPONSE: exports.MESSAGE_TYPES.PING_RESPONSE,
90
+ SEND_INPUTS: exports.MESSAGE_TYPES.SEND_INPUTS,
91
+ TRIGGER_START: exports.MESSAGE_TYPES.TRIGGER_START,
92
+ CHANGE_OWN_TEAM: exports.MESSAGE_TYPES.CHANGE_OWN_TEAM,
93
+ TEAM_LOCK: exports.MESSAGE_TYPES.TEAM_LOCK,
94
+ SILENCE_PLAYER: exports.MESSAGE_TYPES.SILENCE_PLAYER,
95
+ KICK_BAN_PLAYER: exports.MESSAGE_TYPES.KICK_BAN_PLAYER,
96
+ CHAT_MESSAGE: exports.MESSAGE_TYPES.CHAT_MESSAGE,
97
+ INFORM_IN_LOBBY: exports.MESSAGE_TYPES.INFORM_IN_LOBBY,
98
+ CREATE_ROOM: exports.MESSAGE_TYPES.CREATE_ROOM,
99
+ JOIN_ROOM: exports.MESSAGE_TYPES.JOIN_ROOM,
100
+ RETURN_TO_LOBBY: exports.MESSAGE_TYPES.RETURN_TO_LOBBY,
101
+ SET_READY: exports.MESSAGE_TYPES.SET_READY,
102
+ ALL_READY_RESET: exports.MESSAGE_TYPES.ALL_READY_RESET,
103
+ TIMESYNC: exports.MESSAGE_TYPES.TIMESYNC,
104
+ SEND_MAP_REORDER: exports.MESSAGE_TYPES.SEND_MAP_REORDER,
105
+ SEND_MODE: exports.MESSAGE_TYPES.SEND_MODE,
106
+ SEND_ROUNDS: exports.MESSAGE_TYPES.SEND_ROUNDS,
107
+ SEND_MAP_DELETE: exports.MESSAGE_TYPES.SEND_MAP_DELETE,
108
+ SEND_MAP_ADD: exports.MESSAGE_TYPES.SEND_MAP_ADD,
109
+ SEND_TYPING: exports.MESSAGE_TYPES.SEND_TYPING,
110
+ CHANGE_OTHER_TEAM: exports.MESSAGE_TYPES.CHANGE_OTHER_TEAM,
111
+ SEND_MAP_SUGGEST: exports.MESSAGE_TYPES.SEND_MAP_SUGGEST,
112
+ SEND_BALANCE: exports.MESSAGE_TYPES.SEND_BALANCE,
113
+ VERSION_CHECK: exports.MESSAGE_TYPES.VERSION_CHECK,
114
+ SEND_DEBUG_WINNER: exports.MESSAGE_TYPES.SEND_DEBUG_WINNER,
115
+ SEND_TEAM_SETTINGS: exports.MESSAGE_TYPES.SEND_TEAM_SETTINGS,
116
+ SEND_ARM_RECORD: exports.MESSAGE_TYPES.SEND_ARM_RECORD,
117
+ SEND_HOST_CHANGE: exports.MESSAGE_TYPES.SEND_HOST_CHANGE,
118
+ SEND_FRIENDED: exports.MESSAGE_TYPES.SEND_FRIENDED,
119
+ SEND_START_COUNTDOWN: exports.MESSAGE_TYPES.SEND_START_COUNTDOWN,
120
+ SEND_ABORT_COUNTDOWN: exports.MESSAGE_TYPES.SEND_ABORT_COUNTDOWN,
121
+ SEND_REQUEST_XP: exports.MESSAGE_TYPES.SEND_REQUEST_XP,
122
+ SEND_MAP_VOTE: exports.MESSAGE_TYPES.SEND_MAP_VOTE,
123
+ INFORM_IN_GAME: exports.MESSAGE_TYPES.INFORM_IN_GAME,
124
+ GET_PRE_VOTE: exports.MESSAGE_TYPES.GET_PRE_VOTE,
125
+ TABBED: exports.MESSAGE_TYPES.TABBED,
126
+ DESYNC_TEST: exports.MESSAGE_TYPES.DESYNC_TEST,
127
+ SEND_DESYNC_RESPONSE: exports.MESSAGE_TYPES.SEND_DESYNC_RESPONSE,
128
+ SEND_NO_HOST_SWAP: exports.MESSAGE_TYPES.SEND_NO_HOST_SWAP,
129
+ SEND_CURATE: exports.MESSAGE_TYPES.SEND_CURATE,
130
+ };
131
+ // Mapeamento de tipos de mensagens do servidor (para recebimento)
132
+ exports.SERVER_MESSAGE_TYPES = {
133
+ PLAYER_PINGS: exports.MESSAGE_TYPES.PLAYER_PINGS,
134
+ ROOM_ADDRESS: exports.MESSAGE_TYPES.ROOM_ADDRESS,
135
+ PLAYER_JOIN: exports.MESSAGE_TYPES.PLAYER_JOIN,
136
+ PLAYER_LEAVE: exports.MESSAGE_TYPES.PLAYER_LEAVE,
137
+ HOST_LEAVE: exports.MESSAGE_TYPES.HOST_LEAVE,
138
+ PLAYER_INPUT: exports.MESSAGE_TYPES.PLAYER_INPUT,
139
+ READY_CHANGE: exports.MESSAGE_TYPES.READY_CHANGE,
140
+ GAME_END: exports.MESSAGE_TYPES.GAME_END,
141
+ GAME_START: exports.MESSAGE_TYPES.GAME_START,
142
+ STATUS_MESSAGE: exports.MESSAGE_TYPES.STATUS_MESSAGE,
143
+ TEAM_CHANGE: exports.MESSAGE_TYPES.TEAM_CHANGE,
144
+ TEAMLOCK_TOGGLE: exports.MESSAGE_TYPES.TEAMLOCK_TOGGLE,
145
+ INITIAL_DATA: exports.MESSAGE_TYPES.INITIAL_DATA,
146
+ PLAYER_KICK: exports.MESSAGE_TYPES.PLAYER_KICK,
147
+ MAP_REORDER: exports.MESSAGE_TYPES.MAP_REORDER,
148
+ GAMEMODE_CHANGE: exports.MESSAGE_TYPES.GAMEMODE_CHANGE,
149
+ CHANGE_ROUNDS: exports.MESSAGE_TYPES.CHANGE_ROUNDS,
150
+ MAP_SWITCH: exports.MESSAGE_TYPES.MAP_SWITCH,
151
+ TYPING: exports.MESSAGE_TYPES.TYPING,
152
+ AFK_WARNING: exports.MESSAGE_TYPES.AFK_WARNING,
153
+ MAP_SUGGEST: exports.MESSAGE_TYPES.MAP_SUGGEST,
154
+ BALANCE_SET: exports.MESSAGE_TYPES.BALANCE_SET,
155
+ DEBUG_WINNER: exports.MESSAGE_TYPES.DEBUG_WINNER,
156
+ SAVE_REPLAY: exports.MESSAGE_TYPES.SAVE_REPLAY,
157
+ HOST_TRANSFER: exports.MESSAGE_TYPES.HOST_TRANSFER,
158
+ FRIEND_REQUEST: exports.MESSAGE_TYPES.FRIEND_REQUEST,
159
+ COUNTDOWN: exports.MESSAGE_TYPES.COUNTDOWN,
160
+ ABORT_COUNTDOWN: exports.MESSAGE_TYPES.ABORT_COUNTDOWN,
161
+ PLAYER_LEVEL_UP: exports.MESSAGE_TYPES.PLAYER_LEVEL_UP,
162
+ LOCAL_GAINED_XP: exports.MESSAGE_TYPES.LOCAL_GAINED_XP,
163
+ STATE: exports.MESSAGE_TYPES.STATE,
164
+ ROOM_SHARE_LINK: exports.MESSAGE_TYPES.ROOM_SHARE_LINK,
165
+ PLAYER_TABBED: exports.MESSAGE_TYPES.PLAYER_TABBED,
166
+ CURATE_RESULT: exports.MESSAGE_TYPES.CURATE_RESULT,
167
+ ROOM_NAME_UPDATE: exports.MESSAGE_TYPES.ROOM_NAME_UPDATE,
168
+ ROOM_PASSWORD_UPDATE: exports.MESSAGE_TYPES.ROOM_PASSWORD_UPDATE,
169
+ JOIN_ROOM: exports.MESSAGE_TYPES.JOIN_ROOM, // Também é um pacote de servidor
170
+ CHAT_MESSAGE: exports.MESSAGE_TYPES.CHAT_MESSAGE, // Também é um pacote de servidor
171
+ TIMESYNC: exports.MESSAGE_TYPES.TIMESYNC, // Também é um pacote de servidor
172
+ };
173
+ exports.API = {
174
+ LOGIN: 'https://bonk.io/scripts/login_php.php',
175
+ GET_ROOMS: 'https://bonk.io/scripts/get_rooms_php.php',
176
+ GET_ROOM_ADDRESS: 'https://bonk.io/scripts/get_room_address_php.php',
177
+ AUTOJOIN: 'https://bonk.io/scripts/autojoin_php.php',
178
+ };
179
+ exports.TEAM_NAMES = {
180
+ 0: 'Spectator',
181
+ 1: 'Team 1',
182
+ 2: 'Team 2',
183
+ 3: 'Team 3',
184
+ 4: 'Team 4',
185
+ 5: 'Team 5',
186
+ };
187
+ // Outras constantes (GAMEMODE_NAMES, ENGINE_NAMES, etc.) podem ser adicionadas conforme necessário.
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Logger utility for BonkTools
3
+ * Provides colored console logging with different levels
4
+ */
5
+ export declare enum LogLevel {
6
+ DEBUG = 0,
7
+ INFO = 1,
8
+ WARN = 2,
9
+ ERROR = 3,
10
+ NONE = 4
11
+ }
12
+ export interface Logger {
13
+ debug(...args: any[]): void;
14
+ info(...args: any[]): void;
15
+ warn(...args: any[]): void;
16
+ error(...args: any[]): void;
17
+ setLevel(level: LogLevel | keyof typeof LogLevel): void;
18
+ getLevel(): LogLevel;
19
+ }
20
+ /**
21
+ * Create a logger instance
22
+ */
23
+ export declare function createLogger(namespace: string, initialLevel?: LogLevel | keyof typeof LogLevel): Logger;
24
+ /**
25
+ * Export LogLevel for convenience
26
+ */
27
+ export declare const LOG_LEVELS: typeof LogLevel;
28
+ /**
29
+ * Default logger instance
30
+ */
31
+ export declare const defaultLogger: Logger;