specprotocol 1.2.0 → 1.3.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.
package/dist/bot.d.ts CHANGED
@@ -36,8 +36,26 @@ export interface BotEvents {
36
36
  'entitySpawn': (entity: Entity) => void;
37
37
  /** Entity removed */
38
38
  'entityRemove': (entityId: number) => void;
39
+ /** Entity moved */
40
+ 'entityMove': (entityId: number, position: Vec3) => void;
41
+ /** Entity velocity changed */
42
+ 'entityVelocity': (entityId: number, velocity: Vec3) => void;
39
43
  /** Block updated */
40
44
  'blockUpdate': (x: number, y: number, z: number, stateId: number) => void;
45
+ /** Experience updated */
46
+ 'experience': (level: number, progress: number, total: number) => void;
47
+ /** Game event (weather, gamemode change, etc.) */
48
+ 'gameEvent': (event: number, value: number) => void;
49
+ /** Respawned in a new dimension */
50
+ 'respawn': (dimension: string, gameMode: number) => void;
51
+ /** Time updated */
52
+ 'time': (worldAge: bigint, timeOfDay: bigint) => void;
53
+ /** Spawn position set */
54
+ 'spawnPosition': (x: number, y: number, z: number) => void;
55
+ /** Title text displayed */
56
+ 'title': (text: string) => void;
57
+ /** Subtitle text displayed */
58
+ 'subtitle': (text: string) => void;
41
59
  /** Raw packet received (for advanced use) */
42
60
  'rawPacket': (packet: RawPacket) => void;
43
61
  /** Connection error */
@@ -73,6 +91,15 @@ export declare class Bot extends TypedEventEmitter<BotEvents> {
73
91
  private _saturation;
74
92
  private _gameMode;
75
93
  private _isAlive;
94
+ private _experience;
95
+ private _level;
96
+ private _isSprinting;
97
+ private _isSneaking;
98
+ private _worldAge;
99
+ private _timeOfDay;
100
+ private _spawnPosition;
101
+ private _actionSequence;
102
+ private physicsInterval;
76
103
  private authMode;
77
104
  private accessToken?;
78
105
  readonly world: World;
@@ -121,6 +148,8 @@ export declare class Bot extends TypedEventEmitter<BotEvents> {
121
148
  private handleConfigurationState;
122
149
  private setupPlayStateHandlers;
123
150
  private handlePlayPacket;
151
+ private startPhysicsTick;
152
+ private stopPhysicsTick;
124
153
  /**
125
154
  * Register a handler for a specific play-state packet ID.
126
155
  * Used by plugins to listen for specific packets.
@@ -130,14 +159,33 @@ export declare class Bot extends TypedEventEmitter<BotEvents> {
130
159
  * Send a raw packet to the server.
131
160
  */
132
161
  sendPacket(packetId: number, data: Buffer): void;
162
+ get experience(): number;
163
+ get level(): number;
164
+ get isSprinting(): boolean;
165
+ get isSneaking(): boolean;
166
+ get worldAge(): bigint;
167
+ get timeOfDay(): bigint;
168
+ get spawnPosition(): Vec3;
133
169
  /**
134
170
  * Send a chat message.
135
171
  */
136
172
  chat(message: string): void;
173
+ /**
174
+ * Send a / command (e.g. bot.command('gamemode creative')).
175
+ */
176
+ command(cmd: string): void;
137
177
  /**
138
178
  * Attack an entity.
139
179
  */
140
180
  attack(entity: Entity): void;
181
+ /**
182
+ * Attack entity by ID (raw packet).
183
+ */
184
+ attackEntity(entityId: number): void;
185
+ /**
186
+ * Right-click / use an entity (villager trade, mount, etc.).
187
+ */
188
+ useEntity(entityId: number, hand?: number): void;
141
189
  /**
142
190
  * Set the bot's position (sends position packet to server).
143
191
  */
@@ -150,14 +198,54 @@ export declare class Bot extends TypedEventEmitter<BotEvents> {
150
198
  * Look at a position.
151
199
  */
152
200
  lookAt(target: Vec3): void;
201
+ /**
202
+ * Start/stop sprinting.
203
+ */
204
+ sprint(enabled: boolean): void;
205
+ /**
206
+ * Start/stop sneaking.
207
+ */
208
+ sneak(enabled: boolean): void;
153
209
  /**
154
210
  * Start digging a block.
155
211
  */
156
212
  dig(x: number, y: number, z: number, face?: number): void;
213
+ /**
214
+ * Place a block on a target block face.
215
+ */
216
+ placeBlock(x: number, y: number, z: number, face?: number, hand?: number): void;
217
+ /**
218
+ * Use the item in hand (eat, throw, shoot bow, etc.).
219
+ */
220
+ useItem(hand?: number): void;
157
221
  /**
158
222
  * Select a hotbar slot (0-8).
159
223
  */
160
224
  setHeldItem(slot: number): void;
225
+ /**
226
+ * Swing arm animation.
227
+ */
228
+ swingArm(hand?: number): void;
229
+ /**
230
+ * Drop the held item.
231
+ */
232
+ dropItem(dropStack?: boolean): void;
233
+ /**
234
+ * Swap items between main and off hand.
235
+ */
236
+ swapHands(): void;
237
+ /**
238
+ * Toggle flying (creative/spectator mode).
239
+ */
240
+ fly(enabled: boolean): void;
241
+ /**
242
+ * Respawn after death.
243
+ */
244
+ respawn(): void;
245
+ /**
246
+ * Close the currently open container.
247
+ */
248
+ closeContainer(windowId?: number): void;
161
249
  /**
162
250
  * Disconnect from the server.
163
251
  */
package/dist/bot.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
package/dist/bot.js CHANGED
@@ -48,6 +48,15 @@ class Bot extends events_js_1.TypedEventEmitter {
48
48
  _saturation = 5;
49
49
  _gameMode = 0;
50
50
  _isAlive = true;
51
+ _experience = 0;
52
+ _level = 0;
53
+ _isSprinting = false;
54
+ _isSneaking = false;
55
+ _worldAge = 0n;
56
+ _timeOfDay = 0n;
57
+ _spawnPosition = new vec3_js_1.Vec3(0, 0, 0);
58
+ _actionSequence = 0;
59
+ physicsInterval = null;
51
60
  // Auth
52
61
  authMode;
53
62
  accessToken;
@@ -398,6 +407,13 @@ class Bot extends events_js_1.TypedEventEmitter {
398
407
  this.world.dimension = login.dimensionName;
399
408
  this.world.seaLevel = login.seaLevel;
400
409
  this.logger.info(`Spawned in ${login.dimensionName} (Entity ID: ${login.entityId})`);
410
+ // Send Client Information after spawn
411
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.CLIENT_INFORMATION, (0, play_js_1.buildClientInformationPacket)('en_US', this.options.viewDistance));
412
+ // Send brand plugin message
413
+ const brandBuf = Buffer.from('specprotocol', 'utf8');
414
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLUGIN_MESSAGE, (0, play_js_1.buildPluginMessagePacket)('minecraft:brand', brandBuf));
415
+ // Start physics tick (50ms = 20 ticks/sec like vanilla)
416
+ this.startPhysicsTick();
401
417
  this.emit('spawn');
402
418
  }
403
419
  catch (err) {
@@ -431,11 +447,17 @@ class Bot extends events_js_1.TypedEventEmitter {
431
447
  this._food = food;
432
448
  this._saturation = saturation;
433
449
  this.emit('health', health, food, saturation);
434
- if (health <= 0) {
450
+ if (health <= 0 && this._isAlive) {
435
451
  this._isAlive = false;
436
452
  this.emit('death');
453
+ // Auto-respawn after short delay
454
+ setTimeout(() => {
455
+ if (!this._isAlive) {
456
+ this.respawn();
457
+ }
458
+ }, 1000);
437
459
  }
438
- else {
460
+ else if (health > 0) {
439
461
  this._isAlive = true;
440
462
  }
441
463
  break;
@@ -467,10 +489,8 @@ class Bot extends events_js_1.TypedEventEmitter {
467
489
  }
468
490
  case play_js_1.PlayClientboundPackets.REMOVE_ENTITIES: {
469
491
  try {
470
- const reader = new types_js_1.BufferReader(packet.data);
471
- const count = reader.readVarInt();
472
- for (let i = 0; i < count; i++) {
473
- const entityId = reader.readVarInt();
492
+ const { entityIds } = (0, play_js_1.parseRemoveEntities)(packet.data);
493
+ for (const entityId of entityIds) {
474
494
  this.entities.remove(entityId);
475
495
  this.emit('entityRemove', entityId);
476
496
  }
@@ -480,6 +500,125 @@ class Bot extends events_js_1.TypedEventEmitter {
480
500
  }
481
501
  break;
482
502
  }
503
+ case play_js_1.PlayClientboundPackets.ENTITY_POSITION: {
504
+ try {
505
+ const pos = (0, play_js_1.parseEntityPosition)(packet.data);
506
+ const entity = this.entities.get(pos.entityId);
507
+ if (entity) {
508
+ entity.position = new vec3_js_1.Vec3(entity.position.x + pos.deltaX, entity.position.y + pos.deltaY, entity.position.z + pos.deltaZ);
509
+ this.emit('entityMove', pos.entityId, entity.position);
510
+ }
511
+ }
512
+ catch (_) { /* ignore */ }
513
+ break;
514
+ }
515
+ case play_js_1.PlayClientboundPackets.ENTITY_POSITION_AND_ROTATION: {
516
+ try {
517
+ const pos = (0, play_js_1.parseEntityPositionAndRotation)(packet.data);
518
+ const entity = this.entities.get(pos.entityId);
519
+ if (entity) {
520
+ entity.position = new vec3_js_1.Vec3(entity.position.x + pos.deltaX, entity.position.y + pos.deltaY, entity.position.z + pos.deltaZ);
521
+ entity.yaw = pos.yaw;
522
+ entity.pitch = pos.pitch;
523
+ this.emit('entityMove', pos.entityId, entity.position);
524
+ }
525
+ }
526
+ catch (_) { /* ignore */ }
527
+ break;
528
+ }
529
+ case play_js_1.PlayClientboundPackets.SET_ENTITY_VELOCITY: {
530
+ try {
531
+ const vel = (0, play_js_1.parseEntityVelocity)(packet.data);
532
+ this.emit('entityVelocity', vel.entityId, new vec3_js_1.Vec3(vel.velocityX, vel.velocityY, vel.velocityZ));
533
+ }
534
+ catch (_) { /* ignore */ }
535
+ break;
536
+ }
537
+ case play_js_1.PlayClientboundPackets.ENTITY_HEAD_ROTATION: {
538
+ try {
539
+ const rot = (0, play_js_1.parseEntityHeadRotation)(packet.data);
540
+ const entity = this.entities.get(rot.entityId);
541
+ if (entity) {
542
+ entity.yaw = rot.headYaw;
543
+ }
544
+ }
545
+ catch (_) { /* ignore */ }
546
+ break;
547
+ }
548
+ case play_js_1.PlayClientboundPackets.GAME_EVENT: {
549
+ try {
550
+ const ev = (0, play_js_1.parseGameEvent)(packet.data);
551
+ if (ev.event === play_js_1.GameEventType.CHANGE_GAME_MODE) {
552
+ this._gameMode = ev.value;
553
+ }
554
+ if (ev.event === play_js_1.GameEventType.START_WAITING_FOR_LEVEL_CHUNKS) {
555
+ // Send position confirmation after chunks start loading
556
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SET_PLAYER_POSITION_AND_ROTATION, (0, play_js_1.buildSetPlayerPositionAndRotationPacket)(this.entity.position.x, this.entity.position.y, this.entity.position.z, this.entity.yaw, this.entity.pitch, true));
557
+ }
558
+ this.emit('gameEvent', ev.event, ev.value);
559
+ }
560
+ catch (_) { /* ignore */ }
561
+ break;
562
+ }
563
+ case play_js_1.PlayClientboundPackets.RESPAWN: {
564
+ try {
565
+ const resp = (0, play_js_1.parseRespawn)(packet.data);
566
+ this._gameMode = resp.gameMode;
567
+ this._isAlive = true;
568
+ this.world.dimension = resp.dimensionName;
569
+ this.emit('respawn', resp.dimensionName, resp.gameMode);
570
+ this.logger.info(`Respawned in ${resp.dimensionName}`);
571
+ }
572
+ catch (err) {
573
+ this.logger.error('Failed to parse respawn:', err);
574
+ }
575
+ break;
576
+ }
577
+ case play_js_1.PlayClientboundPackets.SET_EXPERIENCE: {
578
+ try {
579
+ const exp = (0, play_js_1.parseSetExperience)(packet.data);
580
+ this._experience = exp.totalExperience;
581
+ this._level = exp.level;
582
+ this.emit('experience', exp.level, exp.experienceBar, exp.totalExperience);
583
+ }
584
+ catch (_) { /* ignore */ }
585
+ break;
586
+ }
587
+ case play_js_1.PlayClientboundPackets.UPDATE_TIME: {
588
+ try {
589
+ const time = (0, play_js_1.parseUpdateTime)(packet.data);
590
+ this._worldAge = time.worldAge;
591
+ this._timeOfDay = time.timeOfDay;
592
+ this.emit('time', time.worldAge, time.timeOfDay);
593
+ }
594
+ catch (_) { /* ignore */ }
595
+ break;
596
+ }
597
+ case play_js_1.PlayClientboundPackets.SET_DEFAULT_SPAWN_POSITION: {
598
+ try {
599
+ const sp = (0, play_js_1.parseSetDefaultSpawnPosition)(packet.data);
600
+ this._spawnPosition = new vec3_js_1.Vec3(sp.x, sp.y, sp.z);
601
+ this.emit('spawnPosition', sp.x, sp.y, sp.z);
602
+ }
603
+ catch (_) { /* ignore */ }
604
+ break;
605
+ }
606
+ case play_js_1.PlayClientboundPackets.PING: {
607
+ try {
608
+ const reader = new types_js_1.BufferReader(packet.data);
609
+ const pingId = reader.readInt();
610
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PONG, (0, play_js_1.buildPongPacket)(pingId));
611
+ }
612
+ catch (_) { /* ignore */ }
613
+ break;
614
+ }
615
+ case play_js_1.PlayClientboundPackets.ACKNOWLEDGE_BLOCK_CHANGE: {
616
+ try {
617
+ (0, play_js_1.parseAcknowledgeBlockChange)(packet.data);
618
+ }
619
+ catch (_) { /* ignore */ }
620
+ break;
621
+ }
483
622
  case play_js_1.PlayClientboundPackets.DISCONNECT: {
484
623
  const { reason } = (0, play_js_1.parseDisconnectPlay)(packet.data);
485
624
  this.logger.warn(`Kicked: ${reason}`);
@@ -496,6 +635,31 @@ class Bot extends events_js_1.TypedEventEmitter {
496
635
  }
497
636
  break;
498
637
  }
638
+ case play_js_1.PlayClientboundPackets.SYSTEM_CHAT: {
639
+ try {
640
+ const chat = (0, play_js_1.parseSystemChat)(packet.data);
641
+ this.emit('chat', chat.content, chat.isOverlay);
642
+ }
643
+ catch (_) { /* ignore */ }
644
+ break;
645
+ }
646
+ }
647
+ }
648
+ // ─── Physics Tick ────────────────────────────────────
649
+ startPhysicsTick() {
650
+ if (this.physicsInterval)
651
+ return;
652
+ this.physicsInterval = setInterval(() => {
653
+ if (!this._isAlive)
654
+ return;
655
+ // Send position to server every tick to stay "alive"
656
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SET_PLAYER_POSITION_AND_ROTATION, (0, play_js_1.buildSetPlayerPositionAndRotationPacket)(this.entity.position.x, this.entity.position.y, this.entity.position.z, this.entity.yaw, this.entity.pitch, true));
657
+ }, 50);
658
+ }
659
+ stopPhysicsTick() {
660
+ if (this.physicsInterval) {
661
+ clearInterval(this.physicsInterval);
662
+ this.physicsInterval = null;
499
663
  }
500
664
  }
501
665
  // ─── Packet API ─────────────────────────────────────
@@ -514,6 +678,14 @@ class Bot extends events_js_1.TypedEventEmitter {
514
678
  sendPacket(packetId, data) {
515
679
  this.connection.sendPacket(packetId, data);
516
680
  }
681
+ // ─── Property Getters ─────────────────────────────────
682
+ get experience() { return this._experience; }
683
+ get level() { return this._level; }
684
+ get isSprinting() { return this._isSprinting; }
685
+ get isSneaking() { return this._isSneaking; }
686
+ get worldAge() { return this._worldAge; }
687
+ get timeOfDay() { return this._timeOfDay; }
688
+ get spawnPosition() { return this._spawnPosition; }
517
689
  // ─── High-Level API ─────────────────────────────────
518
690
  /**
519
691
  * Send a chat message.
@@ -524,6 +696,12 @@ class Bot extends events_js_1.TypedEventEmitter {
524
696
  chatPlugin.chat(message);
525
697
  }
526
698
  }
699
+ /**
700
+ * Send a / command (e.g. bot.command('gamemode creative')).
701
+ */
702
+ command(cmd) {
703
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.CHAT_COMMAND, (0, play_js_1.buildChatCommandPacket)(cmd));
704
+ }
527
705
  /**
528
706
  * Attack an entity.
529
707
  */
@@ -533,6 +711,19 @@ class Bot extends events_js_1.TypedEventEmitter {
533
711
  combatPlugin.attack(entity);
534
712
  }
535
713
  }
714
+ /**
715
+ * Attack entity by ID (raw packet).
716
+ */
717
+ attackEntity(entityId) {
718
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.INTERACT, (0, play_js_1.buildInteractEntityPacket)(entityId, play_js_1.InteractEntityType.ATTACK, this._isSneaking));
719
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SWING_ARM, (0, play_js_1.buildSwingArmPacket)(0));
720
+ }
721
+ /**
722
+ * Right-click / use an entity (villager trade, mount, etc.).
723
+ */
724
+ useEntity(entityId, hand = 0) {
725
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.INTERACT, (0, play_js_1.buildInteractEntityPacket)(entityId, play_js_1.InteractEntityType.INTERACT, this._isSneaking, undefined, undefined, undefined, hand));
726
+ }
536
727
  /**
537
728
  * Set the bot's position (sends position packet to server).
538
729
  */
@@ -563,17 +754,50 @@ class Bot extends events_js_1.TypedEventEmitter {
563
754
  this.entity.pitch = pitch;
564
755
  this.connection.sendPacket(play_js_1.PlayServerboundPackets.SET_PLAYER_POSITION_AND_ROTATION, (0, play_js_1.buildSetPlayerPositionAndRotationPacket)(this.entity.position.x, this.entity.position.y, this.entity.position.z, yaw, pitch, this.entity.onGround));
565
756
  }
757
+ /**
758
+ * Start/stop sprinting.
759
+ */
760
+ sprint(enabled) {
761
+ this._isSprinting = enabled;
762
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_COMMAND, (0, play_js_1.buildPlayerCommandPacket)(this._entityId, enabled ? play_js_1.PlayerCommandAction.START_SPRINTING : play_js_1.PlayerCommandAction.STOP_SPRINTING));
763
+ }
764
+ /**
765
+ * Start/stop sneaking.
766
+ */
767
+ sneak(enabled) {
768
+ this._isSneaking = enabled;
769
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_COMMAND, (0, play_js_1.buildPlayerCommandPacket)(this._entityId, enabled ? play_js_1.PlayerCommandAction.START_SNEAKING : play_js_1.PlayerCommandAction.STOP_SNEAKING));
770
+ }
566
771
  /**
567
772
  * Start digging a block.
568
773
  */
569
774
  dig(x, y, z, face = 1) {
775
+ this._actionSequence++;
570
776
  // Start digging
571
- this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(play_js_1.PlayerActionStatus.STARTED_DIGGING, x, y, z, face, 0));
777
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(play_js_1.PlayerActionStatus.STARTED_DIGGING, x, y, z, face, this._actionSequence));
778
+ // Swing arm animation
779
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SWING_ARM, (0, play_js_1.buildSwingArmPacket)(0));
572
780
  // For creative mode, finish immediately
573
781
  if (this._gameMode === 1) {
574
- this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(play_js_1.PlayerActionStatus.FINISHED_DIGGING, x, y, z, face, 1));
782
+ this._actionSequence++;
783
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(play_js_1.PlayerActionStatus.FINISHED_DIGGING, x, y, z, face, this._actionSequence));
575
784
  }
576
785
  }
786
+ /**
787
+ * Place a block on a target block face.
788
+ */
789
+ placeBlock(x, y, z, face = 1, hand = 0) {
790
+ this._actionSequence++;
791
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.USE_ITEM_ON, (0, play_js_1.buildUseItemOnPacket)(hand, x, y, z, face, 0.5, 0.5, 0.5, false, this._actionSequence));
792
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SWING_ARM, (0, play_js_1.buildSwingArmPacket)(hand));
793
+ }
794
+ /**
795
+ * Use the item in hand (eat, throw, shoot bow, etc.).
796
+ */
797
+ useItem(hand = 0) {
798
+ this._actionSequence++;
799
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.USE_ITEM, (0, play_js_1.buildUseItemPacket)(hand, this._actionSequence, this.entity.yaw, this.entity.pitch));
800
+ }
577
801
  /**
578
802
  * Select a hotbar slot (0-8).
579
803
  */
@@ -582,10 +806,50 @@ class Bot extends events_js_1.TypedEventEmitter {
582
806
  throw new Error('Slot must be 0-8');
583
807
  this.connection.sendPacket(play_js_1.PlayServerboundPackets.SET_HELD_ITEM, (0, play_js_1.buildSetHeldItemPacket)(slot));
584
808
  }
809
+ /**
810
+ * Swing arm animation.
811
+ */
812
+ swingArm(hand = 0) {
813
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.SWING_ARM, (0, play_js_1.buildSwingArmPacket)(hand));
814
+ }
815
+ /**
816
+ * Drop the held item.
817
+ */
818
+ dropItem(dropStack = false) {
819
+ this._actionSequence++;
820
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(dropStack ? play_js_1.PlayerActionStatus.DROP_ITEM_STACK : play_js_1.PlayerActionStatus.DROP_ITEM, 0, 0, 0, 0, this._actionSequence));
821
+ }
822
+ /**
823
+ * Swap items between main and off hand.
824
+ */
825
+ swapHands() {
826
+ this._actionSequence++;
827
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ACTION, (0, play_js_1.buildPlayerActionPacket)(play_js_1.PlayerActionStatus.SWAP_ITEM_IN_HAND, 0, 0, 0, 0, this._actionSequence));
828
+ }
829
+ /**
830
+ * Toggle flying (creative/spectator mode).
831
+ */
832
+ fly(enabled) {
833
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.PLAYER_ABILITIES, (0, play_js_1.buildPlayerAbilitiesServerboundPacket)(enabled));
834
+ }
835
+ /**
836
+ * Respawn after death.
837
+ */
838
+ respawn() {
839
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.CLIENT_STATUS, (0, play_js_1.buildClientStatusPacket)(play_js_1.ClientStatusAction.PERFORM_RESPAWN));
840
+ this._isAlive = true;
841
+ }
842
+ /**
843
+ * Close the currently open container.
844
+ */
845
+ closeContainer(windowId = 0) {
846
+ this.connection.sendPacket(play_js_1.PlayServerboundPackets.CLOSE_CONTAINER, (0, play_js_1.buildCloseContainerPacket)(windowId));
847
+ }
585
848
  /**
586
849
  * Disconnect from the server.
587
850
  */
588
851
  disconnect() {
852
+ this.stopPhysicsTick();
589
853
  this.plugins.destroyAll();
590
854
  this.connection.disconnect();
591
855
  this.logger.info('Disconnected');
package/dist/bot.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bot.js","sourceRoot":"","sources":["../src/bot.ts"],"names":[],"mappings":"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"}