Skip to content

Commit 2e31129

Browse files
committed
Added more events
1 parent ebd40bf commit 2e31129

File tree

2 files changed

+58
-18
lines changed

2 files changed

+58
-18
lines changed

scripts/library/Minecraft.js

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { compressNumber, formatNumber, MS, rainbowText } from "./utils/formatter
44
export { compressNumber, formatNumber, MS, rainbowText };
55
import Database from "./build/classes/databaseBuilder.js";
66
export { Database };
7-
import { World } from 'Minecraft';
7+
import { World } from 'mojang-minecraft';
88
import { Entity } from "./build/classes/entityBuilder.js";
99
import { Player } from "./build/classes/playerBuilder.js";
1010
import { Command } from "./build/classes/commandBuilder.js";
@@ -37,7 +37,7 @@ class ServerBuild extends ServerBuilder {
3737
const command = args.shift().toLowerCase();
3838
const getCommand = Command.getAllRegistation().some(element => element.name === command || element.aliases && element.aliases.includes(command));
3939
if (!getCommand) {
40-
data.canceled = true;
40+
data.cancel = true;
4141
return this.runCommand(`tellraw "${data.sender.nameTag}" {"rawtext":[{"text":"§c"},{"translate":"commands.generic.unknown", "with": ["§f${command}§c"]}]}`);
4242
}
4343
;
@@ -48,7 +48,7 @@ class ServerBuild extends ServerBuilder {
4848
* Registration callback
4949
*/
5050
if (element?.cancelMessage)
51-
data.canceled = true;
51+
data.cancel = true;
5252
try {
5353
element.callback(data, args);
5454
}
@@ -67,24 +67,44 @@ class ServerBuild extends ServerBuilder {
6767
});
6868
});
6969
});
70+
/**
71+
* Emit to 'beforeExplosion' event listener
72+
*/
73+
World.events.beforeExplosion.subscribe(data => this.emit('beforeExplosion', data));
74+
/**
75+
* Emit to 'beforePistonActivate' event listener
76+
*/
77+
World.events.beforePistonActivate.subscribe(data => this.emit('beforePistonActivate', data));
78+
/**
79+
* Emit to 'blockExplode' event listener
80+
*/
81+
World.events.blockExplode.subscribe(data => this.emit('blockExplode', data));
82+
/**
83+
* Emit to 'beforeExplosion' event listener
84+
*/
85+
World.events.explosion.subscribe(data => this.emit('explosion', data));
86+
/**
87+
* Emit to 'beforeExplosion' event listener
88+
*/
89+
World.events.pistonActivate.subscribe(data => this.emit('pistonActivate', data));
7090
/**
7191
* Emit to 'messageCreate' event listener
7292
*/
7393
World.events.chat.subscribe(data => this.emit('messageCreate', data));
7494
/**
7595
* Emit to 'entityEffected' event listener
7696
*/
77-
World.events.addEffect.subscribe(data => this.emit('entityEffected', data));
97+
World.events.effectAdd.subscribe(data => this.emit('entityEffected', data));
7898
/**
7999
* Emit to 'weatherChange' event listener
80100
*/
81-
World.events.changeWeather.subscribe(data => this.emit('weatherChange', data));
101+
World.events.weatherChange.subscribe(data => this.emit('weatherChange', data));
82102
let oldPlayer = [];
83-
World.events.createEntity.subscribe(data => {
103+
World.events.entityCreate.subscribe(data => {
84104
/**
85105
* Emit to 'entityCreate' event listener
86106
*/
87-
this.emit('entityCreate', data);
107+
this.emit('entityCreate', data.entity);
88108
if (data.entity.id !== 'minecraft:player')
89109
return;
90110
let playerJoined = Player.list().filter(current => !oldPlayer.some(old => current === old));
@@ -95,11 +115,11 @@ class ServerBuild extends ServerBuilder {
95115
this.emit('playerJoin', data.entity);
96116
});
97117
let worldLoaded = false, tickCount = 0;
98-
World.events.tick.subscribe(() => {
118+
World.events.tick.subscribe((data) => {
99119
/**
100120
* Emit to 'tick' event listener
101121
*/
102-
this.emit('tick');
122+
this.emit('tick', data);
103123
let currentPlayer = Player.list();
104124
let playerLeft = oldPlayer.filter(old => !currentPlayer.some(current => old === current));
105125
/**

src/library/Minecraft.ts

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export { compressNumber, formatNumber, MS, rainbowText };
77
import Database from "./build/classes/databaseBuilder.js";
88
export { Database };
99

10-
import { World } from 'Minecraft';
10+
import { World } from 'mojang-minecraft';
1111
import { Entity } from "./build/classes/entityBuilder.js";
1212
import { Player } from "./build/classes/playerBuilder.js";
1313
import { Command } from "./build/classes/commandBuilder.js";
@@ -39,15 +39,15 @@ class ServerBuild extends ServerBuilder {
3939
const command = args.shift().toLowerCase();
4040
const getCommand = Command.getAllRegistation().some(element => element.name === command || element.aliases && element.aliases.includes(command));
4141
if(!getCommand) {
42-
data.canceled = true;
42+
data.cancel = true;
4343
return this.runCommand(`tellraw "${data.sender.nameTag}" {"rawtext":[{"text":"§c"},{"translate":"commands.generic.unknown", "with": ["§f${command}§c"]}]}`);
4444
};
4545
Command.getAllRegistation().forEach(element => {
4646
if(!data.message.startsWith(this.command.prefix) || element.name !== command) return;
4747
/**
4848
* Registration callback
4949
*/
50-
if(element?.cancelMessage) data.canceled = true;
50+
if(element?.cancelMessage) data.cancel = true;
5151
try {
5252
element.callback(data, args);
5353
} catch(error) {
@@ -64,25 +64,45 @@ class ServerBuild extends ServerBuilder {
6464
});
6565
});
6666
});
67+
/**
68+
* Emit to 'beforeExplosion' event listener
69+
*/
70+
World.events.beforeExplosion.subscribe(data => this.emit('beforeExplosion', data));
71+
/**
72+
* Emit to 'beforePistonActivate' event listener
73+
*/
74+
World.events.beforePistonActivate.subscribe(data => this.emit('beforePistonActivate', data));
75+
/**
76+
* Emit to 'blockExplode' event listener
77+
*/
78+
World.events.blockExplode.subscribe(data => this.emit('blockExplode', data));
79+
/**
80+
* Emit to 'beforeExplosion' event listener
81+
*/
82+
World.events.explosion.subscribe(data => this.emit('explosion', data));
83+
/**
84+
* Emit to 'beforeExplosion' event listener
85+
*/
86+
World.events.pistonActivate.subscribe(data => this.emit('pistonActivate', data));
6787
/**
6888
* Emit to 'messageCreate' event listener
6989
*/
7090
World.events.chat.subscribe(data => this.emit('messageCreate', data));
7191
/**
7292
* Emit to 'entityEffected' event listener
7393
*/
74-
World.events.addEffect.subscribe(data => this.emit('entityEffected', data));
94+
World.events.effectAdd.subscribe(data => this.emit('entityEffected', data));
7595
/**
7696
* Emit to 'weatherChange' event listener
7797
*/
78-
World.events.changeWeather.subscribe(data => this.emit('weatherChange', data));
98+
World.events.weatherChange.subscribe(data => this.emit('weatherChange', data));
7999

80100
let oldPlayer: Array<string> = [];
81-
World.events.createEntity.subscribe(data => {
101+
World.events.entityCreate.subscribe(data => {
82102
/**
83103
* Emit to 'entityCreate' event listener
84104
*/
85-
this.emit('entityCreate', data);
105+
this.emit('entityCreate', data.entity);
86106

87107
if(data.entity.id !== 'minecraft:player') return;
88108
let playerJoined = Player.list().filter(current => !oldPlayer.some(old => current === old));
@@ -93,11 +113,11 @@ class ServerBuild extends ServerBuilder {
93113
});
94114

95115
let worldLoaded = false, tickCount = 0;
96-
World.events.tick.subscribe(() => {
116+
World.events.tick.subscribe((data) => {
97117
/**
98118
* Emit to 'tick' event listener
99119
*/
100-
this.emit('tick');
120+
this.emit('tick', data);
101121

102122
let currentPlayer = Player.list();
103123
let playerLeft = oldPlayer.filter(old => !currentPlayer.some(current => old === current));

0 commit comments

Comments
 (0)