public void unInvoke() { // undo the affects of this spell if (!(affected instanceof MOB)) return; super.unInvoke(); if ((canBeUninvoked()) && (clan1 != null) && (clan2 != null)) { final Clan C1 = clan1; final Clan C2 = clan2; if ((C1 != null) && (C2 != null)) { if (C1.getClanRelations(C2.clanID()) == Clan.REL_WAR) { C1.setClanRelations(C2.clanID(), Clan.REL_HOSTILE, System.currentTimeMillis()); C1.update(); } if (C2.getClanRelations(C1.clanID()) == Clan.REL_WAR) { C2.setClanRelations(C1.clanID(), Clan.REL_HOSTILE, System.currentTimeMillis()); C2.update(); } List<String> channels = CMLib.channels().getFlaggedChannelNames(ChannelsLibrary.ChannelFlag.CLANINFO); for (int i = 0; i < channels.size(); i++) CMLib.commands() .postChannel( channels.get(i), CMLib.clans().clanRoles(), "There is now peace between " + C1.name() + " and " + C2.name() + ".", false); } } }