diff --git a/kubejs/assets/tfg/models/item/clean_dna_syringe.json b/kubejs/assets/tfg/models/item/clean_dna_syringe.json new file mode 100644 index 000000000..c8fb2dd97 --- /dev/null +++ b/kubejs/assets/tfg/models/item/clean_dna_syringe.json @@ -0,0 +1,40 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "tfg:item/dna_syringe_clean" + }, + "display": { + "thirdperson_righthand": { + "rotation": [0, 90, 40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "thirdperson_lefthand": { + "rotation": [0, 90, -40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "firstperson_righthand": { + "rotation": [0, 90, -20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "firstperson_lefthand": { + "rotation": [0, -90, 20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "ground": { + "translation": [0, 2, 0], + "scale": [0.5, 0.5, 0.5] + }, + "head": { + "rotation": [49, 4, -70], + "translation": [-9.75, -3.25, 1.75], + "scale": [0.4, 0.4, 0.4] + }, + "fixed": { + "rotation": [0, -180, 0] + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/dirty_dna_syringe.json b/kubejs/assets/tfg/models/item/dirty_dna_syringe.json new file mode 100644 index 000000000..366dcdcd6 --- /dev/null +++ b/kubejs/assets/tfg/models/item/dirty_dna_syringe.json @@ -0,0 +1,40 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "tfg:item/dna_syringe_dirty" + }, + "display": { + "thirdperson_righthand": { + "rotation": [0, 90, 40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "thirdperson_lefthand": { + "rotation": [0, 90, -40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "firstperson_righthand": { + "rotation": [0, 90, -20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "firstperson_lefthand": { + "rotation": [0, -90, 20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "ground": { + "translation": [0, 2, 0], + "scale": [0.5, 0.5, 0.5] + }, + "head": { + "rotation": [49, 4, -70], + "translation": [-9.75, -3.25, 1.75], + "scale": [0.4, 0.4, 0.4] + }, + "fixed": { + "rotation": [0, -180, 0] + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/item/filled_dna_syringe.json b/kubejs/assets/tfg/models/item/filled_dna_syringe.json new file mode 100644 index 000000000..75804ad56 --- /dev/null +++ b/kubejs/assets/tfg/models/item/filled_dna_syringe.json @@ -0,0 +1,42 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "tfg:item/dna_syringe_background", + "layer1": "tfg:item/dna_syringe_base", + "layer2": "tfg:item/dna_syringe_overlay" + }, + "display": { + "thirdperson_righthand": { + "rotation": [0, 90, 40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "thirdperson_lefthand": { + "rotation": [0, 90, -40], + "translation": [0, 3, 1], + "scale": [0.4, 0.4, 0.4] + }, + "firstperson_righthand": { + "rotation": [0, 90, -20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "firstperson_lefthand": { + "rotation": [0, -90, 20], + "translation": [1.13, 3.2, 0.25], + "scale": [0.6, 0.6, 0.6] + }, + "ground": { + "translation": [0, 2, 0], + "scale": [0.5, 0.5, 0.5] + }, + "head": { + "rotation": [49, 4, -70], + "translation": [-9.75, -3.25, 1.75], + "scale": [0.4, 0.4, 0.4] + }, + "fixed": { + "rotation": [0, -180, 0] + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_background.png b/kubejs/assets/tfg/textures/item/dna_syringe_background.png new file mode 100644 index 000000000..423714168 Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_background.png differ diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_base.png b/kubejs/assets/tfg/textures/item/dna_syringe_base.png new file mode 100644 index 000000000..a14de9b39 Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_base.png differ diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_clean.png b/kubejs/assets/tfg/textures/item/dna_syringe_clean.png new file mode 100644 index 000000000..235ca110c Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_clean.png differ diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_dirty.png b/kubejs/assets/tfg/textures/item/dna_syringe_dirty.png new file mode 100644 index 000000000..baef03159 Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_dirty.png differ diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_empty.png b/kubejs/assets/tfg/textures/item/dna_syringe_empty.png new file mode 100644 index 000000000..df98c59e6 Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_empty.png differ diff --git a/kubejs/assets/tfg/textures/item/dna_syringe_overlay.png b/kubejs/assets/tfg/textures/item/dna_syringe_overlay.png new file mode 100644 index 000000000..e2fdb6e7c Binary files /dev/null and b/kubejs/assets/tfg/textures/item/dna_syringe_overlay.png differ diff --git a/kubejs/assets/tfg/textures/item/stainless_steel_needle.png b/kubejs/assets/tfg/textures/item/stainless_steel_needle.png new file mode 100644 index 000000000..7af3c9dac Binary files /dev/null and b/kubejs/assets/tfg/textures/item/stainless_steel_needle.png differ diff --git a/kubejs/server_scripts/comforts/recipes.js b/kubejs/server_scripts/comforts/recipes.js index 563c8820d..981d16f8d 100644 --- a/kubejs/server_scripts/comforts/recipes.js +++ b/kubejs/server_scripts/comforts/recipes.js @@ -13,7 +13,7 @@ const registerComfortsRecipes = (event) => { //sleeping bag event.recipes.tfc.damage_inputs_shapeless_crafting( - event.shapeless("comforts:sleeping_bag_white", [ "3x #tfc:high_quality_cloth", 'tfc:bone_needle' ]) + event.shapeless("comforts:sleeping_bag_white", [ "3x #tfc:high_quality_cloth", '#tfc:sewing_needles' ]) ).id('comforts:shaped/sleeping_bag_white'); event.shaped("comforts:hammock_white", [ diff --git a/kubejs/server_scripts/diggerhelmet/recipes.js b/kubejs/server_scripts/diggerhelmet/recipes.js index b9a9305bd..4b4400559 100644 --- a/kubejs/server_scripts/diggerhelmet/recipes.js +++ b/kubejs/server_scripts/diggerhelmet/recipes.js @@ -47,10 +47,10 @@ function registerDiggerHelmetRecipes(event) { }).id('tfg:shaped/auto_drink_modifier_rubber') event.recipes.tfc.damage_inputs_shapeless_crafting( - event.shapeless('diggerhelmet:silk_lining', ['tfcambiental:silk_cowl', '#forge:string', 'tfc:bone_needle']) + event.shapeless('diggerhelmet:silk_lining', ['tfcambiental:silk_cowl', '#forge:string', '#tfc:sewing_needles']) ).id('tfg:shapeless/diggerhelmet/silk_lining') event.recipes.tfc.damage_inputs_shapeless_crafting( - event.shapeless('diggerhelmet:wool_lining', ['tfcambiental:wool_hat', '#forge:string', 'tfc:bone_needle']) + event.shapeless('diggerhelmet:wool_lining', ['tfcambiental:wool_hat', '#forge:string', '#tfc:sewing_needles']) ).id('tfg:shapeless/diggerhelmet/wool_lining') } \ No newline at end of file diff --git a/kubejs/server_scripts/sacksnstuff/recipes.js b/kubejs/server_scripts/sacksnstuff/recipes.js index 0f71ec058..5bf5ed48a 100644 --- a/kubejs/server_scripts/sacksnstuff/recipes.js +++ b/kubejs/server_scripts/sacksnstuff/recipes.js @@ -64,7 +64,7 @@ const registerSNSRecipes = (event) => { B: 'sns:leather_strip', C: 'sns:unfinished_leather_sack', //D: 'minecraft:name_tag', - E: 'tfc:bone_needle' + E: '#tfc:sewing_needles' } ) ).id('sns:crafting/leather_sack') @@ -79,7 +79,7 @@ const registerSNSRecipes = (event) => { B: 'sns:leather_strip', C: 'sns:unfinished_leather_sack', D: 'minecraft:name_tag', - E: 'tfc:bone_needle' + E: '#tfc:sewing_needles' } ) ).id('sns:crafting/leather_sack_coil')*/ @@ -94,7 +94,7 @@ const registerSNSRecipes = (event) => { B: '#forge:leather', C: 'sns:unfinished_leather_sack', D: 'minecraft:name_tag', - E: 'tfc:bone_needle' + E: '#tfc:sewing_needles' } ) ).id('sns:crafting/ore_sack') @@ -121,7 +121,7 @@ const registerSNSRecipes = (event) => { B: 'sns:reinforced_fabric', C: 'sns:pack_frame', D: 'minecraft:name_tag', - E: 'tfc:bone_needle' + E: '#tfc:sewing_needles' } ) ).id('sns:crafting/frame_pack') diff --git a/kubejs/server_scripts/tfg/recipes.bioreactor.js b/kubejs/server_scripts/tfg/recipes.bioreactor.js index fe5da21c3..e62367aa7 100644 --- a/kubejs/server_scripts/tfg/recipes.bioreactor.js +++ b/kubejs/server_scripts/tfg/recipes.bioreactor.js @@ -189,5 +189,48 @@ function registerTFGBioreactorRecipes(event) { event.shapeless('tfg:casings/bioculture_rotor_primary', [ 'tfg:casings/bioculture_rotor_secondary' ]).id('tfg:shapeless/bioculture_rotor_secondary_to_primary') + + event.replaceInput({input: 'tfc:bone_needle'}, 'tfc:bone_needle', '#tfc:sewing_needles') + + event.recipes.gtceu.wiremill('tfg:stainless_steel_needle') + .itemInputs(ChemicalHelper.get(TagPrefix.pipeNormalFluid, GTMaterials.StainlessSteel, 1)) + .itemOutputs('tfg:stainless_steel_needle') + .duration(2*60*20) + .circuit(4) + .EUt(GTValues.VA[GTValues.MV]) + + event.recipes.gtceu.assembler('tfg:empty_dna_syringe') + .itemInputs( + ChemicalHelper.get(TagPrefix.ring, GTMaterials.StyreneButadieneRubber, 2), + ChemicalHelper.get(TagPrefix.pipeNormalFluid, GTMaterials.Polytetrafluoroethylene, 1), + ChemicalHelper.get(TagPrefix.rod, GTMaterials.Polytetrafluoroethylene, 1), + 'tfg:stainless_steel_needle' + ) + .inputFluids(Fluid.of('gtceu:polytetrafluoroethylene', 288)) + .itemOutputs('tfg:empty_dna_syringe') + .duration(4*60*20) + .circuit(4) + .EUt(GTValues.VA[GTValues.EV]) + .cleanroom(CleanroomType.CLEANROOM) + + event.shapeless('tfg:dirty_dna_syringe', [ + 'tfg:filled_dna_syringe' + ]).id('tfg:shapeless/filled_dna_syringe_emptying') + + event.recipes.gtceu.chemical_bath('tfg:ethanol_cleaning_syringe') + .itemInputs('tfg:dirty_dna_syringe') + .inputFluids(Fluid.of('gtceu:ethanol', 500)) + .itemOutputs('tfg:clean_dna_syringe') + .duration(10*20) + .EUt(GTValues.VA[GTValues.MV]) + .cleanroom(CleanroomType.CLEANROOM) + + event.recipes.gtceu.chemical_bath('tfg:hydrogen_peroxide_cleaning_syringe') + .itemInputs('tfg:dirty_dna_syringe') + .inputFluids(Fluid.of('gtceu:hydrogen_peroxide', 200)) + .itemOutputs('tfg:clean_dna_syringe') + .duration(10*20) + .EUt(GTValues.VA[GTValues.MV]) + .cleanroom(CleanroomType.CLEANROOM) //#endregion } \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index 10c75cd65..034ae3f3a 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -78,6 +78,11 @@ const registerTFGItemTags = (event) => { event.add('tfg:tools/ore_prospectors/blue_steel', 'tfc:metal/propick/blue_steel') event.add('tfg:tools/ore_prospectors/red_steel', 'tfc:metal/propick/red_steel') + event.add('tfg:empty_dna_syringes', 'tfg:empty_dna_syringe') + event.add('tfg:empty_dna_syringes', 'tfg:clean_dna_syringe') + + event.add('tfc:sewing_needles', 'tfg:stainless_steel_needle') + //#endregion // #region Paper from wood diff --git a/kubejs/startup_scripts/tfg/items.js b/kubejs/startup_scripts/tfg/items.js index 8a84d7294..729dbfeca 100644 --- a/kubejs/startup_scripts/tfg/items.js +++ b/kubejs/startup_scripts/tfg/items.js @@ -233,6 +233,10 @@ const registerTFGItems = (event) => { .parentModel('tfg:item/aluminium_harvest_basket') .unstackable() + event.create('tfg:stainless_steel_needle') + .translationKey('item.tfg.stainless_steel_needle') + .unstackable() + //Fishing Nets event.create('tfg:fishing_net/wood') .translationKey('item.tfg.fishing_net.wood')