Port loiter and harden 26.3 bed updates
This commit is contained in:
+11
-3
@@ -24,7 +24,7 @@ from mosfet.protocol.packets import (
|
||||
|
||||
from mosfet.protocol.types import Slot
|
||||
from mosfet.protocol.modern import (
|
||||
PlayerCommandPacket, UpdateTimePacket, UseItemPacket,
|
||||
ClientCommandPacket, PlayerCommandPacket, UpdateTimePacket, UseItemPacket,
|
||||
)
|
||||
|
||||
from mosfet import utils
|
||||
@@ -711,6 +711,12 @@ class Game(LegacyGame):
|
||||
self.break_deadline = time.monotonic() + max(0.05, hardness_time)
|
||||
return True
|
||||
|
||||
def respawn(self):
|
||||
self.g.respawn_requested_at = time.monotonic()
|
||||
self.g.connection.write_packet(
|
||||
ClientCommandPacket(action_id=0), force=True)
|
||||
self.g.connection.write_packet(ClientTickEnd(), force=True)
|
||||
|
||||
def leave_bed(self):
|
||||
self._send_action(PlayerCommandPacket(
|
||||
entity_id=self.g.eid, action_id=0, jump_boost=0))
|
||||
@@ -854,11 +860,13 @@ class Game(LegacyGame):
|
||||
self.g.connection.write_packet(ClientTickEnd(), force=True)
|
||||
return True
|
||||
|
||||
def place_block(self, location, face, hand=0):
|
||||
def place_block(self, location, face, hand=0, cursor_y=None):
|
||||
location = tuple(int(value) for value in location)
|
||||
if cursor_y is None:
|
||||
cursor_y = 0.99 if int(face) == 1 else 0.5
|
||||
packet = UseItemOnBlockPacket(
|
||||
hand=hand, location=location, face=int(face),
|
||||
cursor_x=0.5, cursor_y=0.99 if int(face) == 1 else 0.5,
|
||||
cursor_x=0.5, cursor_y=cursor_y,
|
||||
cursor_z=0.5, inside_block=False, world_border_hit=False,
|
||||
sequence=self._next_sequence())
|
||||
self._send_action(packet)
|
||||
|
||||
Reference in New Issue
Block a user