aboutsummaryrefslogtreecommitdiff
path: root/Minecraft.Client/ClientConnection.h
diff options
context:
space:
mode:
authordaoge <3523206925@qq.com>2026-03-03 03:04:10 +0800
committerGitHub <noreply@github.com>2026-03-03 03:04:10 +0800
commitb3feddfef372618c8a9d7a0abcaf18cfad866c18 (patch)
tree267761c3bb39241ba5c347bfbe2254d06686e287 /Minecraft.Client/ClientConnection.h
parent84c31a2331f7a0ec85b9d438992e244f60e5020f (diff)
feat: TU19 (Dec 2014) Features & Content (#155)
* try to resolve merge conflict * feat: TU19 (Dec 2014) Features & Content (#32) * December 2014 files * Working release build * Fix compilation issues * Add sound to Windows64Media * Add DLC content and force Tutorial DLC * Revert "Add DLC content and force Tutorial DLC" This reverts commit 97a43994725008e35fceb984d5549df9c8cea470. * Disable broken light packing * Disable breakpoint during DLC texture map load Allows DLC loading but the DLC textures are still broken * Fix post build not working * ... * fix vs2022 build * fix cmake build --------- Co-authored-by: Loki <lokirautio@gmail.com>
Diffstat (limited to 'Minecraft.Client/ClientConnection.h')
-rw-r--r--Minecraft.Client/ClientConnection.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/Minecraft.Client/ClientConnection.h b/Minecraft.Client/ClientConnection.h
index 2ce46ce0..a80c10f7 100644
--- a/Minecraft.Client/ClientConnection.h
+++ b/Minecraft.Client/ClientConnection.h
@@ -17,6 +17,7 @@ private:
eCCLoginReceived,
eCCConnected
};
+
private:
bool done;
Connection *connection;
@@ -58,6 +59,7 @@ public:
virtual void handleSetEntityData(shared_ptr<SetEntityDataPacket> packet);
virtual void handleAddPlayer(shared_ptr<AddPlayerPacket> packet);
virtual void handleTeleportEntity(shared_ptr<TeleportEntityPacket> packet);
+ virtual void handleSetCarriedItem(shared_ptr<SetCarriedItemPacket> packet);
virtual void handleMoveEntity(shared_ptr<MoveEntityPacket> packet);
virtual void handleRotateMob(shared_ptr<RotateHeadPacket> packet);
virtual void handleMoveEntitySmall(shared_ptr<MoveEntityPacketSmall> packet);
@@ -86,7 +88,7 @@ public:
virtual void handleAddMob(shared_ptr<AddMobPacket> packet);
virtual void handleSetTime(shared_ptr<SetTimePacket> packet);
virtual void handleSetSpawn(shared_ptr<SetSpawnPositionPacket> packet);
- virtual void handleRidePacket(shared_ptr<SetRidingPacket> packet);
+ virtual void handleEntityLinkPacket(shared_ptr<SetEntityLinkPacket> packet);
virtual void handleEntityEvent(shared_ptr<EntityEventPacket> packet);
private:
shared_ptr<Entity> getEntity(int entityId);
@@ -100,6 +102,7 @@ public:
virtual void handleContainerSetSlot(shared_ptr<ContainerSetSlotPacket> packet);
virtual void handleContainerAck(shared_ptr<ContainerAckPacket> packet);
virtual void handleContainerContent(shared_ptr<ContainerSetContentPacket> packet);
+ virtual void handleTileEditorOpen(shared_ptr<TileEditorOpenPacket> packet);
virtual void handleSignUpdate(shared_ptr<SignUpdatePacket> packet);
virtual void handleTileEntityData(shared_ptr<TileEntityDataPacket> packet);
virtual void handleContainerSetData(shared_ptr<ContainerSetDataPacket> packet);
@@ -137,4 +140,27 @@ public:
virtual void handleXZ(shared_ptr<XZPacket> packet);
void displayPrivilegeChanges(shared_ptr<MultiplayerLocalPlayer> player, unsigned int oldPrivileges);
+
+ virtual void handleAddObjective(shared_ptr<SetObjectivePacket> packet);
+ virtual void handleSetScore(shared_ptr<SetScorePacket> packet);
+ virtual void handleSetDisplayObjective(shared_ptr<SetDisplayObjectivePacket> packet);
+ virtual void handleSetPlayerTeamPacket(shared_ptr<SetPlayerTeamPacket> packet);
+ virtual void handleParticleEvent(shared_ptr<LevelParticlesPacket> packet);
+ virtual void handleUpdateAttributes(shared_ptr<UpdateAttributesPacket> packet);
+
+private:
+ // 4J: Entity link packet deferred
+ class DeferredEntityLinkPacket
+ {
+ public:
+ DWORD m_recievedTick;
+ shared_ptr<SetEntityLinkPacket> m_packet;
+
+ DeferredEntityLinkPacket(shared_ptr<SetEntityLinkPacket> packet);
+ };
+
+ vector<DeferredEntityLinkPacket> deferredEntityLinkPackets;
+ static const int MAX_ENTITY_LINK_DEFERRAL_INTERVAL = 1000;
+
+ void checkDeferredEntityLinkPackets(int newEntityId);
}; \ No newline at end of file