Multiple Messages From Disband Fixed
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.massivecraft.factions.cmd;
|
||||
|
||||
import com.massivecraft.factions.*;
|
||||
import com.massivecraft.factions.cmd.reserve.ReserveObject;
|
||||
import com.massivecraft.factions.discord.Discord;
|
||||
import com.massivecraft.factions.event.FPlayerJoinEvent;
|
||||
import com.massivecraft.factions.event.FactionCreateEvent;
|
||||
@@ -52,6 +53,12 @@ public class CmdCreate extends FCommand {
|
||||
return;
|
||||
}
|
||||
|
||||
ReserveObject factionReserve = FactionsPlugin.getInstance().getFactionReserves().stream().filter(factionReserve1 -> factionReserve1.getFactionName().equalsIgnoreCase(tag)).findFirst().orElse(null);
|
||||
if (factionReserve != null && !factionReserve.getName().equalsIgnoreCase(context.player.getName())) {
|
||||
context.msg(TL.COMMAND_CREATE_ALREADY_RESERVED);
|
||||
return;
|
||||
}
|
||||
|
||||
ArrayList<String> tagValidationErrors = MiscUtil.validateTag(tag);
|
||||
if (tagValidationErrors.size() > 0) {
|
||||
context.sendMessage(tagValidationErrors);
|
||||
@@ -85,7 +92,9 @@ public class CmdCreate extends FCommand {
|
||||
|
||||
// finish setting up the Faction
|
||||
faction.setTag(tag);
|
||||
|
||||
if (factionReserve != null) {
|
||||
FactionsPlugin.getInstance().getFactionReserves().remove(factionReserve);
|
||||
}
|
||||
// trigger the faction join event for the creator
|
||||
FPlayerJoinEvent joinEvent = new FPlayerJoinEvent(FPlayers.getInstance().getByPlayer(context.player), faction, FPlayerJoinEvent.PlayerJoinReason.CREATE);
|
||||
Bukkit.getServer().getPluginManager().callEvent(joinEvent);
|
||||
|
||||
@@ -21,8 +21,6 @@ public class CmdDisband extends FCommand {
|
||||
* @author FactionsUUID Team
|
||||
*/
|
||||
|
||||
//TODO: Add Disband Confirmation GUI
|
||||
|
||||
private static HashMap<String, String> disbandMap = new HashMap<>();
|
||||
|
||||
|
||||
@@ -105,8 +103,11 @@ public class CmdDisband extends FCommand {
|
||||
follower.msg(TL.COMMAND_DISBAND_BROADCAST_NOTYOURS, amountString, faction.getTag(follower));
|
||||
}
|
||||
}
|
||||
if (FactionsPlugin.getInstance().getConfig().getBoolean("enable-faction-flight"))
|
||||
if (FactionsPlugin.getInstance().getConfig().getBoolean("enable-faction-flight")){
|
||||
faction.disband(context.player, PlayerDisbandReason.COMMAND);
|
||||
context.fPlayer.setFFlying(false, false);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
context.player.sendMessage(String.valueOf(TL.COMMAND_DISBAND_PLAYER));
|
||||
}
|
||||
|
||||
@@ -11,8 +11,7 @@ public class ReserveAdapter implements JsonSerializer<ReserveObject>, JsonDeseri
|
||||
|
||||
public ReserveObject deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
|
||||
JsonObject object = jsonElement.getAsJsonObject();
|
||||
ReserveObject faction = new ReserveObject(object.get("username").getAsString(), object.get("name").getAsString());
|
||||
return faction;
|
||||
return new ReserveObject(object.get("username").getAsString(), object.get("name").getAsString());
|
||||
}
|
||||
|
||||
public JsonElement serialize(ReserveObject data, final Type type, final JsonSerializationContext jsonSerializationContext) {
|
||||
|
||||
Reference in New Issue
Block a user