Nexo
  • ๐Ÿ Home
  • ๐Ÿ“œMain Changelog
  • โ“FAQ
  • General Usage
    • โŒจ๏ธCommands
    • ๐Ÿง‘โ€๐ŸณRecipes
  • Migrate
    • โ˜„๏ธOraxen โ†’ Nexo
    • ๐Ÿ“ฆItemsAdder โ†’ Nexo
  • Configuration
    • โš™๏ธPlugin settings
    • ResourcePack
    • โš’๏ธItems
      • Special Item Appearance
    • โ›‘๏ธCustom Armors
      • ๐ŸชฝCustom Elytras (1.21.2+)
      • Component Based (1.21.2+)
      • Trims Based (1.20-1.21.1)
    • ๐ŸŒ€Glyphs
    • ๐ŸŽตSounds
  • Mechanics
    • ๐Ÿช‘Furniture Mechanic
      • ๐ŸŽฏHitbox
      • ๐Ÿ–‡๏ธConnectable Furniture
      • ๐Ÿช‘Seat Mechanic
      • ๐Ÿ›๏ธBed Mechanic
      • ๐Ÿ’กLight Mechanic
      • ๐Ÿง‘โ€๐ŸŒพFarming Mechanic
    • ๐Ÿ“ฆCustom Block Mechanics
      • ChorusBlock Mechanic
      • ๐ŸŽถNoteBlock Mechanic
        • Stripped Log Mechanic
        • Directional Mechanic
      • ๐ŸงตStringBlock Mechanic
    • ๐Ÿ”ฑCustom Trident
    • Other Mechanics
    • clickAction Mechanic
    • Custom Mechanic
  • โž•Addons
    • ๐ŸšชCarpentry
    • ๐ŸงฉCore Shaders
      • Text Effects by Akis
  • Compatibility
    • ModelEngine - custom mobs
    • MythicMobs - custom mobs
    • MythicCrucible
    • MMoItems
    • EcoItems
  • Community Guides
    • Vendors
    • API
Powered by GitBook
On this page
  • What is this?
  • Configuration
  • Parent-Block example:
  1. Mechanics
  2. Custom Block Mechanics
  3. NoteBlock Mechanic

Directional Mechanic

PreviousStripped Log MechanicNextStringBlock Mechanic

Last updated 2 months ago

What is this?

This mechanic allows you to place blocks and have them change their texture depending on the direction in which they are placed, like for example logs. There are 3 types of directional blocks: LOG, FURNACE and DROPPER. LOG takes up 3 custom block variations, FURNACE takes 4 and DROPPER takes 6.

Every sub-block can have a model property, which Nexo will use to determine what to display. If there is no model property on the sub-block, Nexo will use the model from the parent-block.

Models are also automatically rotated depending on the direction in which the block is placed. This means you can use the same model, and it will be rotated accordingly. If the sub-block has a model defined, it will not be rotated, allowing you to use different models for different directions.

Configuration

Parent-Block example:

main_block:
  itemname: "<white>Frozen Mushroom Stem"
  material: PAPER
  Pack:
    model: main_block_model
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainBlockModel
      custom_variation: 1
      directional:
        # Valid values are LOG, FURNACE and DROPPER
        directional_type: LOG
        # LOG
        y_block: main_block_y
        x_block: main_block_x
        z_block: main_block_z
        # FURNACE and DROPPER
        north_block: main_block_north
        east_block: main_block_east
        south_block: main_block_south
        west_block: main_block_west
        # DROPPER needs these aswell
        up_block: main_block_up
        down_block: main_block_down
      hardness: 1
      drop:
        minimal_type: WOOD
        best_tools:
          - AXE
        silktouch: false

LOG-type example:

#This doesn't include the parent block from the above example
main_block_y:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 1
      directional:
        parent_block: main_block #base block which will give drop
      
main_block_x:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 2
      directional:
        parent_block: main_block #base block which will give drop

main_block_z:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 3
      directional:
        parent_block: main_block #base block which will give drop

FURNACE-type example:

#This doesn't include the parent block from the above example
main_block_north:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainBlockModel
      custom_variation: 1
      directional:
        parent_block: main_block #base block which will give drop
      
main_block_south:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainBlockModel
      custom_variation: 2
      directional:
        parent_block: main_block #base block which will give drop

main_block_west:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainBlockModel
      custom_variation: 3
      directional:
        parent_block: main_block #base block which will give drop

main_block_east:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainBlockModel
      custom_variation: 4
      directional:
        parent_block: main_block #base block which will give drop

DROPPER-type example:

#This doesn't include the parent block from the above example
main_block_north:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 1
      directional:
        parent_block: main_block #base block which will give drop
      
main_block_south:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 2
      directional:
        parent_block: main_block #base block which will give drop

main_block_west:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 3
      directional:
        parent_block: main_block #base block which will give drop

main_block_east:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      custom_variation: 4
      directional:
        parent_block: main_block #base block which will give drop

main_block_up:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainblockmodel_vertical
      custom_variation: 5
      directional:
        parent_block: main_block #base block which will give drop

main_block_down:
  excludeFromInventory: true # Makes inventory only contain base-block
  material: PAPER
  Mechanics:
    custom_block:
      type: NOTEBLOCK
      model: mainblockmodel_vertical
      custom_variation: 6
      directional:
        parent_block: main_block #base block which will give drop
๐Ÿ“ฆ
๐ŸŽถ
Page cover image