diff --git a/eternalcore-api/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggle.java b/eternalcore-api/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggle.java index 8f3a08ecf..460bbe51c 100644 --- a/eternalcore-api/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggle.java +++ b/eternalcore-api/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggle.java @@ -4,8 +4,12 @@ public class MsgToggle { - private final UUID uuid; - private final boolean toggle; + UUID uuid; + boolean toggle; + + public MsgToggle() { + + } public MsgToggle(UUID uuid, boolean toggle) { this.uuid = uuid; diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleCommand.java b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleCommand.java index c8c08e8d3..63a89080a 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleCommand.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleCommand.java @@ -11,6 +11,9 @@ import java.util.concurrent.CompletableFuture; import org.bukkit.entity.Player; +// To clarify: +// ON - true - means that the player has turned on msgToggle and has blocked getting private messages +// OFF - false - means that the player has turned off msgToggle and has allowed getting private messages @Command(name = "msgtoggle") @Permission("eternalcore.msgtoggle") public class MsgToggleCommand { @@ -31,7 +34,7 @@ public void execute(@Context Player context) { CompletableFuture hasMsgToggledOff = this.msgToggleService.hasMsgToggledOff(context.getUniqueId()); hasMsgToggledOff.thenAccept(toggledOff -> { - if (toggledOff) { + if (!toggledOff) { this.on(context); } else { this.off(context); @@ -39,7 +42,7 @@ public void execute(@Context Player context) { }); } - @Execute(name = "on") + @Execute(name = "off") @DescriptionDocs(description = "Enable private messages") public void on(@Context Player context) { this.msgToggleService.toggleMsg(context.getUniqueId(), true); @@ -50,7 +53,7 @@ public void on(@Context Player context) { .send(); } - @Execute(name = "off") + @Execute(name = "on") @DescriptionDocs(description = "Disable private messages") public void off(@Context Player context) { this.msgToggleService.toggleMsg(context.getUniqueId(), false); @@ -67,7 +70,7 @@ public void off(@Context Player context) { public void other(@Context Player context, @Arg("player") Player player) { CompletableFuture hasMsgToggledOff = this.msgToggleService.hasMsgToggledOff(player.getUniqueId()); - hasMsgToggledOff.thenAccept(toggledOff -> this.other(context, player, toggledOff ? STATE.ON : STATE.OFF)); + hasMsgToggledOff.thenAccept(toggledOff -> this.other(context, player, !toggledOff ? STATE.ON : STATE.OFF)); } @Execute @@ -82,7 +85,8 @@ public void other(@Context Player context, @Arg("player") Player player, @Arg("< translation.privateChat().msgTogglePlayerOn() : translation.privateChat().msgTogglePlayerOff() ) - .player(player.getUniqueId()) + .player(context.getUniqueId()) + .placeholder("{PLAYER}", player.getName()) .send(); } diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepository.java b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepository.java index c8e72d1fe..14e364e79 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepository.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepository.java @@ -7,6 +7,6 @@ public interface MsgToggleRepository { CompletableFuture isToggledOff(UUID uuid); - void setToggledOff(UUID uuid, boolean toggledOff); + CompletableFuture setToggledOff(UUID uuid, boolean toggledOff); } diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepositoryOrmLite.java b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepositoryOrmLite.java index 892965c5a..179d7690d 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepositoryOrmLite.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleRepositoryOrmLite.java @@ -28,7 +28,8 @@ public CompletableFuture isToggledOff(UUID uuid) { } @Override - public void setToggledOff(UUID uuid, boolean toggledOff) { - this.save(MsgToggle.class, new MsgToggle(uuid, toggledOff)); + public CompletableFuture setToggledOff(UUID uuid, boolean toggledOff) { + return this.save(MsgToggleWrapper.class, new MsgToggleWrapper(uuid, toggledOff)) + .thenApply(status -> null); } } diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleWrapper.java b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleWrapper.java index d5e92d2a0..ddb632550 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleWrapper.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/feature/msgtoggle/MsgToggleWrapper.java @@ -4,25 +4,24 @@ import com.j256.ormlite.table.DatabaseTable; import java.util.UUID; -@DatabaseTable(tableName = "msgtoggle") +@DatabaseTable(tableName = "eternal_core_msg_toggles") class MsgToggleWrapper { @DatabaseField(columnName = "id", id = true) - private UUID id; + private UUID uniqueId; @DatabaseField(columnName = "enabled") private boolean enabled; - MsgToggleWrapper() { - } - MsgToggleWrapper(UUID id, boolean enabled) { - this.id = id; + this.uniqueId = id; this.enabled = enabled; } - static MsgToggleWrapper from(MsgToggleWrapper msgToggle) { - return new MsgToggleWrapper(msgToggle.id, msgToggle.enabled); + MsgToggleWrapper() {} + + static MsgToggleWrapper from(MsgToggle msgToggle) { + return new MsgToggleWrapper(msgToggle.uuid, msgToggle.toggle); } boolean isEnabled() { @@ -32,5 +31,4 @@ boolean isEnabled() { void setEnabled(boolean enabled) { this.enabled = enabled; } - } diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/ENTranslation.java b/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/ENTranslation.java index a82f1e9c5..2781383ba 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/ENTranslation.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/ENTranslation.java @@ -497,10 +497,10 @@ public static class ENPrivateSection implements PrivateChatSection { public Notice socialSpyDisable = Notice.chat("SocialSpy has been {STATE}!"); - public Notice msgToggledOff = Notice.chat(" This player has disabled private messages!"); + public Notice msgToggledOff = Notice.chat("This player has disabled private messages!"); - public Notice msgToggleSelfOff = Notice.chat("Private messages have been disabled!"); - public Notice msgToggleSelfOn = Notice.chat("Private messages have been enabled!"); + public Notice msgToggleSelfOff = Notice.chat("Private messages have been disabled!"); + public Notice msgToggleSelfOn = Notice.chat("Private messages have been enabled!"); @Description("# {PLAYER} - Player") public Notice msgTogglePlayerOff = Notice.chat("Private messages have been disabled for {PLAYER}!"); diff --git a/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/PLTranslation.java b/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/PLTranslation.java index c5cd70ae2..f70120c28 100644 --- a/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/PLTranslation.java +++ b/eternalcore-core/src/main/java/com/eternalcode/core/translation/implementation/PLTranslation.java @@ -507,12 +507,12 @@ public static class PLPrivateChatSection implements PrivateChatSection { public Notice msgToggledOff = Notice.chat("Wiadomości prywatne zostały wyłączone!"); - public Notice msgToggleSelfOff = Notice.chat("Wiadomości prywatne zostały wyłączone!"); - public Notice msgToggleSelfOn = Notice.chat("Wiadomości prywatne zostały włączone!"); + public Notice msgToggleSelfOff = Notice.chat("Wiadomości prywatne zostały wyłączone!"); + public Notice msgToggleSelfOn = Notice.chat("Wiadomości prywatne zostały włączone!"); @Description({" ", "# {PLAYER} - Gracz któremu wyłączono wiadomości prywatne"}) - public Notice msgTogglePlayerOff = Notice.chat("Wiadomości prywatne zostały wyłączone dla gracza {PLAYER}!"); - public Notice msgTogglePlayerOn = Notice.chat("Wiadomości prywatne zostały włączone dla gracza {PLAYER}!"); + public Notice msgTogglePlayerOff = Notice.chat("Wiadomości prywatne zostały wyłączone dla gracza {PLAYER}!"); + public Notice msgTogglePlayerOn = Notice.chat("Wiadomości prywatne zostały włączone dla gracza {PLAYER}!"); @Description({" ", "# {PLAYER} - Gracz który jest zignorowany"}) public Notice ignorePlayer = Notice.chat("Zignorowano gracza {PLAYER}!");