diff --git a/api/src/main/java/net/kyori/adventure/title/Title.java b/api/src/main/java/net/kyori/adventure/title/Title.java index e46bd3326..5b0625388 100644 --- a/api/src/main/java/net/kyori/adventure/title/Title.java +++ b/api/src/main/java/net/kyori/adventure/title/Title.java @@ -45,7 +45,7 @@ public interface Title extends Examinable { * * @since 4.0.0 */ - Times DEFAULT_TIMES = Times.of(Ticks.duration(10), Ticks.duration(70), Ticks.duration(20)); + Times DEFAULT_TIMES = Times.times(Ticks.duration(10), Ticks.duration(70), Ticks.duration(20)); /** * Creates a title. @@ -120,8 +120,24 @@ interface Times extends Examinable { * @param fadeOut the fade-out time * @return times * @since 4.0.0 + * @deprecated for removal since 4.10.0, use {@link #times()} */ + @ApiStatus.ScheduledForRemoval(inVersion = "5.0.0") + @Deprecated static @NotNull Times of(final @NotNull Duration fadeIn, final @NotNull Duration stay, final @NotNull Duration fadeOut) { + return times(fadeIn, stay, fadeOut); + } + + /** + * Creates times. + * + * @param fadeIn the fade-in time + * @param stay the stay time + * @param fadeOut the fade-out time + * @return times + * @since 4.10.0 + */ + static @NotNull Times times(final @NotNull Duration fadeIn, final @NotNull Duration stay, final @NotNull Duration fadeOut) { return new TitleImpl.TimesImpl(fadeIn, stay, fadeOut); } diff --git a/serializer-configurate3/src/main/java/net/kyori/adventure/serializer/configurate3/TitleSerializer.java b/serializer-configurate3/src/main/java/net/kyori/adventure/serializer/configurate3/TitleSerializer.java index 62930d163..6912374cb 100644 --- a/serializer-configurate3/src/main/java/net/kyori/adventure/serializer/configurate3/TitleSerializer.java +++ b/serializer-configurate3/src/main/java/net/kyori/adventure/serializer/configurate3/TitleSerializer.java @@ -63,7 +63,7 @@ private TitleSerializer() { final Duration fadeOut = value.getNode(TIMES, FADE_OUT).getValue(DurationSerializer.INSTANCE.type(), KEEP); if (!Objects.equals(fadeIn, KEEP) || !Objects.equals(stay, KEEP) || !Objects.equals(fadeOut, KEEP)) { - return Title.title(title, subtitle, Title.Times.of(fadeIn, stay, fadeOut)); + return Title.title(title, subtitle, Title.Times.times(fadeIn, stay, fadeOut)); } else { return Title.title(title, subtitle); } diff --git a/serializer-configurate3/src/test/java/net/kyori/adventure/serializer/configurate3/TitleSerializerTest.java b/serializer-configurate3/src/test/java/net/kyori/adventure/serializer/configurate3/TitleSerializerTest.java index aec69d4ee..989820a63 100644 --- a/serializer-configurate3/src/test/java/net/kyori/adventure/serializer/configurate3/TitleSerializerTest.java +++ b/serializer-configurate3/src/test/java/net/kyori/adventure/serializer/configurate3/TitleSerializerTest.java @@ -62,7 +62,7 @@ void testTitleWithTimes() { }); final Title title = Title.title(Component.text("Title"), Component.text("Subtitle", NamedTextColor.DARK_PURPLE), - Title.Times.of(Duration.ofSeconds(50), Duration.ofSeconds(20), Duration.ofSeconds(50))); + Title.Times.times(Duration.ofSeconds(50), Duration.ofSeconds(20), Duration.ofSeconds(50))); this.assertRoundtrippable(TitleSerializer.TYPE, title, node); } diff --git a/serializer-configurate4/src/main/java/net/kyori/adventure/serializer/configurate4/TitleSerializer.java b/serializer-configurate4/src/main/java/net/kyori/adventure/serializer/configurate4/TitleSerializer.java index 86eb48c8a..393c639e5 100644 --- a/serializer-configurate4/src/main/java/net/kyori/adventure/serializer/configurate4/TitleSerializer.java +++ b/serializer-configurate4/src/main/java/net/kyori/adventure/serializer/configurate4/TitleSerializer.java @@ -61,7 +61,7 @@ private TitleSerializer() { final Duration fadeOut = value.node(TIMES, FADE_OUT).get(Duration.class, KEEP); if (!Objects.equals(fadeIn, KEEP) || !Objects.equals(stay, KEEP) || !Objects.equals(fadeOut, KEEP)) { - return Title.title(title, subtitle, Title.Times.of(fadeIn, stay, fadeOut)); + return Title.title(title, subtitle, Title.Times.times(fadeIn, stay, fadeOut)); } else { return Title.title(title, subtitle); } diff --git a/serializer-configurate4/src/test/java/net/kyori/adventure/serializer/configurate4/TitleSerializerTest.java b/serializer-configurate4/src/test/java/net/kyori/adventure/serializer/configurate4/TitleSerializerTest.java index a1bb7bce0..cd1d8831d 100644 --- a/serializer-configurate4/src/test/java/net/kyori/adventure/serializer/configurate4/TitleSerializerTest.java +++ b/serializer-configurate4/src/test/java/net/kyori/adventure/serializer/configurate4/TitleSerializerTest.java @@ -62,7 +62,7 @@ void testTitleWithTimes() { }); final Title title = Title.title(Component.text("Title"), Component.text("Subtitle", NamedTextColor.DARK_PURPLE), - Title.Times.of(Duration.ofSeconds(50), Duration.ofSeconds(20), Duration.ofSeconds(50))); + Title.Times.times(Duration.ofSeconds(50), Duration.ofSeconds(20), Duration.ofSeconds(50))); this.assertRoundtrippable(Title.class, title, node); }