From 00f6f4ab053bf3dace23eff4fd29103ae6b96e6e Mon Sep 17 00:00:00 2001 From: Olof Larsson Date: Fri, 14 Oct 2011 15:03:23 +0200 Subject: [PATCH] Support for the CAPI plugin. --- lib/capi.jar | Bin 0 -> 64932 bytes plugin.yml | 2 +- src/com/massivecraft/factions/Conf.java | 7 -- src/com/massivecraft/factions/P.java | 2 + .../integration/capi/CapiFeatures.java | 21 ++++ .../integration/capi/PluginCapiListener.java | 115 ++++++++++++++++++ .../massivecraft/factions/zcore/MPlugin.java | 4 +- 7 files changed, 141 insertions(+), 10 deletions(-) create mode 100644 lib/capi.jar create mode 100644 src/com/massivecraft/factions/integration/capi/CapiFeatures.java create mode 100644 src/com/massivecraft/factions/integration/capi/PluginCapiListener.java diff --git a/lib/capi.jar b/lib/capi.jar new file mode 100644 index 0000000000000000000000000000000000000000..1310588c62dc2eb143ae441c21e2fbf5eb2f8880 GIT binary patch literal 64932 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 i-*36+#vibMTEdf;f(3uvfq myChannelIds = new LinkedHashSet(); + + public PluginCapiListener(P p) + { + this.p = p; + + myChannelIds.add("faction"); + myChannelIds.add("allies"); + } + + private String replacePlayerTags(String format, FPlayer me, FPlayer you) + { + String meFactionTag = me.getChatTag(you); + format = format.replace("{ME_FACTIONTAG}", meFactionTag.length() == 0 ? "" : meFactionTag); + format = format.replace("{ME_FACTIONTAG_PADR}", meFactionTag.length() == 0 ? "" : meFactionTag+" "); + format = format.replace("{ME_FACTIONTAG_PADL}", meFactionTag.length() == 0 ? "" : " "+meFactionTag); + format = format.replace("{ME_FACTIONTAG_PADB}", meFactionTag.length() == 0 ? "" : " "+meFactionTag+" "); + + String youFactionTag = you.getChatTag(me); + format = format.replace("{YOU_FACTIONTAG}", youFactionTag.length() == 0 ? "" : youFactionTag); + format = format.replace("{YOU_FACTIONTAG_PADR}", youFactionTag.length() == 0 ? "" : youFactionTag+" "); + format = format.replace("{YOU_FACTIONTAG_PADL}", youFactionTag.length() == 0 ? "" : " "+youFactionTag); + format = format.replace("{YOU_FACTIONTAG_PADB}", youFactionTag.length() == 0 ? "" : " "+youFactionTag+" "); + + return format; + } + + @Override + public void onListChannelsEvent(CAPIListChannelsEvent event) + { + for (Channel c : Channels.i.get()) + { + if (myChannelIds.contains(c.getId())) + { + event.getChannels().add(c); + } + } + } + + @Override + public void onMessageToChannel(CAPIMessageToChannelEvent event) + { + if (event.isCancelled()) return; + if ( ! myChannelIds.contains(event.getChannel().getId())) return; + + Player me = event.getMe(); + FPlayer fme = FPlayers.i.get(me); + Faction myFaction = fme.getFaction(); + + if (event.getChannel().getId().equals("faction") && myFaction.isNormal()) + { + event.getThem().addAll(myFaction.getOnlinePlayers()); + } + else if (event.getChannel().getId().equals("allies")) + { + for (Player somePlayer : Bukkit.getServer().getOnlinePlayers()) + { + FPlayer someFPlayer = FPlayers.i.get(somePlayer); + if (someFPlayer.getRelationTo(fme).value >= Relation.ALLY.value) + { + event.getThem().add(somePlayer); + } + } + } + } + + @Override + public void onMessageToPlayer(CAPIMessageToPlayerEvent event) + { + if (event.isCancelled()) return; + event.setFormat(this.replacePlayerTags(event.getFormat(), FPlayers.i.get(event.getMe()), FPlayers.i.get(event.getYou()))); + } + + @Override + public void onSelectChannel(CAPISelectChannelEvent event) + { + if (event.isCancelled()) return; + String channelId = event.getChannel().getId(); + if ( ! myChannelIds.contains(channelId)) return; + + Player me = event.getMe(); + FPlayer fme = FPlayers.i.get(me); + + if ( ! fme.hasFaction()) + { + event.setFailMessage(p.txt.parse("You must be member in a faction to use this channel.")); + event.setCancelled(true); + } + } +} diff --git a/src/com/massivecraft/factions/zcore/MPlugin.java b/src/com/massivecraft/factions/zcore/MPlugin.java index d3686953..421379cb 100644 --- a/src/com/massivecraft/factions/zcore/MPlugin.java +++ b/src/com/massivecraft/factions/zcore/MPlugin.java @@ -180,10 +180,10 @@ public abstract class MPlugin extends JavaPlugin public boolean handleCommand(CommandSender sender, String commandString, boolean testOnly) { - boolean noSlash = false; + boolean noSlash = true; if (commandString.startsWith("/")) { - noSlash = true; + noSlash = false; commandString = commandString.substring(1); }