@@ -40,28 +40,31 @@ public class PixelAsset {
4040 if (json .getAsJsonArray ().size () == 2 ) {
4141 vec .set (json .getAsJsonArray ().get (0 ).getAsFloat (), json .getAsJsonArray ().get (1 ).getAsFloat ());
4242 }
43+ } else if (json .isJsonObject ()) {
44+ var obj = json .getAsJsonObject ();
45+
46+ if (obj .has ("x" )) vec .x = obj .getAsJsonPrimitive ("x" ).getAsFloat ();
47+ if (obj .has ("y" )) vec .y = obj .getAsJsonPrimitive ("y" ).getAsFloat ();
4348 }
4449
4550 return vec ;
4651 })
47- .registerTypeAdapter (VariantDetails .class , new GenericJsonThing <VariantDetails >(new BiFunction <VariantDetails , JsonSerializationContext , JsonElement >() {
48- @ Override
49- public JsonElement apply (VariantDetails variantDetails , JsonSerializationContext ctx ) {
50- var obj = new JsonObject ();
51- if (variantDetails .material () != null ) obj .addProperty ("material" , variantDetails .material ());
52- if (variantDetails .hide () != null ) obj .addProperty ("hide" , variantDetails .hide ());
53- if (variantDetails .offset () != null && variantDetails .offset () != AnimationController .NO_OFFSET )
54- obj .add ("offset" , ctx .serialize (variantDetails .offset ()));
52+ .registerTypeAdapter (VariantDetails .class , new GenericJsonThing <VariantDetails >((variantDetails , ctx ) -> {
53+ var obj = new JsonObject ();
54+ if (variantDetails .material () != null ) obj .addProperty ("material" , variantDetails .material ());
55+ if (variantDetails .hide () != null ) obj .addProperty ("hide" , variantDetails .hide ());
56+ if (variantDetails .offset () != null && variantDetails .offset () != AnimationController .NO_OFFSET )
57+ obj .add ("transform" , ctx .serialize (variantDetails .offset ()));
5558
56- return obj ;
57- }
59+ return obj ;
5860 }, new BiFunction <JsonElement , JsonDeserializationContext , VariantDetails >() {
5961 @ Override
6062 public VariantDetails apply (JsonElement jsonElement , JsonDeserializationContext ctx ) {
6163 var obj = jsonElement .getAsJsonObject ();
6264 var material = obj .has ("material" ) ? obj .getAsJsonPrimitive ("material" ).getAsString () : null ;
6365 var hide = obj .has ("hide" ) ? obj .getAsJsonPrimitive ("hide" ).getAsBoolean () : null ;
6466 Transform offset = obj .has ("offset" ) ? ctx .deserialize (obj .get ("offset" ), Transform .class ) : null ;
67+ offset = offset == null && obj .has ("transform" ) ? ctx .deserialize (obj .get ("transform" ), Transform .class ) : null ;
6568 return new VariantDetails (material , hide , offset );
6669 }
6770 }))
@@ -95,8 +98,15 @@ public VariantDetails apply(JsonElement jsonElement, JsonDeserializationContext
9598 if (json .getAsJsonArray ().size () == 3 ) {
9699 vec .set (json .getAsJsonArray ().get (0 ).getAsFloat (), json .getAsJsonArray ().get (1 ).getAsFloat (), json .getAsJsonArray ().get (2 ).getAsFloat ());
97100 }
101+ } else if (json .isJsonObject ()) {
102+ var obj = json .getAsJsonObject ();
103+
104+ if (obj .has ("x" )) vec .x = obj .getAsJsonPrimitive ("x" ).getAsFloat ();
105+ if (obj .has ("y" )) vec .y = obj .getAsJsonPrimitive ("y" ).getAsFloat ();
106+ if (obj .has ("z" )) vec .y = obj .getAsJsonPrimitive ("z" ).getAsFloat ();
98107 }
99108
109+
100110 return vec ;
101111 }))
102112 .registerTypeAdapter (Quaternionf .class , new GenericJsonThing <Quaternionf >((json , ctx ) -> {
0 commit comments