Скачать SlashBlade JS — Minecraft Моды — ModStock

SlashBlade JS

Активный

Установок

0

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

6 дней назад

Версии

1.20.1
Клиент и сервер
Forge
Оружие и броня
Библиотеки
Утилиты

Slashblade JS

An mod that facilitates developers in editing and creating recipes for Slashblade: Resharped using KubeJS scripts, along with utilizing its events.

What Can It Do?

Here's a ready-to-use example:

// priority: 0

/* Server Side */

// When Slashblade checks power state: If not powered, consume 10 ProudSoul to enter charged state
SlashBladeJSEvents.powerBlade(event => {
    let state = BladeState.of(event.blade)
    let proudsoul = state.proudSoulCount
    if (!event.isPowered() && proudsoul >= 10) {
        state.setProudSoulCount(proudsoul - 10)
        event.setPowered(true)
    }
    event.user.tell("ProudSoul: " + proudsoul) // Notify player of current ProudSoul value
})

// A custom Slashblade recipe
ServerEvents.recipes(event => {
    event.recipes.slashblade.slashblade_shaped_recipe("slashblade:slashblade", [
        "ABA",
        "CSC",
        "ABC"
    ], {
        "S": SlashBladeIngredient.of(
            SlashBladeRequestDefinition.name("slashblade:fox_black") // Required base blade
                .killCount(233) // Kill count requirement
                .proudSoul(114514) // ProudSoul requirement
                .refineCount(10) // Refinement count requirement
                .addEnchantment(SBEnchantmentDefinition.of("minecraft:power", 2)) // Enchantment requirement
                .build() // Don't forget to .build()
        ),
        "A": "minecraft:golden_apple", // Other materials (like vanilla recipes)
        "B": "#forge:bones",
        "C": "minecraft:cake",
    }, "slashblade:fox_white"/* Resulting blade ID */)
})

// Create your custom blade
ServerEvents.highPriorityData(event => {
    let customBlade = SBSlashBladeDefinition.of("kubejs:test_blade", // Your blade ID
        SBRenderDefinition.newInstance() // Render properties
            .effectColor(2039347) // Blade effect color (hex RGB to decimal)
            .standbyRenderType(SBCarryType.DEFAULT) // Sheathed position
            .modelName("kubejs:model/named/test_blade.obj") // Path: ./kubejs/assets/kubejs/model/named/test_blade.obj
            .textureName("kubejs:model/named/test_blade.png") // Path: ./kubejs/assets/kubejs/model/named/test_blade.png
            .build(), // Don't forget to .build()
        SBPropertiesDefinition.newInstance()
            .maxDamage(666) // Max durability
            .baseAttackModifier(999) // Base attack damage
            .slashArtsType("slashblade:void_slash") // Set special attack
            .addSpecialEffect("slashblade:wither_edge") // Add special effect
            .defaultSwordType([SBSwordType.FIERCEREDGE, SBSwordType.BEWITCHED]) // Set blade types
            .build(), // Don't forget to .build()
        [ // Default enchantments
            SBEnchantmentDefinition.of("minecraft:power", 5),
            SBEnchantmentDefinition.of("minecraft:unbreaking", 10)
        ]
    )

    // Register to game
    event.addJson("kubejs:slashblade/named_blades/test_blade.json", SBSlashBladeDefinition.toJSON(customBlade))
})

License

This mod is open-source under the GPL v3.0 License.

You may include it in your modpacks/servers as long as you comply with the license terms.

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

mrqx0195

Разработчик