add first patch
This commit is contained in:
@@ -0,0 +1,134 @@
|
||||
//priority: 100
|
||||
console.info("[SOCIETY] mushroomLog.js loaded");
|
||||
|
||||
|
||||
global.mushroomLogRecipes = new Map([
|
||||
// Red/brown mushroom
|
||||
["minecraft:mushroom_stem", { output: ["2x minecraft:brown_mushroom"]}],
|
||||
["meadow:pine_log", { output: ["2x minecraft:brown_mushroom"]}],
|
||||
["autumnity:maple_log", { output: ["2x minecraft:brown_mushroom"]}],
|
||||
["windswept:pine_log", { output: ["2x minecraft:brown_mushroom"]}],
|
||||
["minecraft:acacia_log", { output: ["2x minecraft:brown_mushroom"]}],
|
||||
["minecraft:jungle_log", { output: ["2x minecraft:red_mushroom"]}],
|
||||
["beachparty:palm_log", { output: ["2x minecraft:red_mushroom"]}],
|
||||
["minecraft:spruce_log", { output: ["2x minecraft:red_mushroom"]}],
|
||||
["minecraft:cherry_log", { output: ["2x minecraft:red_mushroom"]}],
|
||||
["quark:blossom_log", { output: ["2x minecraft:red_mushroom"]}],
|
||||
["minecraft:mangrove_log", { output: ["2x minecraft:red_mushroom" ]}],
|
||||
// Red colony
|
||||
["windswept:weathered_pine_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["minecraft:oak_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["vinery:dark_cherry_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["cluttered:crabapple_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["atmospheric:grimwood_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
// Brown colony
|
||||
["windswept:chestnut_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["minecraft:pale_oak_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["cluttered:poplar_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["atmospheric:aspen_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
["minecraft:dark_oak_log", { output: ["1x farmersdelight:red_mushroom_colony"]}],
|
||||
// Toadstool
|
||||
["atmospheric:rosewood_log", { output: ["3x ribbits:toadstool"]}],
|
||||
["atmospheric:morado_log", { output: ["3x ribbits:toadstool"]}],
|
||||
["atmospheric:yucca_log", { output: ["3x ribbits:toadstool"]}],
|
||||
["atmospheric:laurel_log", { output: ["3x ribbits:toadstool"]}],
|
||||
["vinery:apple_log", { output: ["3x ribbits:toadstool"]}],
|
||||
["windswept:holly_log", { output: ["3x ribbits:toadstool"]}],
|
||||
// Bracket
|
||||
["quark:ancient_log", { output: ["1x verdantvibes:bracket_mushroom"]}],
|
||||
["atmospheric:kousa_log", { output: ["1x verdantvibes:bracket_mushroom"]}],
|
||||
["quark:azalea_log", { output: ["1x verdantvibes:bracket_mushroom"]}],
|
||||
// Shimmering
|
||||
["atmospheric:watchful_aspen_log", { output: ["1x botania:yellow_mushroom"]}],
|
||||
["atmospheric:crustose_log", { output: ["1x botania:yellow_mushroom"]}],
|
||||
["cluttered:flowering_poplar_log", { output: ["1x botania:yellow_mushroom"]}],
|
||||
["cluttered:flowering_crabapple_log", { output: ["1x botania:pink_mushroom"]}],
|
||||
// Glow
|
||||
["cluttered:fluorescent_maple_log", { output: ["3x quark:glow_shroom"]}],
|
||||
["vintagedelight:magic_vine", { output: ["4x quark:glow_shroom"]}],
|
||||
// Warped crimson
|
||||
["minecraft:crimson_stem", { output: ["3x minecraft:crimson_fungus"]}],
|
||||
["minecraft:warped_stem", { output: ["3x minecraft:warped_fungus"]}],
|
||||
// Alphacene
|
||||
["betterarcheology:rotten_log", { output: ["2x species:alphacene_mushroom"]}],
|
||||
// Cluttershroms
|
||||
["cluttered:blue_mushroom_cap", { output: ["1x cluttered:blue_roundhead"]}],
|
||||
["cluttered:blue_mushroom_log", { output: ["1x cluttered:blue_roundhead"]}],
|
||||
["cluttered:red_mushroom_log", { output: ["1x cluttered:fly_agaric"]}],
|
||||
["cluttered:red_mushroom_cap", { output: ["1x cluttered:fly_agaric"]}],
|
||||
["cluttered:sycamore_log", { output: ["1x cluttered:blue_roundhead"]}],
|
||||
]);
|
||||
global.dominantMushroomLogBlocks = new Map([
|
||||
["species:alphacene_mushroom_block", { output: ["2x species:alphacene_mushroom"]}],
|
||||
["minecraft:birch_log", { output: ["2x verdantvibes:bracket_mushroom"]}],
|
||||
["cluttered:willow_log", { output: ["4x botania:magenta_mushroom"]}],
|
||||
["cluttered:flowering_willow_log", { output: ["4x botania:purple_mushroom"],}],
|
||||
["quark:glow_shroom_stem", { output: ["3x quark:glow_shroom"]}],
|
||||
["minecraft:brown_mushroom_block", { output: ["2x farmersdelight:brown_mushroom_colony"]}],
|
||||
["minecraft:red_mushroom_block", { output: ["2x farmersdelight:red_mushroom_colony"]}],
|
||||
["ribbits:toadstool_stem", { output: ["4x ribbits:toadstool"]}],
|
||||
["ribbits:brown_toadstool", { output: ["4x ribbits:toadstool"]}],
|
||||
["ribbits:red_toadstool", { output: ["4x ribbits:toadstool"]}],
|
||||
])
|
||||
Array.from(global.dominantMushroomLogBlocks.keys()).forEach((recipe) => {
|
||||
global.mushroomLogRecipes.set(recipe, global.dominantMushroomLogBlocks.get(recipe));
|
||||
});
|
||||
StartupEvents.registry("block", (event) => {
|
||||
event
|
||||
.create("society:mushroom_log", "cardinal")
|
||||
.property(booleanProperty.create("working"))
|
||||
.property(booleanProperty.create("mature"))
|
||||
.property(booleanProperty.create("upgraded"))
|
||||
.property(booleanProperty.create("error"))
|
||||
.soundType("wood")
|
||||
.defaultCutout()
|
||||
.box(0, 0, 0, 16, 13, 16)
|
||||
.tagBlock("minecraft:mineable/pickaxe")
|
||||
.tagBlock("minecraft:mineable/axe")
|
||||
.tagBlock("minecraft:needs_stone_tool")
|
||||
.item((item) => {
|
||||
item.tooltip(
|
||||
Text.translatable("block.society.mushroom_log.description").gray()
|
||||
);
|
||||
item.modelJson({
|
||||
parent: "society:block/kubejs/mushroom_log/mushroom_log_off",
|
||||
});
|
||||
})
|
||||
.defaultState((state) => {
|
||||
state
|
||||
.set(booleanProperty.create("working"), false)
|
||||
.set(booleanProperty.create("mature"), false)
|
||||
.set(booleanProperty.create("upgraded"), false);
|
||||
})
|
||||
.placementState((state) => {
|
||||
state
|
||||
.set(booleanProperty.create("working"), false)
|
||||
.set(booleanProperty.create("mature"), false)
|
||||
.set(booleanProperty.create("upgraded"), false);
|
||||
})
|
||||
.rightClick((click) => {
|
||||
let nbt = click.block.getEntityData();
|
||||
global.handleBERightClick(
|
||||
"species:block.alphacene_moss.place",
|
||||
click,
|
||||
global.mushroomLogRecipes,
|
||||
7,
|
||||
false,
|
||||
false,
|
||||
nbt && nbt.data && nbt.data.baseCount ? nbt.data.baseCount : 1,
|
||||
true
|
||||
);
|
||||
global.handleMushroomLogRandomTick(click);
|
||||
})
|
||||
.randomTick((tick) => {
|
||||
global.handleMushroomLogRandomTick(tick);
|
||||
})
|
||||
.blockEntity((blockInfo) => {
|
||||
blockInfo.initialData({ stage: 0, recipe: "", quality: 0 });
|
||||
blockInfo.serverTick(artMachineTickRate, 0, (entity) => {
|
||||
global.handleBETick(entity, global.mushroomLogRecipes, 4);
|
||||
});
|
||||
}).blockstateJson = {
|
||||
multipart: getCardinalMultipartJson("mushroom_log"),
|
||||
};
|
||||
});
|
||||
Reference in New Issue
Block a user