← Назад к ресурсам

NeoGeckoJS

Use GeckoLib to create animatable block/item/armor by KubeJS now on NeoForge!

Modrinth library utility

Описание

# Gecko JS Use GeckoLib to create animatable block/item/armor by simply using KubeJS! This mod was originally made for Forge 1.20.1 and had no Modrinth Version, however this both ports and updates the mod for NeoForge 1.21.1 with just about perfect 1:1 replication so any original scripts and assets work almost the same! # What're some examples? Any of the original examples should work pretty much the exact same, again it's just about 1:1. ## Startup Script: ``` StartupEvents.registry("block", event => { const rotating = RawAnimation.begin().thenLoop("rotating"); event.create("geckojs:example_block", "animatable") .box(1, 1, 1, 15, 15, 15, true) .animatableBlockEntity(blockEntity => { blockEntity.addController(state => state.setAndContinue(rotating)) }) .defaultGeoModel() }) ``` ## Item Example: ``` StartupEvents.registry('item', event => { event.create('cool_sword', 'anim_sword') .tier('diamond') .defaultGeoModel() .addController(controller => { controller.addAnimation(state => { if (state.isMoving()) { return state.setAndContinue(RawAnimation.begin().thenLoop("walk")) } return state.setAndContinue(RawAnimation.begin().thenLoop("idle")) }) }) }) ``` ## Armor Example: ``` event.create('fancy_helmet', 'anim_helmet') .material('iron') .defaultGeoModel() .armorItemUseGeoModel() // Makes the item icon use the 3D model .boneVisibility((renderer, slot) => { // Hide a specific bone on the armor model renderer.hideBone("extra_antenna") }) ``` ## Blocks Example: ``` StartupEvents.registry('block', event => { event.create('animated_pillar', 'animatable') .defaultGeoModel() .addController(controller => { controller.addAnimation(state => { return state.setAndContinue(RawAnimation.begin().thenLoop("spin")) }) }) }) ```