Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions api/src/bukkit/java/com/lunarclient/apollo/BukkitApollo.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,11 @@
import com.lunarclient.apollo.player.ApolloPlayer;
import com.lunarclient.apollo.player.ApolloPlayerManager;
import com.lunarclient.apollo.recipients.Recipients;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import lombok.NonNull;
import org.bukkit.Bukkit;
import org.bukkit.Location;
Expand Down Expand Up @@ -81,11 +80,12 @@ public static void runForPlayer(@NonNull UUID playerUuid, @NonNull Consumer<Apol
*/
public static Recipients getRecipientsFrom(@NonNull Collection<Player> players) {
ApolloPlayerManager playerManager = Apollo.getPlayerManager();
List<ApolloPlayer> apolloPlayers = players.stream()
.map(player -> playerManager.getPlayer(player.getUniqueId()))
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
List<ApolloPlayer> apolloPlayers = new ArrayList<>(players.size());

for (Player player : players) {
playerManager.getPlayer(player.getUniqueId())
.ifPresent(apolloPlayers::add);
}

return Recipients.of(apolloPlayers);
}
Expand Down
14 changes: 7 additions & 7 deletions api/src/bungee/java/com/lunarclient/apollo/BungeeApollo.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,11 @@
import com.lunarclient.apollo.player.ApolloPlayer;
import com.lunarclient.apollo.player.ApolloPlayerManager;
import com.lunarclient.apollo.recipients.Recipients;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import lombok.NonNull;
import net.md_5.bungee.api.connection.ProxiedPlayer;

Expand Down Expand Up @@ -74,11 +73,12 @@ public static void runForPlayer(@NonNull UUID playerUuid, @NonNull Consumer<Apol
*/
public static Recipients getRecipientsFrom(@NonNull Collection<ProxiedPlayer> players) {
ApolloPlayerManager playerManager = Apollo.getPlayerManager();
List<ApolloPlayer> apolloPlayers = players.stream()
.map(player -> playerManager.getPlayer(player.getUniqueId()))
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
List<ApolloPlayer> apolloPlayers = new ArrayList<>(players.size());

for (ProxiedPlayer player : players) {
playerManager.getPlayer(player.getUniqueId())
.ifPresent(apolloPlayers::add);
}

return Recipients.of(apolloPlayers);
}
Expand Down
14 changes: 7 additions & 7 deletions api/src/folia/java/com/lunarclient/apollo/FoliaApollo.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,11 @@
import com.lunarclient.apollo.player.ApolloPlayer;
import com.lunarclient.apollo.player.ApolloPlayerManager;
import com.lunarclient.apollo.recipients.Recipients;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Optional;
import java.util.UUID;
import java.util.function.Consumer;
import java.util.stream.Collectors;
import lombok.NonNull;
import org.bukkit.Bukkit;
import org.bukkit.Location;
Expand Down Expand Up @@ -81,11 +80,12 @@ public static void runForPlayer(@NonNull UUID playerUuid, @NonNull Consumer<Apol
*/
public static Recipients getRecipientsFrom(@NonNull Collection<Player> players) {
ApolloPlayerManager playerManager = Apollo.getPlayerManager();
List<ApolloPlayer> apolloPlayers = players.stream()
.map(player -> playerManager.getPlayer(player.getUniqueId()))
.filter(Optional::isPresent)
.map(Optional::get)
.collect(Collectors.toList());
List<ApolloPlayer> apolloPlayers = new ArrayList<>(players.size());

for (Player player : players) {
playerManager.getPlayer(player.getUniqueId())
.ifPresent(apolloPlayers::add);
}

return Recipients.of(apolloPlayers);
}
Expand Down
27 changes: 18 additions & 9 deletions api/src/main/java/com/lunarclient/apollo/event/EventBus.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
Expand Down Expand Up @@ -96,7 +97,8 @@ public void unregister(@NonNull Object instance) {
for (Method method : this.getEventMethods(instance)) {
List<Consumer<? extends Event>> listeners = this.events.get(method.getParameterTypes()[0]);
if (listeners != null) {
listeners.removeIf(consumer -> consumer instanceof ReflectiveConsumer && ((ReflectiveConsumer<?>) consumer).getInstance() == instance);
listeners.removeIf(consumer -> consumer instanceof ReflectiveConsumer
&& ((ReflectiveConsumer<?>) consumer).getInstance() == instance);
}
}
}
Expand Down Expand Up @@ -127,17 +129,24 @@ public <T extends Event> boolean unregister(@NonNull Class<T> event, @NonNull Co
@SuppressWarnings("unchecked")
public <T extends Event> EventResult<T> post(@NonNull T event) {
CopyOnWriteArrayList<Consumer<? extends Event>> consumers = this.events.get(event.getClass());
List<Throwable> throwables = new ArrayList<>();
if (consumers != null) {
for (Consumer<? extends Event> consumer : consumers) {
try {
((Consumer<T>) consumer).accept(event);
} catch (Throwable throwable) {
throwables.add(throwable);
if (consumers == null || consumers.isEmpty()) {
return new EventResult<>(event, Collections.emptyList());
}

List<Throwable> throwables = null;
for (Consumer<? extends Event> consumer : consumers) {
try {
((Consumer<T>) consumer).accept(event);
} catch (Throwable throwable) {
if (throwables == null) {
throwables = new ArrayList<>();
}

throwables.add(throwable);
}
}
return new EventResult<>(event, throwables);

return new EventResult<>(event, throwables == null ? Collections.emptyList() : throwables);
}

private List<Method> getEventMethods(Object instance) {
Expand Down
6 changes: 5 additions & 1 deletion api/src/main/java/com/lunarclient/apollo/mods/Mods.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import com.lunarclient.apollo.mods.impl.Mod2dItems;
import com.lunarclient.apollo.mods.impl.Mod3dSkins;
import com.lunarclient.apollo.mods.impl.ModArmorstatus;
import com.lunarclient.apollo.mods.impl.ModAttackIndicator;
import com.lunarclient.apollo.mods.impl.ModAudioSubtitles;
import com.lunarclient.apollo.mods.impl.ModAutoTextActions;
import com.lunarclient.apollo.mods.impl.ModAutoTextHotkey;
Expand All @@ -49,6 +50,7 @@
import com.lunarclient.apollo.mods.impl.ModFps;
import com.lunarclient.apollo.mods.impl.ModFreelook;
import com.lunarclient.apollo.mods.impl.ModGlintColorizer;
import com.lunarclient.apollo.mods.impl.ModGuiScale;
import com.lunarclient.apollo.mods.impl.ModHitColor;
import com.lunarclient.apollo.mods.impl.ModHitbox;
import com.lunarclient.apollo.mods.impl.ModHorseStats;
Expand Down Expand Up @@ -145,6 +147,7 @@ public final class Mods {
ModCoordinates.class,
ModDayCounter.class,
ModCrosshair.class,
ModAttackIndicator.class,
ModPotionEffects.class,
ModDirectionHud.class,
ModWaypoints.class,
Expand Down Expand Up @@ -219,9 +222,10 @@ public final class Mods {
ModKillSounds.class,
ModInventoryMod.class,
ModF3Display.class,
ModGuiScale.class,
ModRadio.class,
ModUhcOverlay.class,
ModSba.class,
ModUhcOverlay.class,
ModNeu.class
);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,40 @@ public final class ModArmorstatus {
.notifyClient()
.build();

/**
* No documentation available.
*
* @since 1.2.8
*/
public static final SimpleOption<Boolean> BACKGROUND = SimpleOption.<Boolean>builder()
.node("armorstatus", "background").type(TypeToken.get(Boolean.class))
.defaultValue(false)
.notifyClient()
.build();

/**
* No documentation available.
*
* @since 1.2.8
*/
public static final SimpleOption<Boolean> BORDER = SimpleOption.<Boolean>builder()
.node("armorstatus", "border").type(TypeToken.get(Boolean.class))
.defaultValue(false)
.notifyClient()
.build();

/**
* No documentation available.
*
* @since 1.2.8
*/
public static final NumberOption<Float> BORDER_THICKNESS = NumberOption.<Float>number()
.node("armorstatus", "border-thickness").type(TypeToken.get(Float.class))
.min(0.5F).max(3.0F)
.defaultValue(0.5F)
.notifyClient()
.build();

/**
* No documentation available.
*
Expand Down Expand Up @@ -169,6 +203,28 @@ public final class ModArmorstatus {
.notifyClient()
.build();

/**
* No documentation available.
*
* @since 1.2.8
*/
public static final SimpleOption<Color> BACKGROUND_COLOR = SimpleOption.<Color>builder()
.node("armorstatus", "background-color").type(TypeToken.get(Color.class))
.defaultValue(new Color(0, 0, 0, 111))
.notifyClient()
.build();

/**
* No documentation available.
*
* @since 1.2.8
*/
public static final SimpleOption<Color> BORDER_COLOR = SimpleOption.<Color>builder()
.node("armorstatus", "border-color").type(TypeToken.get(Color.class))
.defaultValue(new Color(0, 0, 0, 159))
.notifyClient()
.build();

/**
* No documentation available.
*
Expand Down
Loading
Loading