Block exploit allowing clans to make a lot of allies and then add members to disrupt the equation. Additionally, lower the maximum amount of allies per member
This commit is contained in:
parent
35f2d42d08
commit
48967b4a74
|
@ -11,7 +11,6 @@ import java.util.UUID;
|
||||||
|
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Sound;
|
import org.bukkit.Sound;
|
||||||
import org.bukkit.block.Block;
|
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import mineplex.core.common.util.C;
|
import mineplex.core.common.util.C;
|
||||||
|
@ -208,11 +207,18 @@ public class ClanInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getAlliesMax()
|
public int getAlliesMax()
|
||||||
|
{
|
||||||
|
return getAlliesMaxWithMemberCountOf(_memberMap.size());
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getAlliesMaxWithMemberCountOf(int memberCount)
|
||||||
{
|
{
|
||||||
if (ssAdmin())
|
if (ssAdmin())
|
||||||
|
{
|
||||||
return 1000;
|
return 1000;
|
||||||
|
}
|
||||||
return Math.max(2, 9 - _memberMap.size());
|
|
||||||
|
return Math.max(2, 6 - memberCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
public BedStatus getBedStatus()
|
public BedStatus getBedStatus()
|
||||||
|
|
|
@ -1221,6 +1221,12 @@ public class ClansUtility
|
||||||
UtilPlayer.message(caller, F.main("Clans", "You cannot invite yourself."));
|
UtilPlayer.message(caller, F.main("Clans", "You cannot invite yourself."));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (clan.getAllies() > clan.getAlliesMaxWithMemberCountOf(clan.getSize() + 1))
|
||||||
|
{
|
||||||
|
UtilPlayer.message(caller, F.main("Clans", "You cannot invite more members until you remove some allies."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Inform
|
// Inform
|
||||||
clan.inform(F.name(caller.getName()) + " invited " + F.name(target.getName()) + " to join your Clan.", caller.getName());
|
clan.inform(F.name(caller.getName()) + " invited " + F.name(target.getName()) + " to join your Clan.", caller.getName());
|
||||||
|
|
|
@ -549,6 +549,12 @@ public class ClansCommand extends CommandBase<ClansManager>
|
||||||
UtilPlayer.message(caller, F.main("Clans", "The clan " + F.elem("Clan " + clan.getName()) + " is full and cannot be joined!"));
|
UtilPlayer.message(caller, F.main("Clans", "The clan " + F.elem("Clan " + clan.getName()) + " is full and cannot be joined!"));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (clan.getAllies() > clan.getAlliesMaxWithMemberCountOf(clan.getSize() + 1))
|
||||||
|
{
|
||||||
|
UtilPlayer.message(caller, F.main("Clans", "You cannot join " + F.elem("Clan " + clan.getName()) + " until they remove some allies!"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
ClanJoinEvent event = new ClanJoinEvent(clan, caller);
|
ClanJoinEvent event = new ClanJoinEvent(clan, caller);
|
||||||
Bukkit.getPluginManager().callEvent(event);
|
Bukkit.getPluginManager().callEvent(event);
|
||||||
|
|
Loading…
Reference in New Issue