diff --git a/war/src/main/java/bukkit/tommytony/war/War.java b/war/src/main/java/bukkit/tommytony/war/War.java index cf17aed..ec32d79 100644 --- a/war/src/main/java/bukkit/tommytony/war/War.java +++ b/war/src/main/java/bukkit/tommytony/war/War.java @@ -90,7 +90,7 @@ public class War extends JavaPlugin { private final WarConfigBag warConfig = new WarConfigBag(); private final WarzoneConfigBag warzoneDefaultConfig = new WarzoneConfigBag(); private final TeamConfigBag teamDefaultConfig = new TeamConfigBag(); - private SpoutMessenger spoutMessenger = new SpoutMessenger(); + private SpoutMessenger spoutMessenger = null; public War() { super(); @@ -128,6 +128,7 @@ public class War extends JavaPlugin { try { Class.forName("org.getspout.spoutapi.player.SpoutPlayer"); isSpoutServer = true; + spoutMessenger = new SpoutMessenger(); } catch (ClassNotFoundException e) { isSpoutServer = false; } @@ -264,8 +265,10 @@ public class War extends JavaPlugin { HelmetProtectionTask helmetProtectionTask = new HelmetProtectionTask(); this.getServer().getScheduler().scheduleSyncRepeatingTask(this, helmetProtectionTask, 250, 100); - SpoutFadeOutMessageJob fadeOutMessagesTask = new SpoutFadeOutMessageJob(); - this.getServer().getScheduler().scheduleSyncRepeatingTask(this, fadeOutMessagesTask, 100, 100); + if (this.isSpoutServer) { + SpoutFadeOutMessageJob fadeOutMessagesTask = new SpoutFadeOutMessageJob(); + this.getServer().getScheduler().scheduleSyncRepeatingTask(this, fadeOutMessagesTask, 100, 100); + } this.log("War v" + this.desc.getVersion() + " is on.", Level.INFO); } diff --git a/war/src/main/java/bukkit/tommytony/war/WarBlockListener.java b/war/src/main/java/bukkit/tommytony/war/WarBlockListener.java index 4d07abe..0132dd7 100644 --- a/war/src/main/java/bukkit/tommytony/war/WarBlockListener.java +++ b/war/src/main/java/bukkit/tommytony/war/WarBlockListener.java @@ -212,6 +212,7 @@ public class WarBlockListener extends BlockListener { Monument monument = warzone.getMonumentFromCenterBlock(block); if (monument.hasOwner()) { List teams = warzone.getTeams(); + Team ownerTeam = monument.getOwnerTeam(); if (War.war.isSpoutServer()) { for (Player p : team.getPlayers()) { SpoutPlayer sp = SpoutManager.getPlayer(p); @@ -219,14 +220,14 @@ public class WarBlockListener extends BlockListener { sp.sendNotification( SpoutMessenger.cleanForNotification("Monument " + ChatColor.WHITE + monument.getName()), SpoutMessenger.cleanForNotification(ChatColor.YELLOW + "freed by " + team.getKind().getColor() + player.getName() + ChatColor.YELLOW + "!"), - Material.OBSIDIAN, - (short)0, + ownerTeam.getKind().getMaterial(), + ownerTeam.getKind().getData(), 5000); } } } for (Team t : teams) { - t.teamcast("Team " + monument.getOwnerTeam().getName() + " loses control of monument " + monument.getName()); + t.teamcast("Team " + ownerTeam.getName() + " loses control of monument " + monument.getName()); } monument.uncapture(); } diff --git a/war/src/main/java/com/tommytony/war/Team.java b/war/src/main/java/com/tommytony/war/Team.java index 04cece7..c938160 100644 --- a/war/src/main/java/com/tommytony/war/Team.java +++ b/war/src/main/java/com/tommytony/war/Team.java @@ -364,10 +364,14 @@ public class Team { public void teamcast(String message, boolean isNotification) { for (Player player : this.players) { - SpoutPlayer sp = SpoutManager.getPlayer(player); - if (sp.isSpoutCraftEnabled() && isNotification) { - // team notifications go to the top left for Spout players to lessen War spam in chat box - War.war.getSpoutMessenger().msg(sp, message); + if (War.war.isSpoutServer()) { + SpoutPlayer sp = SpoutManager.getPlayer(player); + if (sp.isSpoutCraftEnabled() && isNotification) { + // team notifications go to the top left for Spout players to lessen War spam in chat box + War.war.getSpoutMessenger().msg(sp, message); + } else { + War.war.msg(player, message); + } } else { War.war.msg(player, message); } diff --git a/war/src/main/java/com/tommytony/war/Warzone.java b/war/src/main/java/com/tommytony/war/Warzone.java index d50e04e..7f51bdf 100644 --- a/war/src/main/java/com/tommytony/war/Warzone.java +++ b/war/src/main/java/com/tommytony/war/Warzone.java @@ -860,7 +860,9 @@ public class Warzone { player.setRemainingAir(300); // To hide stats - War.war.getSpoutMessenger().updateStats(player); + if (War.war.isSpoutServer()) { + War.war.getSpoutMessenger().updateStats(player); + } War.war.msg(player, "Your inventory is being restored."); if (War.war.getWarHub() != null) {