diff --git a/BauSystem_Main/src/BauSystem.properties b/BauSystem_Main/src/BauSystem.properties index b3cfa251..3525a993 100644 --- a/BauSystem_Main/src/BauSystem.properties +++ b/BauSystem_Main/src/BauSystem.properties @@ -423,8 +423,10 @@ TPSLIMIT_FROZEN=§eTPS frozen TRACE_RECORD=§aon TRACE_HAS_TRACES=§ehas Traces TRACE_IDLE_AUTO=§eauto -TRACE_MESSAGE_START=§aTNT-Tracer started -TRACE_MESSAGE_STOP=§cTNT-Tracer stopped +TRACE_MESSAGE_START = §aTNT-Tracer started +TRACE_MESSAGE_AUTO_START=§eAuto TNT-Tracer started +TRACE_MESSAGE_AUTO_STOP=§cAuto TNT-Tracer stopped +TRACE_MESSAGE_STOP = §cTNT-Tracer stopped TRACE_MESSAGE_CLEAR=§cAll TNT-positions deleted TRACE_MESSAGE_DELETE=§cTrace TNT-positions deleted TRACE_MESSAGE_SHOW=§aAll TNT-positions shown @@ -438,6 +440,11 @@ TRACE_COMMAND_HELP_START=§8/§etrace start §8- §7Starts recording of all TNT- TRACE_COMMAND_HELP_STOP=§8/§etrace stop §8- §7Stops the TNT-Tracer TRACE_COMMAND_HELP_AUTO=§8/§etrace toggleauto §8- §7Automatic start of recording TRACE_COMMAND_HELP_SHOW=§8/§etrace show §8<§eParameter§8> - §7Shows all TNT-positions +TRACE_MESSAGE_SHARE=§e{0} shared his trace show state. +TRACE_MESSAGE_SHARE_HOVER=§eClick to view +TRACE_MESSAGE_FOLLOW=§aYou are now following {0} Trace show state +TRACE_MESSAGE_FOLLOW_SELF=§cYou cannot follow yourself! +TRACE_MESSAGE_UNFOLLOW=§eYou are no longer following a Trace show state TRACE_COMMAND_HELP_SHOW_AT=§8/§etrace show §7at §8<§eTIME§8> - §7Shows all Trace Positions at §8<§eTIME§8> TRACE_COMMAND_HELP_SHOW_AT_WITH=§8/§etrace show §7at §8<§eTIME§8> §7with §8<§eParameter§8> - §7Shows all Trace Positions at §8<§eTIME§8> TRACE_COMMAND_HELP_SHOW_FROM=§8/§etrace show §7from §8<§eFROM§8> - §7Shows all Trace Positions from §8<§eFROM§8> @@ -447,15 +454,20 @@ TRACE_COMMAND_HELP_SHOW_FROM_TO_WITH=§8/§etrace show §7from §8<§eFROM§8> TRACE_COMMAND_HELP_HIDE=§8/§etrace hide §8- §7Hides all TNT-positions TRACE_COMMAND_HELP_DELETE=§8/§etrace delete §8[§eTrace§8] §8- §7Deletes all TNT-positions or a Trace TRACE_COMMAND_HELP_ISOLATE=§8/§etrace isolate §8[§eTrace§8] §8[§eTNT§8] §8- §7Isolates specific TNTs from the Trace -TRACE_GUI_ITEM_NAME=§eTracer -TRACE_GUI_ITEM_LORE=§7Status§8: {0} -TRACE_GUI_NAME=Trace Gui -TRACE_GUI_TRACE_INACTIVE=§eStart Tracer -TRACE_GUI_TRACE_ACTIVE=§eStop Tracer -TRACE_GUI_TRACE_ACTIVE_AUTO=§eAuto-Trace is active -TRACE_GUI_AUTO_TRACE_INACTIVE=§eacitvate Auto-Tracer -TRACE_GUI_AUTO_TRACE_ACTIVE=§edeactivate Auto-Tracer -TRACE_GUI_DELETE=§eDelete trace +TRACE_COMMAND_HELP_SHARE=§8/§etrace share §8- §7Share your current Trace show state with others +TRACE_COMMAND_HELP_FOLLOW=§8/§etrace follow §8[§ePlayer§8] §8- §7Follow a players Trace show state +TRACE_COMMAND_HELP_UNFOLLOW=§8/§etrace unfollow §8- §7Unfollow the Trace show state + +TRACE_GUI_ITEM_NAME = §eTracer +TRACE_GUI_ITEM_LORE = §7Status§8: {0} +TRACE_GUI_NAME = Trace Gui +TRACE_GUI_TRACE_INACTIVE = §eStart Tracer +TRACE_GUI_TRACE_ACTIVE = §eStop Tracer +TRACE_GUI_TRACE_ACTIVE_AUTO = §eAuto-Trace is active +TRACE_GUI_AUTO_TRACE_INACTIVE = §eacitvate Auto-Tracer +TRACE_GUI_AUTO_TRACE_ACTIVE = §edeactivate Auto-Tracer +TRACE_GUI_DELETE = §eDelete trace + # Loader LOADER_SETUP=§eSetup LOADER_RUNNING=§aRunning diff --git a/BauSystem_Main/src/BauSystem_de.properties b/BauSystem_Main/src/BauSystem_de.properties index 4c2b2f7c..d9eaaadc 100644 --- a/BauSystem_Main/src/BauSystem_de.properties +++ b/BauSystem_Main/src/BauSystem_de.properties @@ -393,6 +393,10 @@ TPSLIMIT_FROZEN=§eTPS eingefroren. # Trace TRACE_RECORD=§aan TRACE_HAS_TRACES=§ehat Traces +TRACE_MESSAGE_START = §aTNT-Tracer gestartet +TRACE_MESSAGE_AUTO_START=§eAuto TNT-Tracer gestartet +TRACE_MESSAGE_AUTO_STOP=§cAuto TNT-Tracer gestoppt +TRACE_MESSAGE_STOP = §cTNT-Tracer gestoppt TRACE_MESSAGE_AUTO_IDLE_IGNITE=§aAuto-Tracer ignite gestartet TRACE_MESSAGE_AUTO_DELETE_INVALID=§cAuto delete kann aktuell nicht genutzt werden TRACE_MESSAGE_AUTO_DELETE_ALWAYS=§7Der letzte Schuss wird §eimmer§7 gelöscht @@ -401,17 +405,24 @@ TRACE_MESSAGE_AUTO_DELETE_NO_BUILD_DESTROY=§7Der letzte Schuss wird gelöscht, TRACE_MESSAGE_AUTO_DELETE_BUILD_DESTROY=§7Der letzte Schuss wird gelöscht, wenn §eein§7 Block aus dem §eBaubereich§7 zerstört wurde TRACE_MESSAGE_AUTO_DELETE_NO_TESTBLOCK_DESTROY=§7Der letzte Schuss wird gelöscht, wenn §ekein§7 Block aus dem §eTestblock§7 zerstört wurde TRACE_MESSAGE_AUTO_DELETE_TESTBLOCK_DESTROY=§7Der letzte Schuss wird gelöscht, wenn §eein§7 Block aus dem §eTestblock§7 zerstört wurde -TRACE_MESSAGE_START=§aTNT-Tracer gestartet TRACE_MESSAGE_SINGLE=§aSingle-Tracer gestartet -TRACE_MESSAGE_STOP=§cTNT-Tracer gestoppt TRACE_MESSAGE_CLEAR=§cAlle TNT-Positionen gelöscht -TRACE_MESSAGE_SHOW=§aAlle TNT-Positionen angezeigt -TRACE_MESSAGE_HIDE=§cAlle TNT-Positionen ausgeblendet TRACE_MESSAGE_CLICK_ISOLATE=§eKlicken zum §aisolieren§8/§causblenden TRACE_MESSAGE_DISALLOWED=§cDu darfst hier nicht den TNT-Tracer nutzen TRACE_MESSAGE_SHOW_AT=§aTNT-positions angezeigt bei {0} TRACE_MESSAGE_SHOW_FROM=§aAll TNT-positions angezeigt von {0} TRACE_MESSAGE_SHOW_FROM_TO=§aAll TNT-positions angezeigt von {0} bis {1} +TRACE_MESSAGE_SHARE=§e{0} teilte seinen Trace-Show-Status. +TRACE_MESSAGE_SHARE_HOVER=§eZum Ansehen klicken. +TRACE_MESSAGE_FOLLOW=§aSie folgen nun {0} Trace show state +TRACE_MESSAGE_FOLLOW_SELF=§cSie können sich selbst nicht folgen! +TRACE_MESSAGE_UNFOLLOW=§eSie folgen nicht mehr dem Status einer Trace-Show + +TRACE_COMMAND_HELP_SHARE=§8/§etrace share §8- §7Teilt den aktuellen Trace-Show-Status mit anderen +TRACE_COMMAND_HELP_FOLLOW=§8/§etrace follow §8[§ePlayer§8] §8- §7Verfolgen eines Spielers Status anzeigen +TRACE_COMMAND_HELP_UNFOLLOW=§8/§etrace unfollow §8- §7Den Status der Trace-Anzeige aufheben + + TRACE_MESSAGE_SHOW_TO_SMALLER=§cBis muss größer als von sein TRACE_COMMAND_HELP_START=§8/§etrace start §8- §7Startet die Aufnahme aller TNT-Positionen TRACE_COMMAND_HELP_SINGLE=§8/§etrace single §8- §7Startet eine einzelne Aufnahme aller TNT-Positionen diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceCommand.java b/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceCommand.java index afd10cc7..26ded08b 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceCommand.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceCommand.java @@ -29,6 +29,7 @@ import de.steamwar.command.PreviousArguments; import de.steamwar.command.SWCommand; import de.steamwar.command.TypeMapper; import de.steamwar.linkage.Linked; +import net.md_5.bungee.api.chat.ClickEvent; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -62,8 +63,11 @@ public class TraceCommand extends SWCommand { @Register(value = "auto", description = "TRACE_COMMAND_HELP_AUTO") public void auto(@Validator Player player) { Region region = Region.getRegion(player.getLocation()); - TraceRecorder.instance.toggleAutoTrace(region); - // TODO: Add Auto toggle Message! + if (TraceRecorder.instance.toggleAutoTrace(region)) { + BauSystem.MESSAGE.send("TRACE_MESSAGE_AUTO_START", player); + } else { + BauSystem.MESSAGE.send("TRACE_MESSAGE_AUTO_STOP", player); + } } @Register(value = "show", description = "TRACE_COMMAND_HELP_SHOW") @@ -148,25 +152,25 @@ public class TraceCommand extends SWCommand { // TODO: Add Message! } - @Register(value = "share", description = "TRACE_COMMAND_HELP_SHOW") + @Register(value = "share", description = "TRACE_COMMAND_HELP_SHARE") public void share(@Validator Player player) { - // TODO Rücksprache + BauSystem.MESSAGE.broadcast("TRACE_MESSAGE_SHARE", "TRACE_MESSAGE_SHARE_HOVER", new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/trace follow " + player.getName()), player.getName()); } - @Register(value = "follow", description = "TRACE_COMMAND_HELP_SHOW") + @Register(value = "follow", description = "TRACE_COMMAND_HELP_FOLLOW") public void follow(@Validator Player player, Player toFollow) { if (player == toFollow) { - // TODO: Implement message + BauSystem.MESSAGE.send("TRACE_MESSAGE_FOLLOW_SELF", player); return; } TraceManager.instance.follow(player, toFollow); - // TODO: Implement message + BauSystem.MESSAGE.send("TRACE_MESSAGE_FOLLOW", player, toFollow.getName()); } - @Register(value = "unfollow", description = "TRACE_COMMAND_HELP_SHOW") + @Register(value = "unfollow", description = "TRACE_COMMAND_HELP_UNFOLLOW") public void unfollow(@Validator Player player) { TraceManager.instance.unfollow(player); - // TODO: Implement message + BauSystem.MESSAGE.send("TRACE_MESSAGE_UNFOLLOW", player); } @ClassMapper(value = Trace.class, local = true) diff --git a/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceRecorder.java b/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceRecorder.java index b7ac25a1..52b87156 100644 --- a/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceRecorder.java +++ b/BauSystem_Main/src/de/steamwar/bausystem/features/tracer/TraceRecorder.java @@ -79,11 +79,12 @@ public class TraceRecorder implements Listener { * * @param region */ - public void toggleAutoTrace(Region region) { - if (autoTraceRegions.contains(region)) { - autoTraceRegions.remove(region); - } else { + public boolean toggleAutoTrace(Region region) { + if (!autoTraceRegions.remove(region)) { autoTraceRegions.add(region); + return true; + } else { + return false; } }