-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
ну сливаю вам мой жоский селфкод с чатом гпт
ss -
Код:
import com.google.common.eventbus.Subscribe;
import im.arixxx.events.EventPacket;
import im.arixxx.functions.api.Category;
import im.arixxx.functions.api.Function;
import im.arixxx.functions.api.FunctionRegister;
import im.arixxx.functions.api.NotificationUtil;
import im.arixxx.ui.NotificationRender;
import net.minecraft.network.play.server.SChatPacket;
import net.minecraft.util.text.TextFormatting;
import java.util.*;
@FunctionRegister(name = "Notification", type = Category.Visuals, serverft = "", serverrw = "", serverhw = "", desc = "Уведомления")
public class Notification extends Function {
private static final String[] SPECTEXTS = {"Spec", "Спек", "spec", "спек", "SPEC", "СПЕК", "Спек"};
private static final String[] WARPTEXTS = {"/Warp", "/Варп", "warp", "варп", "WARP", "ВАРП", "Варп"};
@Subscribe
public void onEvent(EventPacket packetEvent) {
if (packetEvent.isReceive() && packetEvent.getPacket() instanceof SChatPacket packetChat) {
handleReceivePacket(packetChat);
}
}
private void handleReceivePacket(SChatPacket packet) {
String originalMessage = packet.getChatComponent().getString();
String formattedMessage = TextFormatting.getTextWithoutFormattingCodes(originalMessage);
String lowerCaseMessage = originalMessage.toLowerCase(Locale.ROOT);
if (isSpecMessage(lowerCaseMessage)) {
renderSpecNotification(formattedMessage);
}
if (isWarpMessage(lowerCaseMessage)) {
renderWarpNotification(formattedMessage);
}
}
private boolean isSpecMessage(String lowerCaseMessage) {
return Arrays.stream(SPECTEXTS)
.map(String::toLowerCase)
.anyMatch(lowerCaseMessage::contains);
}
private boolean isWarpMessage(String lowerCaseMessage) {
return Arrays.stream(WARPTEXTS)
.map(String::toLowerCase)
.anyMatch(lowerCaseMessage::contains);
}
private void renderSpecNotification(String lowerCaseMessage) {
NotificationUtil.NOTIFICATION_MANAGER.add(lowerCaseMessage + " просит проследить за ним!", "", 2, NotificationRender.ImageType.SPEC_PHOTO);
}
private void renderWarpNotification(String lowerCaseMessage) {
NotificationUtil.NOTIFICATION_MANAGER.add(lowerCaseMessage + " просит пропиарить его варп!", "", 2, NotificationRender.ImageType.WARP_PHOTO);
}
}
ss -