diff --git a/war/pom.xml b/war/pom.xml
index fabb485..5fb0f50 100644
--- a/war/pom.xml
+++ b/war/pom.xml
@@ -21,6 +21,10 @@
spout-repo
http://repo.spout.org/
+
+ tagapi-repo
+ http://repo.kitteh.org/content/repositories/public/
+
Github issues
@@ -76,6 +80,12 @@
1.4.5-R1.0
compile
+
+ org.kitteh
+ tagapi
+ 2.0
+ compile
+
org.mockito
mockito-all
diff --git a/war/src/main/java/com/tommytony/war/Team.java b/war/src/main/java/com/tommytony/war/Team.java
index 5d39dec..db2f482 100644
--- a/war/src/main/java/com/tommytony/war/Team.java
+++ b/war/src/main/java/com/tommytony/war/Team.java
@@ -26,6 +26,7 @@ import com.tommytony.war.utility.Direction;
import com.tommytony.war.utility.SignHelper;
import com.tommytony.war.volume.BlockInfo;
import com.tommytony.war.volume.Volume;
+import org.kitteh.tag.TagAPI;
/**
*
@@ -376,6 +377,9 @@ public class Team {
public void addPlayer(Player player) {
this.players.add(player);
+ if (War.war.isTagServer()) {
+ TagAPI.refreshPlayer(player);
+ }
}
public List getPlayers() {
@@ -450,7 +454,9 @@ public class Team {
t.teamcast("Cake " + ChatColor.GREEN + cake.getName() + ChatColor.WHITE + " was returned.");
}
}
-
+ if (War.war.isTagServer()) {
+ TagAPI.refreshPlayer(thePlayer);
+ }
return true;
}
diff --git a/war/src/main/java/com/tommytony/war/War.java b/war/src/main/java/com/tommytony/war/War.java
index 2fdf508..843e5e6 100644
--- a/war/src/main/java/com/tommytony/war/War.java
+++ b/war/src/main/java/com/tommytony/war/War.java
@@ -39,6 +39,7 @@ import com.tommytony.war.event.WarBlockListener;
import com.tommytony.war.event.WarEntityListener;
import com.tommytony.war.event.WarPlayerListener;
import com.tommytony.war.event.WarServerListener;
+import com.tommytony.war.event.WarTagListener;
import com.tommytony.war.job.HelmetProtectionTask;
import com.tommytony.war.job.SpoutFadeOutMessageJob;
import com.tommytony.war.mapper.WarYmlMapper;
@@ -73,6 +74,7 @@ public class War extends JavaPlugin {
private PluginDescriptionFile desc = null;
private boolean loaded = false;
private boolean isSpoutServer = false;
+ private boolean tagServer = false;
// Zones and hub
private List warzones = new ArrayList();
@@ -143,6 +145,15 @@ public class War extends JavaPlugin {
pm.registerEvents(this.entityListener, this);
pm.registerEvents(this.blockListener, this);
pm.registerEvents(this.serverListener, this);
+ if (pm.isPluginEnabled("TagAPI")) {
+ try {
+ Class.forName("org.kitteh.tag.TagAPI");
+ pm.registerEvents(new WarTagListener(), this);
+ this.tagServer = true;
+ } catch (ClassNotFoundException e) {
+ this.tagServer = false;
+ }
+ }
// Add defaults
warConfig.put(WarConfig.BUILDINZONESONLY, false);
@@ -1164,4 +1175,8 @@ public class War extends JavaPlugin {
public HubLobbyMaterials getWarhubMaterials() {
return this.warhubMaterials;
}
+
+ public boolean isTagServer() {
+ return tagServer;
+ }
}
diff --git a/war/src/main/java/com/tommytony/war/event/WarTagListener.java b/war/src/main/java/com/tommytony/war/event/WarTagListener.java
new file mode 100644
index 0000000..c02d976
--- /dev/null
+++ b/war/src/main/java/com/tommytony/war/event/WarTagListener.java
@@ -0,0 +1,19 @@
+package com.tommytony.war.event;
+
+import com.tommytony.war.Team;
+import org.bukkit.ChatColor;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.kitteh.tag.PlayerReceiveNameTagEvent;
+
+public class WarTagListener implements Listener {
+ @EventHandler(priority = EventPriority.HIGHEST)
+ public void onNameTag(PlayerReceiveNameTagEvent event) {
+ Team team = Team.getTeamByPlayerName(event.getNamedPlayer().getName());
+ if (team != null) {
+ ChatColor teamColor = team.getKind().getColor();
+ event.setTag(teamColor + event.getNamedPlayer().getName());
+ }
+ }
+}
diff --git a/war/src/main/resources/plugin.yml b/war/src/main/resources/plugin.yml
index 73205ae..edebadf 100644
--- a/war/src/main/resources/plugin.yml
+++ b/war/src/main/resources/plugin.yml
@@ -4,7 +4,7 @@ description: Minecraft PVP arenas (called warzones) for a fast-paced and structu
author: tommytony
website: http://war.tommytony.com
main: com.tommytony.war.War
-softdepend: [Spout]
+softdepend: [Spout, TagAPI]
permissions:
war.*:
description: Full War permissions. Create and destroy warzones. Change War configuration.