simplified-mojang-api 0.0.17 → 0.0.18

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.
@@ -88,6 +88,84 @@ declare class BeforeEventsSimplified {
88
88
  * ```
89
89
  */
90
90
  onUseItem(callback: (args: mc.ItemUseBeforeEvent) => void): void;
91
+ /**
92
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un custom component de un bloque.
93
+ * @param {string} nameComponent Nombre del componente en cuestion a registrar.
94
+ * @param {mc.BlockCustomComponent} eventsComponent Los eventos del componente que se van a ejecutar.
95
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
96
+ * @author HaJuegos - 17-03-2026
97
+ * @public
98
+ * @example
99
+ * ```ts
100
+ * // Metodo casual
101
+ * beforeEventsSimplified.createBlockComponent('ha:custom_component', {
102
+ * onBreak(arg) {
103
+ * console.warn(`El bloque ${args.block.typeId} se rompio.`);
104
+ * }
105
+ * } as mc.BlockCustomComponent);
106
+ *
107
+ * // Metodo mas ordenado
108
+ * const events: mc.BlockCustomComponent = {
109
+ * onBreak(arg) {
110
+ * console.warn(`El bloque ${args.block.typeId} se rompio.`);
111
+ * }
112
+ * }
113
+ *
114
+ * beforeEventsSimplified.createBlockComponent('ha:custom_component', events);
115
+ * ```
116
+ */
117
+ createBlockComponent(nameComponent: string, eventsComponent: mc.BlockCustomComponent): void;
118
+ /**
119
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un custom component de un item.
120
+ * @param {string} nameComponent Nombre del componente en cuestion a registrar.
121
+ * @param {mc.ItemCustomComponent} eventsComponent Los eventos del componente que se van a ejecutar.
122
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
123
+ * @author HaJuegos - 17-03-2026
124
+ * @public
125
+ * @example
126
+ * ```ts
127
+ * // Metodo casual
128
+ * beforeEventsSimplified.createItemComponent('ha:custom_component', {
129
+ * onConsume(arg) {
130
+ * console.warn(`El item ${args.itemStack.typeId} fue consumido.`);
131
+ * }
132
+ * } as mc.ItemCustomComponent);
133
+ *
134
+ * // Metodo mas ordenado
135
+ * const events: mc.ItemCustomComponent = {
136
+ * onConsume(arg) {
137
+ * console.warn(`El item ${args.itemStack.typeId} fue consumido.`);
138
+ * }
139
+ * }
140
+ *
141
+ * beforeEventsSimplified.createItemComponent('ha:custom_component', events);
142
+ * ```
143
+ */
144
+ createItemComponent(nameComponent: string, eventsComponent: mc.ItemCustomComponent): void;
145
+ /**
146
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un comando custom al juego.
147
+ * @param {mc.CustomCommand} commandData Los datos del comando a registrar
148
+ * @param {(origin: mc.CustomCommandOrigin, ...args: any[]) => mc.CustomCommandResult | undefined} callback Los eventos a ejecutar despues de haber sido activado o usado el comando.
149
+ * @param {?Record<string, string[]>} [customEnums] (Opcional) Opciones o valores que se registran junto con el comando en caso de ser necesario. Por ej: para que aparezca "ha juegos" al momento de poner este comando, lo concidere un valor rellenable automatico.
150
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
151
+ * @author HaJuegos - 17-03-2026
152
+ * @public
153
+ * @example
154
+ * ```ts
155
+ * const commandData: mc.CustomCommand = {
156
+ * name: 'ha:command_test',
157
+ * description: 'Este es un comando de prueba',
158
+ * permissionLevel: mc.CommandPermissionLevel.Admin
159
+ * };
160
+ *
161
+ * beforeEventsSimplified.createCustomCommand(commandData, ((args => {
162
+ * const entity = args.sourceEntity as mc.Player;
163
+ *
164
+ * console.warn(`El jugador ${entity.name} ha usado el comando custom.`);
165
+ * })));
166
+ * ```
167
+ */
168
+ createCustomCommand(commandData: mc.CustomCommand, callback: (origin: mc.CustomCommandOrigin, ...args: any[]) => mc.CustomCommandResult | undefined, customEnums?: Record<string, string[]>): void;
91
169
  }
92
170
  export declare const beforeEventsSimplified: BeforeEventsSimplified;
93
171
  export {};
@@ -100,5 +100,100 @@ class BeforeEventsSimplified {
100
100
  onUseItem(callback) {
101
101
  this.itemUseManager.register(callback);
102
102
  }
103
+ /**
104
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un custom component de un bloque.
105
+ * @param {string} nameComponent Nombre del componente en cuestion a registrar.
106
+ * @param {mc.BlockCustomComponent} eventsComponent Los eventos del componente que se van a ejecutar.
107
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
108
+ * @author HaJuegos - 17-03-2026
109
+ * @public
110
+ * @example
111
+ * ```ts
112
+ * // Metodo casual
113
+ * beforeEventsSimplified.createBlockComponent('ha:custom_component', {
114
+ * onBreak(arg) {
115
+ * console.warn(`El bloque ${args.block.typeId} se rompio.`);
116
+ * }
117
+ * } as mc.BlockCustomComponent);
118
+ *
119
+ * // Metodo mas ordenado
120
+ * const events: mc.BlockCustomComponent = {
121
+ * onBreak(arg) {
122
+ * console.warn(`El bloque ${args.block.typeId} se rompio.`);
123
+ * }
124
+ * }
125
+ *
126
+ * beforeEventsSimplified.createBlockComponent('ha:custom_component', events);
127
+ * ```
128
+ */
129
+ createBlockComponent(nameComponent, eventsComponent) {
130
+ this.onAddonStarts((args) => {
131
+ args.blockComponentRegistry.registerCustomComponent(nameComponent, eventsComponent);
132
+ });
133
+ }
134
+ /**
135
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un custom component de un item.
136
+ * @param {string} nameComponent Nombre del componente en cuestion a registrar.
137
+ * @param {mc.ItemCustomComponent} eventsComponent Los eventos del componente que se van a ejecutar.
138
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
139
+ * @author HaJuegos - 17-03-2026
140
+ * @public
141
+ * @example
142
+ * ```ts
143
+ * // Metodo casual
144
+ * beforeEventsSimplified.createItemComponent('ha:custom_component', {
145
+ * onConsume(arg) {
146
+ * console.warn(`El item ${args.itemStack.typeId} fue consumido.`);
147
+ * }
148
+ * } as mc.ItemCustomComponent);
149
+ *
150
+ * // Metodo mas ordenado
151
+ * const events: mc.ItemCustomComponent = {
152
+ * onConsume(arg) {
153
+ * console.warn(`El item ${args.itemStack.typeId} fue consumido.`);
154
+ * }
155
+ * }
156
+ *
157
+ * beforeEventsSimplified.createItemComponent('ha:custom_component', events);
158
+ * ```
159
+ */
160
+ createItemComponent(nameComponent, eventsComponent) {
161
+ this.onAddonStarts((args) => {
162
+ args.itemComponentRegistry.registerCustomComponent(nameComponent, eventsComponent);
163
+ });
164
+ }
165
+ /**
166
+ * Metodo auxiliar que registra y ejecuta los eventos relacionados cuando se quiere registrar un comando custom al juego.
167
+ * @param {mc.CustomCommand} commandData Los datos del comando a registrar
168
+ * @param {(origin: mc.CustomCommandOrigin, ...args: any[]) => mc.CustomCommandResult | undefined} callback Los eventos a ejecutar despues de haber sido activado o usado el comando.
169
+ * @param {?Record<string, string[]>} [customEnums] (Opcional) Opciones o valores que se registran junto con el comando en caso de ser necesario. Por ej: para que aparezca "ha juegos" al momento de poner este comando, lo concidere un valor rellenable automatico.
170
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
171
+ * @author HaJuegos - 17-03-2026
172
+ * @public
173
+ * @example
174
+ * ```ts
175
+ * const commandData: mc.CustomCommand = {
176
+ * name: 'ha:command_test',
177
+ * description: 'Este es un comando de prueba',
178
+ * permissionLevel: mc.CommandPermissionLevel.Admin
179
+ * };
180
+ *
181
+ * beforeEventsSimplified.createCustomCommand(commandData, ((args => {
182
+ * const entity = args.sourceEntity as mc.Player;
183
+ *
184
+ * console.warn(`El jugador ${entity.name} ha usado el comando custom.`);
185
+ * })));
186
+ * ```
187
+ */
188
+ createCustomCommand(commandData, callback, customEnums) {
189
+ this.onAddonStarts((args) => {
190
+ if (customEnums) {
191
+ for (const [enumName, enumValues] of Object.entries(customEnums)) {
192
+ args.customCommandRegistry.registerEnum(enumName, enumValues);
193
+ }
194
+ }
195
+ args.customCommandRegistry.registerCommand(commandData, callback);
196
+ });
197
+ }
103
198
  }
104
199
  export const beforeEventsSimplified = new BeforeEventsSimplified();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simplified-mojang-api",
3
- "version": "0.0.17",
3
+ "version": "0.0.18",
4
4
  "description": "About Public repository to simplify the event logic of Mojang's Script API, for informal or professional use",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",