Merge remote-tracking branch 'origin/mc1.20.1/feature-dev' into mc1.21.1/dev

This commit is contained in:
simibubi 2025-02-05 22:49:59 +01:00
commit 57f4120cc5
119 changed files with 1703 additions and 113 deletions

View file

@ -25,9 +25,9 @@ registrate_version = MC1.21-1.3.0+62
# Dependency Versions
flywheel_minecraft_version = 1.21.1
flywheel_version = 1.0.0-beta-1
flywheel_version = 1.0.0-beta-4
flywheel_version_range = [1.0.0-alpha,2.0)
ponder_version = 1.0.31
ponder_version = 1.0.32
jei_minecraft_version = 1.21.1
jei_version = 19.21.0.247
curios_minecraft_version = 1.21.1

View file

@ -2344,7 +2344,7 @@
"create.ponder.shaft.text_1": "˙ǝuıן ʇɥbıɐɹʇs ɐ uı uoıʇɐʇoɹ ʎɐןǝɹ ןןıʍ sʇɟɐɥS",
"create.ponder.shaft_casing.header": "sʇɟɐɥS buısɐɔuƎ",
"create.ponder.shaft_casing.text_1": "sʇɟɐɥS ǝʇɐɹoɔǝp oʇ pǝsn ǝq uɐɔ buısɐƆ ǝʇısǝpuⱯ ɹo ssɐɹᗺ",
"create.ponder.shared.behaviour_modify_wrench": "ɥɔuǝɹM ɐ buısn pǝıɟıpoɯ ǝq uɐɔ ɹnoıʌɐɥǝq sıɥ⟘",
"create.ponder.shared.behaviour_modify_value_panel": "ןǝuɐd ǝnןɐʌ ǝɥʇ buısn pǝıɟıpoɯ ǝq uɐɔ ɹnoıʌɐɥǝq sıɥ⟘",
"create.ponder.shared.movement_anchors": "˙pǝʌoɯ ǝq uɐɔ sǝɹnʇɔnɹʇs ɹǝbɹɐן 'ǝnן⅁ ɹǝdnS ɟo dןǝɥ ǝɥʇ ɥʇıM",
"create.ponder.shared.rpm16": "WԀᴚ 9Ɩ",
"create.ponder.shared.rpm16_source": "WԀᴚ 9Ɩ :ǝɔɹnoS",
@ -3090,7 +3090,7 @@
"create.train_assembly.no_controls": ")¿ǝnן⅁ ɹǝdnS buıssıɯ noʎ ǝɹⱯ( ʞɔoןq sןoɹʇuoƆ uıɐɹ⟘ buıɔɐɟ-pɹɐʍɹoɟ ǝuo ʇsɐǝן ʇɐ ɥɔɐʇʇⱯ",
"create.train_assembly.not_connected_in_order": "ɹǝpɹo uı pǝʇɔǝuuoɔ ʇou ǝɹɐ sʎǝboᗺ",
"create.train_assembly.nothing_attached": "%1$s ʎǝboᗺ oʇ pǝɥɔɐʇʇɐ ǝɹnʇɔnɹʇs oN",
"create.train_assembly.requires_casing": "sʞɔɐɹʇ uo sʎǝboq ǝʇɐǝɹɔ oʇ buısɐƆ ʎɐʍןıɐᴚ ǝs∩",
"create.train_assembly.requires_casing": "sʞɔɐɹʇ uo sʎǝboq ǝʇɐǝɹɔ oʇ buısɐƆ uıɐɹ⟘ ǝs∩",
"create.train_assembly.sideways_controls": "sʎɐʍǝpıs ǝɔɐɟ ʇouuɐɔ sןoɹʇuoƆ uıɐɹ⟘",
"create.train_assembly.single_bogey_carriage": "uʍo sʇı uo ǝbɐıɹɹɐɔ ɐ ʇɹoddns ʇouuɐɔ ǝdʎʇ ʎǝboᗺ sıɥ⟘",
"create.train_assembly.too_many_bogeys": "%1$s :pǝɥɔɐʇʇɐ sʎǝboᗺ ʎuɐɯ oo⟘",

View file

@ -2344,7 +2344,7 @@
"create.ponder.shaft.text_1": "Shafts will relay rotation in a straight line.",
"create.ponder.shaft_casing.header": "Encasing Shafts",
"create.ponder.shaft_casing.text_1": "Brass or Andesite Casing can be used to decorate Shafts",
"create.ponder.shared.behaviour_modify_wrench": "This behaviour can be modified using a Wrench",
"create.ponder.shared.behaviour_modify_value_panel": "This behaviour can be modified using the value panel",
"create.ponder.shared.movement_anchors": "With the help of Super Glue, larger structures can be moved.",
"create.ponder.shared.rpm16": "16 RPM",
"create.ponder.shared.rpm16_source": "Source: 16 RPM",
@ -3090,7 +3090,7 @@
"create.train_assembly.no_controls": "Attach at least one forward-facing Train Controls block (Are you missing Super Glue?)",
"create.train_assembly.not_connected_in_order": "Bogeys are not connected in order",
"create.train_assembly.nothing_attached": "No structure attached to Bogey %1$s",
"create.train_assembly.requires_casing": "Use Railway Casing to create bogeys on tracks",
"create.train_assembly.requires_casing": "Use Train Casing to create bogeys on tracks",
"create.train_assembly.sideways_controls": "Train Controls cannot face sideways",
"create.train_assembly.single_bogey_carriage": "This Bogey type cannot support a carriage on its own",
"create.train_assembly.too_many_bogeys": "Too many Bogeys attached: %1$s",

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:exposed_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:copper_block"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_copper_block"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:copper_block"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:exposed_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:exposed_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:exposed_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:exposed_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:weathered_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_exposed_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:weathered_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_exposed_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:exposed_copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:weathered_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_exposed_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:weathered_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_exposed_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:weathered_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_exposed_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:exposed_cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_oxidized_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:oxidized_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_oxidized_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:oxidized_copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_oxidized_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:oxidized_cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_oxidized_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:oxidized_cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_oxidized_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:oxidized_cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:oxidized_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_weathered_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_shingle_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingle_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_shingle_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingle_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_shingles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_shingles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_tile_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tile_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_tile_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tile_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:oxidized_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "create:waxed_weathered_copper_tiles"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "create:weathered_copper_tiles"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:oxidized_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_weathered_cut_copper"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:oxidized_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_weathered_cut_copper_slab"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper_slab"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:oxidized_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,17 @@
{
"type": "create:deploying",
"ingredients": [
{
"item": "minecraft:waxed_weathered_cut_copper_stairs"
},
{
"tag": "minecraft:axes"
}
],
"keepHeldItem": true,
"results": [
{
"item": "minecraft:weathered_cut_copper_stairs"
}
]
}

View file

@ -0,0 +1,21 @@
{
"type": "create:cutting",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:plates/aluminum"
}
],
"processingTime": 50,
"results": [
{
"count": 2,
"item": "immersiveengineering:wire_aluminum"
}
]
}

View file

@ -0,0 +1,21 @@
{
"type": "create:cutting",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:plates/copper"
}
],
"processingTime": 50,
"results": [
{
"count": 2,
"item": "immersiveengineering:wire_copper"
}
]
}

View file

@ -0,0 +1,21 @@
{
"type": "create:cutting",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:plates/electrum"
}
],
"processingTime": 50,
"results": [
{
"count": 2,
"item": "immersiveengineering:wire_electrum"
}
]
}

View file

@ -0,0 +1,21 @@
{
"type": "create:cutting",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:plates/lead"
}
],
"processingTime": 50,
"results": [
{
"count": 2,
"item": "immersiveengineering:wire_lead"
}
]
}

View file

@ -0,0 +1,21 @@
{
"type": "create:cutting",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:plates/steel"
}
],
"processingTime": 50,
"results": [
{
"count": 2,
"item": "immersiveengineering:wire_steel"
}
]
}

View file

@ -0,0 +1,23 @@
{
"type": "create:filling",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "minecraft:planks"
},
{
"amount": 125,
"fluidTag": "forge:creosote"
}
],
"results": [
{
"item": "immersiveengineering:treated_wood_horizontal"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/aluminum"
}
],
"results": [
{
"item": "immersiveengineering:plate_aluminum"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/constantan"
}
],
"results": [
{
"item": "immersiveengineering:plate_constantan"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/electrum"
}
],
"results": [
{
"item": "immersiveengineering:plate_electrum"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/lead"
}
],
"results": [
{
"item": "immersiveengineering:plate_lead"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/nickel"
}
],
"results": [
{
"item": "immersiveengineering:plate_nickel"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/silver"
}
],
"results": [
{
"item": "immersiveengineering:plate_silver"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/steel"
}
],
"results": [
{
"item": "immersiveengineering:plate_steel"
}
]
}

View file

@ -0,0 +1,19 @@
{
"type": "create:pressing",
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "immersiveengineering"
}
],
"ingredients": [
{
"tag": "forge:ingots/uranium"
}
],
"results": [
{
"item": "immersiveengineering:plate_uranium"
}
]
}

View file

@ -109,7 +109,7 @@ public class AllItems {
public static final ItemEntry<SequencedAssemblyItem>
INCOMPLETE_PRECISION_MECHANISM = sequencedIngredient("incomplete_precision_mechanism"),
INCOMPLETE_PRECISION_MECHANISM = sequencedIngredient("incomplete_precision_mechanism"),
INCOMPLETE_REINFORCED_SHEET = sequencedIngredient("unprocessed_obsidian_sheet"),
INCOMPLETE_TRACK = sequencedIngredient("incomplete_track");
@ -219,7 +219,7 @@ public class AllItems {
IRON_SHEET = taggedIngredient("iron_sheet", commonItemTag("plates/iron"), PLATES.tag),
GOLDEN_SHEET = taggedIngredient("golden_sheet", commonItemTag("plates/gold"), PLATES.tag, ItemTags.PIGLIN_LOVED),
CRUSHED_IRON = taggedIngredient("crushed_raw_iron", CRUSHED_RAW_MATERIALS.tag),
CRUSHED_IRON = taggedIngredient("crushed_raw_iron", CRUSHED_RAW_MATERIALS.tag),
CRUSHED_GOLD = taggedIngredient("crushed_raw_gold", CRUSHED_RAW_MATERIALS.tag, ItemTags.PIGLIN_LOVED),
CRUSHED_COPPER = taggedIngredient("crushed_raw_copper", CRUSHED_RAW_MATERIALS.tag),
CRUSHED_ZINC = taggedIngredient("crushed_raw_zinc", CRUSHED_RAW_MATERIALS.tag);
@ -284,7 +284,7 @@ public class AllItems {
public static final ItemEntry<? extends BacktankItem>
COPPER_BACKTANK =
COPPER_BACKTANK =
REGISTRATE
.item("copper_backtank",
p -> new BacktankItem(AllArmorMaterials.COPPER, p, Create.asResource("copper_diving"),
@ -306,7 +306,7 @@ public class AllItems {
public static final ItemEntry<? extends DivingHelmetItem>
COPPER_DIVING_HELMET =
COPPER_DIVING_HELMET =
REGISTRATE
.item("copper_diving_helmet",
p -> new DivingHelmetItem(AllArmorMaterials.COPPER, p, Create.asResource("copper_diving")))
@ -323,7 +323,7 @@ public class AllItems {
public static final ItemEntry<? extends DivingBootsItem>
COPPER_DIVING_BOOTS =
COPPER_DIVING_BOOTS =
REGISTRATE
.item("copper_diving_boots",
p -> new DivingBootsItem(AllArmorMaterials.COPPER, p, Create.asResource("copper_diving")))
@ -340,13 +340,13 @@ public class AllItems {
public static final ItemEntry<? extends BaseArmorItem>
CARDBOARD_HELMET = REGISTRATE.item("cardboard_helmet", p -> new CardboardArmorItem(ArmorItem.Type.HELMET, p))
.properties(p -> p.durability(Type.HELMET.getDurability(4)))
.tag(ItemTags.HEAD_ARMOR, ItemTags.TRIMMABLE_ARMOR)
.onRegisterAfter(Registries.ITEM, v -> ItemDescription.useKey(v, "item.create.cardboard_armor"))
.model(TrimmableArmorModelGenerator::generate)
.clientExtension(() -> () -> new CardboardArmorStealthOverlay())
.register(),
CARDBOARD_HELMET = REGISTRATE.item("cardboard_helmet", p -> new CardboardArmorItem(ArmorItem.Type.HELMET, p))
.properties(p -> p.durability(Type.HELMET.getDurability(4)))
.tag(ItemTags.HEAD_ARMOR, ItemTags.TRIMMABLE_ARMOR)
.onRegisterAfter(Registries.ITEM, v -> ItemDescription.useKey(v, "item.create.cardboard_armor"))
.model(TrimmableArmorModelGenerator::generate)
.clientExtension(() -> () -> new CardboardArmorStealthOverlay())
.register(),
CARDBOARD_CHESTPLATE =
REGISTRATE.item("cardboard_chestplate", p -> new CardboardArmorItem(ArmorItem.Type.CHESTPLATE, p))
@ -456,11 +456,11 @@ public class AllItems {
.lang("List Filter")
.register(),
ATTRIBUTE_FILTER = REGISTRATE.item("attribute_filter", FilterItem::attribute)
.register(),
ATTRIBUTE_FILTER = REGISTRATE.item("attribute_filter", FilterItem::attribute)
.register(),
PACKAGE_FILTER = REGISTRATE.item("package_filter", FilterItem::address)
.register();
PACKAGE_FILTER = REGISTRATE.item("package_filter", FilterItem::address)
.register();
public static final ItemEntry<ScheduleItem> SCHEDULE = REGISTRATE.item("schedule", ScheduleItem::new)
.lang("Train Schedule")
@ -521,6 +521,7 @@ public class AllItems {
// Load this class
public static void register() {}
public static void register() {
}
}

View file

@ -238,6 +238,7 @@ public class AllPartialModels {
public static final Map<Direction, PartialModel> METAL_GIRDER_BRACKETS = new EnumMap<>(Direction.class);
public static final Map<DyeColor, PartialModel> TOOLBOX_LIDS = new EnumMap<>(DyeColor.class);
public static final Map<DyeColor, PartialModel> DYED_VALVE_HANDLES = new EnumMap<>(DyeColor.class);
public static final Map<ResourceLocation, Couple<PartialModel>> FOLDING_DOORS = new HashMap<>();
public static final List<PartialModel> CONTRAPTION_CONTROLS_INDICATOR = new ArrayList<>();
@ -257,8 +258,10 @@ public class AllPartialModels {
}
PIPE_ATTACHMENTS.put(type, map);
}
for (DyeColor color : DyeColor.values())
for (DyeColor color : DyeColor.values()) {
TOOLBOX_LIDS.put(color, block("toolbox/lid/" + Lang.asId(color.name())));
DYED_VALVE_HANDLES.put(color, block(Lang.asId(color.name()) + "_valve_handle"));
}
for (Direction d : Iterate.horizontalDirections) {
METAL_GIRDER_BRACKETS.put(d, block("metal_girder/bracket_" + Lang.asId(d.name())));
FACTORY_PANEL_ARROWS.put(d, block("factory_gauge/connections/arrow_" + Lang.asId(d.name())));

View file

@ -139,6 +139,10 @@ public class ContraptionCollider {
float yawOffset = rotation.getYawOffset();
Vec3 position = getWorldToLocalTranslation(entity, anchorVec, rotationMatrix, yawOffset);
// Make player 'shorter' to make it less likely to become stuck
if (playerType == PlayerType.CLIENT && entityBounds.getYsize() > 1)
entityBounds = entityBounds.contract(0, 2 / 16f, 0);
motion = motion.subtract(contraptionMotion);
motion = rotationMatrix.transform(motion);

View file

@ -90,6 +90,10 @@ public class ContraptionHandlerClient {
Collection<WeakReference<AbstractContraptionEntity>> contraptions =
ContraptionHandler.loadedContraptions.get(mc.level)
.values();
double bestDistance = Double.MAX_VALUE;
BlockHitResult bestResult = null;
AbstractContraptionEntity bestEntity = null;
for (WeakReference<AbstractContraptionEntity> ref : contraptions) {
AbstractContraptionEntity contraptionEntity = ref.get();
@ -102,20 +106,30 @@ public class ContraptionHandlerClient {
BlockHitResult rayTraceResult = rayTraceContraption(origin, target, contraptionEntity);
if (rayTraceResult == null)
continue;
InteractionHand hand = event.getHand();
Direction face = rayTraceResult.getDirection();
BlockPos pos = rayTraceResult.getBlockPos();
if (contraptionEntity.handlePlayerInteraction(player, pos, face, hand)) {
CatnipServices.NETWORK.sendToServer(new ContraptionInteractionPacket(contraptionEntity, hand, pos, face));
} else if (handleSpecialInteractions(contraptionEntity, player, pos, face, hand)) {
} else
double distance = contraptionEntity.toGlobalVector(rayTraceResult.getLocation(), 1).distanceTo(origin);
if (distance > bestDistance)
continue;
event.setCanceled(true);
event.setSwingHand(false);
bestResult = rayTraceResult;
bestDistance = distance;
bestEntity = contraptionEntity;
}
if (bestResult == null)
return;
InteractionHand hand = event.getHand();
Direction face = bestResult.getDirection();
BlockPos pos = bestResult.getBlockPos();
if (bestEntity.handlePlayerInteraction(player, pos, face, hand)) {
CatnipServices.NETWORK.sendToServer(new ContraptionInteractionPacket(bestEntity, hand, pos, face));
} else
handleSpecialInteractions(bestEntity, player, pos, face, hand);
event.setCanceled(true);
event.setSwingHand(false);
}
private static boolean handleSpecialInteractions(AbstractContraptionEntity contraptionEntity, Player player,

View file

@ -15,6 +15,7 @@ import com.simibubi.create.content.contraptions.behaviour.MovementContext;
import com.simibubi.create.foundation.utility.worldWrappers.WrappedBlockAndTintGetter;
import com.simibubi.create.foundation.virtualWorld.VirtualRenderWorld;
import dev.engine_room.flywheel.api.material.CardinalLightingMode;
import dev.engine_room.flywheel.api.model.Model;
import dev.engine_room.flywheel.api.task.Plan;
import dev.engine_room.flywheel.api.visual.BlockEntityVisual;
@ -28,6 +29,8 @@ import dev.engine_room.flywheel.api.visualization.VisualizationContext;
import dev.engine_room.flywheel.api.visualization.VisualizerRegistry;
import dev.engine_room.flywheel.lib.instance.InstanceTypes;
import dev.engine_room.flywheel.lib.instance.TransformedInstance;
import dev.engine_room.flywheel.lib.material.SimpleMaterial;
import dev.engine_room.flywheel.lib.model.ModelUtil;
import dev.engine_room.flywheel.lib.model.baked.MultiBlockModelBuilder;
import dev.engine_room.flywheel.lib.task.ForEachPlan;
import dev.engine_room.flywheel.lib.task.NestedPlan;
@ -99,6 +102,8 @@ public class ContraptionVisual<E extends AbstractContraptionEntity> extends Abst
};
model = new MultiBlockModelBuilder(modelWorld, blocks.positions())
.materialFunc((renderType, aBoolean) -> SimpleMaterial.builderOf(ModelUtil.getMaterial(renderType, aBoolean))
.cardinalLightingMode(CardinalLightingMode.CHUNK))
.build();
var instancer = embedding.instancerProvider()

View file

@ -15,7 +15,7 @@ import net.minecraft.world.level.block.Block;
public enum AllToolMaterials implements Tier {
CARDBOARD(Create.asResource("cardboard")
.toString(), 200, 1, 2, 1, () -> Ingredient.of(AllItems.CARDBOARD.asItem()))
.toString(), 0, 1, 2, 1, () -> Ingredient.of(AllItems.CARDBOARD.asItem()))
;
public final String name;
@ -26,7 +26,7 @@ public enum AllToolMaterials implements Tier {
private final int enchantValue;
private final Supplier<Ingredient> repairMaterial;
AllToolMaterials(String name, int uses, float speed, float damageBonus, int enchantValue,
private AllToolMaterials(String name, int uses, float speed, float damageBonus, int enchantValue,
Supplier<Ingredient> repairMaterial) {
this.name = name;
this.uses = uses;

View file

@ -32,8 +32,8 @@ import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent;
@EventBusSubscriber
public class ValveHandleBlock extends HandCrankBlock {
private final DyeColor color;
public final DyeColor color;
public static ValveHandleBlock copper(Properties properties) {
return new ValveHandleBlock(properties, null);
}

View file

@ -6,17 +6,16 @@ import org.joml.Quaternionf;
import com.simibubi.create.AllPartialModels;
import com.simibubi.create.content.kinetics.base.KineticBlockEntityVisual;
import com.simibubi.create.content.kinetics.base.RotatingInstance;
import com.simibubi.create.foundation.render.AllInstanceTypes;
import dev.engine_room.flywheel.api.instance.Instance;
import dev.engine_room.flywheel.api.model.Model;
import dev.engine_room.flywheel.api.visualization.VisualizationContext;
import dev.engine_room.flywheel.lib.instance.InstanceTypes;
import dev.engine_room.flywheel.lib.instance.TransformedInstance;
import dev.engine_room.flywheel.lib.model.Models;
import dev.engine_room.flywheel.lib.visual.SimpleDynamicVisual;
import net.minecraft.core.Direction;
import net.minecraft.world.item.DyeColor;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.properties.BlockStateProperties;
public class ValveHandleVisual extends KineticBlockEntityVisual<HandCrankBlockEntity> implements SimpleDynamicVisual {
@ -25,8 +24,16 @@ public class ValveHandleVisual extends KineticBlockEntityVisual<HandCrankBlockEn
public ValveHandleVisual(VisualizationContext modelManager, HandCrankBlockEntity blockEntity, float partialTick) {
super(modelManager, blockEntity, partialTick);
crank = instancerProvider().instancer(InstanceTypes.TRANSFORMED, Models.partial(AllPartialModels.VALVE_HANDLE))
.createInstance();
BlockState state = blockEntity.getBlockState();
DyeColor color = null;
if (state != null && state.getBlock() instanceof ValveHandleBlock vhb)
color = vhb.color;
crank = instancerProvider()
.instancer(InstanceTypes.TRANSFORMED,
Models.partial(
color == null ? AllPartialModels.VALVE_HANDLE : AllPartialModels.DYED_VALVE_HANDLES.get(color)))
.createInstance();
rotateCrank(partialTick);
}

View file

@ -41,7 +41,7 @@ public class DrillActorVisual extends ActorVisual {
public void tick() {
previousRotation = rotation;
if (context.contraption.stalled || context.disabled
if (context.disabled
|| VecHelper.isVecPointingTowards(context.relativeMotion, facing.getOpposite()))
return;

View file

@ -32,7 +32,7 @@ public class AddressEditBox extends EditBox {
destinationSuggestions.setAllowSuggestions(true);
destinationSuggestions.updateCommandInfo();
mainResponder = t -> {
if (t.equals(prevValue))
if (!t.equals(prevValue))
destinationSuggestions.updateCommandInfo();
prevValue = t;
};

View file

@ -841,6 +841,8 @@ public class FactoryPanelBehaviour extends FilteringBehaviour {
blockEntity.setChanged();
blockEntity.sendData();
playFeedbackSound(this);
if (!getWorld().isClientSide)
notifyRedstoneOutputs();
}
@Override

View file

@ -83,6 +83,8 @@ public class PackagerBlock extends WrenchableDirectionalBlock implements IBE<Pac
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
if (AllBlocks.FACTORY_GAUGE.isIn(stack))
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
if (AllBlocks.STOCK_LINK.isIn(stack) && !state.getValue(LINKED))
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
if (onBlockEntityUseItemOn(level, pos, be -> {
if (be.heldBox.isEmpty()) {
@ -101,10 +103,10 @@ public class PackagerBlock extends WrenchableDirectionalBlock implements IBE<Pac
player.setItemInHand(hand, ItemStack.EMPTY);
return ItemInteractionResult.SUCCESS;
}
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
return ItemInteractionResult.SUCCESS;
}
if (be.animationTicks > 0)
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
return ItemInteractionResult.SUCCESS;
if (!level.isClientSide()) {
player.getInventory()
.placeItemBackInInventory(be.heldBox.copy());
@ -116,7 +118,7 @@ public class PackagerBlock extends WrenchableDirectionalBlock implements IBE<Pac
}).consumesAction())
return ItemInteractionResult.SUCCESS;
return ItemInteractionResult.PASS_TO_DEFAULT_BLOCK_INTERACTION;
return ItemInteractionResult.SUCCESS;
}
@Override

View file

@ -1010,6 +1010,18 @@ public class StockKeeperRequestScreen extends AbstractSimiContainerScreen<StockK
@Override
public boolean mouseClicked(double pMouseX, double pMouseY, int pButton) {
boolean lmb = pButton == GLFW.GLFW_MOUSE_BUTTON_LEFT;
boolean rmb = pButton == GLFW.GLFW_MOUSE_BUTTON_RIGHT;
// Search
if (rmb && searchBox.isMouseOver(pMouseX, pMouseY)) {
searchBox.setValue("");
refreshSearchNextTick = true;
moveToTopNextTick = true;
searchBox.setFocused(true);
return true;
}
if (addressBox.isFocused()) {
if (addressBox.isHovered())
return addressBox.mouseClicked(pMouseX, pMouseY, pButton);
@ -1021,9 +1033,6 @@ public class StockKeeperRequestScreen extends AbstractSimiContainerScreen<StockK
searchBox.setFocused(false);
}
boolean lmb = pButton == GLFW.GLFW_MOUSE_BUTTON_LEFT;
boolean rmb = pButton == GLFW.GLFW_MOUSE_BUTTON_RIGHT;
// Scroll bar
int barX = itemsX + cols * colWidth - 1;
if (getMaxScroll() > 0 && lmb && pMouseX > barX && pMouseX <= barX + 8 && pMouseY > getGuiTop() + 15
@ -1046,15 +1055,6 @@ public class StockKeeperRequestScreen extends AbstractSimiContainerScreen<StockK
return true;
}
// Search
if (rmb && searchBox.isMouseOver(pMouseX, pMouseY)) {
searchBox.setValue("");
refreshSearchNextTick = true;
moveToTopNextTick = true;
searchBox.setFocused(true);
return true;
}
// Confirm
if (lmb && isConfirmHovered((int) pMouseX, (int) pMouseY)) {
sendIt();
@ -1145,6 +1145,8 @@ public class StockKeeperRequestScreen extends AbstractSimiContainerScreen<StockK
@Override
public boolean mouseScrolled(double mouseX, double mouseY, double scrollX, double scrollY) {
if (addressBox.mouseScrolled(mouseX, mouseY, scrollX, scrollY))
return true;
Couple<Integer> hoveredSlot = getHoveredSlot((int) mouseX, (int) mouseY);
boolean noHover = hoveredSlot == noneHovered;

Some files were not shown because too many files have changed in this diff Show more