Commit Graph

10 Commits

Author SHA1 Message Date
b3f24d9828 Switch to Entity.sendSystemMessage for chat output
All checks were successful
continuous-integration/drone/push Build is passing
displayClientMessage(Component, boolean) was removed from LocalPlayer
in 26.2. sendSystemMessage(Component) is inherited from Entity, has
been part of Mojang's public API since 1.19, and LocalPlayer overrides
it to route the message into the local chat hud, which is exactly the
behaviour we want.
2026-06-21 16:10:40 +06:00
0e6377fce1 Route chat output through LocalPlayer.displayClientMessage
Some checks failed
continuous-integration/drone/push Build is failing
Gui.chat is private in 26.2 and Gui.getChat() is gone, so the previous
direct-field access does not compile. Player.displayClientMessage is a
public, stable API for client-side chat output, so push everything
through it. When the player is null (e.g. on the title screen before
join, where the auto-connect "Connected to ..." line lands), fall back
to the logger so the message is not silently dropped.
2026-06-21 16:07:19 +06:00
b0501acfcd Update chat and GameProfile accessors for 26.2
Some checks failed
continuous-integration/drone/push Build is failing
In 26.2 Mojang dropped the getChat() wrapper on Gui in favour of the
public 'chat' field, and com.mojang.authlib.GameProfile is now a record
so its getter is name() rather than getName(). Reflect both changes in
the IRC chat dispatcher.
2026-06-21 16:03:52 +06:00
8a969bc843 Drop mappings declaration for unobfuscated 26.2
Some checks failed
continuous-integration/drone/push Build is failing
Starting with 26.1 Mojang ships Minecraft unobfuscated, and Yarn /
Intermediary are no longer published past 1.21.11. Loom does not need
a mappings dependency in that mode: the Mojang-named source compiles
directly. Remove the mappings line, drop the yarn_mappings property,
revert the client entrypoint to Mojang names (Minecraft, Component,
ChatFormatting, gui.getChat(), getUser().getName()), and rewrite the
README note so it stops claiming Mojang mappings via Loom.
2026-06-21 15:57:22 +06:00
71dc665ef1 Switch to Yarn mappings 26.2+build.3
Some checks failed
continuous-integration/drone/push Build is failing
Loom rejected officialMojangMappings() with a non-obfuscated
environment error, and Mojang client_mappings are not published for
26.2 yet. Pin Yarn at 26.2+build.3 via the new yarn_mappings property
and rewrite the client entrypoint with Yarn names: MinecraftClient,
Text, Formatting, inGameHud.getChatHud(), getSession().getUsername().
2026-06-21 15:49:02 +06:00
77a44be34b Run IRC socket I/O on a dedicated background thread
Some checks failed
continuous-integration/drone/push Build is failing
Auto-connect on CLIENT_STARTED, .irc reconnect and .irc <msg> all used
to open a TCP socket on the render thread with a 5s connect timeout,
freezing client startup and chat input when the server was unreachable.
Dispatch those paths through a single daemon executor instead, and
release the socket plus the executor on CLIENT_STOPPING.
2026-06-21 15:40:02 +06:00
41b68d45c5 Decouple IrcConfig from client source set
Some checks failed
continuous-integration/drone/push Build is failing
2026-06-21 15:08:51 +06:00
93e1b409c2 Adapt client entrypoint to 26.2 mappings
Some checks failed
continuous-integration/drone/push Build is failing
2026-06-21 14:56:48 +06:00
a37224a1c8 Fix target version to Minecraft 26.2
Some checks failed
continuous-integration/drone/push Build is failing
2026-06-21 14:41:10 +06:00
910c58c30b Add Fabric client IRC chat mod and Drone pipeline 2026-06-21 14:31:38 +06:00