Commit graph

10 commits

Author SHA1 Message Date
copilot-swe-agent[bot]
81b756292e Fix all compilation warnings (CS9107, CS8600, CS8604, CS8618, CS0168, CS0169, CS0649)
- Fix CS9107: Replace lowercase primary constructor parameter refs with
  PascalCase base class properties in 90+ StructuredComponent files
- Fix CS8618: Add null! initializers for late-initialized properties
- Fix CS8600: Use nullable out parameters in World.cs, ChatParser.cs
- Fix CS8604: Add null guard in Compiler.cs, fix null-conditional in McClient.cs
- Fix CS0168: Replace unused variable with discard in DataTypes.cs
- Fix CS0169: Remove unused motionY field from McClient.cs
- Fix CS0649: Remove never-assigned steps field, simplify ClientIsMoving()
- Initialize client/handler with null! to avoid CS8618 cascade

Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/7fcee1b2-21e2-4457-b01b-5e0a1f07752f
2026-03-24 01:25:50 +00:00
copilot-swe-agent[bot]
640a4e39b7 Fix CS9107 warnings: use base class properties instead of captured primary constructor parameters
Replace lowercase primary constructor parameter references (dataTypes.,
subComponentRegistry., itemPalette.) with PascalCase base class property
references (DataTypes., SubComponentRegistry., ItemPalette.) in method
bodies of all StructuredComponent and SubComponent subclasses.

This eliminates CS9107 warnings where subclass primary constructor
parameters shadow the base class properties they are assigned to.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 01:16:05 +00:00
copilot-swe-agent[bot]
94bf42710a refactor: use pattern matching for null checks (is null / is not null)
Convert remaining == null to is null and != null to is not null
across 17 files in CommandHandler/ArgumentType, StructuredComponents,
and DeclareCommands for idiomatic C# style.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 00:47:03 +00:00
BruceChen
c23c229eb2 feat: protocol 767 (1.21) packet handling and AttributeSubComponent update
- Add AttributeSubComponent121 that uses ResourceLocation(string) instead
  of UUID+Name, matching the 1.21 attribute modifier wire format change.
  Register it in SubComponentRegistry121 via new ReplaceSubComponent method.
- Add ProjectilePower packet handler: reads 1 double (accelerationPower)
  for 1.21+, or 3 doubles (xPower/yPower/zPower) for 1.20.6.
- Add CustomReportDetails and ServerLinks packet handlers in both Play
  and Configuration phases, consuming all fields to prevent byte offset
  errors on 1.21 servers.

Made-with: Cursor
2026-03-20 01:22:25 +08:00
BruceChen
4944497f5a fix: StructuredComponents batch 2 audit — BlockPredicate and PropertySubComponent serialization
Audited all 8 batch-2 components (enchantments, stored_enchantments,
can_place_on, can_break, lodestone_tracker, firework_explosion, fireworks,
banner_patterns, suspicious_stew_effects, bees) against official 1.20.6
decompiled STREAM_CODEC definitions.

Found and fixed 3 bugs in BlockPredicate/PropertySubComponent:

1. BlockPredicateSubcomponent.Serialize(): missing HasNbt bool write.
   Parse reads the bool but Serialize skipped writing it, causing all
   subsequent fields to be offset by one byte.

2. BlockPredicateSubcomponent.Serialize(): missing Properties list count
   VarInt write. Parse reads VarInt count before iterating, but Serialize
   only wrote the elements without the preceding count.

3. PropertySubComponent: RangedMatcher min/max values must use Optional
   encoding (Bool prefix + conditional String), matching the official
   ByteBufCodecs.either(ExactMatcher, RangedMatcher) where RangedMatcher
   uses ByteBufCodecs.optional(STRING_UTF8) for both min and max fields.
   Previously read/wrote plain Strings unconditionally.

Remaining 6 components (enchantments, stored_enchantments, lodestone_tracker,
firework_explosion, fireworks, banner_patterns, suspicious_stew_effects, bees)
verified correct — no changes needed.

Made-with: Cursor
2026-03-20 00:19:08 +08:00
Anon
f83e7c5707 Preliminary 1.21 Support 2024-12-06 16:45:48 +01:00
Anon
0da4a718cb Implemented all structured components, renamed them all to a better format 2024-10-05 13:37:52 +02:00
Anon
49319fe781 Added more components + added item palette reference 2024-09-11 20:35:23 +02:00
Anon
76e873ed54 WIP: Added some strctured components 2024-09-11 19:12:31 +02:00
Anon
63b027d84a First Version of Structured Components 2024-09-01 20:42:39 +02:00