simplified-mojang-api 0.0.13 → 0.0.15

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.
@@ -9,6 +9,7 @@ declare class AfterEventsSimplified {
9
9
  private playerSpawnManager;
10
10
  private worldLoadManager;
11
11
  private chatSendManager;
12
+ private itemUseManager;
12
13
  /**
13
14
  * Eventos que se inicializan cuando la clase es llamada o inicializada.
14
15
  * @constructor
@@ -57,7 +58,7 @@ declare class AfterEventsSimplified {
57
58
  */
58
59
  onWorldReady(callback: (args: mc.WorldLoadAfterEvent) => void): void;
59
60
  /**
60
- * Metodo auxiliar que recibe los mensajes enviados por el chat.
61
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando se recibe un mensaje en el chat de forma simplificada.
61
62
  * @param {(args: mc.ChatSendAfterEvent) => void} callback Los argumentos y logica a ejecutar en el evento.
62
63
  * @author HaJuegos - 14-03-2026
63
64
  * @public
@@ -70,6 +71,20 @@ declare class AfterEventsSimplified {
70
71
  * ```
71
72
  */
72
73
  onSendMessageChat(callback: (args: mc.ChatSendAfterEvent) => void): void;
74
+ /**
75
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando ya se usa el item de forma simplificada.
76
+ * @param {(args: mc.ItemUseAfterEvent) => void} callback Los eventos relacionados a ejecutar.
77
+ * @author HaJuegos - 15-03-2026
78
+ * @public
79
+ * @afterEvent Metodo que detecta el evento despues de que suceda. Obteniendo la informacion sin permitir modificarla en su mayoria.
80
+ * @example
81
+ * ```ts
82
+ * afterEventsSimplified.onUseItem((args) => {
83
+ * console.warn(`Se ha usado el item ${args.itemStack.typeId}.`);
84
+ * });
85
+ * ```
86
+ */
87
+ onUseItem(callback: (args: mc.ItemUseAfterEvent) => void): void;
73
88
  }
74
89
  export declare const afterEventsSimplified: AfterEventsSimplified;
75
90
  export {};
@@ -15,6 +15,7 @@ class AfterEventsSimplified {
15
15
  this.playerSpawnManager = new BaseEventManager(mc.world.afterEvents.playerSpawn, "AfterPlayerSpawn");
16
16
  this.worldLoadManager = new BaseEventManager(mc.world.afterEvents.worldLoad, "AfterWorldLoad");
17
17
  this.chatSendManager = new BaseEventManager(mc.world.afterEvents.chatSend, "AfterChatSend");
18
+ this.itemUseManager = new BaseEventManager(mc.world.afterEvents.itemUse, "AfterItemUse");
18
19
  }
19
20
  /**
20
21
  * Metodo auxiliar que ejecuta los eventos relacionado cuando una entidad muere de forma simplificada.
@@ -65,7 +66,7 @@ class AfterEventsSimplified {
65
66
  this.worldLoadManager.register(callback);
66
67
  }
67
68
  /**
68
- * Metodo auxiliar que recibe los mensajes enviados por el chat.
69
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando se recibe un mensaje en el chat de forma simplificada.
69
70
  * @param {(args: mc.ChatSendAfterEvent) => void} callback Los argumentos y logica a ejecutar en el evento.
70
71
  * @author HaJuegos - 14-03-2026
71
72
  * @public
@@ -80,5 +81,21 @@ class AfterEventsSimplified {
80
81
  onSendMessageChat(callback) {
81
82
  this.chatSendManager.register(callback);
82
83
  }
84
+ /**
85
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando ya se usa el item de forma simplificada.
86
+ * @param {(args: mc.ItemUseAfterEvent) => void} callback Los eventos relacionados a ejecutar.
87
+ * @author HaJuegos - 15-03-2026
88
+ * @public
89
+ * @afterEvent Metodo que detecta el evento despues de que suceda. Obteniendo la informacion sin permitir modificarla en su mayoria.
90
+ * @example
91
+ * ```ts
92
+ * afterEventsSimplified.onUseItem((args) => {
93
+ * console.warn(`Se ha usado el item ${args.itemStack.typeId}.`);
94
+ * });
95
+ * ```
96
+ */
97
+ onUseItem(callback) {
98
+ this.itemUseManager.register(callback);
99
+ }
83
100
  }
84
101
  export const afterEventsSimplified = new AfterEventsSimplified();
@@ -10,6 +10,7 @@ declare class BeforeEventsSimplified {
10
10
  private shutDownManager;
11
11
  private interactBlockManager;
12
12
  private chatSendManager;
13
+ private itemUseManager;
13
14
  /**
14
15
  * Eventos que se inicializan cuando la clase es llamada o inicializada.
15
16
  * @constructor
@@ -72,6 +73,21 @@ declare class BeforeEventsSimplified {
72
73
  * ```
73
74
  */
74
75
  chatManager(callback: (args: mc.ChatSendBeforeEvent) => void): void;
76
+ /**
77
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando antes de usar un item forma simplificada.
78
+ * @param {(args: mc.ItemUseBeforeEvent) => void} callback Los eventos relacionados a ejecutar.
79
+ * @author HaJuegos - 15-03-2026
80
+ * @public
81
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
82
+ * @example
83
+ * ```ts
84
+ * beforeEventsSimplified.onUseItem((args) => {
85
+ * console.warn(`Se esta usando el item ${args.itemStack.typeId}.`);
86
+ * args.cancel = true;
87
+ * });
88
+ * ```
89
+ */
90
+ onUseItem(callback: (args: mc.ItemUseBeforeEvent) => void): void;
75
91
  }
76
92
  export declare const beforeEventsSimplified: BeforeEventsSimplified;
77
93
  export {};
@@ -16,6 +16,7 @@ class BeforeEventsSimplified {
16
16
  this.shutDownManager = new BaseEventManager(mc.system.beforeEvents.shutdown, "BeforeShutdown");
17
17
  this.interactBlockManager = new BaseEventManager(mc.world.beforeEvents.playerInteractWithBlock, "BeforeInteractBlock");
18
18
  this.chatSendManager = new BaseEventManager(mc.world.beforeEvents.chatSend, "BeforeChatSend");
19
+ this.itemUseManager = new BaseEventManager(mc.world.beforeEvents.itemUse, "BeforeItemUse");
19
20
  }
20
21
  /**
21
22
  * Metodo auxiliar que ejecuta los eventos relacionados cuando el add-on se carga por primera vez
@@ -82,5 +83,22 @@ class BeforeEventsSimplified {
82
83
  chatManager(callback) {
83
84
  this.chatSendManager.register(callback);
84
85
  }
86
+ /**
87
+ * Metodo auxiliar que ejecuta los eventos relacionados cuando antes de usar un item forma simplificada.
88
+ * @param {(args: mc.ItemUseBeforeEvent) => void} callback Los eventos relacionados a ejecutar.
89
+ * @author HaJuegos - 15-03-2026
90
+ * @public
91
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
92
+ * @example
93
+ * ```ts
94
+ * beforeEventsSimplified.onUseItem((args) => {
95
+ * console.warn(`Se esta usando el item ${args.itemStack.typeId}.`);
96
+ * args.cancel = true;
97
+ * });
98
+ * ```
99
+ */
100
+ onUseItem(callback) {
101
+ this.itemUseManager.register(callback);
102
+ }
85
103
  }
86
104
  export const beforeEventsSimplified = new BeforeEventsSimplified();
@@ -0,0 +1,26 @@
1
+ import * as mc from '@minecraft/server';
2
+ /**
3
+ * Clase que contiene todos los metodos de mecanicas universales usadas en sus add-ons.
4
+ * @author HaJuegos - 15-03-2026
5
+ */
6
+ declare class CustomEventsSimplified {
7
+ /**
8
+ * Eventos principales de la clase cuando es llamada o inicializada.
9
+ * @constructor
10
+ */
11
+ constructor();
12
+ /**
13
+ * Metodo auxiliar que simplifica la logica de los fast items, cuando usas tu item con tu tecla de interaccion, este cambiara a tu mano secundaria.
14
+ * @param {(mc.ItemStack[] | string[])} listOfItems La lista de items a validar para este sistema.
15
+ * @author HaJuegos - 15-03-2026
16
+ * @public
17
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
18
+ * @example
19
+ * ```ts
20
+ * customEventsManager.fastItemsSystem(['totem']); // Ahora el totem es conciderado un fast item para cambiar a la mano secundaria con un click.
21
+ * ```
22
+ */
23
+ fastItemsSystem(listOfItems: mc.ItemStack[] | string[]): void;
24
+ }
25
+ export declare const customEventsManager: CustomEventsSimplified;
26
+ export {};
@@ -0,0 +1,55 @@
1
+ import * as mc from '@minecraft/server';
2
+ import { beforeEventsSimplified } from './beforeEventsSimplifiedManager';
3
+ /**
4
+ * Clase que contiene todos los metodos de mecanicas universales usadas en sus add-ons.
5
+ * @author HaJuegos - 15-03-2026
6
+ */
7
+ class CustomEventsSimplified {
8
+ /**
9
+ * Eventos principales de la clase cuando es llamada o inicializada.
10
+ * @constructor
11
+ */
12
+ constructor() {
13
+ }
14
+ /**
15
+ * Metodo auxiliar que simplifica la logica de los fast items, cuando usas tu item con tu tecla de interaccion, este cambiara a tu mano secundaria.
16
+ * @param {(mc.ItemStack[] | string[])} listOfItems La lista de items a validar para este sistema.
17
+ * @author HaJuegos - 15-03-2026
18
+ * @public
19
+ * @beforeEvent Metodo que detecta el evento antes de que suceda. Permitiendo cancelar o personalizar el evento antes de que se vea en el juego.
20
+ * @example
21
+ * ```ts
22
+ * customEventsManager.fastItemsSystem(['totem']); // Ahora el totem es conciderado un fast item para cambiar a la mano secundaria con un click.
23
+ * ```
24
+ */
25
+ fastItemsSystem(listOfItems) {
26
+ beforeEventsSimplified.onUseItem((args) => {
27
+ const ply = args.source;
28
+ const plyInv = ply.getComponent(mc.EntityComponentTypes.Inventory)?.container;
29
+ const plyArmor = ply.getComponent(mc.EntityComponentTypes.Equippable);
30
+ const item = args.itemStack;
31
+ const itemOffhand = plyArmor.getEquipment(mc.EquipmentSlot.Offhand);
32
+ const isItemValid = listOfItems.some((listItem) => {
33
+ if (typeof listItem == "string") {
34
+ return item.typeId.includes(listItem);
35
+ }
36
+ else {
37
+ return item.typeId == listItem.typeId;
38
+ }
39
+ });
40
+ if (isItemValid) {
41
+ if (itemOffhand) {
42
+ plyArmor.setEquipment(mc.EquipmentSlot.Offhand, item);
43
+ plyInv.setItem(ply.selectedSlotIndex, itemOffhand);
44
+ }
45
+ else {
46
+ plyArmor.setEquipment(mc.EquipmentSlot.Offhand, item);
47
+ plyInv.setItem(ply.selectedSlotIndex, undefined);
48
+ }
49
+ ply.playSound('armor.equip_generic');
50
+ }
51
+ });
52
+ }
53
+ ;
54
+ }
55
+ export const customEventsManager = new CustomEventsSimplified();
@@ -41,7 +41,7 @@ declare class DebugToolsSimplified {
41
41
  stopHitboxes(): void;
42
42
  /**
43
43
  * Metodo que altera el estado de activo o desactivado del watchDogTerminate, en caso de lag spikes con scripts, para permitir el cierre o no del mundo o servidor cuando pase. Esto es solo recomendable usarlo en testeos, no se recomienda desactivarlo en mundos/servidores casuales o normales.
44
- * @param {boolean} turnOn El estado proximo a cambiar.
44
+ * @param {boolean} newState El estado proximo a cambiar.
45
45
  * @author HaJuegos - 14-03-2026
46
46
  * @public
47
47
  * @example
@@ -49,7 +49,7 @@ declare class DebugToolsSimplified {
49
49
  * debugToolsSimplified.watchDogState(false) // ya no habra cierre por lag spikes o problemas con scripts
50
50
  * ```
51
51
  */
52
- watchDogState(turnOn: boolean): void;
52
+ watchDogState(newState: boolean): void;
53
53
  }
54
54
  export declare const debugToolsSimplified: DebugToolsSimplified;
55
55
  export {};
@@ -26,7 +26,7 @@ class DebugToolsSimplified {
26
26
  */
27
27
  showHitboxes(ply, maxRadiusHitboxs = 50) {
28
28
  const activeBoxes = new Map();
29
- worldToolsSimplified.setLoop(() => {
29
+ this.idLoopHitboxes = worldToolsSimplified.setLoop(() => {
30
30
  const nearbyMobs = ply.dimension.getEntities({
31
31
  location: ply.location,
32
32
  maxDistance: maxRadiusHitboxs
@@ -102,7 +102,7 @@ class DebugToolsSimplified {
102
102
  }
103
103
  /**
104
104
  * Metodo que altera el estado de activo o desactivado del watchDogTerminate, en caso de lag spikes con scripts, para permitir el cierre o no del mundo o servidor cuando pase. Esto es solo recomendable usarlo en testeos, no se recomienda desactivarlo en mundos/servidores casuales o normales.
105
- * @param {boolean} turnOn El estado proximo a cambiar.
105
+ * @param {boolean} newState El estado proximo a cambiar.
106
106
  * @author HaJuegos - 14-03-2026
107
107
  * @public
108
108
  * @example
@@ -110,9 +110,9 @@ class DebugToolsSimplified {
110
110
  * debugToolsSimplified.watchDogState(false) // ya no habra cierre por lag spikes o problemas con scripts
111
111
  * ```
112
112
  */
113
- watchDogState(turnOn) {
113
+ watchDogState(newState) {
114
114
  mc.system.beforeEvents.watchdogTerminate.subscribe((arg) => {
115
- arg.cancel = turnOn;
115
+ arg.cancel = newState;
116
116
  });
117
117
  }
118
118
  }
package/dist/index.d.ts CHANGED
@@ -4,3 +4,4 @@ export * from "./events/beforeEventsSimplifiedManager";
4
4
  export * from "./events/worldToolsSimplifiedManager";
5
5
  export * from "./events/debugToolsSimplified";
6
6
  export * from "./events/fakePlysManagerSimplififed";
7
+ export * from './events/customToolsManager';
package/dist/index.js CHANGED
@@ -8,3 +8,5 @@ export * from "./events/worldToolsSimplifiedManager";
8
8
  export * from "./events/debugToolsSimplified";
9
9
  // @minecraft/gametest events
10
10
  export * from "./events/fakePlysManagerSimplififed";
11
+ // Custom events
12
+ export * from './events/customToolsManager';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simplified-mojang-api",
3
- "version": "0.0.13",
3
+ "version": "0.0.15",
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",