-
Автор темы
- #1
Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:
- бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
- маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
- приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
- обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.
Спасибо!
Взял от сюда: https://yougame.biz/threads/323952/page-2#post-3114138 ( noad )
Коротко и ясно.
1. Создаем класс AutoLeaveModer в im/expensive/functions/impl/player
В нём пишем:
2. Добавляем функцию, чтобы вы могли её включить
Открываем класс FunctionRegistry по пути im/expensive/functions/api
В нём вписываем:
Потом пишем уже сюда эта:
Радуемся теперь если модер в спеке вас кикнет с сервера)))
Коротко и ясно.
1. Создаем класс AutoLeaveModer в im/expensive/functions/impl/player
В нём пишем:
AutoLeaveMode.java:
package im.dedyshka.functions.impl.player;
import com.google.common.eventbus.Subscribe;
import net.minecraft.util.text.ITextComponent;
import im.dedyshka.command.staffs.StaffStorage;
import java.util.Locale;
import im.dedyshka.utils.client.ClientUtil;
import net.minecraft.client.network.play.NetworkPlayerInfo;
import net.minecraft.scoreboard.ScorePlayerTeam;
import java.util.Comparator;
import net.minecraft.scoreboard.Team;
import net.minecraft.util.text.TextFormatting;
import im.dedyshka.utils.text.GradientUtil;
import im.dedyshka.events.EventUpdate;
import im.dedyshka.functions.settings.Setting;
import java.util.ArrayList;
import java.util.regex.Pattern;
import im.dedyshka.ui.display.impl.StaffListRenderer;
import java.util.List;
import im.dedyshka.functions.settings.impl.BooleanSetting;
import im.dedyshka.functions.api.Category;
import im.dedyshka.functions.api.FunctionRegister;
import im.dedyshka.functions.api.Function;
@FunctionRegister(name = "AutoLeaveModer", type = Category.Player)
public class AutoLeaveModer extends Function
{
private final BooleanSetting specLeave;
private final List<StaffListRenderer.Staff> staffPlayers;
private final Pattern namePattern;
private final Pattern prefixMatches;
public AutoLeaveModer() {
this.specLeave = new BooleanSetting("Ливать от спека", false);
this.staffPlayers = new ArrayList<StaffListRenderer.Staff>();
this.namePattern = Pattern.compile("^\\w{3,16}$");
this.prefixMatches = Pattern.compile(".[I](mod|der|модер|adm|help|wne|хелп|адм|поддержка|кура|own|taf|curat|dev|supp|yt|сотруд).[/I]");
this.addSettings(new Setting[] { (Setting)this.specLeave });
}
@Subscribe
public void onUpdate(final EventUpdate e) {
final ITextComponent iTextComponent = GradientUtil.gradient("Модератор в спеке!");
final String serverHeader = TextFormatting.getTextWithoutFormattingCodes(AutoLeaveModer.mc.ingameGUI.getTabList().header.getString());
this.staffPlayers.clear();
for (ScorePlayerTeam team : mc.world.getScoreboard().getTeams().stream().sorted(Comparator.comparing(Team::getName)).toList()) {
final String name = team.getMembershipCollection().toString().replaceAll("[\\[\\]]", "");
boolean vanish = true;
for (final NetworkPlayerInfo info : AutoLeaveModer.mc.getConnection().getPlayerInfoMap()) {
if (info.getGameProfile().getName().equals(name)) {
vanish = false;
}
}
if (!serverHeader.contains("Hub")) {
if (!ClientUtil.isPvP() && this.namePattern.matcher(name).matches() && !name.equals(AutoLeaveModer.mc.player.getName().getString()) && !(boolean)this.specLeave.get() && (this.prefixMatches.matcher(team.getPrefix().getString().toLowerCase(Locale.ROOT)).matches() || StaffStorage.isStaff(name))) {
AutoLeaveModer.mc.player.connection.getNetworkManager().closeChannel(iTextComponent);
}
if (ClientUtil.isPvP() || ((!vanish || !(boolean)this.specLeave.get()) && (!StaffStorage.isStaff(name) || !(boolean)this.specLeave.get())) || team.getPrefix().getString().isEmpty()) {
continue;
}
AutoLeaveModer.mc.player.connection.getNetworkManager().closeChannel(iTextComponent);
}
}
}
}
Открываем класс FunctionRegistry по пути im/expensive/functions/api
В нём вписываем:
Потом пишем уже сюда эта:
Радуемся теперь если модер в спеке вас кикнет с сервера)))