add first patch

This commit is contained in:
2026-07-31 10:34:32 +09:00
parent 03aac2e45e
commit b1cbc6c78d
6390 changed files with 547430 additions and 0 deletions
@@ -0,0 +1,110 @@
console.info("[SOCIETY] gnome.js loaded");
const getGnomeState = (name, type) => {
const path = `society:block/kubejs/gnome/${name}`;
let cardianal = [
{
when: { type: type, facing: "north" },
apply: { model: path, y: 0, uvlock: false },
},
{
when: { type: type, facing: "east" },
apply: { model: path, y: 90, uvlock: false },
},
{
when: { type: type, facing: "south" },
apply: { model: path, y: 180, uvlock: false },
},
{
when: { type: type, facing: "west" },
apply: { model: path, y: -90, uvlock: false },
},
];
return cardianal;
};
StartupEvents.registry("block", (e) => {
e
.create("society:gnome", "cardinal")
.property(integerProperty.create("type", 0, 3))
.defaultCutout()
.item((item) => {
item.tooltip(Text.translatable("block.society.gnome.description").gray());
item.modelJson({
parent: "society:block/kubejs/gnome/base",
});
})
.defaultState((state) => {
state.set(integerProperty.create("type", 0, 3), 0);
})
.placementState((state) => {
state.set(integerProperty.create("type", 0, 3), 0);
})
.rightClick((click) => {
const { block, item, hand } = click;
const type = Number(block.properties.get("type"));
const facing = block.properties.get("facing");
if (hand == "OFF_HAND") return;
if (hand == "MAIN_HAND") {
if (item == "minecraft:lantern") {
block.set("society:lantern_gnome", {
facing: facing,
});
} else {
block.set(block.id, {
facing: facing,
type: type == 3 ? "0" : String(type + 1),
});
}
}
}).blockstateJson = {
multipart: []
.concat(getGnomeState("base", 0))
.concat(getGnomeState("fish", 1))
.concat(getGnomeState("twig", 2))
.concat(getGnomeState("swing", 3)),
};
e
.create("society:lantern_gnome", "cardinal")
.property(integerProperty.create("type", 0, 3))
.defaultCutout()
.item((item) => {
item.tooltip(Text.translatable("block.society.lantern_gnome.description").gray());
item.modelJson({
parent: "society:block/kubejs/gnome/lantern",
});
})
.lightLevel(0.8)
.rightClick((click) => {
const { block, hand } = click;
const type = Number(block.properties.get("type"));
const facing = block.properties.get("facing");
if (hand == "OFF_HAND") return;
if (hand == "MAIN_HAND") {
block.set(block.id, {
facing: facing,
type: type == 3 ? "0" : String(type + 1),
});
}
}).blockstateJson = {
multipart: [
{
when: { facing: "north" },
apply: { model: "society:block/kubejs/gnome/lantern", y: 0, uvlock: false },
},
{
when: { facing: "east" },
apply: { model: "society:block/kubejs/gnome/lantern", y: 90, uvlock: false },
},
{
when: { facing: "south" },
apply: { model: "society:block/kubejs/gnome/lantern", y: 180, uvlock: false },
},
{
when: { facing: "west" },
apply: { model: "society:block/kubejs/gnome/lantern", y: -90, uvlock: false },
},
],
};
});