Skip to content

Commit e763f98

Browse files
committed
Changes synced with 1.14.4 branch.
Signed-off-by: Pavel Erokhin (MairwunNx) <[email protected]>
1 parent 80065c7 commit e763f98

File tree

83 files changed

+1368
-411
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

83 files changed

+1368
-411
lines changed

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/ExecuteCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.google.common.collect.Lists;
44
import com.mairwunnx.projectessentials.core.JavaCompatibility;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
56
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
67
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
78
import com.mojang.brigadier.Command;
@@ -52,6 +53,9 @@
5253
import java.util.function.BinaryOperator;
5354
import java.util.function.IntFunction;
5455

56+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
57+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
58+
5559
@SuppressWarnings("CodeBlock2Expr")
5660
public class ExecuteCommand {
5761
private static final Dynamic2CommandExceptionType TOO_MANY_BLOCKS = new Dynamic2CommandExceptionType((p_208885_0_, p_208885_1_) -> {
@@ -142,15 +146,17 @@ private static void checkPermissions(CommandSource source) {
142146
.replace("%1", "execute")
143147
);
144148
throw new CommandException(
145-
new TranslationTextComponent(
149+
textComponentFrom(
150+
source.asPlayer(),
151+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
146152
"native.command.restricted"
147153
).setStyle(
148154
new Style().setHoverEvent(
149-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
150-
new TranslationTextComponent(
151-
"native.command.restricted_hover",
152-
"native.execute", "2"
153-
)
155+
hoverEventFrom(
156+
source.asPlayer(),
157+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
158+
"native.command.restricted_hover",
159+
"native.execute", "2"
154160
)
155161
)
156162
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/ForceLoadCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.google.common.base.Joiner;
44
import com.mairwunnx.projectessentials.core.JavaCompatibility;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
56
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
67
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
78
import com.mojang.brigadier.CommandDispatcher;
@@ -24,6 +25,9 @@
2425
import org.apache.logging.log4j.LogManager;
2526
import org.apache.logging.log4j.Logger;
2627

28+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
29+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
30+
2731
@SuppressWarnings("CodeBlock2Expr")
2832
public class ForceLoadCommand {
2933
private static Logger logger = LogManager.getLogger();
@@ -68,15 +72,17 @@ private static void checkPermissions(CommandSource source) {
6872
.replace("%1", "forceload")
6973
);
7074
throw new CommandException(
71-
new TranslationTextComponent(
75+
textComponentFrom(
76+
source.asPlayer(),
77+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
7278
"native.command.restricted"
7379
).setStyle(
7480
new Style().setHoverEvent(
75-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
76-
new TranslationTextComponent(
77-
"native.command.restricted_hover",
78-
"native.forceload", "2"
79-
)
81+
hoverEventFrom(
82+
source.asPlayer(),
83+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
84+
"native.command.restricted_hover",
85+
"native.forceload", "2"
8086
)
8187
)
8288
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/LootCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.google.common.collect.Lists;
44
import com.mairwunnx.projectessentials.core.JavaCompatibility;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
56
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
67
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
78
import com.mojang.brigadier.CommandDispatcher;
@@ -43,6 +44,9 @@
4344
import java.util.List;
4445
import java.util.Objects;
4546

47+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
48+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
49+
4650
@SuppressWarnings("CodeBlock2Expr")
4751
public class LootCommand {
4852
public static final SuggestionProvider<CommandSource> field_218904_a = (p_218873_0_, p_218873_1_) -> {
@@ -97,15 +101,17 @@ private static void checkPermissions(CommandSource source) {
97101
.replace("%1", "loot")
98102
);
99103
throw new CommandException(
100-
new TranslationTextComponent(
104+
textComponentFrom(
105+
source.asPlayer(),
106+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
101107
"native.command.restricted"
102108
).setStyle(
103109
new Style().setHoverEvent(
104-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
105-
new TranslationTextComponent(
106-
"native.command.restricted_hover",
107-
"native.loot", "2"
108-
)
110+
hoverEventFrom(
111+
source.asPlayer(),
112+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
113+
"native.command.restricted_hover",
114+
"native.loot", "2"
109115
)
110116
)
111117
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/ScoreboardCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.google.common.collect.Lists;
44
import com.mairwunnx.projectessentials.core.JavaCompatibility;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
56
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
67
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
78
import com.mojang.brigadier.CommandDispatcher;
@@ -33,6 +34,9 @@
3334
import java.util.Map.Entry;
3435
import java.util.concurrent.CompletableFuture;
3536

37+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
38+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
39+
3640
@SuppressWarnings("CodeBlock2Expr")
3741
public class ScoreboardCommand {
3842
private static Logger logger = LogManager.getLogger();
@@ -99,15 +103,17 @@ private static void checkPermissions(CommandSource source) {
99103
.replace("%1", "scoreboard")
100104
);
101105
throw new CommandException(
102-
new TranslationTextComponent(
106+
textComponentFrom(
107+
source.asPlayer(),
108+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
103109
"native.command.restricted"
104110
).setStyle(
105111
new Style().setHoverEvent(
106-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
107-
new TranslationTextComponent(
108-
"native.command.restricted_hover",
109-
"native.scoreboard", "2"
110-
)
112+
hoverEventFrom(
113+
source.asPlayer(),
114+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
115+
"native.command.restricted_hover",
116+
"native.scoreboard", "2"
111117
)
112118
)
113119
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/SpreadPlayersCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.google.common.collect.Maps;
44
import com.google.common.collect.Sets;
55
import com.mairwunnx.projectessentials.core.JavaCompatibility;
6+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
67
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
78
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
89
import com.mojang.brigadier.CommandDispatcher;
@@ -33,6 +34,9 @@
3334

3435
import java.util.*;
3536

37+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
38+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
39+
3640
@SuppressWarnings("CodeBlock2Expr")
3741
public class SpreadPlayersCommand {
3842
private static Logger logger = LogManager.getLogger();
@@ -63,15 +67,17 @@ private static void checkPermissions(CommandSource source) {
6367
.replace("%1", "spreadplayers")
6468
);
6569
throw new CommandException(
66-
new TranslationTextComponent(
70+
textComponentFrom(
71+
source.asPlayer(),
72+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
6773
"native.command.restricted"
6874
).setStyle(
6975
new Style().setHoverEvent(
70-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
71-
new TranslationTextComponent(
72-
"native.command.restricted_hover",
73-
"native.spreadplayers", "2"
74-
)
76+
hoverEventFrom(
77+
source.asPlayer(),
78+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
79+
"native.command.restricted_hover",
80+
"native.spreadplayers", "2"
7581
)
7682
)
7783
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/TeamCommand.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import com.google.common.collect.Lists;
44
import com.mairwunnx.projectessentials.core.JavaCompatibility;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
56
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
67
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
78
import com.mojang.brigadier.CommandDispatcher;
@@ -28,6 +29,9 @@
2829
import java.util.Collection;
2930
import java.util.Collections;
3031

32+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
33+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
34+
3135
@SuppressWarnings("CodeBlock2Expr")
3236
public class TeamCommand {
3337
private static Logger logger = LogManager.getLogger();
@@ -118,15 +122,17 @@ private static void checkPermissions(CommandSource source) {
118122
.replace("%1", "team")
119123
);
120124
throw new CommandException(
121-
new TranslationTextComponent(
125+
textComponentFrom(
126+
source.asPlayer(),
127+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
122128
"native.command.restricted"
123129
).setStyle(
124130
new Style().setHoverEvent(
125-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
126-
new TranslationTextComponent(
127-
"native.command.restricted_hover",
128-
"native.team", "2"
129-
)
131+
hoverEventFrom(
132+
source.asPlayer(),
133+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
134+
"native.command.restricted_hover",
135+
"native.team", "2"
130136
)
131137
)
132138
)

src/main/java/com/mairwunnx/projectessentials/core/vanilla/commands/TeleportCommand.java

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.mairwunnx.projectessentials.core.vanilla.commands;
22

33
import com.mairwunnx.projectessentials.core.JavaCompatibility;
4+
import com.mairwunnx.projectessentials.core.backlocation.BackLocationProvider;
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils;
46
import com.mairwunnx.projectessentials.core.helpers.ModErrorsHelperKt;
57
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils;
68
import com.mojang.brigadier.CommandDispatcher;
@@ -29,6 +31,9 @@
2931
import java.util.EnumSet;
3032
import java.util.Set;
3133

34+
import static com.mairwunnx.projectessentials.core.extensions.HoverEventExtensionsKt.hoverEventFrom;
35+
import static com.mairwunnx.projectessentials.core.extensions.TextComponentExtensionsKt.textComponentFrom;
36+
3237
@SuppressWarnings("CodeBlock2Expr")
3338
public class TeleportCommand {
3439
private static Logger logger = LogManager.getLogger();
@@ -69,15 +74,17 @@ private static void checkPermissions(CommandSource source) {
6974
.replace("%1", "teleport")
7075
);
7176
throw new CommandException(
72-
new TranslationTextComponent(
77+
textComponentFrom(
78+
source.asPlayer(),
79+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
7380
"native.command.restricted"
7481
).setStyle(
7582
new Style().setHoverEvent(
76-
new HoverEvent(HoverEvent.Action.SHOW_TEXT,
77-
new TranslationTextComponent(
78-
"native.command.restricted_hover",
79-
"native.teleport", "2"
80-
)
83+
hoverEventFrom(
84+
source.asPlayer(),
85+
LocalizationConfigurationUtils.INSTANCE.getConfig().getEnabled(),
86+
"native.command.restricted_hover",
87+
"native.teleport", "2"
8188
)
8289
)
8390
)
@@ -152,6 +159,12 @@ private static int teleportToPos(CommandSource source, Collection<? extends Enti
152159
}
153160

154161
private static void teleport(CommandSource source, Entity entityIn, ServerWorld worldIn, double x, double y, double z, Set<SPlayerPositionLookPacket.Flags> relativeList, float yaw, float pitch, @Nullable Facing facing) {
162+
try {
163+
BackLocationProvider.INSTANCE.commit(source.asPlayer());
164+
} catch (CommandSyntaxException e) {
165+
// suppressed. Sorry.
166+
}
167+
155168
if (entityIn instanceof ServerPlayerEntity) {
156169
ChunkPos chunkpos = new ChunkPos(new BlockPos(x, y, z));
157170
worldIn.getChunkProvider().func_217228_a(TicketType.POST_TELEPORT, chunkpos, 1, entityIn.getEntityId());

src/main/kotlin/com/mairwunnx/projectessentials/core/EntryPoint.kt

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
package com.mairwunnx.projectessentials.core
22

3+
import com.mairwunnx.projectessentials.core.backlocation.BackLocationCommand
34
import com.mairwunnx.projectessentials.core.configuration.commands.CommandsConfigurationUtils
5+
import com.mairwunnx.projectessentials.core.configuration.localization.LocalizationConfigurationUtils
6+
import com.mairwunnx.projectessentials.core.localization.fallbackLanguage
7+
import com.mairwunnx.projectessentials.core.localization.processLocalizations
48
import com.mairwunnx.projectessentials.core.vanilla.commands.*
59
import com.mairwunnx.projectessentials.core.vanilla.utils.NativeCommandUtils
610
import com.mairwunnx.projectessentials.permissions.permissions.PermissionsAPI
@@ -21,12 +25,27 @@ internal class EntryPoint : EssBase() {
2125

2226
init {
2327
modInstance = this
24-
modVersion = "1.15.2-1.0.0"
28+
modVersion = "1.15.2-1.1.0"
2529
logBaseInfo()
2630
validateForgeVersion()
2731
MinecraftForge.EVENT_BUS.register(this)
2832
loadAdditionalModules()
2933
CommandsConfigurationUtils.loadConfig()
34+
LocalizationConfigurationUtils.loadConfig()
35+
loadLocalization()
36+
}
37+
38+
private fun loadLocalization() {
39+
fallbackLanguage = LocalizationConfigurationUtils.getConfig().fallbackLanguage
40+
41+
if (LocalizationConfigurationUtils.getConfig().enabled) {
42+
processLocalizations(
43+
EntryPoint::class.java, listOf(
44+
"/assets/projectessentialscore/lang/en_us.json",
45+
"/assets/projectessentialscore/lang/ru_ru.json"
46+
)
47+
)
48+
}
3049
}
3150

3251
companion object {
@@ -37,7 +56,7 @@ internal class EntryPoint : EssBase() {
3756
internal fun hasPermission(
3857
player: ServerPlayerEntity,
3958
node: String,
40-
opLevel: Int
59+
opLevel: Int = 4
4160
): Boolean = if (permissionsInstalled) {
4261
PermissionsAPI.hasPermission(player.name.string, node)
4362
} else {
@@ -71,6 +90,9 @@ internal class EntryPoint : EssBase() {
7190
it.server.commandManager.dispatcher,
7291
it.server.isDedicatedServer
7392
)
93+
BackLocationCommand.register(
94+
it.server.commandManager.dispatcher
95+
)
7496
}
7597
}
7698

@@ -155,5 +177,6 @@ internal class EntryPoint : EssBase() {
155177
fun onServerStopping(it: FMLServerStoppingEvent) {
156178
logger.info("Shutting down $modName mod ...")
157179
CommandsConfigurationUtils.saveConfig()
180+
LocalizationConfigurationUtils.saveConfig()
158181
}
159182
}

src/main/kotlin/com/mairwunnx/projectessentials/core/EssBase.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ abstract class EssBase {
4141
fun logBaseInfo() {
4242
logger.info(
4343
"\n" +
44-
" **** $modName starting initializing ***\n\n" +
44+
" **** $modName starting initializing ****\n\n" +
4545
" - Mod Id: $modId\n" +
4646
" - Version: $modVersion\n" +
4747
" - Maintainer: $modMaintainer\n" +

0 commit comments

Comments
 (0)