From 840d9f9b3d4e5f26207d4b03bdd0e8244ba92174 Mon Sep 17 00:00:00 2001 From: TreyR9 <106098556+TreyR9@users.noreply.github.com> Date: Thu, 5 Feb 2026 00:42:15 -0600 Subject: [PATCH] Optional chimes compat (#2973) * Update main_server_script.js Chimes registration Signed-off-by: TreyR9 <106098556+TreyR9@users.noreply.github.com> * Chimes compat Adds rudimentary, optional compatibility for chimes mod. Functions should only run if the mod is present. Signed-off-by: TreyR9 <106098556+TreyR9@users.noreply.github.com> --------- Signed-off-by: TreyR9 <106098556+TreyR9@users.noreply.github.com> --- .../chimes/textures/block/metal_chimes.png | Bin 0 -> 1131 bytes .../chimes/textures/item/chimes_metal.png | Bin 0 -> 469 bytes kubejs/server_scripts/chimes/data.js | 17 ++++ kubejs/server_scripts/chimes/recipes.js | 96 ++++++++++++++++++ kubejs/server_scripts/main_server_script.js | 4 +- 5 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 kubejs/assets/chimes/textures/block/metal_chimes.png create mode 100644 kubejs/assets/chimes/textures/item/chimes_metal.png create mode 100644 kubejs/server_scripts/chimes/data.js create mode 100644 kubejs/server_scripts/chimes/recipes.js diff --git a/kubejs/assets/chimes/textures/block/metal_chimes.png b/kubejs/assets/chimes/textures/block/metal_chimes.png new file mode 100644 index 0000000000000000000000000000000000000000..41649a5cf25c05900a7c1ebf65f0945cc6d6baed GIT binary patch literal 1131 zcmV-x1eE)UP);z>XkQMDBdd-hphX4(BIg)NUR2+hbocItFjI3UsICyQ}j0o9BTmOSj~O zg++M%a*d8>XQs&>`@lv7cA#}0RgZkJL0az!5DRsm>#(h!YXVHBqdf;pQcKqk`znp2 zsO)93aR2dBxmGOzewg!k{(m6cUYe7q5^7_=3XmFC97(7d$M(C;pX32%7Kuf|fVmBi z0i;v0-i^NQm8d!}^XNR!ZkpO9YHx484=4`HEYpJ(q4a~D2&J;(B_sefHLj|*JqS8P z*#%XR`Pq~*HbTd;Lx(ZjEc5Zi1f4_0im;m?mitsx?v?#un~@ZQ^zba3SjN+5qI6tT z%D&#FDMB6d7VH@4JUWiqM$lI1tG*lcW-Y@x2|??%rl%yy|M^;QHkyYLve24NWESnxpk8>R^k>6_qimKVa- z>>vzo!Eyi&yH#Cpwt5p;UGX#Xqt-@B4=|fTx9BE;4Ub_rBP2kbB8G7_cM0F?@jX)wEq2pY>49#ZeuZz&u%#PV0!`fAA zO`*5g(*xm0Gf$KN#$zU_0m;_0x=&Idsdu9l!^aQk9 zZ3u-!hB^vuW#fbQ5ap<@I!$mqnWTeJl=s1sM~u{IXzgQ}Fj6zhl?qqgOwfuEmN8Fx z)qz1kJ0o=(O93#0&FXq;7Cfgh4S-pBTPc63-r%Z}1bNv*M$KR-BGPhaq)tN>Fp86A z*SdWO_*-Fi;MuM4%7Z5|?behrX@?@Yd=bu0rginx#=4`GKy!edvor>Rr%ogMi%HDw zPV%4%s7Y$3^%R}JN-$CkM5$OXR^^2%E=CR2X@a9>&&u_@06UFfrNmD&v<$LRG*TXB z0nF{^l%KoQZLyI$i9n^=9n*S>V>O%2(Y94jFU?=z>h8`*S8RBU80vQcT>>G#x*P#B zjFXWl8Y%yUg?*=|WE%9;?WoHjXN=+)jwh0adeSi+0#0vL?Iv(>;VSoQako!mqjIX9 zv%=`BzzN3>0C*ff0N`=_0D#Bw0{|Y!4*+-^KLFry`~ZN*@dE%J#}5E_96tcyar^*) x$MFLI9_J4L00960+}{8200006NkloWws_0p5Q2JJzRGQt!M6sK-YbPBhf z6B|>n)(-~f-re87;{^_iX_?t`rKSoi|8L4n49M_se=B%+-J+k>sc60}vFD(q}~As!Lw z%f*9K!^=xBGj(XSKH>c0nr6)s!8Bl{(Tq9lhI}Mqfq8iDnyx!{IM2)(&6q~rPB=BV z3D6PUVzGUi5#zB=XA~0y5-1AwXSfHC+x;Y!S`f3{aThpuIvuDf6=CfX@ey`EN@Se7 zM&kqW`2x+xx4s&Pnti1_gt`-|kp4*&oF|Nj{$E;9fC00v1!K~w_(r+wnGbI|f100000 LNkvXXu0mjf(<{r5 literal 0 HcmV?d00001 diff --git a/kubejs/server_scripts/chimes/data.js b/kubejs/server_scripts/chimes/data.js new file mode 100644 index 000000000..6249171d1 --- /dev/null +++ b/kubejs/server_scripts/chimes/data.js @@ -0,0 +1,17 @@ +"use strict"; + +/** + * + * @param {Internal.TFCDataEventJS} evt + */ + +const registerTFCDataForChimes = (evt) => { + if (Platform.isLoaded("chimes")) { + evt.itemSize('chimes:bamboo_chimes', 'large', 'heavy'); + evt.itemSize('chimes:carved_bamboo_chimes', 'large', 'heavy'); + evt.itemSize('chimes:copper_chimes', 'large', 'heavy'); + evt.itemSize('chimes:iron_chimes', 'large', 'heavy'); + evt.itemSize('chimes:amethyst_chimes', 'large', 'heavy'); + evt.itemSize('chimes:glass_bells', 'normal', 'medium'); + } +} \ No newline at end of file diff --git a/kubejs/server_scripts/chimes/recipes.js b/kubejs/server_scripts/chimes/recipes.js new file mode 100644 index 000000000..3b8f2e826 --- /dev/null +++ b/kubejs/server_scripts/chimes/recipes.js @@ -0,0 +1,96 @@ +"use strict"; + +/** + * + * @param {Internal.RecipesEventJS} event + */ +const registerChimesRecipes = (event) => { + if (Platform.isLoaded("chimes")) { + event.remove({ input: 'string', mod: 'chimes' }) + + //TODO: dye recipes in barrel for glass chimes (if possible) + + //bamboo chimes + event.shaped( + Item.of('chimes:bamboo_chimes'), + [ + " A ", + "CBC", + "C C" + ], { + A: "#minecraft:wooden_slabs", + B: "#forge:string", + C: "minecraft:bamboo" + }) + + //copper chimes + event.shaped( + Item.of('chimes:copper_chimes'), + [ + " A ", + "CBC", + "C C" + ], { + A: "#minecraft:wooden_slabs", + B: "#forge:chains", + C: "#forge:rods/copper" + }) + //iron chimes + event.shaped( + Item.of('chimes:iron_chimes'), + [ + " A ", + "CBC", + "C C" + ], { + A: "#minecraft:wooden_slabs", + B: "#forge:chains", + C: "#forge:rods/iron" + }) + //carved bamboo chimes + event.shapeless( + Item.of('chimes:carved_bamboo_chimes'), + [ + 'chimes:bamboo_chimes', + '#forge:tools/knives' + ] + ) + //carved bamboo chimes direct + event.shaped( + Item.of('chimes:carved_bamboo_chimes'), + [ + " A ", + "CBC", + "CDC" + ], { + A: "#minecraft:wooden_slabs", + B: "#forge:string", + C: "minecraft:bamboo", + D: "#forge:tools/knives" + }) + //amethyst_chime + event.shaped( + Item.of('chimes:amethyst_chimes'), + [ + " A ", + "CBC", + "C C" + ], { + A: "#forge:plates/cast_iron", + B: "#forge:chains", + C: "#forge:rods/amethyst" + }) + //glass_wind_bell + event.shaped( + Item.of('chimes:glass_bells'), + [ + "A", + "B", + "C" + ], { + A: "#tfc:glass_bottles", + B: "#forge:string", + C: "#forge:paper" + }) + } +} \ No newline at end of file diff --git a/kubejs/server_scripts/main_server_script.js b/kubejs/server_scripts/main_server_script.js index 362a89dce..2b4cdb451 100644 --- a/kubejs/server_scripts/main_server_script.js +++ b/kubejs/server_scripts/main_server_script.js @@ -159,6 +159,7 @@ TFCEvents.data(event => { registerTFCDataForAdAstra(event); registerTFCDataForArborFirmaCraft(event) registerTFCDataForChalk(event); + registerTFCDataForChimes(event); registerTFCDataForCreateAddition(event); registerTFCDataForFirmalife(event) registerTFCDataForGTCEU(event) @@ -229,6 +230,7 @@ ServerEvents.recipes(event => { registerBeneathRecipes(event) registerBuildingGadgetsRecipes(event) registerChalkRecipes(event); + registerChimesRecipes(event); registerComfortsRecipes(event); registerComputerCraftRecipes(event) //registerCccBridgeRecipes(event) @@ -310,4 +312,4 @@ TaCZServerEvents.gunDataLoad((event) => { TaCZServerEvents.attachmentDataLoad((event) => { attachmentDataLogic(event) -}) \ No newline at end of file +})