diff --git a/CHANGELOG.md b/CHANGELOG.md index 60d4d58cb..3c85406ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ - Added tfc torches and lamps to Not Enough Animations' config, so now you hold them properly @Coopmore - Barrel Staves (for Kegs) now just use bronze screws instead of wrought iron plates @Pyritie - Mars sandstorms are now sandier +- Added GTMolDraw with custom TFG compat @BlueBoat29 (special thanks to Maddie for her help) - Saplings and fruit bushes can now enter the seed pouch. (#2202) @Redeix ### Bug fixes - Fixed TFC bug where paths and roads can collapse on themselves when creating a staircase shape. (#2144) @Redeix diff --git a/kubejs/assets/tfg/molecules/cellulose_matrix.json b/kubejs/assets/tfg/molecules/cellulose_matrix.json new file mode 100644 index 000000000..44173ff8a --- /dev/null +++ b/kubejs/assets/tfg/molecules/cellulose_matrix.json @@ -0,0 +1,769 @@ +{ + "contents": [ + { + "type": "atom", + "index": 0, + "x": 2.232, + "y": 0.866 + }, + { + "type": "atom", + "index": 1, + "x": 1.732, + "y": 0.0 + }, + { + "type": "atom", + "index": 2, + "x": 2.232, + "y": -0.866 + }, + { + "type": "atom", + "index": 3, + "x": 3.232, + "y": -0.866 + }, + { + "type": "atom", + "index": 4, + "x": 3.732, + "y": 0.0 + }, + { + "type": "atom", + "element": "O", + "index": 5, + "x": 3.232, + "y": 0.866 + }, + { + "type": "atom", + "index": 6, + "x": 2.232, + "y": 1.866 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 7, + "x": 2.732, + "y": 2.7321 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 8, + "x": 2.232, + "y": 0.134 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 9, + "x": 3.232, + "y": -1.866 + }, + { + "type": "atom", + "element": "O", + "index": 10, + "x": 4.598, + "y": 0.5 + }, + { + "type": "atom", + "index": 11, + "x": 5.464, + "y": 0.0 + }, + { + "type": "atom", + "index": 12, + "x": 5.9641, + "y": -0.866 + }, + { + "type": "atom", + "element": "O", + "index": 13, + "x": 6.9641, + "y": -0.866 + }, + { + "type": "atom", + "index": 14, + "x": 7.464, + "y": 0.0 + }, + { + "type": "atom", + "index": 15, + "x": 6.964, + "y": 0.866 + }, + { + "type": "atom", + "index": 16, + "x": 5.964, + "y": 0.866 + }, + { + "type": "atom", + "index": 17, + "x": 5.9641, + "y": -1.866 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 18, + "x": 5.4641, + "y": -2.732 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 19, + "x": 5.964, + "y": -0.134 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 20, + "x": 6.964, + "y": 1.866 + }, + { + "type": "atom", + "element": "O", + "index": 21, + "x": 8.3301, + "y": -0.5 + }, + { + "type": "atom", + "index": 22, + "x": 9.1961, + "y": 0.0 + }, + { + "type": "atom", + "element": "O", + "index": 23, + "x": 0.866, + "y": -0.5 + }, + { + "type": "atom", + "index": 24, + "x": 0.0, + "y": 0.0 + }, + { + "type": "atom", + "index": 25, + "x": 9.6909, + "y": 0.866 + }, + { + "type": "atom", + "index": 26, + "x": 9.6909, + "y": -0.8661 + }, + { + "type": "atom", + "index": 27, + "x": 10.6909, + "y": -0.8661 + }, + { + "type": "atom", + "index": 28, + "x": 11.1909, + "y": -0.0001 + }, + { + "type": "atom", + "element": "O", + "index": 29, + "x": 10.6909, + "y": 0.866 + }, + { + "type": "atom", + "index": 30, + "x": 9.6909, + "y": 1.866 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 31, + "x": 10.1909, + "y": 2.7321 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 32, + "x": 9.6909, + "y": 0.134 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 33, + "x": 10.6909, + "y": -1.8661 + }, + { + "type": "atom", + "element": "O", + "index": 34, + "x": 12.0569, + "y": 0.5 + }, + { + "type": "atom", + "index": 35, + "x": 12.923, + "y": -0.0001 + }, + { + "type": "atom", + "index": 36, + "x": 13.4231, + "y": -0.8661 + }, + { + "type": "atom", + "element": "O", + "index": 37, + "x": 14.4231, + "y": -0.8661 + }, + { + "type": "atom", + "index": 38, + "x": 14.923, + "y": -0.0001 + }, + { + "type": "atom", + "index": 39, + "x": 14.423, + "y": 0.866 + }, + { + "type": "atom", + "index": 40, + "x": 13.423, + "y": 0.866 + }, + { + "type": "atom", + "index": 41, + "x": 13.4231, + "y": -1.8661 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 42, + "x": 12.9231, + "y": -2.7321 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 43, + "x": 13.423, + "y": -0.1341 + }, + { + "type": "atom", + "element": "O", + "right": "H", + "index": 44, + "x": 14.423, + "y": 1.866 + }, + { + "type": "atom", + "element": "O", + "index": 45, + "x": 15.7891, + "y": -0.5001 + }, + { + "type": "atom", + "index": 46, + "x": 16.6551, + "y": -0.0001 + }, + { + "sub": "n", + "atoms": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ], + "type": "parens" + }, + { + "type": "bond", + "a": 5, + "b": 0, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 0, + "b": 1, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 1, + "b": 2, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 2, + "b": 3, + "lines": [ + "thick" + ] + }, + { + "type": "bond", + "a": 4, + "b": 3, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 0, + "b": 6, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 6, + "b": 7, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 2, + "b": 8, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 3, + "b": 9, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 4, + "b": 5, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 4, + "b": 10, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 10, + "b": 11, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 16, + "b": 11, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 11, + "b": 12, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 14, + "b": 15, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 15, + "b": 16, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 14, + "b": 13, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 12, + "b": 17, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 17, + "b": 18, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 12, + "b": 13, + "lines": [ + "thick" + ] + }, + { + "type": "bond", + "a": 16, + "b": 19, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 15, + "b": 20, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 14, + "b": 21, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 21, + "b": 22, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 1, + "b": 23, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 23, + "b": 24, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 29, + "b": 25, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 26, + "b": 27, + "lines": [ + "thick" + ] + }, + { + "type": "bond", + "a": 28, + "b": 27, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 25, + "b": 30, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 30, + "b": 31, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 26, + "b": 32, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 27, + "b": 33, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 28, + "b": 29, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 28, + "b": 34, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 34, + "b": 35, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 40, + "b": 35, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 35, + "b": 36, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 38, + "b": 39, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 39, + "b": 40, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 38, + "b": 37, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 36, + "b": 41, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 41, + "b": 42, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 36, + "b": 37, + "lines": [ + "thick" + ] + }, + { + "type": "bond", + "a": 40, + "b": 43, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 39, + "b": 44, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 38, + "b": 45, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 45, + "b": 46, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 25, + "b": 22, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 22, + "b": 26, + "lines": [ + "outward" + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/assets/tfg/molecules/nitrocellulose.json b/kubejs/assets/tfg/molecules/nitrocellulose.json new file mode 100644 index 000000000..74af1d464 --- /dev/null +++ b/kubejs/assets/tfg/molecules/nitrocellulose.json @@ -0,0 +1,401 @@ +{ + "contents": [ + { + "type": "atom", + "index": 0, + "x": 1.7321, + "y": 0.7321 + }, + { + "type": "atom", + "index": 1, + "x": 1.2321, + "y": -0.134 + }, + { + "type": "atom", + "index": 2, + "x": 1.7321, + "y": -1.0 + }, + { + "type": "atom", + "index": 3, + "x": 2.7321, + "y": -1.0 + }, + { + "type": "atom", + "index": 4, + "x": 3.2321, + "y": -0.134 + }, + { + "type": "atom", + "element": "O", + "index": 5, + "x": 2.7321, + "y": 0.7321 + }, + { + "type": "atom", + "index": 6, + "x": 1.7321, + "y": 1.7321 + }, + { + "type": "atom", + "element": "O", + "index": 7, + "x": 0.7321, + "y": -1.0 + }, + { + "type": "atom", + "index": 8, + "x": 3.7321, + "y": 0.7321 + }, + { + "type": "atom", + "element": "O", + "index": 9, + "x": 2.5981, + "y": 2.2321 + }, + { + "type": "atom", + "element": "O", + "index": 10, + "x": 1.7321, + "y": 0.0 + }, + { + "type": "atom", + "element": "O", + "index": 11, + "x": 2.7321, + "y": -2.0 + }, + { + "type": "atom", + "element": "N", + "index": 12, + "x": 3.4641, + "y": 2.7321 + }, + { + "type": "atom", + "element": "O", + "index": 13, + "x": 3.4641, + "y": 3.7321 + }, + { + "type": "atom", + "element": "O", + "index": 14, + "x": 4.3302, + "y": 2.2321 + }, + { + "type": "atom", + "element": "N", + "index": 15, + "x": 1.866, + "y": -2.5 + }, + { + "type": "atom", + "element": "O", + "index": 16, + "x": 1.866, + "y": -3.5 + }, + { + "type": "atom", + "element": "O", + "index": 17, + "x": 1.0, + "y": -2.0 + }, + { + "type": "atom", + "element": "N", + "index": 18, + "x": 0.866, + "y": 0.5 + }, + { + "type": "atom", + "element": "O", + "index": 19, + "x": 0.866, + "y": 1.5 + }, + { + "type": "atom", + "element": "O", + "index": 20, + "x": 0.0, + "y": 0.0 + }, + { + "sub": "n", + "atoms": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ], + "type": "parens" + }, + { + "type": "atom", + "index": 21, + "x": -0.2679, + "y": -1.0 + }, + { + "type": "atom", + "index": 22, + "x": 4.7321, + "y": 0.7321 + }, + { + "type": "atom", + "index": 23, + "x": -1.2679, + "y": -1.0 + }, + { + "type": "atom", + "index": 24, + "x": 5.7321, + "y": 0.7321 + }, + { + "type": "bond", + "a": 5, + "b": 0, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 0, + "b": 1, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 1, + "b": 2, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 2, + "b": 3, + "lines": [ + "thick" + ] + }, + { + "type": "bond", + "a": 4, + "b": 5, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 4, + "b": 3, + "lines": [ + "outward" + ] + }, + { + "type": "bond", + "a": 0, + "b": 6, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 1, + "b": 7, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 4, + "b": 8, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 6, + "b": 9, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 2, + "b": 10, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 3, + "b": 11, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 9, + "b": 12, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 12, + "b": 13, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 12, + "b": 14, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 11, + "b": 15, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 15, + "b": 16, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 15, + "b": 17, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 10, + "b": 18, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 18, + "b": 19, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 18, + "b": 20, + "lines": [ + "solid", + "dotted" + ] + }, + { + "type": "bond", + "a": 7, + "b": 21, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 8, + "b": 22, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 21, + "b": 23, + "lines": [ + "solid" + ] + }, + { + "type": "bond", + "a": 22, + "b": 24, + "lines": [ + "solid" + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/assets/tfg/molecules/tfg_polycaprolactam.json b/kubejs/assets/tfg/molecules/tfg_polycaprolactam.json new file mode 100644 index 000000000..675b7b465 --- /dev/null +++ b/kubejs/assets/tfg/molecules/tfg_polycaprolactam.json @@ -0,0 +1,164 @@ +{ + "contents": [ + { + "index": 0, + "element": "", + "x": 0.0, + "y": 0.0, + "type": "atom" + }, + { + "index": 1, + "element": "N", + "above": "H", + "x": 0.8660254, + "y": 0.5, + "type": "atom" + }, + { + "index": 3, + "element": "", + "x": 1.7320508, + "y": 0.0, + "type": "atom" + }, + { + "index": 4, + "element": "", + "x": 2.598076, + "y": 0.5, + "type": "atom" + }, + { + "index": 5, + "element": "", + "x": 3.4641016, + "y": 0.0, + "type": "atom" + }, + { + "index": 6, + "element": "", + "x": 4.3301272, + "y": 0.5, + "type": "atom" + }, + { + "index": 7, + "element": "", + "x": 5.196152, + "y": 0.0, + "type": "atom" + }, + { + "index": 8, + "element": "", + "x": 6.0621777, + "y": 0.5, + "type": "atom" + }, + { + "index": 9, + "element": "O", + "x": 6.0621777, + "y": 1.5, + "type": "atom" + }, + { + "index": 10, + "element": "", + "x": 6.928203, + "y": 0.0, + "type": "atom" + }, + { + "a": 0, + "b": 1, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 1, + "b": 3, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 3, + "b": 4, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 4, + "b": 5, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 5, + "b": 6, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 6, + "b": 7, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 7, + "b": 8, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "a": 8, + "b": 9, + "centered": true, + "lines": [ + "solid", + "solid" + ], + "type": "bond" + }, + { + "a": 8, + "b": 10, + "lines": [ + "solid" + ], + "type": "bond" + }, + { + "sub": "n", + "atoms": [ + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ], + "type": "parens" + } + ] +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/block/titanium_exhaust_vent.png b/kubejs/assets/tfg/textures/block/titanium_exhaust_vent.png new file mode 100644 index 000000000..27f09a0c6 Binary files /dev/null and b/kubejs/assets/tfg/textures/block/titanium_exhaust_vent.png differ diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index cf0551d98..2aff6e5bb 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -441,6 +441,23 @@ const registerTFGItemTags = (event) => { event.add('tfg:mineral_rich_wool', 'tfg:wraptor_wool') event.add('tfg:mineral_rich_wool', 'tfg:sniffer_wool') //#endregion + + //#region holder materials + event.remove('forge:dusts', 'tfg:nitrocellulose') + event.remove('forge:dusts/nitrocellulose', 'tfg:nitrocellulose') + + event.remove('forge:dusts', 'tfg:cellulose_matrix') + event.remove('forge:dusts/cellulose_matrix', 'tfg:cellulose_matrix') + + event.remove('balm:ingots', 'tfg:polycaprolactam_fabric') + event.remove('tfc:pileable_ingots', 'tfg:polycaprolactam_fabric') + event.remove('forge:ingots', 'tfg:polycaprolactam_fabric') + event.remove('forge:ingots/tfg_polycaprolactam', 'tfg:polycaprolactam_fabric') + + event.remove('balm:nuggets', 'tfg:polycaprolactam_string') + event.remove('forge:nuggets', 'tfg:polycaprolactam_string') + event.remove('forge:nuggets/tfg_polycaprolactam', 'tfg:polycaprolactam_string') + } //#region Blocks @@ -775,4 +792,5 @@ const registerTFGPlacedFeatures = (event) => { event.add('tfg:nether_underground_decoration', 'tfg:nether/terrain/magma_blob') // #endregion + } \ No newline at end of file diff --git a/kubejs/startup_scripts/tfg/blocks.js b/kubejs/startup_scripts/tfg/blocks.js index c24c4b1b7..a0cc2148c 100644 --- a/kubejs/startup_scripts/tfg/blocks.js +++ b/kubejs/startup_scripts/tfg/blocks.js @@ -8,8 +8,8 @@ const registerTFGBlocks = (event) => { registerTFGAqueductBlocks(event) registerTFGCrops(event) - event.create('tfg:exhaust_vent_particle', 'tfg:active_particle_emitter') - .textureAll('tfg:block/titanium_concrete') + event.create('tfg:titanium_exhaust_vent', 'tfg:active_particle_emitter') + .textureAll('tfg:block/titanium_exhaust_vent') .soundType('metal') .hardness(5) .resistance(6) diff --git a/kubejs/startup_scripts/tfg/materials.js b/kubejs/startup_scripts/tfg/materials.js index 62cd825eb..ac1d7c902 100644 --- a/kubejs/startup_scripts/tfg/materials.js +++ b/kubejs/startup_scripts/tfg/materials.js @@ -534,4 +534,23 @@ const registerTFGMaterials = (event) => { .flags(GTMaterialFlags.DECOMPOSITION_BY_ELECTROLYZING) .components('7x gallium', '2x tin', '1x zinc') .color('0x34cfeb') + + // #region holder materials + // These allow us to give material components to non-material items + // Requires .setIgnored to be called in core + event.create('tfg:nitrocellulose') + .dust() + .components('6x carbon', '7x hydrogen', '3x nitrogen', '11x oxygen') + .flags(GTMaterialFlags.DISABLE_MATERIAL_RECIPES) + .color(0xFFFFFF) + event.create('tfg:cellulose_matrix') + .dust() + .flags(GTMaterialFlags.DISABLE_MATERIAL_RECIPES) + .color(0xFFFFFF) + event.create('tfg:tfg_polycaprolactam') + .ingot() + .components('6x carbon', '11x hydrogen', '1x nitrogen', '1x oxygen') + .flags(GTMaterialFlags.DISABLE_MATERIAL_RECIPES, GTMaterialFlags.EXPLOSIVE) + .macerateInto('gtceu:polycaprolactam') + .color(0x000000) }