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>
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>
Replace explicit constructor calls with target-typed new() expressions
where the type is already specified on the left side of the assignment.
This is a C# 9+ feature that reduces redundancy.
Files changed:
- Container.cs: field assignments in constructors
- EntityPalette18/112/113.cs: static field initializers
- ChatParser.cs: StringBuilder local variable
- Movement.cs: field assignments in constructor
- PacketPalette18.cs: field initializers
- EnchantmentMapping.cs: field reassignments
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- DirectionExtensions.cs: Convert GetOpposite() to switch expression,
use file-scoped namespace, use collection expression for HORIZONTAL
- McClient.cs: Convert InteractType switch to expression, use collection
expressions for array literals
- Protocol18.cs: Replace Array.Empty<byte>() with [], use collection
expressions for byte/int array literals
- DataTypes.cs: Use collection expression for TAG_End byte array
- ChatBot.cs: Use collection expressions for string/char arrays
- Location.cs: Use collection expressions and modernize null check
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/milutinke/Minecraft-Console-Client/sessions/4e9bd25b-22c5-47c2-98f9-6025d927b1d6
Replace '== null' with 'is null' and '!= null' with 'is not null'
across 19 core files following modern C# pattern matching conventions.
Only literal null comparisons are changed. Assignments, value
comparisons, and LINQ expressions are left untouched.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace '== null' with 'is null' and '!= null' with 'is not null'
for all 25 null comparisons in the file, following modern C# pattern
matching conventions.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace '== null' with 'is null' and '!= null' with 'is not null'
across 51 occurrences to use idiomatic C# pattern matching.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Replace all lock object declarations using 'object' type with the C# 13
System.Threading.Lock type across 12 files. The Lock type provides a
more efficient locking mechanism - when used with lock(), the compiler
automatically uses Lock.EnterScope() instead of Monitor.Enter/Exit.
Also made two previously non-readonly lock fields readonly:
- McClient.DigLock
- Protocol18.MessageSigningLock
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Update Account setting in configuration.md: clarify that Microsoft
accounts don't need passwords (device code flow with 2FA support),
add separate examples for Microsoft, offline, and Yggdrasil accounts
- Update usage.md: add tip about device code flow for Microsoft accounts,
update command-line examples to show Microsoft and offline patterns,
clarify that password is not needed in config files for Microsoft auth
- Update README.md features list: add Microsoft authentication with 2FA
support as a listed feature
Co-authored-by: milutinke <441903+milutinke@users.noreply.github.com>
Agent-Logs-Url: https://github.com/MCCTeam/Minecraft-Console-Client/sessions/3afd0e85-19ae-45c7-ac4b-c2b7bf733008