Подпишитесь на наш Telegram-канал, чтобы всегда быть в курсе важных обновлений! Перейти

Часть функционала AutoJoin 3.1 под спуки тайм

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
23 Фев 2025
Сообщения
17
Реакции
0
Выберите загрузчик игры
  1. Fabric
всем привет! Хотел бы поделится данной функцией, это есть в других срц, также хочу сказать что этот код я просто напросто спизданул, но там были ошибки над которыми я поломал голову и дали мне какие либо знания в джаве, и в майне вообще, будет классно почитать вашу критику, и сколько будет /del под этим постом XD


код:
Expand Collapse Copy
package im.expensive.functions.impl.misc;

import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventPacket;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CClickWindowPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;


@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {


    private int findHotbarSlot(Item item) {
    
        for (int i = 0; i < 9; i++) {

            ItemStack stack = mc.player.inventory.mainInventory.get(i);
            if (!stack.isEmpty() && stack.getItem() == item) {
                return i;
            }
        }
        return -1; //
    }

    private void selectCompassAndUse() {
        
        int slot = findHotbarSlot(Items.COMPASS);

        if (slot == -1) {
          
            return;
        }

    
        mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));

      
        mc.player.inventory.currentItem = slot;

 
        mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
    }

    @Subscribe
    private void onUpdate(EventUpdate event) {
        Screen screen = mc.currentScreen;

        // Если открыт экран сундука (меню сервера)
        if (screen instanceof ChestScreen) {
            ChestContainer container = ((ChestScreen) screen).getContainer();

            for (int i = 0; i < container.inventorySlots.size(); i++) {
                ItemStack stack = container.getSlot(i).getStack();
            
                if (stack.getItem() == Items.STICKY_PISTON) {
                  
                    mc.player.connection.sendPacket(new CClickWindowPacket(
                            container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
                    ));
          
                    return;
                }
            }
        } else {
      
            selectCompassAndUse();
        }
    }

    @Subscribe
    private void onPacket(EventPacket event) {
        
        String header = mc.ingameGUI.getTabList().header.getString();
        if (header.contains("Приватка")) {
            print("Успешно подключился на дуэли!");
            toggle(); //она не отключается XDDD
        }
    }
}
короче, надо потом киллку слить на спуки, а то вообще нигде нету(
 
Последнее редактирование:
всем привет! Хотел бы поделится данной функцией, это есть в других срц, также хочу сказать что этот код я просто напросто спизданул, но там были ошибки над которыми я поломал голову и дали мне какие либо знания в джаве, и в майне вообще, будет классно почитать вашу критику, и сколько будет /del под этим постом XD


код:
Expand Collapse Copy
package im.expensive.functions.impl.misc;

import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventPacket;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CClickWindowPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;


@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {


    private int findHotbarSlot(Item item) {
   
        for (int i = 0; i < 9; i++) {

            ItemStack stack = mc.player.inventory.mainInventory.get(i);
            if (!stack.isEmpty() && stack.getItem() == item) {
                return i;
            }
        }
        return -1; //
    }

    private void selectCompassAndUse() {
       
        int slot = findHotbarSlot(Items.COMPASS);

        if (slot == -1) {
         
            return;
        }

   
        mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));

     
        mc.player.inventory.currentItem = slot;

 
        mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
    }

    @Subscribe
    private void onUpdate(EventUpdate event) {
        Screen screen = mc.currentScreen;

        // Если открыт экран сундука (меню сервера)
        if (screen instanceof ChestScreen) {
            ChestContainer container = ((ChestScreen) screen).getContainer();

            for (int i = 0; i < container.inventorySlots.size(); i++) {
                ItemStack stack = container.getSlot(i).getStack();
           
                if (stack.getItem() == Items.STICKY_PISTON) {
                 
                    mc.player.connection.sendPacket(new CClickWindowPacket(
                            container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
                    ));
         
                    return;
                }
            }
        } else {
     
            selectCompassAndUse();
        }
    }

    @Subscribe
    private void onPacket(EventPacket event) {
       
        String header = mc.ingameGUI.getTabList().header.getString();
        if (header.contains("Приватка")) {
            print("Успешно подключился на дуэли!");
            toggle(); //она не отключается XDDD
        }
    }
}
короче, надо потом киллку слить на спуки, а то вообще нигде нету(
сделать проверку на слот❌
сделать какую то пакетную хуйню которая не работает✔️
 
всем привет! Хотел бы поделится данной функцией, это есть в других срц, также хочу сказать что этот код я просто напросто спизданул, но там были ошибки над которыми я поломал голову и дали мне какие либо знания в джаве, и в майне вообще, будет классно почитать вашу критику, и сколько будет /del под этим постом XD


код:
Expand Collapse Copy
package im.expensive.functions.impl.misc;

import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventPacket;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CClickWindowPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;


@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {


    private int findHotbarSlot(Item item) {
   
        for (int i = 0; i < 9; i++) {

            ItemStack stack = mc.player.inventory.mainInventory.get(i);
            if (!stack.isEmpty() && stack.getItem() == item) {
                return i;
            }
        }
        return -1; //
    }

    private void selectCompassAndUse() {
       
        int slot = findHotbarSlot(Items.COMPASS);

        if (slot == -1) {
         
            return;
        }

   
        mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));

     
        mc.player.inventory.currentItem = slot;

 
        mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
    }

    @Subscribe
    private void onUpdate(EventUpdate event) {
        Screen screen = mc.currentScreen;

        // Если открыт экран сундука (меню сервера)
        if (screen instanceof ChestScreen) {
            ChestContainer container = ((ChestScreen) screen).getContainer();

            for (int i = 0; i < container.inventorySlots.size(); i++) {
                ItemStack stack = container.getSlot(i).getStack();
           
                if (stack.getItem() == Items.STICKY_PISTON) {
                 
                    mc.player.connection.sendPacket(new CClickWindowPacket(
                            container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
                    ));
         
                    return;
                }
            }
        } else {
     
            selectCompassAndUse();
        }
    }

    @Subscribe
    private void onPacket(EventPacket event) {
       
        String header = mc.ingameGUI.getTabList().header.getString();
        if (header.contains("Приватка")) {
            print("Успешно подключился на дуэли!");
            toggle(); //она не отключается XDDD
        }
    }
}
короче, надо потом киллку слить на спуки, а то вообще нигде нету(
cпастить в литки❌❌❌❌❌ сливать говно✅✅✅✅✅✅✅✅✅✅
 
cпастить в литки❌❌❌❌❌ сливать говно✅✅✅✅✅✅✅✅✅✅
Это с литки, я забыл написать, ты чтои пробовал? Работает? Мне не банит и ВРОДЕ БЫ работает
сделать проверку на слот❌
сделать какую то пакетную хуйню которая не работает✔️
Привет, а ты можешь сказать как ее сделать прост не не знаю. Я перепишу наверное, у меня просто все работает
Нет, ну по крайней мере у меня работает
 
Это с литки, я забыл написать, ты чтои пробовал? Работает? Мне не банит и ВРОДЕ БЫ работает
так как мне проверить если ебаный киевстар не дает заходить на сервера я на мобильном сижу
 
так как мне проверить если ебаный киевстар не дает заходить на сервера я на мобильном сижу
У нас ток инет включили вообще) я в Ленинградской вообще 3 дня без инета
 
Это с литки, я забыл написать, ты чтои пробовал? Работает? Мне не банит и ВРОДЕ БЫ работает

Привет, а ты можешь сказать как ее сделать прост не не знаю. Я перепишу наверное, у меня просто все работает

Нет, ну по крайней мере у меня работает
@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {

private long lastCompassCheckTime = 0;
private boolean compassNotFoundReported = false;
private static final long compastime = 1500; // 1.5 секунды

private int findHotbarSlot(Item item) {
for (int i = 0; i < 9; i++) {
ItemStack stack = mc.player.inventory.mainInventory.get(i);
if (!stack.isEmpty() && stack.getItem() == item) {
return i;
}
}
return -1;
}

private void selectCompassAndUse() {
int slot = findHotbarSlot(Items.COMPASS);

if (slot == -1) {
long currentTime = System.currentTimeMillis();

if (lastCompassCheckTime == 0) {
lastCompassCheckTime = currentTime;
compassNotFoundReported = false;
}

if (!compassNotFoundReported && (currentTime - lastCompassCheckTime) >= compastime) {
print("Подключились к серверу");
compassNotFoundReported = true;

}

return;
}

resetCompassCheckTimer();

if (mc.player.inventory.currentItem != slot) {
mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));
mc.player.inventory.currentItem = slot;
}

mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
}

private void resetCompassCheckTimer() {
lastCompassCheckTime = 0;
compassNotFoundReported = false;
}

@Subscribe
private void onUpdate(EventUpdate event) {
Screen screen = mc.currentScreen;

if (screen != null) {
resetCompassCheckTimer();
}

if (screen instanceof ChestScreen) {
ChestContainer container = ((ChestScreen) screen).getContainer();

for (int i = 0; i < container.inventorySlots.size(); i++) {
ItemStack stack = container.getSlot(i).getStack();

if (stack.getItem() == Items.STICKY_PISTON) {
mc.player.connection.sendPacket(new CClickWindowPacket(
container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
));
resetCompassCheckTimer();
return;
}
}
} else if (screen == null) {

selectCompassAndUse();
}
}

@Subscribe
private void onPacket(EventPacket event) {
String header = mc.ingameGUI.getTabList().header.getString();
if (header.contains("Приватка")) {
print( "подключился на дуэли");
toggle();
resetCompassCheckTimer();
}
}

@override
public void onDisable() {
super.onDisable();
resetCompassCheckTimer();
}
}
 
всем привет! Хотел бы поделится данной функцией, это есть в других срц, также хочу сказать что этот код я просто напросто спизданул, но там были ошибки над которыми я поломал голову и дали мне какие либо знания в джаве, и в майне вообще, будет классно почитать вашу критику, и сколько будет /del под этим постом XD


код:
Expand Collapse Copy
package im.expensive.functions.impl.misc;

import com.google.common.eventbus.Subscribe;
import im.expensive.events.EventPacket;
import im.expensive.events.EventUpdate;
import im.expensive.functions.api.Category;
import im.expensive.functions.api.Function;
import im.expensive.functions.api.FunctionRegister;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.inventory.ChestScreen;
import net.minecraft.inventory.container.ChestContainer;
import net.minecraft.inventory.container.ClickType;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.network.play.client.CClickWindowPacket;
import net.minecraft.network.play.client.CHeldItemChangePacket;
import net.minecraft.util.Hand;


@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {


    private int findHotbarSlot(Item item) {
   
        for (int i = 0; i < 9; i++) {

            ItemStack stack = mc.player.inventory.mainInventory.get(i);
            if (!stack.isEmpty() && stack.getItem() == item) {
                return i;
            }
        }
        return -1; //
    }

    private void selectCompassAndUse() {
       
        int slot = findHotbarSlot(Items.COMPASS);

        if (slot == -1) {
         
            return;
        }

   
        mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));

     
        mc.player.inventory.currentItem = slot;

 
        mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
    }

    @Subscribe
    private void onUpdate(EventUpdate event) {
        Screen screen = mc.currentScreen;

        // Если открыт экран сундука (меню сервера)
        if (screen instanceof ChestScreen) {
            ChestContainer container = ((ChestScreen) screen).getContainer();

            for (int i = 0; i < container.inventorySlots.size(); i++) {
                ItemStack stack = container.getSlot(i).getStack();
           
                if (stack.getItem() == Items.STICKY_PISTON) {
                 
                    mc.player.connection.sendPacket(new CClickWindowPacket(
                            container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
                    ));
         
                    return;
                }
            }
        } else {
     
            selectCompassAndUse();
        }
    }

    @Subscribe
    private void onPacket(EventPacket event) {
       
        String header = mc.ingameGUI.getTabList().header.getString();
        if (header.contains("Приватка")) {
            print("Успешно подключился на дуэли!");
            toggle(); //она не отключается XDDD
        }
    }
}
короче, надо потом киллку слить на спуки, а то вообще нигде нету(
1765720116690.png
 
@FunctionRegister(name = "AutoJoin", type = Category.Misc)
public class AutoJoin extends Function {

private long lastCompassCheckTime = 0;
private boolean compassNotFoundReported = false;
private static final long compastime = 1500; // 1.5 секунды

private int findHotbarSlot(Item item) {
for (int i = 0; i < 9; i++) {
ItemStack stack = mc.player.inventory.mainInventory.get(i);
if (!stack.isEmpty() && stack.getItem() == item) {
return i;
}
}
return -1;
}

private void selectCompassAndUse() {
int slot = findHotbarSlot(Items.COMPASS);

if (slot == -1) {
long currentTime = System.currentTimeMillis();

if (lastCompassCheckTime == 0) {
lastCompassCheckTime = currentTime;
compassNotFoundReported = false;
}

if (!compassNotFoundReported && (currentTime - lastCompassCheckTime) >= compastime) {
print("Подключились к серверу");
compassNotFoundReported = true;

}

return;
}

resetCompassCheckTimer();

if (mc.player.inventory.currentItem != slot) {
mc.player.connection.sendPacket(new CHeldItemChangePacket(slot));
mc.player.inventory.currentItem = slot;
}

mc.playerController.processRightClick(mc.player, mc.world, Hand.MAIN_HAND);
}

private void resetCompassCheckTimer() {
lastCompassCheckTime = 0;
compassNotFoundReported = false;
}

@Subscribe
private void onUpdate(EventUpdate event) {
Screen screen = mc.currentScreen;

if (screen != null) {
resetCompassCheckTimer();
}

if (screen instanceof ChestScreen) {
ChestContainer container = ((ChestScreen) screen).getContainer();

for (int i = 0; i < container.inventorySlots.size(); i++) {
ItemStack stack = container.getSlot(i).getStack();

if (stack.getItem() == Items.STICKY_PISTON) {
mc.player.connection.sendPacket(new CClickWindowPacket(
container.windowId, i, 0, ClickType.PICKUP, stack, container.getNextTransactionID(mc.player.inventory)
));
resetCompassCheckTimer();
return;
}
}
} else if (screen == null) {

selectCompassAndUse();
}
}

@Subscribe
private void onPacket(EventPacket event) {
String header = mc.ingameGUI.getTabList().header.getString();
if (header.contains("Приватка")) {
print( "подключился на дуэли");
toggle();
resetCompassCheckTimer();
}
}

@override
public void onDisable() {
super.onDisable();
resetCompassCheckTimer();
}
}
Спасибо
 
Назад
Сверху Снизу