use of net.minecraft.util.UserCache in project factions by ickerio.
the class InfoCommand method info.
public static int info(ServerPlayerEntity player, Faction faction) {
ArrayList<Member> members = faction.getMembers();
ArrayList<Ally> allies = Ally.getAllies(faction.name);
String memberText = members.size() + (Config.MAX_FACTION_SIZE != -1 ? "/" + Config.MAX_FACTION_SIZE : (" member" + (members.size() != 1 ? "s" : "")));
String allyText = allies.size() + (allies.size() != 1 ? " allies" : " ally");
UserCache cache = player.getServer().getUserCache();
String membersList = members.stream().map(member -> cache.getByUuid(member.uuid).orElse(new GameProfile(Util.NIL_UUID, "{Uncached Player}")).getName()).collect(Collectors.joining(", "));
String alliesList = allies.stream().map(ally -> ally.target).collect(Collectors.joining(", "));
int requiredPower = faction.getClaims().size() * Config.CLAIM_WEIGHT;
int maxPower = Config.BASE_POWER + (members.size() * Config.MEMBER_POWER);
FactionsMod.LOGGER.info(alliesList);
new Message("").add(new Message(memberText).hover(membersList)).filler("·").add(new Message(allyText).hover(alliesList)).filler("·").add(new Message(Formatting.GREEN.toString() + faction.power + slash() + requiredPower + slash() + maxPower).hover("Current / Required / Max")).prependFaction(faction).send(player, false);
return 1;
}
use of net.minecraft.util.UserCache in project factions by ickerio.
the class InviteCommand method list.
public static int list(CommandContext<ServerCommandSource> context) throws CommandSyntaxException {
ServerCommandSource source = context.getSource();
ArrayList<Invite> invites = Member.get(source.getPlayer().getUuid()).getFaction().getInvites();
int count = invites.size();
new Message("You have ").add(new Message(String.valueOf(count)).format(Formatting.YELLOW)).add(" outgoing invite%s", count == 1 ? "" : "s").send(source.getPlayer(), false);
if (count == 0)
return 1;
UserCache cache = source.getServer().getUserCache();
String players = invites.stream().map(invite -> cache.getByUuid(invite.playerId).orElse(new GameProfile(Util.NIL_UUID, "{Uncached Player}")).getName()).collect(Collectors.joining(", "));
new Message(players).format(Formatting.ITALIC).send(source.getPlayer(), false);
return 1;
}
Aggregations