Fix for /f permanent and /f peaceful commands giving an NPE if run from console
Fix for rare NPE when Spout territory info update is run and affected player disconnects at precisely that moment Clarified "cannot attack neutral faction" messages to indicate enemy status is needed Updated Bukkit lib to correspond with CB 1337
This commit is contained in:
parent
ee654b761e
commit
38e128010c
Binary file not shown.
@ -49,11 +49,11 @@ public class CmdPeaceful extends FCommand
|
|||||||
{
|
{
|
||||||
if (fplayer.getFaction() == faction)
|
if (fplayer.getFaction() == faction)
|
||||||
{
|
{
|
||||||
fplayer.msg(fme.getNameAndRelevant(fplayer)+"<i> has "+change+" your faction.");
|
fplayer.msg((fme == null ? "A server admin" : fme.getNameAndRelevant(fplayer))+"<i> has "+change+" your faction.");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fplayer.msg(fme.getNameAndRelevant(fplayer)+"<i> has "+change+" the faction \"" + faction.getTag(fplayer) + "\".");
|
fplayer.msg((fme == null ? "A server admin" : fme.getNameAndRelevant(fplayer))+"<i> has "+change+" the faction \"" + faction.getTag(fplayer) + "\".");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,11 +48,11 @@ public class CmdPermanent extends FCommand
|
|||||||
{
|
{
|
||||||
if (fplayer.getFaction() == faction)
|
if (fplayer.getFaction() == faction)
|
||||||
{
|
{
|
||||||
fplayer.msg(fme.getNameAndRelevant(fplayer)+"<i> has "+change+" your faction.");
|
fplayer.msg((fme == null ? "A server admin" : fme.getNameAndRelevant(fplayer))+"<i> has "+change+" your faction.");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fplayer.msg(fme.getNameAndRelevant(fplayer)+"<i> has "+change+" the faction \"" + faction.getTag(fplayer) + "\".");
|
fplayer.msg((fme == null ? "A server admin" : fme.getNameAndRelevant(fplayer))+"<i> has "+change+" the faction \"" + faction.getTag(fplayer) + "\".");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,8 @@ package com.massivecraft.factions.integration;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import com.massivecraft.factions.Board;
|
import com.massivecraft.factions.Board;
|
||||||
import com.massivecraft.factions.Conf;
|
import com.massivecraft.factions.Conf;
|
||||||
import com.massivecraft.factions.FLocation;
|
import com.massivecraft.factions.FLocation;
|
||||||
@ -44,7 +46,11 @@ public class SpoutMainListener extends SpoutListener
|
|||||||
|
|
||||||
public boolean updateTerritoryDisplay(FPlayer player)
|
public boolean updateTerritoryDisplay(FPlayer player)
|
||||||
{
|
{
|
||||||
SpoutPlayer sPlayer = SpoutManager.getPlayer(player.getPlayer());
|
Player p = player.getPlayer();
|
||||||
|
if (p == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
SpoutPlayer sPlayer = SpoutManager.getPlayer(p);
|
||||||
if (!sPlayer.isSpoutCraftEnabled() || (Conf.spoutTerritoryDisplaySize <= 0 && ! Conf.spoutTerritoryNoticeShow))
|
if (!sPlayer.isSpoutCraftEnabled() || (Conf.spoutTerritoryDisplaySize <= 0 && ! Conf.spoutTerritoryNoticeShow))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -324,7 +324,7 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
// You can not hurt neutral factions
|
// You can not hurt neutral factions
|
||||||
if (Conf.disablePVPBetweenNeutralFactions && relation.isNeutral())
|
if (Conf.disablePVPBetweenNeutralFactions && relation.isNeutral())
|
||||||
{
|
{
|
||||||
attacker.sendMessage("You can't hurt neutral factions");
|
attacker.sendMessage("You can't hurt neutral factions. Declare them as an enemy.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -346,7 +346,7 @@ public class FactionsEntityListener extends EntityListener
|
|||||||
// You can not hurt neutrals in their own territory.
|
// You can not hurt neutrals in their own territory.
|
||||||
if (ownTerritory && relation.isNeutral())
|
if (ownTerritory && relation.isNeutral())
|
||||||
{
|
{
|
||||||
attacker.sendMessage(p.txt.parse("<i>You can't hurt "+relation.getColor()+defender.getNameAndRelevant(attacker)+"<i> in their own territory."));
|
attacker.sendMessage(p.txt.parse("<i>You can't hurt "+relation.getColor()+defender.getNameAndRelevant(attacker)+"<i> in their own territory unless you declare them as an enemy."));
|
||||||
defender.sendMessage(p.txt.parse(attacker.getNameAndRelevant(defender)+"<i> tried to hurt you."));
|
defender.sendMessage(p.txt.parse(attacker.getNameAndRelevant(defender)+"<i> tried to hurt you."));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user