Minecraft-Console-Client/MinecraftClient/Protocol/Handlers/StructuredComponents/Components/1_21_11/KineticWeaponComponent.cs
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

47 lines
1.7 KiB
C#

using System.Collections.Generic;
using MinecraftClient.Inventory.ItemPalettes;
using MinecraftClient.Protocol.Handlers.StructuredComponents.Core;
namespace MinecraftClient.Protocol.Handlers.StructuredComponents.Components._1_21_11;
public class KineticWeaponComponent(DataTypes dataTypes, ItemPalette itemPalette, SubComponentRegistry subComponentRegistry)
: StructuredComponent(dataTypes, itemPalette, subComponentRegistry)
{
public override void Parse(Queue<byte> data)
{
DataTypes.ReadNextVarInt(data); // contactCooldownTicks
DataTypes.ReadNextVarInt(data); // delayTicks
ReadOptionalCondition(data); // dismountConditions
ReadOptionalCondition(data); // knockbackConditions
ReadOptionalCondition(data); // damageConditions
DataTypes.ReadNextFloat(data); // forwardMovement
DataTypes.ReadNextFloat(data); // damageMultiplier
ReadOptionalSoundEventHolder(data); // sound
ReadOptionalSoundEventHolder(data); // hitSound
}
private void ReadOptionalCondition(Queue<byte> data)
{
if (!DataTypes.ReadNextBool(data)) return;
DataTypes.ReadNextVarInt(data); // maxDurationTicks
DataTypes.ReadNextFloat(data); // minSpeed
DataTypes.ReadNextFloat(data); // minRelativeSpeed
}
private void ReadOptionalSoundEventHolder(Queue<byte> data)
{
if (!DataTypes.ReadNextBool(data)) return;
var holderId = DataTypes.ReadNextVarInt(data);
if (holderId == 0)
{
DataTypes.ReadNextString(data);
if (DataTypes.ReadNextBool(data))
DataTypes.ReadNextFloat(data);
}
}
public override Queue<byte> Serialize()
{
return new Queue<byte>();
}
}