diff --git a/gradle.properties b/gradle.properties
index ad96809..9429eba 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -2,6 +2,6 @@
org.gradle.jvmargs=-Xmx1G
org.gradle.parallel=true
# Properties
-mod_version=1.1.0
+mod_version=1.1.1
maven_group=arzumify.presence
archives_base_name=presence
\ No newline at end of file
diff --git a/src/main/java/arzumify/presence/matchmaker/MatchMaker.java b/src/main/java/arzumify/presence/matchmaker/MatchMaker.java
index 768eeff..c6c11df 100644
--- a/src/main/java/arzumify/presence/matchmaker/MatchMaker.java
+++ b/src/main/java/arzumify/presence/matchmaker/MatchMaker.java
@@ -25,26 +25,37 @@ public class MatchMaker
, T extends PresenceProvider
> {
}
public Set Search(T match, Channel channel) {
- Set matches = new HashSet<>();
- Set presenceChunks = match.presence().GetCollisionChunks();
- if (!Collections.disjoint(presenceChunks, channels.get(channel).keySet())) {
- presenceChunks.retainAll(channels.get(channel).keySet());
- for (Vec2i chunk : presenceChunks) {
- for (T matching : channels.get(channel).get(chunk)) {
- if (match != matching) {
- if (match.presence().Matches(matching.presence())) {
- matches.add(matching);
+ var matches = new HashSet();
+ var presenceChunks = match.presence().GetCollisionChunks();
+ var chunks = channels.get(channel);
+ if (chunks != null) {
+ if (!Collections.disjoint(presenceChunks, chunks.keySet())) {
+ presenceChunks.retainAll(chunks.keySet());
+ for (Vec2i chunk : presenceChunks) {
+ if (chunks.get(chunk) != null) {
+ for (T matching : chunks.get(chunk)) {
+ if (match != matching) {
+ if (match.presence().Matches(matching.presence())) {
+ matches.add(matching);
+ }
+ }
}
}
}
}
+ return matches;
+ } else {
+ return null;
}
- return matches;
}
public void Remove(T match, Channel channel) {
for (Vec2i chunk : match.presence().GetChunks()) {
- channels.get(channel).get(chunk).remove(match);
+ if (channels.get(channel) != null) {
+ if (channels.get(channel).get(chunk) != null) {
+ channels.get(channel).get(chunk).remove(match);
+ }
+ }
}
}
-}
+}
\ No newline at end of file