mirror of
https://github.com/Creators-of-Create/Create.git
synced 2024-12-27 23:47:38 +01:00
Adjustments
This commit is contained in:
parent
8a99a08d7c
commit
6dceee2478
38 changed files with 241 additions and 330 deletions
|
@ -531,20 +531,20 @@ bf2b0310500213ff853c748c236eb5d01f61658e assets/create/blockstates/yellow_toolbo
|
|||
7f39521b211441f5c3e06d60c5978cebe16cacfb assets/create/blockstates/zinc_block.json
|
||||
b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json
|
||||
f33899d90db924319a1b99065bf1faff1aa40d6a assets/create/lang/en_ud.json
|
||||
6be350b9d57fa573e464b8ed250b66234d767631 assets/create/lang/en_us.json
|
||||
f7b78c385c001eccef20718886ec62aebb49920b assets/create/lang/unfinished/de_de.json
|
||||
9a13b14a41fabc846638b5aa1557ab3be915e24f assets/create/lang/unfinished/es_cl.json
|
||||
a8cc635c26b070336407991f068e7b42b476aed7 assets/create/lang/unfinished/es_es.json
|
||||
ce38f5577b7b96460025372563ee88cef2318e7c assets/create/lang/unfinished/fr_fr.json
|
||||
2c85e6efd817348d94c55292e20fadf6b704209c assets/create/lang/unfinished/it_it.json
|
||||
f6ed2a6f0f241e73f1e6a88b8500043ef0668b1d assets/create/lang/unfinished/ja_jp.json
|
||||
133188f5196da148f9dd8aa122d9b008daf36685 assets/create/lang/unfinished/ko_kr.json
|
||||
983b53cab576e43b0e61f899590b6488d220cd36 assets/create/lang/unfinished/nl_nl.json
|
||||
0d4aa18fa90d8620d4761ce2fbe900ef8f407a50 assets/create/lang/unfinished/pl_pl.json
|
||||
2c765f1b8ea570d837212a7e86aec653fe155477 assets/create/lang/unfinished/pt_br.json
|
||||
9a1d7bbd01321fae009c00bbf5b2bc091ef38e13 assets/create/lang/unfinished/ru_ru.json
|
||||
ecc1c5d0b5434804db76a5b6d4a589b16fa490be assets/create/lang/unfinished/zh_cn.json
|
||||
b316488ca9891c2444a6df03bc5ddfbcd1f84de0 assets/create/lang/unfinished/zh_tw.json
|
||||
748d2635a4f8c97cee2392c1c08c4716f7424202 assets/create/lang/en_us.json
|
||||
d5eed56ff394835dae0f514f9317b83f7fd3954c assets/create/lang/unfinished/de_de.json
|
||||
b44cb66962677538209a02fdafc2e62541542d64 assets/create/lang/unfinished/es_cl.json
|
||||
617f9f1a37b46066b8f6a14f22cbeec8179ce0cd assets/create/lang/unfinished/es_es.json
|
||||
91d391799b6579914ef35cf8ebe917684b25b9df assets/create/lang/unfinished/fr_fr.json
|
||||
787470a30ca417e8cf1da6b47ac40879bb274237 assets/create/lang/unfinished/it_it.json
|
||||
00f079aaebfe906b84b71903f80b0be4127e8cc7 assets/create/lang/unfinished/ja_jp.json
|
||||
75a8b1e3ead980456ff4a4607b1e28197d9de2e8 assets/create/lang/unfinished/ko_kr.json
|
||||
6c7f81042ee0cc25e0ababea6cc254b72557aac9 assets/create/lang/unfinished/nl_nl.json
|
||||
7a3670aa1d488f637a4787c37419a25ace4813bc assets/create/lang/unfinished/pl_pl.json
|
||||
2c30f012946ab67f44514e987e9be87535eb5c5d assets/create/lang/unfinished/pt_br.json
|
||||
516e0f0149f814ceec3b15cfb2d46c3c4c8a877c assets/create/lang/unfinished/ru_ru.json
|
||||
d9b421597a5b0b3ae662a12a94c833d853b24fe5 assets/create/lang/unfinished/zh_cn.json
|
||||
68b91bb8f3822d2b0798a6ec8a85d7d188c5c4d1 assets/create/lang/unfinished/zh_tw.json
|
||||
487a511a01b2a4531fb672f917922312db78f958 assets/create/models/block/acacia_window.json
|
||||
b48060cba1a382f373a05bf0039054053eccf076 assets/create/models/block/acacia_window_pane_noside.json
|
||||
3066db1bf03cffa1a9c7fbacf47ae586632f4eb3 assets/create/models/block/acacia_window_pane_noside_alt.json
|
||||
|
@ -4567,6 +4567,14 @@ fb8e4378cd2240644a4b5c0d06e27ad772ec7695 data/create/recipes/filling/sweet_roll.
|
|||
d697de0c9b706ca4e18da7a2d769e7e5fe8d769d data/create/recipes/framed_glass_pane.json
|
||||
d0c541bbefb9f3f861ae5751645493c8e1687b5c data/create/recipes/granite_pillar_from_granite_stonecutting.json
|
||||
dc3a5cc1a91cd35051b9e0f701e9fb44600a7dfb data/create/recipes/granite_pillar_from_stone_types_granite_stonecutting.json
|
||||
4e6283794e3b99043e92465d55440ad607d30965 data/create/recipes/haunting/blackstone.json
|
||||
b0ebe3a1a7f2b9f3fd446f9639a7b6b20b9f726d data/create/recipes/haunting/crimson_fungus.json
|
||||
60be487d3fef64e3457f5a95bd3d0aac4574e24c data/create/recipes/haunting/crimson_nylium.json
|
||||
f1a2b5d5bd8dfd9c6ab4c40dc4e99cbabba06e84 data/create/recipes/haunting/haunted_bell.json
|
||||
d34fe1f6d1eccc9f40ede3bd11e879140014401e data/create/recipes/haunting/soul_sand.json
|
||||
c0aab10c6c323b92931e8b59bf9902a47165b263 data/create/recipes/haunting/soul_soil.json
|
||||
a6c387d19c357d7c89aa44a10b9deb9e93b6c614 data/create/recipes/haunting/warped_fungus.json
|
||||
80e2ae7d41c3a75423112e67b11718194de722cb data/create/recipes/haunting/warped_nylium.json
|
||||
05908d48b6ac0c117da0b4b9ae4ae5e933ed900e data/create/recipes/horizontal_framed_glass_from_glass_colorless_stonecutting.json
|
||||
4e8d49934f9899f788d45d4347bfc085b2836699 data/create/recipes/horizontal_framed_glass_pane.json
|
||||
c3ccd16b7fe9878cc734d699b4c8b219ad556f46 data/create/recipes/jungle_window.json
|
||||
|
@ -4855,7 +4863,6 @@ f6e2fb5725f3730d01fae4a2b1a04d11095eab5f data/create/recipes/scorchia_pillar_fro
|
|||
d6e16599de7424513e1457b07acb6370815d2bd7 data/create/recipes/scoria_pillar_from_stone_types_scoria_stonecutting.json
|
||||
1b6bec69b00c44e74951973d69caae53d85383cb data/create/recipes/sequenced_assembly/cogwheel.json
|
||||
3bc3d13856f9ab8ccc47c3188cfd839f6db2359b data/create/recipes/sequenced_assembly/large_cogwheel.json
|
||||
60bcef06c4fe292c3e90441aed49f5773b8934e6 data/create/recipes/sequenced_assembly/netherrack.json
|
||||
b49a0da57a179edc087eee224221ded22fd1be01 data/create/recipes/sequenced_assembly/precision_mechanism.json
|
||||
5e7648d55555c263539a2696b8d1f8d352a71dc9 data/create/recipes/small_andesite_brick_slab.json
|
||||
180c1ca843163ef4ed3701ac93e3eac060ad2cc4 data/create/recipes/small_andesite_brick_slab_from_andesite_stonecutting.json
|
||||
|
@ -5068,13 +5075,6 @@ a5d23be4cc959eb47d84b210190abaafcf41f022 data/create/recipes/smelting/zinc_ingot
|
|||
4e622fc77e2a630af1b4115e0c60d55682baff72 data/create/recipes/smelting/zinc_ingot_from_ore.json
|
||||
4060cc921ea26b36cf5a505048f4a812f0569ae0 data/create/recipes/smelting/zinc_ingot_from_raw_ore.json
|
||||
ce7c3c6e1da9d6684c9537d1a558423925d89f33 data/create/recipes/smoking/bread.json
|
||||
48e174e7f7347661985f4a488e939a785d7b9d2a data/create/recipes/soul_smoking/blackstone.json
|
||||
bcb8362ef040fef36809a3980eb61ced8874aa5a data/create/recipes/soul_smoking/crimson_fungus.json
|
||||
8070b6b69fb709e82a335873a0bddf67937069ba data/create/recipes/soul_smoking/crimson_nylium.json
|
||||
4edd9fee0f61498209d0fd47701fd14a7188b2f9 data/create/recipes/soul_smoking/soul_sand.json
|
||||
36e1d970622843713789f8fa25c7de09236bc39f data/create/recipes/soul_smoking/soul_soil.json
|
||||
a7f50385d27c6c8ecdb813eb32f0ceb5336ba972 data/create/recipes/soul_smoking/warped_fungus.json
|
||||
979bfbb98af35cfe7a8129e2c4cffa95923ce4b9 data/create/recipes/soul_smoking/warped_nylium.json
|
||||
6b1d2483fe717657f7188f6490eab2da715609e8 data/create/recipes/splashing/black_concrete_powder.json
|
||||
1aedfde11712827604bbef34e992c411c0b02876 data/create/recipes/splashing/blue_concrete_powder.json
|
||||
6e11d592dc9b19c4cd9bf2df2aa46b7ec4d9a331 data/create/recipes/splashing/brown_concrete_powder.json
|
||||
|
|
|
@ -821,8 +821,8 @@
|
|||
"create.recipe.fan_washing.fan": "Fan behind Flowing Water",
|
||||
"create.recipe.fan_smoking": "Bulk Smoking",
|
||||
"create.recipe.fan_smoking.fan": "Fan behind Fire",
|
||||
"create.recipe.fan_soul_smoking": "Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Bulk Blasting",
|
||||
"create.recipe.fan_blasting.fan": "Fan behind Lava",
|
||||
"create.recipe.pressing": "Pressing",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Propeller hinter fließendem Wasser",
|
||||
"create.recipe.fan_smoking": "Sammelräuchern",
|
||||
"create.recipe.fan_smoking.fan": "Propeller hinter Feuer",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Sammelschmelzen",
|
||||
"create.recipe.fan_blasting.fan": "Propeller hinter Lava",
|
||||
"create.recipe.pressing": "Mechanische Presse",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Ventilador detrás de una Corriente de Agua",
|
||||
"create.recipe.fan_smoking": "Ahumado",
|
||||
"create.recipe.fan_smoking.fan": "Ventilador tras Fuego",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Fundición",
|
||||
"create.recipe.fan_blasting.fan": "Ventilador tras Lava",
|
||||
"create.recipe.pressing": "Prensando",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Ventilador detrás del agua fluyente",
|
||||
"create.recipe.fan_smoking": "Ahumador a granel",
|
||||
"create.recipe.fan_smoking.fan": "Ventilador detrás del fuego",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Voladuras a granel",
|
||||
"create.recipe.fan_blasting.fan": "Ventilador detrás de la lava",
|
||||
"create.recipe.pressing": "Prensando",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Ventilateur derrière de l'eau",
|
||||
"create.recipe.fan_smoking": "Fumage",
|
||||
"create.recipe.fan_smoking.fan": "Ventilateur derrière du feu",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Fonte",
|
||||
"create.recipe.fan_blasting.fan": "Ventilateur derrière de la lave",
|
||||
"create.recipe.pressing": "Pressage",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Ventilatore dietro l'acqua corrente",
|
||||
"create.recipe.fan_smoking": "Fumo volumetrico",
|
||||
"create.recipe.fan_smoking.fan": "Ventilatore dietro il fuoco",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Esplosione volumetrica",
|
||||
"create.recipe.fan_blasting.fan": "Ventilatore dietro la lava",
|
||||
"create.recipe.pressing": "Pressatura",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "水の奥のケース入りファン",
|
||||
"create.recipe.fan_smoking": "一括燻製",
|
||||
"create.recipe.fan_smoking.fan": "炎の奥のケース入りファン",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "一括精錬",
|
||||
"create.recipe.fan_blasting.fan": "溶岩の奥のケース入りファン",
|
||||
"create.recipe.pressing": "プレス",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "물과 선풍기",
|
||||
"create.recipe.fan_smoking": "훈연",
|
||||
"create.recipe.fan_smoking.fan": "불과 선풍기",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "제련",
|
||||
"create.recipe.fan_blasting.fan": "용암과 선풍기",
|
||||
"create.recipe.pressing": "압착",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "UNLOCALIZED: Fan behind Flowing Water",
|
||||
"create.recipe.fan_smoking": "UNLOCALIZED: Bulk Smoking",
|
||||
"create.recipe.fan_smoking.fan": "UNLOCALIZED: Fan behind Fire",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "UNLOCALIZED: Bulk Blasting",
|
||||
"create.recipe.fan_blasting.fan": "UNLOCALIZED: Fan behind Lava",
|
||||
"create.recipe.pressing": "Persen",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Wiatrak za płynącą wodą",
|
||||
"create.recipe.fan_smoking": "Hurtowe wędzenie",
|
||||
"create.recipe.fan_smoking.fan": "Wiatrak za ogniem",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Hurtowe topienie",
|
||||
"create.recipe.fan_blasting.fan": "Wiatrak za lawą",
|
||||
"create.recipe.pressing": "Tłoczenie",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Ventilador atrás de água",
|
||||
"create.recipe.fan_smoking": "Defumação em massa",
|
||||
"create.recipe.fan_smoking.fan": "Ventilador atrás de fogo",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Fundição em massa",
|
||||
"create.recipe.fan_blasting.fan": "entilador atrás de lava",
|
||||
"create.recipe.pressing": "Prensa Mecânica",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "Вентилятор за текущей водой",
|
||||
"create.recipe.fan_smoking": "Массовое копчение",
|
||||
"create.recipe.fan_smoking.fan": "Вентилятор за горящим огнём",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Массовое плавление",
|
||||
"create.recipe.fan_blasting.fan": "Вентилятор за текущей лавой",
|
||||
"create.recipe.pressing": "Прессование",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "在水后放置鼓风机",
|
||||
"create.recipe.fan_smoking": "批量烟熏",
|
||||
"create.recipe.fan_smoking.fan": "在火焰后放置鼓风机",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "批量熔炼",
|
||||
"create.recipe.fan_blasting.fan": "在熔岩后放置鼓风机",
|
||||
"create.recipe.pressing": "金属压片",
|
||||
|
|
|
@ -822,8 +822,8 @@
|
|||
"create.recipe.fan_washing.fan": "在水後放置鼓風機",
|
||||
"create.recipe.fan_smoking": "批次煙燻",
|
||||
"create.recipe.fan_smoking.fan": "在火焰後放置鼓風機",
|
||||
"create.recipe.fan_soul_smoking": "UNLOCALIZED: Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "UNLOCALIZED: Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "UNLOCALIZED: Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "批次融煉",
|
||||
"create.recipe.fan_blasting.fan": "在熔岩後放置鼓風機",
|
||||
"create.recipe.pressing": "金屬壓片",
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:cobblestone"
|
||||
"tag": "forge:cobblestone"
|
||||
}
|
||||
],
|
||||
"results": [
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:red_mushroom"
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:mycelium"
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:peculiar_bell"
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "create:haunted_bell"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "minecraft:sand"
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "minecraft:soul_sand"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"tag": "minecraft:dirt"
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "minecraft:soul_soil"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:brown_mushroom"
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"type": "create:haunting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "minecraft:podzol"
|
|
@ -1,86 +0,0 @@
|
|||
{
|
||||
"type": "create:sequenced_assembly",
|
||||
"ingredient": {
|
||||
"item": "minecraft:blackstone"
|
||||
},
|
||||
"transitionalItem": {
|
||||
"item": "create:incomplete_netherrack"
|
||||
},
|
||||
"sequence": [
|
||||
{
|
||||
"type": "create:deploying",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
},
|
||||
{
|
||||
"item": "create:cinder_flour"
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "create:filling",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
},
|
||||
{
|
||||
"fluid": "minecraft:lava",
|
||||
"nbt": {},
|
||||
"amount": 50
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "create:cutting",
|
||||
"ingredients": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "create:incomplete_netherrack"
|
||||
}
|
||||
],
|
||||
"processingTime": 50
|
||||
}
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "minecraft:netherrack",
|
||||
"count": 2,
|
||||
"chance": 35.0
|
||||
},
|
||||
{
|
||||
"item": "minecraft:blackstone",
|
||||
"chance": 5.0
|
||||
},
|
||||
{
|
||||
"item": "minecraft:basalt",
|
||||
"chance": 4.0
|
||||
},
|
||||
{
|
||||
"item": "minecraft:deepslate",
|
||||
"chance": 3.0
|
||||
},
|
||||
{
|
||||
"item": "minecraft:magma_block",
|
||||
"chance": 2.0
|
||||
},
|
||||
{
|
||||
"item": "minecraft:obsidian"
|
||||
}
|
||||
],
|
||||
"loops": 2
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"ingredients": [
|
||||
[
|
||||
{
|
||||
"item": "minecraft:sand"
|
||||
},
|
||||
{
|
||||
"item": "minecraft:red_sand"
|
||||
}
|
||||
]
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "minecraft:soul_sand"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"type": "create:soul_smoking",
|
||||
"ingredients": [
|
||||
[
|
||||
{
|
||||
"item": "minecraft:dirt"
|
||||
},
|
||||
{
|
||||
"item": "minecraft:coarse_dirt"
|
||||
},
|
||||
{
|
||||
"item": "minecraft:rooted_dirt"
|
||||
}
|
||||
]
|
||||
],
|
||||
"results": [
|
||||
{
|
||||
"item": "minecraft:soul_soil"
|
||||
}
|
||||
]
|
||||
}
|
|
@ -7,7 +7,7 @@ import com.simibubi.create.compat.jei.ConversionRecipe;
|
|||
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCraftingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.crusher.CrushingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SoulSmokingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.millstone.MillingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.mixer.CompactingRecipe;
|
||||
|
@ -48,7 +48,7 @@ public enum AllRecipeTypes implements IRecipeTypeInfo {
|
|||
PRESSING(PressingRecipe::new),
|
||||
SANDPAPER_POLISHING(SandPaperPolishingRecipe::new),
|
||||
SPLASHING(SplashingRecipe::new),
|
||||
SOUL_SMOKING(SoulSmokingRecipe::new),
|
||||
HAUNTING(HauntingRecipe::new),
|
||||
DEPLOYING(DeployerApplicationRecipe::new),
|
||||
FILLING(FillingRecipe::new),
|
||||
EMPTYING(EmptyingRecipe::new),
|
||||
|
|
|
@ -74,8 +74,8 @@ public class CreateJEI implements IModPlugin {
|
|||
.catalystStack(ProcessingViaFanCategory.getFan("fan_smoking"))
|
||||
.build(),
|
||||
|
||||
soul_smoking = register("fan_soul_smoking", FanSoulSmokingCategory::new).recipes(AllRecipeTypes.SOUL_SMOKING)
|
||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_soul_smoking")).build(),
|
||||
soul_smoking = register("fan_haunting", FanHauntingCategory::new).recipes(AllRecipeTypes.HAUNTING)
|
||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_haunting")).build(),
|
||||
|
||||
blasting = register("fan_blasting", FanBlastingCategory::new)
|
||||
.recipesExcluding(() -> RecipeType.SMELTING, () -> RecipeType.BLASTING)
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
package com.simibubi.create.compat.jei.category;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SoulSmokingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||
import com.simibubi.create.foundation.gui.element.GuiGameElement;
|
||||
|
@ -15,30 +17,26 @@ import mezz.jei.api.gui.ingredient.IGuiItemStackGroup;
|
|||
import mezz.jei.api.ingredients.IIngredients;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
import net.minecraft.world.level.material.Fluids;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
public class FanHauntingCategory extends ProcessingViaFanCategory<HauntingRecipe> {
|
||||
|
||||
public class FanSoulSmokingCategory extends ProcessingViaFanCategory<SoulSmokingRecipe> {
|
||||
|
||||
public FanSoulSmokingCategory() {
|
||||
public FanHauntingCategory() {
|
||||
super(185, doubleItemIcon(AllItems.PROPELLER.get(), Items.SOUL_CAMPFIRE));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends SoulSmokingRecipe> getRecipeClass() {
|
||||
return SoulSmokingRecipe.class;
|
||||
public Class<? extends HauntingRecipe> getRecipeClass() {
|
||||
return HauntingRecipe.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setIngredients(SoulSmokingRecipe recipe, IIngredients ingredients) {
|
||||
public void setIngredients(HauntingRecipe recipe, IIngredients ingredients) {
|
||||
ingredients.setInputIngredients(recipe.getIngredients());
|
||||
ingredients.setOutputs(VanillaTypes.ITEM, recipe.getRollableResultsAsItemStacks());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setRecipe(IRecipeLayout recipeLayout, SoulSmokingRecipe recipe, IIngredients ingredients) {
|
||||
public void setRecipe(IRecipeLayout recipeLayout, HauntingRecipe recipe, IIngredients ingredients) {
|
||||
IGuiItemStackGroup itemStacks = recipeLayout.getItemStacks();
|
||||
List<ProcessingOutput> results = recipe.getRollableResults();
|
||||
int xOffsetGlobal = 8 * (3 - Math.min(3, results.size()));
|
||||
|
@ -64,7 +62,7 @@ public class FanSoulSmokingCategory extends ProcessingViaFanCategory<SoulSmoking
|
|||
}
|
||||
|
||||
@Override
|
||||
protected void renderWidgets(PoseStack matrixStack, SoulSmokingRecipe recipe, double mouseX, double mouseY) {
|
||||
protected void renderWidgets(PoseStack matrixStack, HauntingRecipe recipe, double mouseX, double mouseY) {
|
||||
int size = recipe.getRollableResultsAsItemStacks()
|
||||
.size();
|
||||
int xOffsetGlobal = 8 * (3 - Math.min(3, size));
|
|
@ -159,13 +159,10 @@ public class AirCurrent {
|
|||
entity.hurt(damageSourceFire, 2);
|
||||
}
|
||||
break;
|
||||
case SOUL_SMOKING: //TODO maybe I should use new damage source instead of the regular smoke one?
|
||||
case HAUNTING:
|
||||
if (entity instanceof LivingEntity livingEntity) {
|
||||
livingEntity.addEffect(new MobEffectInstance(MobEffects.GLOWING, 400));
|
||||
}
|
||||
if (!entity.fireImmune()) {
|
||||
entity.setSecondsOnFire(10);
|
||||
entity.hurt(damageSourceFire, 4);
|
||||
livingEntity.addEffect(new MobEffectInstance(MobEffects.BLINDNESS, 30, 0, false, false));
|
||||
livingEntity.addEffect(new MobEffectInstance(MobEffects.MOVEMENT_SLOWDOWN, 20, 1, false, false));
|
||||
}
|
||||
break;
|
||||
case SPLASHING:
|
||||
|
|
|
@ -1,24 +1,23 @@
|
|||
package com.simibubi.create.content.contraptions.components.fan;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
|
||||
import com.simibubi.create.AllRecipeTypes;
|
||||
import com.simibubi.create.content.contraptions.processing.InWorldProcessing;
|
||||
import com.simibubi.create.content.contraptions.processing.InWorldProcessing.SplashingWrapper;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipe;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipeBuilder.ProcessingRecipeParams;
|
||||
|
||||
import net.minecraft.world.level.Level;
|
||||
|
||||
import javax.annotation.ParametersAreNonnullByDefault;
|
||||
|
||||
@ParametersAreNonnullByDefault
|
||||
public class SoulSmokingRecipe extends ProcessingRecipe<InWorldProcessing.SoulSmokingWrapper> {
|
||||
public class HauntingRecipe extends ProcessingRecipe<InWorldProcessing.HauntingWrapper> {
|
||||
|
||||
public SoulSmokingRecipe(ProcessingRecipeParams params) {
|
||||
super(AllRecipeTypes.SOUL_SMOKING, params);
|
||||
public HauntingRecipe(ProcessingRecipeParams params) {
|
||||
super(AllRecipeTypes.HAUNTING, params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean matches(InWorldProcessing.SoulSmokingWrapper inv, Level worldIn) {
|
||||
public boolean matches(InWorldProcessing.HauntingWrapper inv, Level worldIn) {
|
||||
if (inv.isEmpty())
|
||||
return false;
|
||||
return ingredients.get(0)
|
|
@ -121,15 +121,15 @@ public class AirFlowParticle extends SimpleAnimatedParticle {
|
|||
zd * .125f);
|
||||
}
|
||||
|
||||
if (type == InWorldProcessing.Type.SOUL_SMOKING) {//TODO soul smoking special particle?
|
||||
setColor(Color.mixColors(0x0, 0x555555, level.random.nextFloat()));
|
||||
if (type == InWorldProcessing.Type.HAUNTING) {
|
||||
setColor(Color.mixColors(0x0, 0x126568, level.random.nextFloat()));
|
||||
setAlpha(1f);
|
||||
selectSprite(level.random.nextInt(3));
|
||||
if (level.random.nextFloat() < 1 / 32f)
|
||||
level.addParticle(ParticleTypes.SMOKE, x, y, z, xd * .125f, yd * .125f,
|
||||
if (level.random.nextFloat() < 1 / 128f)
|
||||
level.addParticle(ParticleTypes.SOUL_FIRE_FLAME, x, y, z, xd * .125f, yd * .125f,
|
||||
zd * .125f);
|
||||
if (level.random.nextFloat() < 1 / 32f)
|
||||
level.addParticle(ParticleTypes.LARGE_SMOKE, x, y, z, xd * .125f, yd * .125f,
|
||||
level.addParticle(ParticleTypes.SMOKE, x, y, z, xd * .125f, yd * .125f,
|
||||
zd * .125f);
|
||||
}
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ package com.simibubi.create.content.contraptions.processing;
|
|||
import com.mojang.math.Vector3f;
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.AllRecipeTypes;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SoulSmokingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe;
|
||||
import com.simibubi.create.content.contraptions.processing.burner.BlazeBurnerBlock;
|
||||
import com.simibubi.create.content.contraptions.relays.belt.transport.TransportedItemStack;
|
||||
|
@ -11,6 +11,7 @@ import com.simibubi.create.foundation.config.AllConfigs;
|
|||
import com.simibubi.create.foundation.item.ItemHelper;
|
||||
import com.simibubi.create.foundation.tileEntity.behaviour.belt.TransportedItemStackHandlerBehaviour.TransportedResult;
|
||||
import com.simibubi.create.foundation.utility.Color;
|
||||
import com.simibubi.create.foundation.utility.VecHelper;
|
||||
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.particles.DustParticleOptions;
|
||||
|
@ -46,10 +47,10 @@ public class InWorldProcessing {
|
|||
|
||||
private static final RecipeWrapper WRAPPER = new RecipeWrapper(new ItemStackHandler(1));
|
||||
private static final SplashingWrapper SPLASHING_WRAPPER = new SplashingWrapper();
|
||||
private static final SoulSmokingWrapper SOUL_SMOKING_WRAPPER = new SoulSmokingWrapper();
|
||||
private static final HauntingWrapper SOUL_SMOKING_WRAPPER = new HauntingWrapper();
|
||||
|
||||
public enum Type {
|
||||
SMOKING, BLASTING, SPLASHING, SOUL_SMOKING, NONE;
|
||||
SMOKING, BLASTING, SPLASHING, HAUNTING, NONE;
|
||||
|
||||
public static Type byBlock(BlockGetter reader, BlockPos pos) {
|
||||
BlockState blockState = reader.getBlockState(pos);
|
||||
|
@ -57,12 +58,14 @@ public class InWorldProcessing {
|
|||
if (fluidState.getType() == Fluids.WATER || fluidState.getType() == Fluids.FLOWING_WATER)
|
||||
return Type.SPLASHING;
|
||||
Block block = blockState.getBlock();
|
||||
if (block == Blocks.SOUL_FIRE || block == Blocks.SOUL_CAMPFIRE && blockState.getOptionalValue(CampfireBlock.LIT).orElse(false))
|
||||
return Type.SOUL_SMOKING;
|
||||
if (block == Blocks.FIRE || AllBlocks.LIT_BLAZE_BURNER.has(blockState)
|
||||
|| (BlockTags.CAMPFIRES.contains(block) && blockState.getOptionalValue(CampfireBlock.LIT)
|
||||
if (block == Blocks.SOUL_FIRE
|
||||
|| block == Blocks.SOUL_CAMPFIRE && blockState.getOptionalValue(CampfireBlock.LIT)
|
||||
.orElse(false))
|
||||
|| getHeatLevelOf(blockState) == BlazeBurnerBlock.HeatLevel.SMOULDERING)
|
||||
return Type.HAUNTING;
|
||||
if (block == Blocks.FIRE || AllBlocks.LIT_BLAZE_BURNER.has(blockState)
|
||||
|| (BlockTags.CAMPFIRES.contains(block) && blockState.getOptionalValue(CampfireBlock.LIT)
|
||||
.orElse(false))
|
||||
|| getHeatLevelOf(blockState) == BlazeBurnerBlock.HeatLevel.SMOULDERING)
|
||||
return Type.SMOKING;
|
||||
if (block == Blocks.LAVA || getHeatLevelOf(blockState).isAtLeast(BlazeBurnerBlock.HeatLevel.FADING))
|
||||
return Type.BLASTING;
|
||||
|
@ -72,9 +75,9 @@ public class InWorldProcessing {
|
|||
|
||||
public static boolean canProcess(ItemEntity entity, Type type) {
|
||||
if (entity.getPersistentData()
|
||||
.contains("CreateData")) {
|
||||
.contains("CreateData")) {
|
||||
CompoundTag compound = entity.getPersistentData()
|
||||
.getCompound("CreateData");
|
||||
.getCompound("CreateData");
|
||||
if (compound.contains("Processing")) {
|
||||
CompoundTag processing = compound.getCompound("Processing");
|
||||
|
||||
|
@ -97,33 +100,33 @@ public class InWorldProcessing {
|
|||
if (type == Type.BLASTING) {
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<SmeltingRecipe> smeltingRecipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.SMELTING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.SMELTING, WRAPPER, world);
|
||||
|
||||
if (smeltingRecipe.isPresent())
|
||||
return true;
|
||||
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<BlastingRecipe> blastingRecipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.BLASTING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.BLASTING, WRAPPER, world);
|
||||
|
||||
if (blastingRecipe.isPresent())
|
||||
return true;
|
||||
|
||||
return !stack.getItem()
|
||||
.isFireResistant();
|
||||
.isFireResistant();
|
||||
}
|
||||
|
||||
if (type == Type.SMOKING) {
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<SmokingRecipe> recipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.SMOKING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.SMOKING, WRAPPER, world);
|
||||
return recipe.isPresent();
|
||||
}
|
||||
|
||||
if (type == Type.SPLASHING)
|
||||
return isWashable(stack, world);
|
||||
|
||||
if (type == Type.SOUL_SMOKING)
|
||||
if (type == Type.HAUNTING)
|
||||
return isSoulSmokeable(stack, world);
|
||||
|
||||
return false;
|
||||
|
@ -137,7 +140,7 @@ public class InWorldProcessing {
|
|||
|
||||
public static boolean isSoulSmokeable(ItemStack stack, Level world) {
|
||||
SOUL_SMOKING_WRAPPER.setItem(0, stack);
|
||||
Optional<SoulSmokingRecipe> recipe = AllRecipeTypes.SOUL_SMOKING.find(SOUL_SMOKING_WRAPPER, world);
|
||||
Optional<HauntingRecipe> recipe = AllRecipeTypes.HAUNTING.find(SOUL_SMOKING_WRAPPER, world);
|
||||
return recipe.isPresent();
|
||||
}
|
||||
|
||||
|
@ -165,7 +168,7 @@ public class InWorldProcessing {
|
|||
transported.processedBy = type;
|
||||
int timeModifierForStackSize = ((transported.stack.getCount() - 1) / 16) + 1;
|
||||
int processingTime =
|
||||
(int) (AllConfigs.SERVER.kinetics.inWorldProcessingTime.get() * timeModifierForStackSize) + 1;
|
||||
(int) (AllConfigs.SERVER.kinetics.inWorldProcessingTime.get() * timeModifierForStackSize) + 1;
|
||||
transported.processingTime = processingTime;
|
||||
if (!canProcess(transported.stack, type, world))
|
||||
transported.processingTime = -1;
|
||||
|
@ -197,9 +200,9 @@ public class InWorldProcessing {
|
|||
return applyRecipeOn(stack, recipe.get());
|
||||
return null;
|
||||
}
|
||||
if (type == Type.SOUL_SMOKING){
|
||||
if (type == Type.HAUNTING) {
|
||||
SOUL_SMOKING_WRAPPER.setItem(0, stack);
|
||||
Optional<SoulSmokingRecipe> recipe = AllRecipeTypes.SOUL_SMOKING.find(SOUL_SMOKING_WRAPPER, world);
|
||||
Optional<HauntingRecipe> recipe = AllRecipeTypes.HAUNTING.find(SOUL_SMOKING_WRAPPER, world);
|
||||
if (recipe.isPresent())
|
||||
return applyRecipeOn(stack, recipe.get());
|
||||
return null;
|
||||
|
@ -207,20 +210,20 @@ public class InWorldProcessing {
|
|||
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<SmokingRecipe> smokingRecipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.SMOKING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.SMOKING, WRAPPER, world);
|
||||
|
||||
if (type == Type.BLASTING) {
|
||||
if (!smokingRecipe.isPresent()) {
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<SmeltingRecipe> smeltingRecipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.SMELTING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.SMELTING, WRAPPER, world);
|
||||
|
||||
if (smeltingRecipe.isPresent())
|
||||
return applyRecipeOn(stack, smeltingRecipe.get());
|
||||
|
||||
WRAPPER.setItem(0, stack);
|
||||
Optional<BlastingRecipe> blastingRecipe = world.getRecipeManager()
|
||||
.getRecipeFor(RecipeType.BLASTING, WRAPPER, world);
|
||||
.getRecipeFor(RecipeType.BLASTING, WRAPPER, world);
|
||||
|
||||
if (blastingRecipe.isPresent())
|
||||
return applyRecipeOn(stack, blastingRecipe.get());
|
||||
|
@ -249,9 +252,9 @@ public class InWorldProcessing {
|
|||
if (!processing.contains("Type") || Type.valueOf(processing.getString("Type")) != type) {
|
||||
processing.putString("Type", type.name());
|
||||
int timeModifierForStackSize = ((entity.getItem()
|
||||
.getCount() - 1) / 16) + 1;
|
||||
.getCount() - 1) / 16) + 1;
|
||||
int processingTime =
|
||||
(int) (AllConfigs.SERVER.kinetics.inWorldProcessingTime.get() * timeModifierForStackSize) + 1;
|
||||
(int) (AllConfigs.SERVER.kinetics.inWorldProcessingTime.get() * timeModifierForStackSize) + 1;
|
||||
processing.putInt("Time", processingTime);
|
||||
}
|
||||
|
||||
|
@ -290,7 +293,7 @@ public class InWorldProcessing {
|
|||
if (!ItemHandlerHelper.canItemStacksStack(stack, previouslyRolled))
|
||||
continue;
|
||||
int amount = Math.min(previouslyRolled.getMaxStackSize() - previouslyRolled.getCount(),
|
||||
stack.getCount());
|
||||
stack.getCount());
|
||||
previouslyRolled.grow(amount);
|
||||
stack.shrink(amount);
|
||||
}
|
||||
|
@ -303,7 +306,7 @@ public class InWorldProcessing {
|
|||
}
|
||||
} else {
|
||||
ItemStack out = recipe.getResultItem()
|
||||
.copy();
|
||||
.copy();
|
||||
stacks = ItemHelper.multipliedOutput(stackIn, out);
|
||||
}
|
||||
|
||||
|
@ -317,22 +320,28 @@ public class InWorldProcessing {
|
|||
return;
|
||||
|
||||
switch (type) {
|
||||
case BLASTING:
|
||||
world.addParticle(ParticleTypes.LARGE_SMOKE, vec.x, vec.y + .25f, vec.z, 0, 1 / 16f, 0);
|
||||
break;
|
||||
case SMOKING:
|
||||
case SOUL_SMOKING: // TODO add special soul smoking particle
|
||||
world.addParticle(ParticleTypes.POOF, vec.x, vec.y + .25f, vec.z, 0, 1 / 16f, 0);
|
||||
break;
|
||||
case SPLASHING:
|
||||
Vector3f color = new Color(0x0055FF).asVectorF();
|
||||
world.addParticle(new DustParticleOptions(color, 1), vec.x + (world.random.nextFloat() - .5f) * .5f,
|
||||
vec.y + .5f, vec.z + (world.random.nextFloat() - .5f) * .5f, 0, 1 / 8f, 0);
|
||||
world.addParticle(ParticleTypes.SPIT, vec.x + (world.random.nextFloat() - .5f) * .5f, vec.y + .5f,
|
||||
vec.z + (world.random.nextFloat() - .5f) * .5f, 0, 1 / 8f, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
case BLASTING:
|
||||
world.addParticle(ParticleTypes.LARGE_SMOKE, vec.x, vec.y + .25f, vec.z, 0, 1 / 16f, 0);
|
||||
break;
|
||||
case SMOKING:
|
||||
case HAUNTING:
|
||||
vec = vec.add(VecHelper.offsetRandomly(Vec3.ZERO, world.random, 1)
|
||||
.multiply(1, 0.05f, 1)
|
||||
.normalize()
|
||||
.scale(0.15f));
|
||||
world.addParticle(ParticleTypes.SOUL_FIRE_FLAME, vec.x, vec.y + .45f, vec.z, 0, 0, 0);
|
||||
if (world.random.nextInt(2) == 0)
|
||||
world.addParticle(ParticleTypes.SMOKE, vec.x, vec.y + .25f, vec.z, 0, 0, 0);
|
||||
break;
|
||||
case SPLASHING:
|
||||
Vector3f color = new Color(0x0055FF).asVectorF();
|
||||
world.addParticle(new DustParticleOptions(color, 1), vec.x + (world.random.nextFloat() - .5f) * .5f,
|
||||
vec.y + .5f, vec.z + (world.random.nextFloat() - .5f) * .5f, 0, 1 / 8f, 0);
|
||||
world.addParticle(ParticleTypes.SPIT, vec.x + (world.random.nextFloat() - .5f) * .5f, vec.y + .5f,
|
||||
vec.z + (world.random.nextFloat() - .5f) * .5f, 0, 1 / 8f, 0);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -342,8 +351,8 @@ public class InWorldProcessing {
|
|||
}
|
||||
}
|
||||
|
||||
public static class SoulSmokingWrapper extends RecipeWrapper {
|
||||
public SoulSmokingWrapper() {
|
||||
public static class HauntingWrapper extends RecipeWrapper {
|
||||
public HauntingWrapper() {
|
||||
super(new ItemStackHandler(1));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
package com.simibubi.create.foundation.data.recipe;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.AllRecipeTypes;
|
||||
import com.simibubi.create.Create;
|
||||
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipeBuilder;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipeSerializer;
|
||||
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.tags.ItemTags;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.item.crafting.Ingredient;
|
||||
import net.minecraft.world.level.ItemLike;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
import net.minecraftforge.common.Tags;
|
||||
|
||||
public class HauntingRecipeGen extends ProcessingRecipeGen {
|
||||
|
||||
GeneratedRecipe
|
||||
|
||||
BRASS_BELL = convert(AllBlocks.HAUNTED_BELL::get, () -> Ingredient.of(AllBlocks.PECULIAR_BELL.get())),
|
||||
SOUL_SAND = convert(() -> Blocks.SOUL_SAND, () -> Ingredient.of(ItemTags.SAND)),
|
||||
SOUL_DIRT = convert(() -> Blocks.SOUL_SOIL, () -> Ingredient.of(ItemTags.DIRT)),
|
||||
BLACK_STONE = convert(() -> Blocks.BLACKSTONE, () -> Ingredient.of(Tags.Items.COBBLESTONE)),
|
||||
CRIMSON_FUNGUS = convert(Items.CRIMSON_FUNGUS, Items.RED_MUSHROOM),
|
||||
WARPED_FUNGUS = convert(Items.WARPED_FUNGUS, Items.BROWN_MUSHROOM),
|
||||
CRIMSON_NYLIUM = convert(Blocks.CRIMSON_NYLIUM, Blocks.MYCELIUM),
|
||||
WARPED_NYLIUM = convert(Blocks.WARPED_NYLIUM, Blocks.PODZOL);
|
||||
|
||||
public GeneratedRecipe convert(ItemLike result, ItemLike input) {
|
||||
return convert(() -> result, () -> Ingredient.of(input));
|
||||
}
|
||||
|
||||
public GeneratedRecipe convert(Supplier<ItemLike> result, Supplier<Ingredient> input) {
|
||||
ProcessingRecipeSerializer<HauntingRecipe> serializer = getSerializer();
|
||||
GeneratedRecipe generatedRecipe = c -> new ProcessingRecipeBuilder<>(serializer.getFactory(),
|
||||
new ResourceLocation(Create.ID, result.get()
|
||||
.asItem()
|
||||
.getRegistryName()
|
||||
.getPath())).withItemIngredients(input.get())
|
||||
.output(result.get())
|
||||
.build(c);
|
||||
all.add(generatedRecipe);
|
||||
return generatedRecipe;
|
||||
}
|
||||
|
||||
public HauntingRecipeGen(DataGenerator p_i48262_1_) {
|
||||
super(p_i48262_1_);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected AllRecipeTypes getRecipeType() {
|
||||
return AllRecipeTypes.HAUNTING;
|
||||
}
|
||||
|
||||
}
|
|
@ -38,7 +38,7 @@ public abstract class ProcessingRecipeGen extends CreateRecipeProvider {
|
|||
GENERATORS.add(new PressingRecipeGen(gen));
|
||||
GENERATORS.add(new FillingRecipeGen(gen));
|
||||
GENERATORS.add(new EmptyingRecipeGen(gen));
|
||||
GENERATORS.add(new SoulSmokingRecipeGen(gen));
|
||||
GENERATORS.add(new HauntingRecipeGen(gen));
|
||||
|
||||
gen.addProvider(new DataProvider() {
|
||||
|
||||
|
|
|
@ -6,10 +6,7 @@ import com.simibubi.create.AllBlocks;
|
|||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.Create;
|
||||
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SoulSmokingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.press.PressingRecipe;
|
||||
import com.simibubi.create.content.contraptions.components.saw.CuttingRecipe;
|
||||
import com.simibubi.create.content.contraptions.fluids.actors.FillingRecipe;
|
||||
import com.simibubi.create.content.contraptions.itemAssembly.SequencedAssemblyRecipeBuilder;
|
||||
|
||||
import net.minecraft.data.DataGenerator;
|
||||
|
@ -17,7 +14,6 @@ import net.minecraft.tags.ItemTags;
|
|||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
import net.minecraft.world.level.material.Fluids;
|
||||
|
||||
public class SequencedAssemblyRecipeGen extends CreateRecipeProvider {
|
||||
|
||||
|
@ -79,21 +75,7 @@ public class SequencedAssemblyRecipeGen extends CreateRecipeProvider {
|
|||
.addStep(DeployerApplicationRecipe::new, rb -> rb.require(I.planks()))
|
||||
.addStep(DeployerApplicationRecipe::new, rb -> rb.require(ItemTags.WOODEN_BUTTONS))
|
||||
.addStep(CuttingRecipe::new, rb -> rb.duration(50))
|
||||
),
|
||||
|
||||
NETHERRACK = create("netherrack", b->b.require(Items.BLACKSTONE)
|
||||
.transitionTo(AllItems.INCOMPLETE_NETHERRACK.get())
|
||||
.addOutput(new ItemStack(Blocks.NETHERRACK,2),35)
|
||||
.addOutput(new ItemStack(Blocks.BLACKSTONE, 1), 5)
|
||||
.addOutput(new ItemStack(Blocks.BASALT, 1), 4)
|
||||
.addOutput(new ItemStack(Blocks.DEEPSLATE, 1), 3)
|
||||
.addOutput(new ItemStack(Blocks.MAGMA_BLOCK, 1), 2)
|
||||
.addOutput(new ItemStack(Blocks.OBSIDIAN, 1), 1)
|
||||
.loops(2)
|
||||
.addStep(DeployerApplicationRecipe::new, rb -> rb.require(AllItems.CINDER_FLOUR.get()))
|
||||
.addStep(FillingRecipe::new, rb -> rb.require(Fluids.LAVA,50))
|
||||
.addStep(CuttingRecipe::new, rb -> rb.duration(50))
|
||||
)
|
||||
)
|
||||
;
|
||||
|
||||
public SequencedAssemblyRecipeGen(DataGenerator p_i48262_1_) {
|
||||
|
|
|
@ -1,48 +0,0 @@
|
|||
package com.simibubi.create.foundation.data.recipe;
|
||||
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.AllRecipeTypes;
|
||||
import com.simibubi.create.Create;
|
||||
import com.simibubi.create.content.contraptions.components.fan.SoulSmokingRecipe;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipeBuilder;
|
||||
import com.simibubi.create.content.contraptions.processing.ProcessingRecipeSerializer;
|
||||
|
||||
import net.minecraft.data.DataGenerator;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.item.crafting.Ingredient;
|
||||
import net.minecraft.world.level.ItemLike;
|
||||
import net.minecraft.world.level.block.Block;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
|
||||
public class SoulSmokingRecipeGen extends ProcessingRecipeGen {
|
||||
|
||||
GeneratedRecipe
|
||||
|
||||
SOUL_SAND = convert(Blocks.SOUL_SAND, Blocks.SAND, Blocks.RED_SAND),
|
||||
SOUL_DIRT = convert(Blocks.SOUL_SOIL, Blocks.DIRT, Blocks.COARSE_DIRT, Blocks.ROOTED_DIRT),
|
||||
BLACK_STONE = convert(Blocks.BLACKSTONE, Blocks.COBBLESTONE),
|
||||
CRIMSON_FUNGUS = convert(Items.CRIMSON_FUNGUS, Items.RED_MUSHROOM),
|
||||
WARPED_FUNGUS = convert(Items.WARPED_FUNGUS, Items.BROWN_MUSHROOM),
|
||||
CRIMSON_NYLIUM = convert(Blocks.CRIMSON_NYLIUM, Blocks.MYCELIUM),
|
||||
WARPED_NYLIUM = convert(Blocks.WARPED_NYLIUM, Blocks.PODZOL);
|
||||
|
||||
public GeneratedRecipe convert(ItemLike result, ItemLike... input) {
|
||||
ProcessingRecipeSerializer<SoulSmokingRecipe> serializer = getSerializer();
|
||||
GeneratedRecipe generatedRecipe = c -> new ProcessingRecipeBuilder<>(serializer.getFactory(),
|
||||
new ResourceLocation(Create.ID, result.asItem().getRegistryName().getPath()))
|
||||
.withItemIngredients(Ingredient.of(input)).output(result).build(c);
|
||||
all.add(generatedRecipe);
|
||||
return generatedRecipe;
|
||||
}
|
||||
|
||||
public SoulSmokingRecipeGen(DataGenerator p_i48262_1_) {
|
||||
super(p_i48262_1_);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected AllRecipeTypes getRecipeType() {
|
||||
return AllRecipeTypes.SOUL_SMOKING;
|
||||
}
|
||||
|
||||
}
|
|
@ -34,8 +34,8 @@
|
|||
"create.recipe.fan_washing.fan": "Fan behind Flowing Water",
|
||||
"create.recipe.fan_smoking": "Bulk Smoking",
|
||||
"create.recipe.fan_smoking.fan": "Fan behind Fire",
|
||||
"create.recipe.fan_soul_smoking": "Bulk Soul Smoking",
|
||||
"create.recipe.fan_soul_smoking.fan": "Fan behind Soul Fire",
|
||||
"create.recipe.fan_haunting": "Bulk Haunting",
|
||||
"create.recipe.fan_haunting.fan": "Fan behind Soul Fire",
|
||||
"create.recipe.fan_blasting": "Bulk Blasting",
|
||||
"create.recipe.fan_blasting.fan": "Fan behind Lava",
|
||||
"create.recipe.pressing": "Pressing",
|
||||
|
|
Loading…
Reference in a new issue