subs limited to cap rank

This commit is contained in:
2023-01-01 15:48:17 -06:00
parent 9988863a85
commit d3e05ec247
3 changed files with 12 additions and 8 deletions
@@ -75,7 +75,7 @@ public class AcceptSubInviteHandler extends AbstractClientMsgHandler {
//source guild is limited to 7 subs
//TODO this should be based on TOL rank
if (!targetGuild.canSubAGuild(sourceGuild)) {
if (!targetGuild.canSubAGuild(sourceGuild,targetGuild)) {
ErrorPopupMsg.sendErrorPopup(sourcePlayer, 45); // Failure to swear guild
return true;
}
@@ -103,7 +103,7 @@ public class InviteToSubHandler extends AbstractClientMsgHandler {
//TODO this should be based on TOL rank
if (!sourceGuild.canSubAGuild(targetGuild)) {
if (!sourceGuild.canSubAGuild(targetGuild, null)) {
sendChat(source, "This Guild can't be subbed.");
return true;
}
+10 -6
View File
@@ -559,17 +559,21 @@ public class Guild extends AbstractWorldObject {
}
public boolean canSubAGuild(Guild toSub){
public boolean canSubAGuild(Guild toSub, Guild nation){
boolean canSub;
if (this.equals(toSub))
return false;
switch(this.guildState){
case Nation:
case Sovereign:
canSub = true;
City nationCap = City.getCity(nation.cityUUID);
if (nation.getSubGuildList().size() >= nationCap.getRank()) {
canSub = false;
return canSub;
}
switch(this.guildState) {
case Nation:
case Sovereign:
canSub = true;
break;
default:
canSub = false;