Скачать KubeJS + CC: Tweaked — Minecraft Моды — MetaMods

KubeJS + CC: Tweaked

Активный

Установок

10

Последнее обновление

1 год назад

Версии

1.19.2 — 1.20.2
Клиент и сервер
Forge
Управление
Технологические
Утилиты
Аддоны

KubeJS + CC: Tweaked - Интеграция KubeJS с ComputerCraft

Этот мод создает мост между KubeJS и модификацией CC: Tweaked, позволяя разработчикам добавлять пользовательские периферийные устройства к любым блокам в Minecraft. С помощью JavaScript вы можете расширять функциональность существующих механизмов и создавать собственные взаимодействия.

поддерживаемые версии требуемые стороны

Основные возможности

Мод предоставляет инструменты для создания кастомных периферийных устройств, которые можно привязывать к различным блокам. Вы можете добавлять собственные методы, которые будут доступны через компьютеры ComputerCraft.

Пример использования

Вот как можно добавить дополнительные методы к печи:

// приоритет: 0
// Последнее обновление кода: 30 апреля 2024

ComputerCraftEvents.peripheral(event => {
    // Первый параметр: тип периферийного устройства
    // Второй параметр: к какому блоку применяется
    // Примечание: можно использовать регулярные выражения для второго параметра

    event.registerPeripheral("furnace", "minecraft:furnace")
        // Ограничивает вызов метода до 1 раза за тик,
        // так как метод планируется в основном потоке.
        // Основной поток синхронизирован с блоком
        .mainThreadMethod("burnTime", (container, direction, arguments) => {
            // Этот пользовательский метод возвращает текущее
            // оставшееся время горения печи.
            return container.entityData.getInt("BurnTime")
        })
        .mainThreadMethod("cookingProgress", (container) => {
            // Этот пользовательский метод возвращает процент
            // текущего процесса приготовления.
            // Прогресс 0, возвращенный в течение двух последовательных
            // тиков, означает, что приготовление не происходит.
            let data = container.entityData
            let cookTime = data.getInt('CookTime')
            let cookTimeTotal = data.getInt('CookTimeTotal')
            if (!cookTimeTotal) return 0;
            return (cookTime / cookTimeTotal) * 100
        })

        // Не имеет ограничений на вызов,
        // однако метод не может получить доступ к большинству данных в мире.
        // Например, он не может получить доступ к NBT сущности тайла
        .method("say_hi", (container, direction, arguments) => {
            container.up.set("diamond_block")
            return "привет, вот твой алмазный блок"
        })
})

Этот пример демонстрирует, как можно получить информацию о времени горения и прогрессе приготовления в печи, а также добавить простой метод для взаимодействия.

Участники проекта
Wolfieboy09

Wolfieboy09

Разработчик

richie3366

richie3366

Разработчик

Создан: 1 мая 2024

ID: 8678