StartupEvents.registry('block', event => {

  event.create("blossom_log")
    .soundType('wood')
    .hardness(2)
    .property(BlockProperties.AXIS)
    .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
    .model('kubejs:block/blossom_log')
    .displayName("Blossom Log")
    .requiresTool(false)
    .tagBlock("mineable/axe")
    .tagBlock("minecraft:logs")
    .tagBlock("minecraft:logs_that_burn")
    .blockstateJson = {
        "variants": {
            "axis=x": {
                "model": "kubejs:block/blossom_log",
                "x": 90,
                "y": 90
            },
            "axis=y": {
                "model": "kubejs:block/blossom_log"
            },
            "axis=z": {
                "model": "kubejs:block/blossom_log",
                "x": 90
            }
        }
    },

    event.create("stripped_blossom_log")
      .soundType('wood')
      .hardness(2)
      .property(BlockProperties.AXIS)
      .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
      .model('kubejs:block/stripped_blossom_log')
      .displayName("Stripped Blossom Log")
      .requiresTool(false)
      .tagBlock("mineable/axe")
      .tagBlock("minecraft:logs")
      .tagBlock("minecraft:logs_that_burn")
      .blockstateJson = {
          "variants": {
              "axis=x": {
                  "model": "kubejs:block/stripped_blossom_log",
                  "x": 90,
                  "y": 90
              },
              "axis=y": {
                  "model": "kubejs:block/stripped_blossom_log"
              },
              "axis=z": {
                  "model": "kubejs:block/stripped_blossom_log",
                  "x": 90
              }
          }
      },

      event.create("alt_limestone_pillar")
        .soundType('stone')
        .property(BlockProperties.AXIS)
        .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
        .model('kubejs:block/alt_limestone_pillar')
        .displayName("Alt Limestone Pillar")
        .requiresTool(true)
        .tagBlock("mineable/pickaxe")
        .blockstateJson = {
            "variants": {
                "axis=x": {
                    "model": "kubejs:block/alt_limestone_pillar",
                    "x": 90,
                    "y": 90
                },
                "axis=y": {
                    "model": "kubejs:block/alt_limestone_pillar"
                },
                "axis=z": {
                    "model": "kubejs:block/alt_limestone_pillar",
                    "x": 90
                }
            }
        },

        event.create("alt_chiseled_limestone_pillar")
          .soundType('stone')
          .property(BlockProperties.AXIS)
          .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
          .model('kubejs:block/alt_chiseled_limestone_pillar')
          .displayName("Alt Chiseled Limestone Pillar")
          .requiresTool(true)
          .tagBlock("mineable/pickaxe")
          .blockstateJson = {
              "variants": {
                  "axis=x": {
                      "model": "kubejs:block/alt_chiseled_limestone_pillar",
                      "x": 90,
                      "y": 90
                  },
                  "axis=y": {
                      "model": "kubejs:block/alt_chiseled_limestone_pillar"
                  },
                  "axis=z": {
                      "model": "kubejs:block/alt_chiseled_limestone_pillar",
                      "x": 90
                  }
              }
          },

          event.create("biotite_pillar")
            .soundType('stone')
            .property(BlockProperties.AXIS)
            .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
            .model('kubejs:block/biotite_pillar')
            .displayName("Biotite Pillar")
            .requiresTool(true)
            .tagBlock("mineable/pickaxe")
            .blockstateJson = {
                "variants": {
                    "axis=x": {
                        "model": "kubejs:block/biotite_pillar",
                        "x": 90,
                        "y": 90
                    },
                    "axis=y": {
                        "model": "kubejs:block/biotite_pillar"
                    },
                    "axis=z": {
                        "model": "kubejs:block/biotite_pillar",
                        "x": 90
                    }
                }
            },

            event.create("bluestone_pillar")
              .soundType('stone')
              .property(BlockProperties.AXIS)
              .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
              .model('kubejs:block/bluestone_pillar')
              .displayName("Bluestone Pillar")
              .requiresTool(true)
              .tagBlock("mineable/pickaxe")
              .blockstateJson = {
                  "variants": {
                      "axis=x": {
                          "model": "kubejs:block/bluestone_pillar",
                          "x": 90,
                          "y": 90
                      },
                      "axis=y": {
                          "model": "kubejs:block/bluestone_pillar"
                      },
                      "axis=z": {
                          "model": "kubejs:block/bluestone_pillar",
                          "x": 90
                      }
                  }
              },

              event.create("charred_nether_brick_pillar")
                .soundType('stone')
                .property(BlockProperties.AXIS)
                .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                .model('kubejs:block/charred_nether_brick_pillar')
                .displayName("Charred Nether Brick Pillar")
                .requiresTool(true)
                .tagBlock("mineable/pickaxe")
                .blockstateJson = {
                    "variants": {
                        "axis=x": {
                            "model": "kubejs:block/charred_nether_brick_pillar",
                            "x": 90,
                            "y": 90
                        },
                        "axis=y": {
                            "model": "kubejs:block/charred_nether_brick_pillar"
                        },
                        "axis=z": {
                            "model": "kubejs:block/charred_nether_brick_pillar",
                            "x": 90
                        }
                    }
                },

                event.create("chiseled_bluestone_pillar")
                  .soundType('stone')
                  .property(BlockProperties.AXIS)
                  .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                  .model('kubejs:block/chiseled_bluestone_pillar')
                  .displayName("Chiseled Bluestone Pillar")
                  .requiresTool(true)
                  .tagBlock("mineable/pickaxe")
                  .blockstateJson = {
                      "variants": {
                          "axis=x": {
                              "model": "kubejs:block/chiseled_bluestone_pillar",
                              "x": 90,
                              "y": 90
                          },
                          "axis=y": {
                              "model": "kubejs:block/chiseled_bluestone_pillar"
                          },
                          "axis=z": {
                              "model": "kubejs:block/chiseled_bluestone_pillar",
                              "x": 90
                          }
                      }
                  },

                  event.create("marble_pillar")
                    .soundType('stone')
                    .property(BlockProperties.AXIS)
                    .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                    .model('kubejs:block/marble_pillar')
                    .displayName("Marble Pillar")
                    .requiresTool(true)
                    .tagBlock("mineable/pickaxe")
                    .blockstateJson = {
                        "variants": {
                            "axis=x": {
                                "model": "kubejs:block/marble_pillar",
                                "x": 90,
                                "y": 90
                            },
                            "axis=y": {
                                "model": "kubejs:block/marble_pillar"
                            },
                            "axis=z": {
                                "model": "kubejs:block/marble_pillar",
                                "x": 90
                            }
                        }
                    },

                    event.create("chiseled_marble_pillar")
                      .soundType('stone')
                      .property(BlockProperties.AXIS)
                      .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                      .model('kubejs:block/chiseled_marble_pillar')
                      .displayName("Chiseled Marble Pillar")
                      .requiresTool(true)
                      .tagBlock("mineable/pickaxe")
                      .blockstateJson = {
                          "variants": {
                              "axis=x": {
                                  "model": "kubejs:block/chiseled_marble_pillar",
                                  "x": 90,
                                  "y": 90
                              },
                              "axis=y": {
                                  "model": "kubejs:block/chiseled_marble_pillar"
                              },
                              "axis=z": {
                                  "model": "kubejs:block/chiseled_marble_pillar",
                                  "x": 90
                              }
                          }
                      },

                      event.create("jasper_pillar")
                        .soundType('stone')
                        .property(BlockProperties.AXIS)
                        .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                        .model('kubejs:block/jasper_pillar')
                        .displayName("Jasper Pillar")
                        .requiresTool(true)
                        .tagBlock("mineable/pickaxe")
                        .blockstateJson = {
                            "variants": {
                                "axis=x": {
                                    "model": "kubejs:block/jasper_pillar",
                                    "x": 90,
                                    "y": 90
                                },
                                "axis=y": {
                                    "model": "kubejs:block/jasper_pillar"
                                },
                                "axis=z": {
                                    "model": "kubejs:block/jasper_pillar",
                                    "x": 90
                                }
                            }
                        },

                        event.create("shale_pillar")
                          .soundType('stone')
                          .property(BlockProperties.AXIS)
                          .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis))
                          .model('kubejs:block/shale_pillar')
                          .displayName("Shale Pillar")
                          .requiresTool(true)
                          .tagBlock("mineable/pickaxe")
                          .blockstateJson = {
                              "variants": {
                                  "axis=x": {
                                      "model": "kubejs:block/shale_pillar",
                                      "x": 90,
                                      "y": 90
                                  },
                                  "axis=y": {
                                      "model": "kubejs:block/shale_pillar"
                                  },
                                  "axis=z": {
                                      "model": "kubejs:block/shale_pillar",
                                      "x": 90
                                  }
                              }
                          }
})
