From a419d295c519e808de9fc68a88aad05648667aef Mon Sep 17 00:00:00 2001 From: Pyritie Date: Fri, 25 Apr 2025 16:08:13 +0100 Subject: [PATCH 1/2] added external credits Signed-off-by: Pyritie --- .github/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/README.md b/.github/README.md index 6df9ecba8..78fe64d0f 100644 --- a/.github/README.md +++ b/.github/README.md @@ -59,6 +59,10 @@ Interested in contributing? For detailed setup instructions, coding standards, a ![Image Readme](https://github.com/TerraFirmaGreg-Team/.github/blob/main/branding/image_readme.png?raw=true) +### External Credits +- WithersChat from the Monifactory team for the universal circuit textures +- GregTech Community Pack Modern for most of their quest text + [TerraFirmaCraft]: https://www.curseforge.com/minecraft/mc-mods/terrafirmacraft [GregTech Modern]: https://www.curseforge.com/minecraft/mc-mods/gregtechceu-modern From ba6735721498e430d6d9829d939f69c8620f11c7 Mon Sep 17 00:00:00 2001 From: TomPlop Date: Fri, 25 Apr 2025 12:03:38 -0400 Subject: [PATCH 2/2] Universal circuits (#914) * Adding Universal Circuits * Fix for Universal Circuits recipes * Adding Univercal Circuits to their respective files --- .../tfg/models/item/ev_universal_circuit.json | 6 ++++ .../tfg/models/item/hv_universal_circuit.json | 6 ++++ .../tfg/models/item/iv_universal_circuit.json | 6 ++++ .../models/item/luv_universal_circuit.json | 6 ++++ .../tfg/models/item/lv_universal_circuit.json | 6 ++++ .../tfg/models/item/mv_universal_circuit.json | 6 ++++ .../models/item/uhv_universal_circuit.json | 6 ++++ .../models/item/ulv_universal_circuit.json | 6 ++++ .../tfg/models/item/uv_universal_circuit.json | 6 ++++ .../models/item/zpm_universal_circuit.json | 6 ++++ .../item/universal/ev_universal_circuit.png | Bin 0 -> 1209 bytes .../universal/ev_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/hv_universal_circuit.png | Bin 0 -> 4891 bytes .../universal/hv_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/iv_universal_circuit.png | Bin 0 -> 4775 bytes .../universal/iv_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/luv_universal_circuit.png | Bin 0 -> 1115 bytes .../luv_universal_circuit.png.mcmeta | 16 +++++++++ .../item/universal/lv_universal_circuit.png | Bin 0 -> 1014 bytes .../universal/lv_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/mv_universal_circuit.png | Bin 0 -> 1118 bytes .../universal/mv_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/uev_universal_circuit.png | Bin 0 -> 1133 bytes .../uev_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/uhv_universal_circuit.png | Bin 0 -> 1110 bytes .../uhv_universal_circuit.png.mcmeta | 16 +++++++++ .../item/universal/uiv_universal_circuit.png | Bin 0 -> 1106 bytes .../uiv_universal_circuit.png.mcmeta | 16 +++++++++ .../item/universal/ulv_universal_circuit.png | Bin 0 -> 8226 bytes .../ulv_universal_circuit.png.mcmeta | 16 +++++++++ .../item/universal/uv_universal_circuit.png | Bin 0 -> 1080 bytes .../universal/uv_universal_circuit.png.mcmeta | 6 ++++ .../item/universal/zpm_universal_circuit.png | Bin 0 -> 1187 bytes .../zpm_universal_circuit.png.mcmeta | 6 ++++ .../tfg/recipes.miscellaneous.js | 7 ++++ kubejs/server_scripts/tfg/tags.js | 10 ++++++ kubejs/startup_scripts/gtceu/items.js | 31 ++++++++++++++++++ kubejs/startup_scripts/tfg/constants.js | 4 ++- 38 files changed, 223 insertions(+), 1 deletion(-) create mode 100644 kubejs/assets/tfg/models/item/ev_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/hv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/iv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/luv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/lv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/mv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/uhv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/ulv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/uv_universal_circuit.json create mode 100644 kubejs/assets/tfg/models/item/zpm_universal_circuit.json create mode 100644 kubejs/assets/tfg/textures/item/universal/ev_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/ev_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/hv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/hv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/luv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/luv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/lv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/lv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/mv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/mv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/uev_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/uev_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/uhv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/uhv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/uiv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/uiv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/ulv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/ulv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png.mcmeta create mode 100644 kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png create mode 100644 kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png.mcmeta diff --git a/kubejs/assets/tfg/models/item/ev_universal_circuit.json b/kubejs/assets/tfg/models/item/ev_universal_circuit.json new file mode 100644 index 000000000..cad7c45dd --- /dev/null +++ b/kubejs/assets/tfg/models/item/ev_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/ev_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/hv_universal_circuit.json b/kubejs/assets/tfg/models/item/hv_universal_circuit.json new file mode 100644 index 000000000..317da660a --- /dev/null +++ b/kubejs/assets/tfg/models/item/hv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/hv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/iv_universal_circuit.json b/kubejs/assets/tfg/models/item/iv_universal_circuit.json new file mode 100644 index 000000000..9f7916b18 --- /dev/null +++ b/kubejs/assets/tfg/models/item/iv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/iv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/luv_universal_circuit.json b/kubejs/assets/tfg/models/item/luv_universal_circuit.json new file mode 100644 index 000000000..2cfd3577f --- /dev/null +++ b/kubejs/assets/tfg/models/item/luv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/luv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/lv_universal_circuit.json b/kubejs/assets/tfg/models/item/lv_universal_circuit.json new file mode 100644 index 000000000..5ecd6f2bf --- /dev/null +++ b/kubejs/assets/tfg/models/item/lv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/lv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/mv_universal_circuit.json b/kubejs/assets/tfg/models/item/mv_universal_circuit.json new file mode 100644 index 000000000..1ffeeb221 --- /dev/null +++ b/kubejs/assets/tfg/models/item/mv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/mv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/uhv_universal_circuit.json b/kubejs/assets/tfg/models/item/uhv_universal_circuit.json new file mode 100644 index 000000000..7359500fa --- /dev/null +++ b/kubejs/assets/tfg/models/item/uhv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/uhv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/ulv_universal_circuit.json b/kubejs/assets/tfg/models/item/ulv_universal_circuit.json new file mode 100644 index 000000000..87d49760e --- /dev/null +++ b/kubejs/assets/tfg/models/item/ulv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/ulv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/uv_universal_circuit.json b/kubejs/assets/tfg/models/item/uv_universal_circuit.json new file mode 100644 index 000000000..5686bd295 --- /dev/null +++ b/kubejs/assets/tfg/models/item/uv_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/uv_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/zpm_universal_circuit.json b/kubejs/assets/tfg/models/item/zpm_universal_circuit.json new file mode 100644 index 000000000..42ea1a7fe --- /dev/null +++ b/kubejs/assets/tfg/models/item/zpm_universal_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:item/generated", + "textures": { + "layer0": "tfg:item/universal/zpm_universal_circuit" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/ev_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/ev_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..12df0edd80ec17e368c85f29a2196cab4558624f GIT binary patch literal 1209 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 F0RYUSBy9iy literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/hv_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/hv_universal_circuit.png.mcmeta new file mode 100644 index 000000000..114c427b7 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/hv_universal_circuit.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..8ed7c7b85afcdc1aca4b2d456a370d8ad85a0724 GIT binary patch literal 4775 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 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png.mcmeta new file mode 100644 index 000000000..114c427b7 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/iv_universal_circuit.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/luv_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/luv_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..0edfc0265711bfade265e46b0a1e10aad72e4182 GIT binary patch literal 1115 zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU?|{VV_;wqXa8W$z`)p&>FgZf>FlgfP?VpR znUl)EpfRy_qOHf_0FhSz;H5!Yd~X$wDms^LQqX#&5vtSFdMPa9>cJ;V>n|)(^eikC ziQ(q^rxPX{GpDq)K$PX6yg)j;x~sV6$9+pKC>>*;{=M*?b^Gsk%q?NPE7R_?EXbNR z(Npb6O=2j|9;FVALm`Wf_}EU3J#(bE%LnHRc+nk205eyDOS2 z(k@@Jd@t-C;TqI&zVkS5)`TAuUvD~{Kj$Z1d}%2Ib6iQxoe@2zwmL9 z(8V>1?>8N)?A{!ey}@t(pVozowoQ6!b(LdMgcDb0$ApUxqNWiYm)A{9QgVLI$zOlv z9u_ZH?Wp*Qvc{oNj&K!(=_lNyu;bae zwZ(mx*%jP3N9|+e<7?b#l)AopPxXTGy#M!Jo_Wu{?rG8f1+#dC7#JAXlDyqr7)~*` zGn@)(`u&c9fq}EYBeIx*fm;}a85w5Hkzin8U@!6Xb!C6SCC$pJc_=k>69WT-WQl7; ziF1B#Zfaf$gL6@8Vo7R>LV0FMhJw4NZ$Nk>pEv^pld-3ZV@Sl|w=)d89vg_X)gP~J zc%W5LAQ;5&^H7_mrsay=!3jlt532kpR3&t&&OPAXQ83wR>Wl@aB0UzG9E*PAbz;&Q zmCc(^A9`i#xaoiV`AzqZcPqzq9!Cx9JUaytk3qRSgGX!{TyqkA%TkaC01yhvH7oT?NdScsSSa9xcwSw;% z%VRe(!cH|9wpE2D|J>y=Ep_pts?f(DUoV#O|I&T>`qLL)Ustg)lq_i$IFzf9U({=T ziFaOYf`aT>9;-`{P0#M!U`v)f@nFtkOY<8xIRX2oH)jhnEXlm3?%8xRXBi()GEZm> zV}q)Y(}NN#-t&wMA%(5e-?^@hIwbaL|0~mfR@3%sUTAgVh|v=_y}m8i#De{jil>lv zXmHBgM!C#c-_}h%ro?6QL%%XX?&<7Gh1Z953ibJ8a&~mH2Z>Y&R0vcgu+J2-`MCUd zrNc571_AMpZ*3+hY3|u=-_d>P`BZIPJ&Tzm46z z;l>k`cD|n7es+PqRF2Z~J2M?c!!-hyW@iX!N}peR2r zGbfdSL1SX=L|c!;0V1vb!Apa*_}(fURdg=hq@eXkBUGoU^-@^I)q_u#)?Zkn=vi1O z62r~+PbW+^W=?5ofhfyCd4Y6xbysoCkNcKfP&&pw{d?g(>-OL8m|MbnSEk)(S&%ht zqNm!Cn#53^JxU!Khe8$|@v)s6d*)zq?cKx2zwfp<|7qX%=TaeEYRolCA7w7{c2_i4 zq+Pyb`CiyP!ZoPleCKiAtO-9RzTR{?f6i$>ZX4sICq|!-2qta3bGV3qbJs#4f8paI zp^Ix2-)}lp*}XX`dxPKnKdlQFZJYGe>MF;i2q&)0jtLhXL`@?)F0Y%Iq~!dZlfVAT z$K@wgC$Hvm>tnsL(5dLpgZdBE+tM<#F8Ok)HvAL6{ZE3GX}81f%-i>mZ@X*9_~-nA zsn@<&pIuOPWPU_n>DzD2gRZTq8=H z^K)}k^GX<;i&7IyQd1PlGfOfQ+&z5*!W;R-85kJPdAc};WZZi@b7R&a2Z`hVHJ#Ya z-4#1nWVrGqt+;R2vV3G^S^kal)>eImeT{`;M&&zv3j~Z#G~N+Wx3pgBT>SE=$}zR3 zp#Ax~PyhY@{qDryPnFXbDCnH#`nv7?@3wpEL_2T2HS@X5!ccHdaVgLC+iNEpoe+Mx z@as{vHlhCG$p**#^p0=KWnf6=`TSGHQ9z=Qt;g`jwz)=uN~Ueae2OmL&@Um23iz?=s$#U$pPs^Un&(&E5a}b&fat$)3*S zpZ6MKhV}Et?Lr@qy8Qgz%Aszopr0A1(3CjbBd literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/lv_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/lv_universal_circuit.png.mcmeta new file mode 100644 index 000000000..114c427b7 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/lv_universal_circuit.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/mv_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/mv_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..cef90ff6cee5935adef16c8d95cc403b7672936e GIT binary patch literal 1118 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 LS3j3^P6jF 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 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/ulv_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/ulv_universal_circuit.png.mcmeta new file mode 100644 index 000000000..55ab3d7c1 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/ulv_universal_circuit.png.mcmeta @@ -0,0 +1,16 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2, + "frames": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 6 + ] + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..e272cfe0410520104ad0fea245a6c4801c0d2ee4 GIT binary patch literal 1080 zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU})fAV_;xln)*_Sfq}6l)7d$|)7e>}peR2r zGbfdSL1SX=L|c!;0V1vb!Apa*_}(fURdg=hq@eXkBUGoU^-@^I)q_u#)?Zkn=vi1O z62r~+PbW+^W=?5ofhfyCd4Y6xbysoCkNcKfP&&pw{d?g(>-OL8m|MbnSEk)(S&%ht zqNm!Cn#53^JxU!Khe8$|@v)s6d*)zq?cKx2zwfp<|7qX%=TaeEYRolCA7w7{c2_i4 zq+Pyb`CiyP!ZoPleCKiAtO-9RzTR{?f6i$>ZX4sICq|!-2qta3bGV3qbJs#4f8paI zp^Ix2-)}lp*}XX`dxPKnKdlQFZJYGe>MF;i2q&)0jtLhXL`@?)F0Y%Iq~!dZlfVAT z$K@wgC$Hvm>tnsL(5dLpgZdBE+tM<#F8Ok)HvAL6{ZE3GX}81f%-i>mZ@X*9_~-nA zsn@<c&>mu?0^Aq{UA- zRd07G`xJj}`EGx8W0y78U(4S4TDCj&-7iD6S7o~&%wc9&GR5GSOxbSP)s`HcF~#4! z)X#J+zpU9JklsIenI?k+N8`^LzO|;>$^uRbzL#eSYj3*mp}BC%r{@Q(EbmSZVq2^w z>!Gt= zM}BZNFFdGRpif49c|!7x4t(;tzi{Q+g^s{I4j``FOfQ zAkldaySw1Wh6)Fpj7jW~VcOp<`0udI_F4DfV9KQjH3CdtIZldl0{k89zMmgF`+4AS zn+1R0qO@nt*RN|=On82T`O(3<9~Dk3q;Hn4c<{0{t+L=VL=)%1Cy#zEu$P$g{NVA= z#&Kb*wfJQw_OqXP>va2+=cJHBYG6Zo@2mf6ICRI)XVMZKiPH&O*_K;i1Fitbrm08|7Lz) iBe2u{2eZu&Mlr)pajd0Xj~Eyj7(8A5T-G@yGywoaA>yb2 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png.mcmeta new file mode 100644 index 000000000..114c427b7 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/uv_universal_circuit.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png b/kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png new file mode 100644 index 0000000000000000000000000000000000000000..8cbc00163e0aa1bcf84d4943b71b0e91e25b2b83 GIT binary patch literal 1187 zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU})fAV_;xln)*_Sfq}6l)7d$|)7e>}peR2r zGbfdSL1SX=L|c!;0V1vb!Apa*_}(fURdg=hq@eXkBUGoU^-@^I)q_u#)?Zkn=vi1O z62r~+PbW+^W=?5ofhfyCd4Y6xbysoCkNcKfP&&pw{d?g(>-OL8m|MbnSEk)(S&%ht zqNm!Cn#53^JxU!Khe8$|@v)s6d*)zq?cKx2zwfp<|7qX%=TaeEYRolCA7w7{c2_i4 zq+Pyb`CiyP!ZoPleCKiAtO-9RzTR{?f6i$>ZX4sICq|!-2qta3bGV3qbJs#4f8paI zp^Ix2-)}lp*}XX`dxPKnKdlQFZJYGe>MF;i2q&)0jtLhXL`@?)F0Y%Iq~!dZlfVAT z$K@wgC$Hvm>tnsL(5dLpgZdBE+tM<#F8Ok)HvAL6{ZE3GX}81f%-i>mZ@X*9_~-nA zsn@<!MP|ku_QG`p**uBL&4qCHz2%`Pn>~)soK-UF(l*O+nM{jA32B|-(NU= zZSzsZMwTP3-VdAD6IX9(s&{xN|MC0|d*|rHjodfn{I>KX3o&moYe5DR-`nQ1eHk29Up`>UfR6px-w3l8w|Ug&&zOYKdcc9)4ZJ6PpRR#iCIPg;JG#rwGBTN5Gv zce`R493K6Sn4uu$U1 zbG-VjpzD47*~ht6!{e$RfS zd9q*f{EesY3xEE3(A8!^$@BY9*;8#KB-xq!V2l_2zopr05PW@8~^|S literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png.mcmeta b/kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png.mcmeta new file mode 100644 index 000000000..114c427b7 --- /dev/null +++ b/kubejs/assets/tfg/textures/item/universal/zpm_universal_circuit.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation": { + "interpolate": true, + "frametime": 2 + } +} \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/recipes.miscellaneous.js b/kubejs/server_scripts/tfg/recipes.miscellaneous.js index 41836919d..9e3055aa2 100644 --- a/kubejs/server_scripts/tfg/recipes.miscellaneous.js +++ b/kubejs/server_scripts/tfg/recipes.miscellaneous.js @@ -313,4 +313,11 @@ function registerTFGMiscellaneousRecipes(event) { event.shapeless('8x minecraft:snow', ['minecraft:snow_block', '#forge:tools/saws']) .id('tfg:shapeless/snow') + + // Universal Circuit + + global.UNIVERSAL_CIRCUIT_TIERS.forEach(tier => { + event.shapeless(Item.of(`tfg:${tier}_universal_circuit`, 1), [Ingredient.of([`#gtceu:circuits/${tier}`]).subtract([`tfg:${tier}_universal_circuit`])] + ).id(`universal_circuits_${tier}`); + }); } \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index 78a2217bc..47674c8ee 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -98,6 +98,16 @@ const registerTFGItemTags = (event) => { event.add('immersive_aircraft:upgrades', `tfg:${value}`); }) + // #endregion + + // Universal Circuits + + global.UNIVERSAL_CIRCUIT_TIERS.forEach(tier => { + event.add(`gtceu:circuits/${tier}`, `tfg:${tier}_universal_circuit`); + }) + + // #endregion + // #region 0.7.19 -> 0.9 conversion event.add('c:hidden_from_recipe_viewers', 'treetap:tap') diff --git a/kubejs/startup_scripts/gtceu/items.js b/kubejs/startup_scripts/gtceu/items.js index 840068717..97fe73a29 100644 --- a/kubejs/startup_scripts/gtceu/items.js +++ b/kubejs/startup_scripts/gtceu/items.js @@ -1,4 +1,35 @@ // priority: 0 const registerGTCEuItems = (event) => { + + event.create('tfg:ulv_universal_circuit') + .translationKey('item.ulv_universal_circuit') + + event.create('tfg:lv_universal_circuit') + .translationKey('item.lv_universal_circuit') + + event.create('tfg:mv_universal_circuit') + .translationKey('item.mv_universal_circuit') + + event.create('tfg:hv_universal_circuit') + .translationKey('item.hv_universal_circuit') + + event.create('tfg:ev_universal_circuit') + .translationKey('item.ev_universal_circuit') + + event.create('tfg:iv_universal_circuit') + .translationKey('item.iv_universal_circuit') + + event.create('tfg:luv_universal_circuit') + .translationKey('item.luv_universal_circuit') + + event.create('tfg:zpm_universal_circuit') + .translationKey('item.zpm_universal_circuit') + + event.create('tfg:uv_universal_circuit') + .translationKey('item.uv_universal_circuit') + + event.create('tfg:uhv_universal_circuit') + .translationKey('item.uhv_universal_circuit') + } diff --git a/kubejs/startup_scripts/tfg/constants.js b/kubejs/startup_scripts/tfg/constants.js index baeaa7533..72ad3a186 100644 --- a/kubejs/startup_scripts/tfg/constants.js +++ b/kubejs/startup_scripts/tfg/constants.js @@ -17,4 +17,6 @@ global.AIRCRAFT_UPGRADES = [ "aluminium_hull_reinforcement", "stainless_steel_hull_reinforcement", "titanium_hull_reinforcement" -] \ No newline at end of file +] + +global.UNIVERSAL_CIRCUIT_TIERS = ["ulv", "lv", "mv", "hv", "ev", "iv", "luv", "zpm", "uv", "uhv"]; \ No newline at end of file