Skip to content

Commit 907a794

Browse files
authored
Merge pull request #96 from TheNextLvl-net/renovate/net.thenextlvl.core-i18n-3.x
fix(deps): update dependency net.thenextlvl.core:i18n to v3
2 parents e3068f7 + 327c83b commit 907a794

21 files changed

+412
-467
lines changed

api/build.gradle.kts

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ dependencies {
3333
exclude("org.jetbrains", "annotations")
3434
}
3535

36-
api("net.thenextlvl.core:i18n:1.0.21")
36+
api("net.thenextlvl.core:i18n:3.2.0")
3737
api("net.thenextlvl.core:paper:2.1.2")
3838
}
3939

src/main/java/net/thenextlvl/gopaint/GoPaintPlugin.java

+19-14
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,6 @@
99
import core.paper.adapters.key.KeyAdapter;
1010
import io.papermc.paper.plugin.lifecycle.event.types.LifecycleEvents;
1111
import net.kyori.adventure.key.Key;
12-
import net.kyori.adventure.text.minimessage.MiniMessage;
13-
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
14-
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
1512
import net.thenextlvl.gopaint.api.brush.BrushController;
1613
import net.thenextlvl.gopaint.api.brush.BrushRegistry;
1714
import net.thenextlvl.gopaint.api.model.GoPaintProvider;
@@ -27,27 +24,25 @@
2724
import org.bstats.bukkit.Metrics;
2825
import org.bukkit.Axis;
2926
import org.bukkit.Material;
30-
import org.bukkit.entity.Player;
3127
import org.bukkit.plugin.ServicePriority;
3228
import org.bukkit.plugin.java.JavaPlugin;
3329
import org.jspecify.annotations.NullMarked;
3430

35-
import java.io.File;
31+
import java.nio.file.Files;
32+
import java.nio.file.Path;
3633
import java.util.List;
3734
import java.util.Locale;
3835
import java.util.Set;
3936

4037
@NullMarked
4138
public class GoPaintPlugin extends JavaPlugin implements GoPaintProvider {
42-
private final File translations = new File(getDataFolder(), "translations");
43-
private final ComponentBundle bundle = new ComponentBundle(translations, audience ->
44-
audience instanceof Player player ? player.locale() : Locale.US)
45-
.register("messages", Locale.US)
46-
.register("messages_german", Locale.GERMANY)
47-
.miniMessage(bundle -> MiniMessage.builder().tags(TagResolver.resolver(
48-
TagResolver.standard(),
49-
Placeholder.component("prefix", bundle.component(Locale.US, "prefix"))
50-
)).build());
39+
private final Key key = Key.key("gopaint_advanced", "translations");
40+
private final Path translations = getDataPath().resolve("translations");
41+
private final ComponentBundle bundle = ComponentBundle.builder(key, translations)
42+
.placeholder("prefix", "prefix")
43+
.resource("gopaint.properties", Locale.US)
44+
.resource("gopaint_german.properties", Locale.GERMANY)
45+
.build();
5146

5247
private final BrushController brushController = new CraftBrushController(this);
5348
private final BrushRegistry brushRegistry = new CraftBrushRegistry(this);
@@ -76,6 +71,16 @@ public GoPaintPlugin() {
7671
@Override
7772
public void onLoad() {
7873
versionChecker.checkVersion();
74+
warnTranslationChanges();
75+
}
76+
77+
private void warnTranslationChanges() {
78+
if (!Files.isRegularFile(translations.resolve("messages.properties"))
79+
&& !Files.isRegularFile(translations.resolve("messages_german.properties"))) return;
80+
getComponentLogger().warn("The translations for goPaintAdvanced had major backwards incompatible changes");
81+
getComponentLogger().warn("For this reason the 'messages' files got renamed to 'gopaint'");
82+
getComponentLogger().warn("If you made changes to your translations before, you have to do them again in the new 'gopaint' files");
83+
getComponentLogger().warn("This message will go away once you have deleted the old 'messages' files from '{}'", translations);
7984
}
8085

8186
@Override

src/main/java/net/thenextlvl/gopaint/brush/setting/CraftPlayerBrushSettings.java

+27-25
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import net.kyori.adventure.key.Key;
2525
import net.kyori.adventure.text.Component;
2626
import net.kyori.adventure.text.JoinConfiguration;
27+
import net.kyori.adventure.text.format.Style;
28+
import net.kyori.adventure.text.minimessage.tag.resolver.Formatter;
2729
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
2830
import net.thenextlvl.gopaint.GoPaintPlugin;
2931
import net.thenextlvl.gopaint.api.brush.PatternBrush;
@@ -250,56 +252,56 @@ public boolean exportSettings(ItemStack itemStack) {
250252

251253
var lines = new ArrayList<Component>();
252254
lines.add(Component.empty());
253-
lines.add(plugin.bundle().component(player, "brush.exported.size",
254-
Placeholder.parsed("size", String.valueOf(getBrushSize()))));
255+
lines.add(plugin.bundle().component("brush.exported.size", player,
256+
Formatter.number("size", getBrushSize())));
255257
if (getBrush() instanceof SprayBrush) {
256-
lines.add(plugin.bundle().component(player, "brush.exported.chance",
257-
Placeholder.parsed("chance", String.valueOf(getChance()))));
258+
lines.add(plugin.bundle().component("brush.exported.chance", player,
259+
Formatter.number("chance", getChance())));
258260
} else if (getBrush() instanceof OverlayBrush || getBrush() instanceof UnderlayBrush) {
259-
lines.add(plugin.bundle().component(player, "brush.exported.thickness",
260-
Placeholder.parsed("thickness", String.valueOf(getThickness()))));
261+
lines.add(plugin.bundle().component("brush.exported.thickness", player,
262+
Formatter.number("thickness", getThickness())));
261263
} else if (getBrush() instanceof DiskBrush) {
262-
lines.add(plugin.bundle().component(player, "brush.exported.axis",
264+
lines.add(plugin.bundle().component("brush.exported.axis", player,
263265
Placeholder.parsed("axis", getAxis().name())));
264266
} else if (getBrush() instanceof AngleBrush) {
265-
lines.add(plugin.bundle().component(player, "brush.exported.angle.distance",
266-
Placeholder.parsed("distance", String.valueOf(getAngleDistance()))));
267-
lines.add(plugin.bundle().component(player, "brush.exported.angle.height",
268-
Placeholder.parsed("height", String.valueOf(getAngleHeightDifference()))));
267+
lines.add(plugin.bundle().component("brush.exported.angle.distance", player,
268+
Formatter.number("distance", getAngleDistance())));
269+
lines.add(plugin.bundle().component("brush.exported.angle.height", player,
270+
Formatter.number("height", getAngleHeightDifference())));
269271
} else if (getBrush() instanceof SplatterBrush || getBrush() instanceof PaintBrush) {
270-
lines.add(plugin.bundle().component(player, "brush.exported.falloff",
271-
Placeholder.parsed("falloff", String.valueOf(getFalloffStrength()))));
272+
lines.add(plugin.bundle().component("brush.exported.falloff", player,
273+
Formatter.number("falloff", getFalloffStrength())));
272274
} else if (getBrush() instanceof GradientBrush) {
273-
lines.add(plugin.bundle().component(player, "brush.exported.mixing",
274-
Placeholder.parsed("mixing", String.valueOf(getMixingStrength()))));
275-
lines.add(plugin.bundle().component(player, "brush.exported.falloff",
276-
Placeholder.parsed("falloff", String.valueOf(getFalloffStrength()))));
275+
lines.add(plugin.bundle().component("brush.exported.mixing", player,
276+
Formatter.number("mixing", getMixingStrength())));
277+
lines.add(plugin.bundle().component("brush.exported.falloff", player,
278+
Formatter.number("falloff", getFalloffStrength())));
277279
} else if (getBrush() instanceof FractureBrush) {
278-
lines.add(plugin.bundle().component(player, "brush.exported.fracture",
279-
Placeholder.parsed("fracture", String.valueOf(getFractureStrength()))));
280+
lines.add(plugin.bundle().component("brush.exported.fracture", player,
281+
Formatter.number("fracture", getFractureStrength())));
280282
}
281283
if (!blocks.isEmpty()) {
282284
var blocks = getBlocks().stream()
283285
.map(Material::translationKey)
284286
.map(Component::translatable)
285287
.toList();
286-
lines.add(plugin.bundle().component(player, "brush.exported.blocks",
288+
lines.add(plugin.bundle().component("brush.exported.blocks", player,
287289
Placeholder.component("blocks", Component.join(JoinConfiguration.commas(true), blocks))));
288290
}
289291

290292
if (isMaskEnabled()) {
291-
lines.add(plugin.bundle().component(player, "brush.exported.mask",
293+
lines.add(plugin.bundle().component("brush.exported.mask", player,
292294
Placeholder.component("mask", Component.translatable(getMask().translationKey()))));
293295
}
294296

295297
if (!getSurfaceMode().equals(SurfaceMode.DISABLED)) {
296-
var mode = plugin.bundle().component(player, getSurfaceMode().translationKey());
297-
lines.add(plugin.bundle().component(player, "brush.exported.surface-mode",
298-
Placeholder.component("mode", mode)));
298+
var mode = plugin.bundle().component(getSurfaceMode().translationKey(), player);
299+
lines.add(plugin.bundle().component("brush.exported.surface-mode", player,
300+
Placeholder.component("mode", mode.style(Style.empty()))));
299301
}
300302

301303
itemStack.setData(DataComponentTypes.ENCHANTMENT_GLINT_OVERRIDE, true);
302-
itemStack.setData(DataComponentTypes.ITEM_NAME, plugin.bundle().component(player, "brush.exported.name",
304+
itemStack.setData(DataComponentTypes.ITEM_NAME, plugin.bundle().component("brush.exported.name", player,
303305
Placeholder.component("brush", getBrush().getName(player))));
304306
itemStack.setData(DataComponentTypes.LORE, ItemLore.lore(lines));
305307

src/main/java/net/thenextlvl/gopaint/brush/standard/AngleBrush.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public AngleBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.angle");
48+
return provider.bundle().component("brush.name.angle", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.angle");
53+
return new Component[]{provider.bundle().component("brush.description.angle", audience)};
5454
}
5555

5656
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/BucketBrush.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,15 @@ public BucketBrush(GoPaintProvider provider) {
4848

4949
@Override
5050
public Component getName(Audience audience) {
51-
return provider.bundle().component(audience, "brush.name.bucket");
51+
return provider.bundle().component("brush.name.bucket", audience);
5252
}
5353

5454
@Override
5555
public Component[] getDescription(Audience audience) {
56-
return provider.bundle().components(audience, "brush.description.bucket");
56+
return new Component[]{
57+
provider.bundle().component("brush.description.bucket.1", audience),
58+
provider.bundle().component("brush.description.bucket.2", audience)
59+
};
5760
}
5861

5962
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/DiskBrush.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,16 @@ public DiskBrush(GoPaintProvider provider) {
4747

4848
@Override
4949
public Component getName(Audience audience) {
50-
return provider.bundle().component(audience, "brush.name.disk");
50+
return provider.bundle().component("brush.name.disk", audience);
5151
}
5252

5353
@Override
5454
public Component[] getDescription(Audience audience) {
55-
return provider.bundle().components(audience, "brush.description.disk");
55+
return new Component[]{
56+
provider.bundle().component("brush.description.disk.1", audience),
57+
provider.bundle().component("brush.description.disk.2", audience),
58+
provider.bundle().component("brush.description.disk.3", audience)
59+
};
5660
}
5761

5862
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/FractureBrush.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public FractureBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.fracture");
48+
return provider.bundle().component("brush.name.fracture", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.fracture");
53+
return new Component[]{provider.bundle().component("brush.description.fracture", audience)};
5454
}
5555

5656
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/GradientBrush.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public GradientBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.gradient");
48+
return provider.bundle().component("brush.name.gradient", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.gradient");
53+
return new Component[]{provider.bundle().component("brush.description.gradient", audience)};
5454
}
5555

5656
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/OverlayBrush.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,15 @@ public OverlayBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.overlay");
48+
return provider.bundle().component("brush.name.overlay", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.overlay");
53+
return new Component[]{
54+
provider.bundle().component("brush.description.overlay.1", audience),
55+
provider.bundle().component("brush.description.overlay.2", audience)
56+
};
5457
}
5558

5659
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/PaintBrush.java

+10-7
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import net.kyori.adventure.audience.Audience;
2929
import net.kyori.adventure.key.Key;
3030
import net.kyori.adventure.text.Component;
31-
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
31+
import net.kyori.adventure.text.minimessage.tag.resolver.Formatter;
3232
import net.thenextlvl.gopaint.api.brush.PatternBrush;
3333
import net.thenextlvl.gopaint.api.brush.setting.BrushSettings;
3434
import net.thenextlvl.gopaint.api.math.Sphere;
@@ -59,12 +59,15 @@ public PaintBrush(GoPaintProvider provider) {
5959

6060
@Override
6161
public Component getName(Audience audience) {
62-
return provider.bundle().component(audience, "brush.name.paint");
62+
return provider.bundle().component("brush.name.paint", audience);
6363
}
6464

6565
@Override
6666
public Component[] getDescription(Audience audience) {
67-
return provider.bundle().components(audience, "brush.description.paint");
67+
return new Component[]{
68+
provider.bundle().component("brush.description.paint.1", audience),
69+
provider.bundle().component("brush.description.paint.2", audience)
70+
};
6871
}
6972

7073
@Override
@@ -82,10 +85,10 @@ public void build(EditSession session, BlockVector3 position, Pattern original,
8285

8386
if (!bukkit.getPlayer().isSneaking()) {
8487
provider.bundle().sendMessage(bukkit.getPlayer(), "brush.paint.point.set",
85-
Placeholder.parsed("x", String.valueOf(position.x())),
86-
Placeholder.parsed("y", String.valueOf(position.y())),
87-
Placeholder.parsed("z", String.valueOf(position.z())),
88-
Placeholder.parsed("point", String.valueOf(selectedPoints.get(id).size()))
88+
Formatter.number("x", position.x()),
89+
Formatter.number("y", position.y()),
90+
Formatter.number("z", position.z()),
91+
Formatter.number("point", selectedPoints.get(id).size())
8992
);
9093
return;
9194
}

src/main/java/net/thenextlvl/gopaint/brush/standard/SphereBrush.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public SphereBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.sphere");
48+
return provider.bundle().component("brush.name.sphere", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.sphere");
53+
return new Component[]{provider.bundle().component("brush.description.sphere", audience)};
5454
}
5555

5656
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/SplatterBrush.java

+6-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,16 @@ public SplatterBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.splatter");
48+
return provider.bundle().component("brush.name.splatter", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.splatter");
53+
return new Component[]{
54+
provider.bundle().component("brush.description.splatter.1", audience),
55+
provider.bundle().component("brush.description.splatter.2", audience),
56+
provider.bundle().component("brush.description.splatter.3", audience)
57+
};
5458
}
5559

5660
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/SprayBrush.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ public SprayBrush(GoPaintProvider provider) {
4545

4646
@Override
4747
public Component getName(Audience audience) {
48-
return provider.bundle().component(audience, "brush.name.spray");
48+
return provider.bundle().component("brush.name.spray", audience);
4949
}
5050

5151
@Override
5252
public Component[] getDescription(Audience audience) {
53-
return provider.bundle().components(audience, "brush.description.spray");
53+
return new Component[]{provider.bundle().component("brush.description.spray", audience)};
5454
}
5555

5656
@Override

src/main/java/net/thenextlvl/gopaint/brush/standard/UnderlayBrush.java

+5-2
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,15 @@ public UnderlayBrush(GoPaintProvider provider) {
2727

2828
@Override
2929
public Component getName(Audience audience) {
30-
return provider.bundle().component(audience, "brush.name.underlay");
30+
return provider.bundle().component("brush.name.underlay", audience);
3131
}
3232

3333
@Override
3434
public Component[] getDescription(Audience audience) {
35-
return provider.bundle().components(audience, "brush.description.underlay");
35+
return new Component[]{
36+
provider.bundle().component("brush.description.underlay.1", audience),
37+
provider.bundle().component("brush.description.underlay.2", audience)
38+
};
3639
}
3740

3841
@Override

src/main/java/net/thenextlvl/gopaint/command/SizeCommand.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import com.mojang.brigadier.context.CommandContext;
77
import io.papermc.paper.command.brigadier.CommandSourceStack;
88
import io.papermc.paper.command.brigadier.Commands;
9-
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
9+
import net.kyori.adventure.text.minimessage.tag.resolver.Formatter;
1010
import net.thenextlvl.gopaint.GoPaintPlugin;
1111
import org.bukkit.entity.Player;
1212
import org.jspecify.annotations.NullMarked;
@@ -25,7 +25,7 @@ private static int size(CommandContext<CommandSourceStack> context, GoPaintPlugi
2525
var settings = plugin.brushController().getBrushSettings(player);
2626
settings.setBrushSize(context.getArgument("size", int.class));
2727
plugin.bundle().sendMessage(player, "command.gopaint.brush.size",
28-
Placeholder.parsed("size", String.valueOf(settings.getBrushSize())));
28+
Formatter.number("size", settings.getBrushSize()));
2929
return Command.SINGLE_SUCCESS;
3030
}
3131
}

0 commit comments

Comments
 (0)