Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package stellarcore;
- import net.fabricmc.api.ModInitializer;
- import net.fabricmc.fabric.api.networking.v1.S2CPlayChannelEvents;
- import net.fabricmc.fabric.api.screenhandler.v1.ScreenHandlerRegistry;
- import net.minecraft.entity.player.PlayerEntity;
- import net.minecraft.entity.player.PlayerInventory;
- import net.minecraft.item.ItemStack;
- import net.minecraft.screen.ScreenHandlerType;
- import net.minecraft.util.Identifier;
- public class StellarCore implements ModInitializer {
- // Местная переменная, которая будет использоваться для регистрации ScreenHandler
- public static ScreenHandlerType<ScreenInventoryHandler> MOD_SCREEN_HANDLER;
- @Override
- public void onInitialize() {
- // Регистрация ScreenHandlerType через ScreenHandlerRegistry
- MOD_SCREEN_HANDLER = ScreenHandlerRegistry.registerSimple(
- new Identifier("stellarcore", "screen_inventory"),
- ScreenInventoryHandler::new
- );
- ItemPickupEvent.ItemPickupListener.ITEM_PICKUP.register(this::onItemPickup);
- }
- private void onItemPickup(ItemPickupEvent event) {
- // Логика обработки подбора предмета
- PlayerEntity player = event.getPlayer();
- ItemStack itemStack = event.getItemStack();
- // Добавляем предмет в модульный инвентарь
- ModularInventory inventory = getModularInventoryForPlayer(player);
- if (inventory != null) {
- inventory.addItem(itemStack);
- }
- }
- private ModularInventory getModularInventoryForPlayer(PlayerEntity player) {
- // Логика получения модульного инвентаря игрока
- return new ModularInventory(10); // Пример: инвентарь на 10 слотов
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment