blob: 489b3eee673a25a442c42a348b6607d9697dbff9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
using System.Text.Json;
using System.Text.Json.Serialization;
using MonoGame.Extended.Serialization;
namespace MonoGame.Extended.Particles.Serialization;
public static class ParticleJsonSerializerOptionsProvider
{
public static JsonSerializerOptions GetOptions(ITextureRegionService textureRegionService)
{
var options = new JsonSerializerOptions
{
WriteIndented = true,
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
};
options.Converters.Add(new Vector2JsonConverter());
options.Converters.Add(new Size2JsonConverter());
options.Converters.Add(new ColorJsonConverter());
options.Converters.Add(new TextureRegion2DJsonConverter(textureRegionService));
options.Converters.Add(new ProfileJsonConverter());
options.Converters.Add(new ModifierJsonConverter());
options.Converters.Add(new InterpolatorJsonConverter());
options.Converters.Add(new TimeSpanJsonConverter());
options.Converters.Add(new RangeJsonConverter<int>());
options.Converters.Add(new RangeJsonConverter<float>());
options.Converters.Add(new RangeJsonConverter<HslColor>());
options.Converters.Add(new HslColorJsonConverter());
options.Converters.Add(new ModifierExecutionStrategyJsonConverter());
return options;
}
}
|