muffin v7.5.5

This commit is contained in:
alydev 2026-08-17 20:25:32 +10:00
parent a8f2c1df37
commit 6266f9e6b7
110 changed files with 14907 additions and 6073 deletions

View file

@ -17,6 +17,13 @@ public sealed class ElementIdConverter : JsonConverter<ElementId>
public override void Write(Utf8JsonWriter writer, ElementId value, JsonSerializerOptions options)
{
throw new NotImplementedException();
if (value is QuestId)
{
writer.WriteNumberValue(value.Value);
}
else
{
writer.WriteStringValue(value.ToString());
}
}
}

View file

@ -32,6 +32,18 @@ public sealed class ElementIdListConverter : JsonConverter<List<ElementId>>
public override void Write(Utf8JsonWriter writer, List<ElementId> value, JsonSerializerOptions options)
{
throw new NotImplementedException();
writer.WriteStartArray();
foreach (ElementId item in value)
{
if (item is QuestId)
{
writer.WriteNumberValue(item.Value);
}
else
{
writer.WriteStringValue(item.ToString());
}
}
writer.WriteEndArray();
}
}

View file

@ -57,6 +57,26 @@ public sealed class QuestWorkConfigConverter : JsonConverter<QuestWorkValue>
public override void Write(Utf8JsonWriter writer, QuestWorkValue value, JsonSerializerOptions options)
{
throw new NotImplementedException();
if (value != null && value.High.HasValue && value.Low.HasValue && value.Mode == EQuestWorkMode.Bitwise)
{
byte value2 = (byte)((value.High.Value << 4) + value.Low.Value);
writer.WriteNumberValue(value2);
return;
}
writer.WriteStartObject();
if (value.High.HasValue)
{
writer.WriteNumber("High", value.High.Value);
}
if (value.Low.HasValue)
{
writer.WriteNumber("Low", value.Low.Value);
}
if (value.Mode != EQuestWorkMode.Bitwise)
{
writer.WritePropertyName("Mode");
new QuestWorkModeConverter().Write(writer, value.Mode, options);
}
writer.WriteEndObject();
}
}