aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/chat/filters/AdFilter.java46
-rw-r--r--src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java18
2 files changed, 32 insertions, 32 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AdFilter.java b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AdFilter.java
index 5f9f463d..67734438 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AdFilter.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/chat/filters/AdFilter.java
@@ -9,30 +9,30 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class AdFilter extends ChatPatternListener {
- private static final Pattern[] AD_FILTERS = new Pattern[]{
- Pattern.compile("^(?:i(?:m|'m| am)? |(?:is )?any(?: ?one|1) )?(?:buy|sell|lowball|trade?)(?:ing)?(?:\\W|$)", Pattern.CASE_INSENSITIVE),
- Pattern.compile("(.)\\1{7,}"),
- Pattern.compile("\\W(?:on|in|check|at) my (?:ah|bin)(?:\\W|$)", Pattern.CASE_INSENSITIVE),
- };
+ private static final Pattern[] AD_FILTERS = new Pattern[] {
+ Pattern.compile("^(?:i(?:m|'m| am)? |(?:is )?any(?: ?one|1) )?(?:buy|sell|lowball|trade?)(?:ing)?(?:\\W|$)", Pattern.CASE_INSENSITIVE),
+ Pattern.compile("(.)\\1{7,}"),
+ Pattern.compile("\\W(?:on|in|check|at) my (?:ah|bin)(?:\\W|$)", Pattern.CASE_INSENSITIVE), };
- public AdFilter() {
- // Groups:
- // 1. Player name
- // 2. Message
- super("^§[67ab](?:\\[(?:MVP|VIP)(?:§[0-9a-f]\\+{1,2}§[6ab])?] )?([a-zA-Z0-9_]{2,16})§[7f]: (.*)$");
- }
+ public AdFilter() {
+ // Groups:
+ // 1. Player name
+ // 2. Message
+ // (?:§8\[[§fadbc0-9]+§8\] )?§[67abc](?:\[[§A-Za-z0-9+]+\] )?([A-Za-z0-9_]+)§[f7]: (.+)
+ super("(?:§8\\[[§fadbc0-9]+§8\\] )?§[67abc](?:\\[[§A-Za-z0-9+]+\\] )?([A-Za-z0-9_]+)§[f7]: (.+)");
+ }
- @Override
- public boolean onMatch(Text _message, Matcher matcher) {
- String message = matcher.group(2);
- for (Pattern adFilter : AD_FILTERS)
- if (adFilter.matcher(message).find())
- return true;
- return false;
- }
+ @Override
+ public boolean onMatch(Text _message, Matcher matcher) {
+ String message = matcher.group(2);
+ for (Pattern adFilter : AD_FILTERS)
+ if (adFilter.matcher(message).find())
+ return true;
+ return false;
+ }
- @Override
- protected ChatFilterResult state() {
- return SkyblockerConfig.get().messages.hideAds;
- }
+ @Override
+ protected ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideAds;
+ }
} \ No newline at end of file
diff --git a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java
index 73fb5dbd..a769dca2 100644
--- a/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java
+++ b/src/test/java/me/xmrvizzy/skyblocker/chat/filters/AdFilterTest.java
@@ -14,47 +14,47 @@ class AdFilterTest extends ChatPatternListenerTest<AdFilter> {
@Test
void noRank() {
- assertMatches("§7Advertiser§7: advertisement");
+ assertMatches("§8[§a86§8] §7Advertiser§7: advertisement");
}
@Test
void vip() {
- assertMatches("§a[VIP] Advertiser§f: advertisement");
+ assertMatches("§8[§b280§8] §a[VIP] Advertiser§f: advertisement");
}
@Test
void mvp() {
- assertMatches("§b[MVP§c+§b] Advertiser§f: advertisement");
+ assertMatches("§8[§d256§8] §b[MVP§c+§b] Advertiser§f: advertisement");
}
@Test
void plusPlus() {
- assertMatches("§6[MVP§c++§6] Advertiser§f: advertisement");
+ assertMatches("§8[§6222§8] §6[MVP§c++§6] Advertiser§f: advertisement");
}
@Test
void capturesMessage() {
- assertGroup("§b[MVP§c+§b] b2dderr§f: buying prismapump", 2, "buying prismapump");
+ assertGroup("§8[§c325§8] §b[MVP§c+§b] b2dderr§f: buying prismapump", 2, "buying prismapump");
}
@Test
void simpleAd() {
- assertFilters("§b[MVP§c+§b] b2dderr§f: buying prismapump");
+ assertFilters("§8[§c320§8] §b[MVP§c+§b] b2dderr§f: buying prismapump");
}
@Test
void uppercaseAd() {
- assertFilters("§a[VIP] Tecnoisnoob§f: SELLING REJUVENATE 5 Book on ah!");
+ assertFilters("§8[§f70§8] §a[VIP] Tecnoisnoob§f: SELLING REJUVENATE 5 Book on ah!");
}
@Test
void characterSpam() {
- assertFilters("§a[VIP] Benyyy_§f: Hey, Visit my Island, i spent lots of time to build it! I also made donate room! <<<<<<<<<<<<<<<<<<<");
+ assertFilters("§8[§9144§8] §a[VIP] Benyyy_§f: Hey, Visit my Island, i spent lots of time to build it! I also made donate room! <<<<<<<<<<<<<<<<<<<");
}
@Test
void notAd() {
- Matcher matcher = listener.pattern.matcher("§a[VIP] NotMatching§f: This message shouldn't match!");
+ Matcher matcher = listener.pattern.matcher("§8[§6200§8] §a[VIP] NotMatching§f: This message shouldn't match!");
assertTrue(matcher.matches());
assertFalse(listener.onMatch(null, matcher));
}