mirror of
https://github.com/Creators-of-Create/Create.git
synced 2025-03-04 06:44:40 +01:00
Comedy Gold
- New advancement chain for high logistics - Fixed top-face filter slot on table cloths - Fixed players hiding as packages suffocating in a wall
This commit is contained in:
parent
d05d10e1e0
commit
20e827ed3f
33 changed files with 541 additions and 66 deletions
|
@ -1,4 +1,4 @@
|
|||
// 1.20.1 2025-01-07T12:22:29.7526816 Registrate Provider for create [Recipes, Advancements, Loot Tables, Tags (blocks), Tags (items), Tags (fluids), Tags (entity_types), Blockstates, Item models, Lang (en_us/en_ud)]
|
||||
// 1.20.1 2025-01-07T16:30:09.3458051 Registrate Provider for create [Recipes, Advancements, Loot Tables, Tags (blocks), Tags (items), Tags (fluids), Tags (entity_types), Blockstates, Item models, Lang (en_us/en_ud)]
|
||||
60bbdf92d2ac9824ea6144955c74043a6005f79d assets/create/blockstates/acacia_window.json
|
||||
6a67703c2697d81b7dc83e9d72a66f9c9ff08383 assets/create/blockstates/acacia_window_pane.json
|
||||
c3ae87b62e81d8e9476eccd793bb1548d74c66a1 assets/create/blockstates/adjustable_chain_gearshift.json
|
||||
|
@ -642,8 +642,8 @@ b0d8f08968763a5f74e5cd5644377a76a9f39753 assets/create/blockstates/yellow_toolbo
|
|||
fe8c497aacc641c2f01cec90bba9f19e59cc2ed2 assets/create/blockstates/yellow_valve_handle.json
|
||||
e819e93fdcbe9fd9c050a052d2718ff3b3539365 assets/create/blockstates/zinc_block.json
|
||||
64121dcb216381c83b4fe28aa361ea07c24c9ad0 assets/create/blockstates/zinc_ore.json
|
||||
f33342a6f59c0aadf05c761a24bd33bc927996ad assets/create/lang/en_ud.json
|
||||
eef9a5ef2d3cb60dee7277624e8ad5bd54521cf6 assets/create/lang/en_us.json
|
||||
ae4560acf1dc152676a319589184d6722d2893e4 assets/create/lang/en_ud.json
|
||||
b90c20d923ba094594f5062802eeb822f34691ef assets/create/lang/en_us.json
|
||||
a97e1060e00ae701a02e39cd4ef8054cf345fac4 assets/create/models/block/acacia_window.json
|
||||
103e032c0b1a0a6a27c67da8c91179a564bd281c assets/create/models/block/acacia_window_pane_noside.json
|
||||
fb00b627abda76ad4fea867ca57dbfadd24fffa3 assets/create/models/block/acacia_window_pane_noside_alt.json
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// 1.20.1 2024-10-18T15:46:50.483838 Create's Advancements
|
||||
// 1.20.1 2025-01-07T16:08:48.0358648 Create's Advancements
|
||||
2661a689fdcf729494f46e3c719f71c62e31582e data/create/advancements/andesite_alloy.json
|
||||
fa16c4afe0496edc3f157858a6e0ff177a1622ff data/create/advancements/andesite_casing.json
|
||||
5a694002d0a663bc869b09d15924a10c43dc522f data/create/advancements/anvil_plough.json
|
||||
|
@ -10,6 +10,9 @@ b960076e653a3682aa4ebb82bdca957d455c7604 data/create/advancements/backtank.json
|
|||
ca6d0355dbd9a7de587c4ebf2aed82e920e007c1 data/create/advancements/brass.json
|
||||
78224097bda936d1ba9bf682a9177ad252139a51 data/create/advancements/brass_casing.json
|
||||
113f1a063d78207e600e536200004756b42e0cd7 data/create/advancements/burner.json
|
||||
680a97ebbb3579e0cbe52bf3b98bfd94a1d988aa data/create/advancements/cardboard.json
|
||||
b7da43c88bd8a2e065c1a0656a9831908879c988 data/create/advancements/cardboard_armor.json
|
||||
ded6f5eac4eab92834e4775285ffbbc2196db081 data/create/advancements/cardboard_armor_trim.json
|
||||
7c0aed400d4933d5ca13db42517efa2959a1bed0 data/create/advancements/cart_pickup.json
|
||||
2970c69c310e8e3dbe295621d04a8f42bb7fd1f0 data/create/advancements/chained_drain.json
|
||||
5334499c577b7531a5de2ff46f371939554f1eb8 data/create/advancements/chocolate_bucket.json
|
||||
|
@ -19,7 +22,7 @@ e99071520e9b27b66085367683bc7b972a349c2f data/create/advancements/chute.json
|
|||
041ddb4720296fc4446d5d694afe3ec1c21c881b data/create/advancements/conductor.json
|
||||
848f64e1f30c1ec0eac57b6760e282cf030a25fc data/create/advancements/contraption_actors.json
|
||||
5074053518627b4229bd1f79b20c67e3056f7983 data/create/advancements/copper.json
|
||||
90763d18fa6cf42cb409b75bc2a3be53d76aab1d data/create/advancements/copper_casing.json
|
||||
83b2703c3b79187161b44697930bb1c46a920f0b data/create/advancements/copper_casing.json
|
||||
f2e04dd82a25cc080a4901e03e0f1fafeb6ea191 data/create/advancements/crafter_lazy_000.json
|
||||
4f88d0bf42d208bc5037509c197725bc4e4e68e4 data/create/advancements/cross_streams.json
|
||||
44ed195706af6ee0cc3b98b9ea4f7d8326899391 data/create/advancements/crusher_maxed_0000.json
|
||||
|
@ -27,7 +30,7 @@ f2e04dd82a25cc080a4901e03e0f1fafeb6ea191 data/create/advancements/crafter_lazy_0
|
|||
01c6fa0494e5915b99a0b0aebd941ebbb177cd3a data/create/advancements/cuckoo_clock.json
|
||||
ac78707d112458c7f771260cf65f0e9bc928d1b6 data/create/advancements/deployer.json
|
||||
48c3af4499797cfb695a235e4527c52c608d40ad data/create/advancements/display_board_0.json
|
||||
24be041d833017d7e7e02a5a92fd04060ea62594 data/create/advancements/display_link.json
|
||||
ef4055989f4ffc7432ed9531ec4639c69fd48ba6 data/create/advancements/display_link.json
|
||||
cc2c729cf82a0c80b4966ac6382984da08429b9d data/create/advancements/diving_suit.json
|
||||
e1af547fd148cf9e60c1725ab03545fe3010eac7 data/create/advancements/diving_suit_lava.json
|
||||
4d91e6a7bbf08191d8d1e11943650dfc1dc170e6 data/create/advancements/drain.json
|
||||
|
@ -35,9 +38,11 @@ dee06f0f78a97a6358b67459d05fb479e5318fe9 data/create/advancements/ejector_maxed.
|
|||
3300ee54dc1e9d04fd13a11c971e046d9db24e10 data/create/advancements/encased_fan.json
|
||||
fb61193b9d02d1fd595ac99721812a59dc7c7c29 data/create/advancements/extendo_grip.json
|
||||
845a6c63b26a238c5ff82f37ca25ef5a8f7c11fc data/create/advancements/extendo_grip_dual.json
|
||||
7ea086b6667879458bbc3cfd5b7bef59cd22f5b3 data/create/advancements/factory_gauge.json
|
||||
46950345e76ef2d98bf3ea737530976781901a0f data/create/advancements/fan_processing.json
|
||||
8f0f884dbc6eb94e03ffae374105c7100a073d85 data/create/advancements/fist_bump.json
|
||||
5e39ecb68037ade25897dff1dc419065752d2c43 data/create/advancements/foods.json
|
||||
9b029a15bd4c6bfa71da0a256df5a12532d4645a data/create/advancements/frogport.json
|
||||
7c72b9440b3f0525658b5c12d46a56d48521ca93 data/create/advancements/funnel.json
|
||||
1dcfded7b20756ad6dfd4a6c4d0106c343e9e17e data/create/advancements/glass_pipe.json
|
||||
94a4e1ac38935288cc84f4b374cf1553ed39b2b0 data/create/advancements/hand_crank_000.json
|
||||
|
@ -56,6 +61,8 @@ d89152d4f3c992b892e8ec4bef03605ef20c1520 data/create/advancements/mechanical_cra
|
|||
5b50f84f2b697d630294e2b8db8b60dba84a1011 data/create/advancements/mechanical_pump_0.json
|
||||
8adbdf6e0b0df40fed5ecfc5a5b13ca6a075be83 data/create/advancements/millstone.json
|
||||
82a61db27464e2ede2b2079276cf69bb465a5085 data/create/advancements/musical_arm.json
|
||||
87f554c3621a11dd5f49553202e76d6a8df30623 data/create/advancements/packager.json
|
||||
a59b972ef1ebb7bee001282a2d71553363a3ee92 data/create/advancements/package_chute_throw.json
|
||||
a7119c747a2c16d93b9df669f80ccb3863a331ce data/create/advancements/pipe_organ.json
|
||||
8118ffd53c264f535517936a0fc720a7850e8907 data/create/advancements/portable_storage_interface.json
|
||||
826768f46254a9fc0ea048e600511cab4a0a781f data/create/advancements/potato_cannon.json
|
||||
|
@ -73,15 +80,17 @@ a1e44c8ff2b7ed96d4b76e6122fd41fa528826b1 data/create/advancements/speed_controll
|
|||
28c7898ee0dad051744b95c0154744caf025e849 data/create/advancements/steam_engine.json
|
||||
b3c18b1d41126d135318769f83ccc6fe51da2c54 data/create/advancements/steam_engine_maxed.json
|
||||
742b75d31271e5f58ba2572606a10a43db8acea1 data/create/advancements/steam_whistle.json
|
||||
e6317ea94e3f891f6767fb054fc6955e8c948a96 data/create/advancements/stock_ticker.json
|
||||
90954d173a67584221ee02114971d515247607ae data/create/advancements/stressometer.json
|
||||
b77e7b17c397cc88ca2f75f68c52d60488ece97a data/create/advancements/stressometer_maxed.json
|
||||
cc75b35e53137d229896c334f09ebc5930f56307 data/create/advancements/sturdy_sheet.json
|
||||
4794a7d7ea140333809bb78b77a30997bbb606bd data/create/advancements/super_glue.json
|
||||
3b3b1778c82b14f029a803d45bd0f3985004999b data/create/advancements/table_cloth_shop.json
|
||||
cbc796a4bd3dd9bb3e66ab437b27fcf5a1fdc050 data/create/advancements/track_0.json
|
||||
916a9a75900fa36aa3c5422d4e35eeeb57d20f61 data/create/advancements/track_crafting_factory.json
|
||||
4938c2be415c15a70a41570bbb49f772eaed5af0 data/create/advancements/track_signal.json
|
||||
797f76512083d562549a20e9abc679846cce885f data/create/advancements/train.json
|
||||
227f401a440746c02ce0713c44b4cc623307e014 data/create/advancements/train_casing_00.json
|
||||
62d418a19498cb9f788d64c967ee1c15c886c60e data/create/advancements/train_casing_00.json
|
||||
f1645a6cfdfcade5366d9f3be501e596b1600330 data/create/advancements/train_crash.json
|
||||
484986302e8c1708064b5dbb5ce35e443f6151d7 data/create/advancements/train_crash_backwards.json
|
||||
22c39846ee59d7c71468fe795fa354cb0a4aafd9 data/create/advancements/train_portal.json
|
||||
|
|
|
@ -21,6 +21,12 @@
|
|||
"advancement.create.brass_casing.desc": "sǝuıɥɔɐɯ pǝʇɐɔıʇsıɥdos ǝɹoɯ ɹoɟ buısɐɔ ɐ buıʇɐǝɹɔ 'pooʍ pǝddıɹʇs oʇ sʇobuI ssɐɹᗺ ʎןddⱯ",
|
||||
"advancement.create.burner": "ǝɔɐןdǝɹıℲ ʇuǝıʇuǝS",
|
||||
"advancement.create.burner.desc": "ɹǝuɹnᗺ ǝzɐןᗺ ɐ uıɐʇqO",
|
||||
"advancement.create.cardboard": "ןǝɔɹɐԀ puɐ ʇɹɐԀ",
|
||||
"advancement.create.cardboard.desc": "pɹɐoqpɹɐƆ ʇsɹıɟ ɹnoʎ uıɐʇqo ɹo ǝɔnpoɹԀ",
|
||||
"advancement.create.cardboard_armor": "ɥʇןɐǝʇS ןןnℲ",
|
||||
"advancement.create.cardboard_armor.desc": "ɹoɯɹⱯ pɹɐoqpɹɐƆ ןןnɟ uı punoɹɐ ʞɐǝuS",
|
||||
"advancement.create.cardboard_armor_trim": "sʇɟɐɹƆ puɐ sʇɹⱯ",
|
||||
"advancement.create.cardboard_armor_trim.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nsɯıɹʇ ɹoɯɹɐ ɥʇıʍ ʇuǝɯdınbǝ pɹɐoqpɹɐɔ ɹnoʎ ǝʇɐɹoɔǝᗡ",
|
||||
"advancement.create.cart_pickup": "sɯɹⱯ buoɹʇS",
|
||||
"advancement.create.cart_pickup.desc": "sʞɔoןq pǝɥɔɐʇʇɐ 00ᄅ ʇsɐǝן ʇɐ ɥʇıʍ uoıʇdɐɹʇuoƆ ʇɹɐɔǝuıW ɐ dn ʞɔıԀ",
|
||||
"advancement.create.chained_drain": "ןןoᴚ ɐ uO",
|
||||
|
@ -29,7 +35,7 @@
|
|||
"advancement.create.chocolate_bucket.desc": "ǝʇɐןoɔoɥɔ uǝʇןoɯ ɟo ʇǝʞɔnq ɐ uıɐʇqO",
|
||||
"advancement.create.chute": "sɔıʇsıboꞀ ןɐɔıʇɹǝΛ",
|
||||
"advancement.create.chute.desc": "ǝʇnɥƆ ʎq sɯǝʇı ǝɯos ʇɹodsuɐɹ⟘",
|
||||
"advancement.create.clockwork_bearing": "ʞɔoןƆ,O uoıʇdɐɹʇuoƆ",
|
||||
"advancement.create.clockwork_bearing": "ʞɔoןƆ,o uoıʇdɐɹʇuoƆ",
|
||||
"advancement.create.clockwork_bearing.desc": "buıɹɐǝᗺ ʞɹoʍʞɔoןƆ ɐ uo pǝʇunoɯ ǝɹnʇɔnɹʇs ɐ ǝןqɯǝssⱯ",
|
||||
"advancement.create.compacting": "uoıʇɐɔıɟıʇɔɐdɯoƆ",
|
||||
"advancement.create.compacting.desc": "ǝɹoɯ ɯoɹɟ sɯǝʇı ɹǝʍǝɟ ǝʇɐǝɹɔ oʇ uısɐᗺ ɐ puɐ ssǝɹԀ ןɐɔıuɐɥɔǝW ɐ ǝs∩",
|
||||
|
@ -47,9 +53,9 @@
|
|||
"advancement.create.cross_streams.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nʞɹoʍʇǝu ǝdıd ɹnoʎ uı ʇǝǝɯ spınןɟ oʍʇ ɥɔʇɐM",
|
||||
"advancement.create.crusher_maxed_0000": "ʇI buıɥsnɹƆ",
|
||||
"advancement.create.crusher_maxed_0000.desc": "pǝǝds ɯnɯıxɐɯ ʇɐ sןǝǝɥM buıɥsnɹƆ ɟo ɹıɐd ɐ ǝʇɐɹǝdO",
|
||||
"advancement.create.crushing_wheel": "sʇuɐı⅁ ɟo ɹıɐԀ Ɐ",
|
||||
"advancement.create.crushing_wheel": "uoıʇɔnɹʇsǝᗡ ɟo sןǝǝɥM",
|
||||
"advancement.create.crushing_wheel.desc": "sןǝǝɥM buıɥsnɹƆ ɟo ʇǝs ɐ ɹǝʍod puɐ ǝɔɐןԀ",
|
||||
"advancement.create.cuckoo_clock": "¿ǝɯı⟘ ʇI sI",
|
||||
"advancement.create.cuckoo_clock": "¿ǝɯı⟘ ʇı sI",
|
||||
"advancement.create.cuckoo_clock.desc": "ǝɯıʇpǝq ǝɔunouuɐ ʞɔoןƆ ooʞɔnƆ ɹnoʎ ssǝuʇıM",
|
||||
"advancement.create.deployer": "ǝɔuǝbıןןǝʇuI ןɐıɔıɟıʇɹⱯ",
|
||||
"advancement.create.deployer.desc": "ɟןǝsɹnoʎ ɟo uoıʇɔǝןɟǝɹ ʇɔǝɟɹǝd ǝɥʇ 'ɹǝʎoןdǝᗡ ɐ ɹǝʍod puɐ ǝɔɐןԀ",
|
||||
|
@ -71,12 +77,16 @@
|
|||
"advancement.create.extendo_grip.desc": "dıɹ⅁ opuǝʇxƎ uɐ ɟo pןoɥ ʇǝ⅁",
|
||||
"advancement.create.extendo_grip_dual": "ʇuǝʇxƎ ןןnℲ o⟘",
|
||||
"advancement.create.extendo_grip_dual.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nɥɔɐǝɹ uɐɯnɥɹǝdns ɹoɟ sdıɹ⅁ opuǝʇxƎ pןǝıʍ-ןɐnᗡ",
|
||||
"advancement.create.factory_gauge": "sɔıʇsıboꞀ ɥbıH",
|
||||
"advancement.create.factory_gauge.desc": "sǝbnɐ⅁ ʎɹoʇɔɐℲ buısn ʇsǝnbǝɹ ǝbɐʞɔɐd ɔıʇɐɯoʇnɐ uɐ ɹǝbbıɹ⟘",
|
||||
"advancement.create.fan_processing": "ǝןɔıʇɹɐԀ ʎq buıssǝɔoɹԀ",
|
||||
"advancement.create.fan_processing.desc": "sןɐıɹǝʇɐɯ ssǝɔoɹd oʇ uɐℲ pǝsɐɔuƎ uɐ ǝs∩",
|
||||
"advancement.create.fist_bump": "¡oɹᗺ 'ʇI punoԀ",
|
||||
"advancement.create.fist_bump.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\ndɯnq-ʇsıɟ sɹǝʎoןdǝᗡ oʍʇ ǝʞɐW",
|
||||
"advancement.create.foods": "ʇǝıᗡ pǝɔuɐןɐᗺ",
|
||||
"advancement.create.foods.desc": "ʇnodS ǝɯɐs ǝɥʇ ɯoɹɟ ןןɐ ןןoᴚ ʇǝǝʍS ɐ puɐ 'ǝןddⱯ pǝʎǝuoH ɐ 'sǝıɹɹǝᗺ pǝzɐן⅁ ǝʇɐןoɔoɥƆ ǝʇɐǝɹƆ",
|
||||
"advancement.create.frogport": "sɹǝddoɥ ʎɹbunH",
|
||||
"advancement.create.frogport.desc": "ʇɹodboɹℲ ɐ buısn ɹoʎǝʌuoƆ uıɐɥƆ ɹnoʎ ɯoɹɟ sǝbɐʞɔɐd ɥɔʇɐƆ",
|
||||
"advancement.create.funnel": "ɔıʇǝɥʇsǝⱯ ʇɹodɹıⱯ",
|
||||
"advancement.create.funnel.desc": "ןǝuunℲ ɐ buısn ɹǝuıɐʇuoɔ ɐ oʇuı sɯǝʇı ʇɹǝsuı ɹo ʇɔɐɹʇxƎ",
|
||||
"advancement.create.glass_pipe": "ʎɹǝʌoɔsıᗡ ʍoןℲ",
|
||||
|
@ -113,9 +123,13 @@
|
|||
"advancement.create.millstone.desc": "sןɐıɹǝʇɐɯ ǝsıɹǝʌןnd oʇ ǝuoʇsןןıW ɐ ǝs∩",
|
||||
"advancement.create.musical_arm": "oɔıuɐɥɔǝW ſᗡ",
|
||||
"advancement.create.musical_arm.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nxoqǝʞnſ ɹnoʎ ǝʇɐɹǝdo ɯɹⱯ ןɐɔıuɐɥɔǝW ɐ ɥɔʇɐM",
|
||||
"advancement.create.package_chute_throw": "ʇǝu ʇnq buıɥʇoN",
|
||||
"advancement.create.package_chute_throw.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nǝʇnɥɔ ɯǝʇı uɐ uı ʍoɹɥʇ ǝbɐʞɔɐd pɹɐoqpɹɐɔ ɹnoʎ puɐꞀ",
|
||||
"advancement.create.packager": "uoıʇɔnpoɹԀ ʇsoԀ",
|
||||
"advancement.create.packager.desc": "ɹǝbɐʞɔɐԀ ǝɥʇ buısn ʎɹoʇuǝʌuı uɐ ɯoɹɟ sɯǝʇı ǝbɐʞɔɐԀ",
|
||||
"advancement.create.pipe_organ": "uɐbɹO ǝdıԀ ǝɥ⟘",
|
||||
"advancement.create.pipe_organ.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nʞuɐ⟘ pınןℲ ǝןbuıs ɐ oʇ sǝןʇsıɥM ɯɐǝʇS pǝɥɔʇıd ʎןǝnbıun ᄅƖ ɥɔɐʇʇⱯ",
|
||||
"advancement.create.portable_storage_interface": "ǝbuɐɥɔxƎ ʎᗺ-ǝʌıɹᗡ",
|
||||
"advancement.create.portable_storage_interface": "ǝbuɐɥɔxƎ ʎq-ǝʌıɹᗡ",
|
||||
"advancement.create.portable_storage_interface.desc": "uoıʇdɐɹʇuoƆ ɐ oʇuı sɯǝʇı ʇɹǝsuı ɹo ǝʞɐʇ oʇ ǝɔɐɟɹǝʇuI ǝbɐɹoʇS ǝןqɐʇɹoԀ ɐ ǝs∩",
|
||||
"advancement.create.potato_cannon": "¡dɯooʍℲ",
|
||||
"advancement.create.potato_cannon.desc": "uouuɐƆ oʇɐʇoԀ ɹnoʎ ɥʇıʍ ʎɯǝuǝ uɐ ʇɐǝɟǝᗡ",
|
||||
|
@ -129,7 +143,7 @@
|
|||
"advancement.create.red_signal.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nןɐubıS uıɐɹ⟘ pǝɹ ɐ unᴚ",
|
||||
"advancement.create.root": "ǝʇɐǝɹƆ oʇ ǝɯoɔןǝM",
|
||||
"advancement.create.root.desc": "suoıʇdɐɹʇuoƆ ǝᗺ ǝɹǝH",
|
||||
"advancement.create.rose_quartz": "spuoɯɐıᗡ ʞuıԀ",
|
||||
"advancement.create.rose_quartz": "pǝbɹɐɥɔɹǝdnS",
|
||||
"advancement.create.rose_quartz.desc": "zʇɹɐnὉ ǝsoᴚ ǝɯos ɥsıןoԀ",
|
||||
"advancement.create.saw_processing": "pǝɹɐǝℲ ʇsoW s,doɥsʞɹoM",
|
||||
"advancement.create.saw_processing.desc": "sןɐıɹǝʇɐɯ ssǝɔoɹd oʇ ʍɐS ןɐɔıuɐɥɔǝW ʇɥbıɹdn uɐ ǝs∩",
|
||||
|
@ -147,6 +161,8 @@
|
|||
"advancement.create.steam_engine_maxed.desc": "ɹǝʍod ɟo ןǝʌǝן ɯnɯıxɐɯ ǝɥʇ ʇɐ ɹǝןıoq ɐ unᴚ",
|
||||
"advancement.create.steam_whistle": "ןǝbuⱯ uɐ ɟo ǝɔıoΛ",
|
||||
"advancement.create.steam_whistle.desc": "ǝןʇsıɥM ɯɐǝʇS ɐ ǝʇɐʌıʇɔⱯ",
|
||||
"advancement.create.stock_ticker": "¡d∩ ɹǝpɹO",
|
||||
"advancement.create.stock_ticker.desc": "sʇsǝnbǝɹ ʇsɹıɟ ɹnoʎ ǝʞɐɯ puɐ ɹǝʞɔıʇ ʞɔoʇs ɹnoʎ ʇɐ qoɯ ɐ ʎoןdɯƎ",
|
||||
"advancement.create.stressometer": "spɹǝN ɹoɟ ssǝɹʇS",
|
||||
"advancement.create.stressometer.desc": "ɹǝʇǝɯossǝɹʇS ɐ puɐ sǝןbbo⅁ s,ɹǝǝuıbuƎ ɟo dןǝɥ ǝɥʇ ɥʇıʍ ʇnopɐǝɹ ʇɔɐxǝ uɐ ʇǝ⅁",
|
||||
"advancement.create.stressometer_maxed": "pǝssǝɹʇS ʎןʇɔǝɟɹǝԀ",
|
||||
|
@ -155,6 +171,8 @@
|
|||
"advancement.create.sturdy_sheet.desc": "uɐıpısqO pǝɹǝpʍoԀ buıuıɟǝɹ ʎq ʇǝǝɥS ʎpɹnʇS ɐ ǝןqɯǝssⱯ",
|
||||
"advancement.create.super_glue": "ʇɔǝuuoƆ ɟo ɐǝɹⱯ",
|
||||
"advancement.create.super_glue.desc": "dnoɹb ɐ oʇuı sʞɔoןq ǝɯos ǝnן⅁ ɹǝdnS",
|
||||
"advancement.create.table_cloth_shop": "ssǝuısnq ɹoɟ uǝdO",
|
||||
"advancement.create.table_cloth_shop.desc": "ɥʇoןƆ ǝןqɐ⟘ ɐ buısn ǝןɐs ɹoɟ dn sɯǝʇı ʇnԀ",
|
||||
"advancement.create.track_0": "ǝbnɐ⅁ ʍǝN Ɐ",
|
||||
"advancement.create.track_0.desc": "sʞɔɐɹ⟘ uıɐɹ⟘ ǝɯos uıɐʇqO",
|
||||
"advancement.create.track_crafting_factory": "ʎɹoʇɔɐℲ ʞɔɐɹ⟘",
|
||||
|
@ -163,7 +181,7 @@
|
|||
"advancement.create.track_signal.desc": "ןɐubıS uıɐɹ⟘ ɐ ǝɔɐןԀ",
|
||||
"advancement.create.train": "¡pɹɐoqⱯ ןןⱯ",
|
||||
"advancement.create.train.desc": "uıɐɹ⟘ ʇsɹıɟ ɹnoʎ ǝןqɯǝssⱯ",
|
||||
"advancement.create.train_casing_00": "ǝbⱯ ןɐɔıʇsıboꞀ ǝɥ⟘",
|
||||
"advancement.create.train_casing_00": "ǝbⱯ ǝʌıʇoɯoɔoꞀ ǝɥ⟘",
|
||||
"advancement.create.train_casing_00.desc": "sʇuǝuodɯoɔ ʎɐʍןıɐɹ ɹoɟ buısɐɔ ɐ ǝʇɐǝɹɔ oʇ sʇǝǝɥS ʎpɹnʇS ǝs∩",
|
||||
"advancement.create.train_crash": "ǝɔıʌɹǝS ǝןqıɹɹǝ⟘",
|
||||
"advancement.create.train_crash.desc": ")ʇuǝɯǝɔuɐʌpⱯ uǝppıH(ㄥ§\nɹǝbuǝssɐd ɐ sɐ ɥsɐɹɔ uıɐɹ⟘ ɐ ssǝuʇıM",
|
||||
|
@ -179,9 +197,9 @@
|
|||
"advancement.create.water_supply.desc": "ɹǝʇɐʍ ʇɔǝןןoɔ oʇ dɯnԀ ןɐɔıuɐɥɔǝW ɹo ǝdıԀ pınןℲ ɐ ɟo puǝ buıןןnd ǝɥʇ ǝs∩",
|
||||
"advancement.create.water_wheel": "sɔıןnɐɹpʎH pǝssǝuɹɐH",
|
||||
"advancement.create.water_wheel.desc": "ǝnbɹoʇ ǝʇɐɹǝuǝb oʇ ʇı ǝsn puɐ ןǝǝɥM ɹǝʇɐM ɐ ǝɔɐןԀ",
|
||||
"advancement.create.windmill": "ǝzǝǝɹᗺ pןıW Ɐ",
|
||||
"advancement.create.windmill": "ǝzǝǝɹᗺ pןıɯ Ɐ",
|
||||
"advancement.create.windmill.desc": "ǝnbɹoʇ ǝʇɐɹǝuǝb oʇ ʇı ǝsn puɐ ןןıɯpuıʍ ɐ ǝןqɯǝssⱯ",
|
||||
"advancement.create.windmill_maxed": "ǝzǝǝɹᗺ buoɹʇS Ɐ",
|
||||
"advancement.create.windmill_maxed": "ǝzǝǝɹᗺ buoɹʇs Ɐ",
|
||||
"advancement.create.windmill_maxed.desc": "ɥʇbuǝɹʇs ɯnɯıxɐɯ ɟo ןןıɯpuıʍ ɐ ǝןqɯǝssⱯ",
|
||||
"advancement.create.wrench_goggles": "ʇnO pǝʇʇıʞ",
|
||||
"advancement.create.wrench_goggles.desc": "ɥɔuǝɹM ɐ puɐ sǝןbbo⅁ s,ɹǝǝuıbuƎ dınbƎ",
|
||||
|
|
|
@ -21,6 +21,12 @@
|
|||
"advancement.create.brass_casing.desc": "Apply Brass Ingots to stripped wood, creating a casing for more sophisticated machines",
|
||||
"advancement.create.burner": "Sentient Fireplace",
|
||||
"advancement.create.burner.desc": "Obtain a Blaze Burner",
|
||||
"advancement.create.cardboard": "Part and Parcel",
|
||||
"advancement.create.cardboard.desc": "Produce or obtain your first Cardboard",
|
||||
"advancement.create.cardboard_armor": "Full Stealth",
|
||||
"advancement.create.cardboard_armor.desc": "Sneak around in full Cardboard Armor",
|
||||
"advancement.create.cardboard_armor_trim": "Arts and Crafts",
|
||||
"advancement.create.cardboard_armor_trim.desc": "Decorate your cardboard equipment with armor trims\n§7(Hidden Advancement)",
|
||||
"advancement.create.cart_pickup": "Strong Arms",
|
||||
"advancement.create.cart_pickup.desc": "Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||
"advancement.create.chained_drain": "On a Roll",
|
||||
|
@ -29,7 +35,7 @@
|
|||
"advancement.create.chocolate_bucket.desc": "Obtain a bucket of molten chocolate",
|
||||
"advancement.create.chute": "Vertical Logistics",
|
||||
"advancement.create.chute.desc": "Transport some items by Chute",
|
||||
"advancement.create.clockwork_bearing": "Contraption O'Clock",
|
||||
"advancement.create.clockwork_bearing": "Contraption o'Clock",
|
||||
"advancement.create.clockwork_bearing.desc": "Assemble a structure mounted on a Clockwork Bearing",
|
||||
"advancement.create.compacting": "Compactification",
|
||||
"advancement.create.compacting.desc": "Use a Mechanical Press and a Basin to create fewer items from more",
|
||||
|
@ -47,9 +53,9 @@
|
|||
"advancement.create.cross_streams.desc": "Watch two fluids meet in your pipe network\n§7(Hidden Advancement)",
|
||||
"advancement.create.crusher_maxed_0000": "Crushing It",
|
||||
"advancement.create.crusher_maxed_0000.desc": "Operate a pair of Crushing Wheels at maximum speed",
|
||||
"advancement.create.crushing_wheel": "A Pair of Giants",
|
||||
"advancement.create.crushing_wheel": "Wheels of Destruction",
|
||||
"advancement.create.crushing_wheel.desc": "Place and power a set of Crushing Wheels",
|
||||
"advancement.create.cuckoo_clock": "Is It Time?",
|
||||
"advancement.create.cuckoo_clock": "Is it Time?",
|
||||
"advancement.create.cuckoo_clock.desc": "Witness your Cuckoo Clock announce bedtime",
|
||||
"advancement.create.deployer": "Artificial Intelligence",
|
||||
"advancement.create.deployer.desc": "Place and power a Deployer, the perfect reflection of yourself",
|
||||
|
@ -71,12 +77,16 @@
|
|||
"advancement.create.extendo_grip.desc": "Get hold of an Extendo Grip",
|
||||
"advancement.create.extendo_grip_dual": "To Full Extent",
|
||||
"advancement.create.extendo_grip_dual.desc": "Dual-wield Extendo Grips for superhuman reach\n§7(Hidden Advancement)",
|
||||
"advancement.create.factory_gauge": "High Logistics",
|
||||
"advancement.create.factory_gauge.desc": "Trigger an automatic package request using Factory Gauges",
|
||||
"advancement.create.fan_processing": "Processing by Particle",
|
||||
"advancement.create.fan_processing.desc": "Use an Encased Fan to process materials",
|
||||
"advancement.create.fist_bump": "Pound It, Bro!",
|
||||
"advancement.create.fist_bump.desc": "Make two Deployers fist-bump\n§7(Hidden Advancement)",
|
||||
"advancement.create.foods": "Balanced Diet",
|
||||
"advancement.create.foods.desc": "Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||
"advancement.create.frogport": "Hungry hoppers",
|
||||
"advancement.create.frogport.desc": "Catch packages from your Chain Conveyor using a Frogport",
|
||||
"advancement.create.funnel": "Airport Aesthetic",
|
||||
"advancement.create.funnel.desc": "Extract or insert items into a container using a Funnel",
|
||||
"advancement.create.glass_pipe": "Flow Discovery",
|
||||
|
@ -113,9 +123,13 @@
|
|||
"advancement.create.millstone.desc": "Use a Millstone to pulverise materials",
|
||||
"advancement.create.musical_arm": "DJ Mechanico",
|
||||
"advancement.create.musical_arm.desc": "Watch a Mechanical Arm operate your Jukebox\n§7(Hidden Advancement)",
|
||||
"advancement.create.package_chute_throw": "Nothing but net",
|
||||
"advancement.create.package_chute_throw.desc": "Land your cardboard package throw in an item chute\n§7(Hidden Advancement)",
|
||||
"advancement.create.packager": "Post Production",
|
||||
"advancement.create.packager.desc": "Package items from an inventory using the Packager",
|
||||
"advancement.create.pipe_organ": "The Pipe Organ",
|
||||
"advancement.create.pipe_organ.desc": "Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank\n§7(Hidden Advancement)",
|
||||
"advancement.create.portable_storage_interface": "Drive-By Exchange",
|
||||
"advancement.create.portable_storage_interface": "Drive-by Exchange",
|
||||
"advancement.create.portable_storage_interface.desc": "Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||
"advancement.create.potato_cannon": "Fwoomp!",
|
||||
"advancement.create.potato_cannon.desc": "Defeat an enemy with your Potato Cannon",
|
||||
|
@ -129,7 +143,7 @@
|
|||
"advancement.create.red_signal.desc": "Run a red Train Signal\n§7(Hidden Advancement)",
|
||||
"advancement.create.root": "Welcome to Create",
|
||||
"advancement.create.root.desc": "Here Be Contraptions",
|
||||
"advancement.create.rose_quartz": "Pink Diamonds",
|
||||
"advancement.create.rose_quartz": "Supercharged",
|
||||
"advancement.create.rose_quartz.desc": "Polish some Rose Quartz",
|
||||
"advancement.create.saw_processing": "Workshop's Most Feared",
|
||||
"advancement.create.saw_processing.desc": "Use an upright Mechanical Saw to process materials",
|
||||
|
@ -147,6 +161,8 @@
|
|||
"advancement.create.steam_engine_maxed.desc": "Run a boiler at the maximum level of power",
|
||||
"advancement.create.steam_whistle": "Voice of an Angel",
|
||||
"advancement.create.steam_whistle.desc": "Activate a Steam Whistle",
|
||||
"advancement.create.stock_ticker": "Order Up!",
|
||||
"advancement.create.stock_ticker.desc": "Employ a mob at your stock ticker and make your first requests",
|
||||
"advancement.create.stressometer": "Stress for Nerds",
|
||||
"advancement.create.stressometer.desc": "Get an exact readout with the help of Engineer's Goggles and a Stressometer",
|
||||
"advancement.create.stressometer_maxed": "Perfectly Stressed",
|
||||
|
@ -155,6 +171,8 @@
|
|||
"advancement.create.sturdy_sheet.desc": "Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||
"advancement.create.super_glue": "Area of Connect",
|
||||
"advancement.create.super_glue.desc": "Super Glue some blocks into a group",
|
||||
"advancement.create.table_cloth_shop": "Open for business",
|
||||
"advancement.create.table_cloth_shop.desc": "Put items up for sale using a Table Cloth",
|
||||
"advancement.create.track_0": "A New Gauge",
|
||||
"advancement.create.track_0.desc": "Obtain some Train Tracks",
|
||||
"advancement.create.track_crafting_factory": "Track Factory",
|
||||
|
@ -163,7 +181,7 @@
|
|||
"advancement.create.track_signal.desc": "Place a Train Signal",
|
||||
"advancement.create.train": "All Aboard!",
|
||||
"advancement.create.train.desc": "Assemble your first Train",
|
||||
"advancement.create.train_casing_00": "The Logistical Age",
|
||||
"advancement.create.train_casing_00": "The Locomotive Age",
|
||||
"advancement.create.train_casing_00.desc": "Use Sturdy Sheets to create a casing for railway components",
|
||||
"advancement.create.train_crash": "Terrible Service",
|
||||
"advancement.create.train_crash.desc": "Witness a Train crash as a passenger\n§7(Hidden Advancement)",
|
||||
|
@ -179,9 +197,9 @@
|
|||
"advancement.create.water_supply.desc": "Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||
"advancement.create.water_wheel": "Harnessed Hydraulics",
|
||||
"advancement.create.water_wheel.desc": "Place a Water Wheel and use it to generate torque",
|
||||
"advancement.create.windmill": "A Mild Breeze",
|
||||
"advancement.create.windmill": "A mild Breeze",
|
||||
"advancement.create.windmill.desc": "Assemble a windmill and use it to generate torque",
|
||||
"advancement.create.windmill_maxed": "A Strong Breeze",
|
||||
"advancement.create.windmill_maxed": "A strong Breeze",
|
||||
"advancement.create.windmill_maxed.desc": "Assemble a windmill of maximum strength",
|
||||
"advancement.create.wrench_goggles": "Kitted Out",
|
||||
"advancement.create.wrench_goggles.desc": "Equip Engineer's Goggles and a Wrench",
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
{
|
||||
"parent": "create:mechanical_mixer",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {
|
||||
"items": [
|
||||
{
|
||||
"items": [
|
||||
"create:cardboard"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"trigger": "minecraft:inventory_changed"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.cardboard.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:cardboard"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.cardboard"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
"parent": "create:factory_gauge",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:cardboard_armor_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.cardboard_armor.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:cardboard_chestplate",
|
||||
"nbt": "{Damage:0}"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.cardboard_armor"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
{
|
||||
"parent": "create:cardboard_armor",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:cardboard_armor_trim_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.cardboard_armor_trim.desc"
|
||||
},
|
||||
"frame": "goal",
|
||||
"hidden": true,
|
||||
"icon": {
|
||||
"item": "create:cardboard_chestplate",
|
||||
"nbt": "{Damage:0,Trim:{material:\"minecraft:diamond\",pattern:\"minecraft:sentry\"}}"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.cardboard_armor_trim"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -7,7 +7,7 @@
|
|||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.copper_casing.desc"
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.display_link.desc"
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:table_cloth_shop",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:factory_gauge_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.factory_gauge.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:factory_gauge"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.factory_gauge"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:stock_ticker",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:frogport_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.frogport.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:package_frogport"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.frogport"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:cardboard_armor",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:package_chute_throw_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.package_chute_throw.desc"
|
||||
},
|
||||
"frame": "goal",
|
||||
"hidden": true,
|
||||
"icon": {
|
||||
"item": "create:cardboard_package_12x12"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.package_chute_throw"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:cardboard",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:packager_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.packager.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:packager"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.packager"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:packager",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:stock_ticker_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.stock_ticker.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:stock_ticker"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.stock_ticker"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
"parent": "create:frogport",
|
||||
"criteria": {
|
||||
"0": {
|
||||
"conditions": {},
|
||||
"trigger": "create:table_cloth_shop_builtin"
|
||||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.table_cloth_shop.desc"
|
||||
},
|
||||
"frame": "task",
|
||||
"hidden": false,
|
||||
"icon": {
|
||||
"item": "create:red_table_cloth"
|
||||
},
|
||||
"show_toast": true,
|
||||
"title": {
|
||||
"translate": "advancement.create.table_cloth_shop"
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
[
|
||||
"0"
|
||||
]
|
||||
],
|
||||
"sends_telemetry_event": true
|
||||
}
|
|
@ -7,7 +7,7 @@
|
|||
}
|
||||
},
|
||||
"display": {
|
||||
"announce_to_chat": true,
|
||||
"announce_to_chat": false,
|
||||
"description": {
|
||||
"color": "#DBA213",
|
||||
"translate": "advancement.create.train_casing_00.desc"
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.simibubi.create.content.equipment.armor;
|
|||
import java.util.UUID;
|
||||
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
|
||||
import net.minecraft.server.level.ServerLevel;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
|
@ -25,10 +26,18 @@ public class CardboardArmorHandler {
|
|||
|
||||
@SubscribeEvent
|
||||
public static void playerHitboxChangesWhenHidingAsBox(EntityEvent.Size event) {
|
||||
if (event.getEntity().isAddedToWorld() && testForStealth(event.getEntity())) {
|
||||
event.setNewSize(EntityDimensions.fixed(0.8F, 0.8F));
|
||||
event.setNewEyeHeight(0.6F);
|
||||
}
|
||||
Entity entity = event.getEntity();
|
||||
if (!entity.isAddedToWorld())
|
||||
return;
|
||||
if (!testForStealth(entity))
|
||||
return;
|
||||
|
||||
event.setNewSize(EntityDimensions.fixed(0.6F, 0.8F));
|
||||
event.setNewEyeHeight(0.6F);
|
||||
|
||||
if (!entity.level()
|
||||
.isClientSide() && entity instanceof Player p)
|
||||
AllAdvancements.CARDBOARD_ARMOR.awardTo(p);
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
|
|
|
@ -12,8 +12,8 @@ import org.apache.commons.lang3.mutable.MutableBoolean;
|
|||
import com.simibubi.create.AllBlockEntityTypes;
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.Create;
|
||||
import com.simibubi.create.api.contraption.transformable.ITransformableBlock;
|
||||
import com.simibubi.create.api.schematic.requirement.ISpecialBlockItemRequirement;
|
||||
import com.simibubi.create.content.contraptions.StructureTransform;
|
||||
import com.simibubi.create.content.equipment.armor.DivingBootsItem;
|
||||
import com.simibubi.create.content.fluids.transfer.GenericItemEmptying;
|
||||
|
@ -28,7 +28,6 @@ import com.simibubi.create.content.logistics.box.PackageEntity;
|
|||
import com.simibubi.create.content.logistics.box.PackageItem;
|
||||
import com.simibubi.create.content.logistics.funnel.FunnelBlock;
|
||||
import com.simibubi.create.content.logistics.tunnel.BeltTunnelBlock;
|
||||
import com.simibubi.create.api.schematic.requirement.ISpecialBlockItemRequirement;
|
||||
import com.simibubi.create.content.schematics.requirement.ItemRequirement;
|
||||
import com.simibubi.create.content.schematics.requirement.ItemRequirement.ItemUseType;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
|
@ -50,6 +49,7 @@ import net.minecraft.sounds.SoundSource;
|
|||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EquipmentSlot;
|
||||
import net.minecraft.world.entity.Mob;
|
||||
import net.minecraft.world.entity.item.ItemEntity;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -192,7 +192,7 @@ public class BeltBlock extends HorizontalKineticBlock
|
|||
return;
|
||||
if (entityIn instanceof Player) {
|
||||
Player player = (Player) entityIn;
|
||||
if (player.isShiftKeyDown())
|
||||
if (player.isShiftKeyDown() && !AllItems.CARDBOARD_BOOTS.isIn(player.getItemBySlot(EquipmentSlot.FEET)))
|
||||
return;
|
||||
if (player.getAbilities().flying)
|
||||
return;
|
||||
|
@ -309,7 +309,7 @@ public class BeltBlock extends HorizontalKineticBlock
|
|||
});
|
||||
if (success.isTrue())
|
||||
world.playSound(null, pos, SoundEvents.ITEM_PICKUP, SoundSource.PLAYERS, .2f,
|
||||
1f + Create.RANDOM.nextFloat());
|
||||
1f + world.random.nextFloat());
|
||||
}
|
||||
|
||||
if (isShaft) {
|
||||
|
|
|
@ -7,6 +7,7 @@ import static net.minecraft.world.entity.MoverType.SELF;
|
|||
import java.util.List;
|
||||
|
||||
import com.simibubi.create.AllBlocks;
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.content.kinetics.belt.BeltBlock;
|
||||
import com.simibubi.create.content.kinetics.belt.BeltBlockEntity;
|
||||
import com.simibubi.create.content.kinetics.belt.BeltPart;
|
||||
|
@ -19,6 +20,7 @@ import net.minecraft.core.Vec3i;
|
|||
import net.minecraft.world.effect.MobEffectInstance;
|
||||
import net.minecraft.world.effect.MobEffects;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EquipmentSlot;
|
||||
import net.minecraft.world.entity.LivingEntity;
|
||||
import net.minecraft.world.entity.decoration.HangingEntity;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
|
@ -60,7 +62,8 @@ public class BeltMovementHandler {
|
|||
public static boolean canBeTransported(Entity entity) {
|
||||
if (!entity.isAlive())
|
||||
return false;
|
||||
if (entity instanceof Player && ((Player) entity).isShiftKeyDown())
|
||||
if (entity instanceof Player p && p.isShiftKeyDown()
|
||||
&& !AllItems.CARDBOARD_BOOTS.isIn(p.getItemBySlot(EquipmentSlot.FEET)))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.simibubi.create.content.logistics.box;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -65,6 +66,8 @@ public class PackageEntity extends LivingEntity implements IEntityAdditionalSpaw
|
|||
public int insertionDelay;
|
||||
|
||||
public Vec3 clientPosition, vec2 = Vec3.ZERO, vec3 = Vec3.ZERO;
|
||||
|
||||
public WeakReference<Player> tossedBy = new WeakReference<>(null);
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public PackageEntity(EntityType<?> entityTypeIn, Level worldIn) {
|
||||
|
@ -264,7 +267,12 @@ public class PackageEntity extends LivingEntity implements IEntityAdditionalSpaw
|
|||
|
||||
@Override
|
||||
public void push(Entity entityIn) {
|
||||
if (entityIn instanceof PackageEntity) {
|
||||
boolean isOtherPackage = entityIn instanceof PackageEntity;
|
||||
|
||||
if (!isOtherPackage && tossedBy.get() != null)
|
||||
tossedBy = new WeakReference<Player>(null); // no nudging
|
||||
|
||||
if (isOtherPackage) {
|
||||
if (entityIn.getBoundingBox().minY < this.getBoundingBox().maxY)
|
||||
super.push(entityIn);
|
||||
} else if (entityIn.getBoundingBox().minY <= this.getBoundingBox().minY) {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.simibubi.create.content.logistics.box;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
@ -349,9 +350,8 @@ public class PackageItem extends Item {
|
|||
|
||||
@Override
|
||||
public void releaseUsing(ItemStack stack, Level world, LivingEntity entity, int ticks) {
|
||||
if (!(entity instanceof Player))
|
||||
if (!(entity instanceof Player player))
|
||||
return;
|
||||
Player playerentity = (Player) entity;
|
||||
int i = this.getUseDuration(stack) - ticks;
|
||||
if (i < 0)
|
||||
return;
|
||||
|
@ -362,14 +362,14 @@ public class PackageItem extends Item {
|
|||
if (world.isClientSide)
|
||||
return;
|
||||
|
||||
world.playSound(null, playerentity.getX(), playerentity.getY(), playerentity.getZ(), SoundEvents.SNOWBALL_THROW,
|
||||
world.playSound(null, player.getX(), player.getY(), player.getZ(), SoundEvents.SNOWBALL_THROW,
|
||||
SoundSource.NEUTRAL, 0.5F, 0.5F);
|
||||
|
||||
ItemStack copy = stack.copy();
|
||||
stack.shrink(1);
|
||||
|
||||
if (stack.isEmpty())
|
||||
playerentity.getInventory()
|
||||
player.getInventory()
|
||||
.removeItem(stack);
|
||||
|
||||
Vec3 vec = new Vec3(entity.getX(), entity.getY() + entity.getBoundingBox()
|
||||
|
@ -381,6 +381,7 @@ public class PackageItem extends Item {
|
|||
PackageEntity packageEntity = new PackageEntity(world, vec.x, vec.y, vec.z);
|
||||
packageEntity.setBox(copy);
|
||||
packageEntity.setDeltaMovement(motion);
|
||||
packageEntity.tossedBy = new WeakReference<Player>(player);
|
||||
world.addFreshEntity(packageEntity);
|
||||
}
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@ import com.simibubi.create.content.equipment.wrench.IWrenchable;
|
|||
import com.simibubi.create.content.kinetics.belt.behaviour.DirectBeltInputBehaviour;
|
||||
import com.simibubi.create.content.logistics.box.PackageEntity;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
import com.simibubi.create.foundation.block.render.ReducedDestroyEffects;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
|
||||
|
@ -106,9 +107,14 @@ public abstract class AbstractChuteBlock extends Block implements IWrenchable, I
|
|||
if (!PackageEntity.centerPackage(entityIn, Vec3.atBottomCenterOf(pos.above())))
|
||||
return;
|
||||
ItemStack remainder = input.handleInsertion(stack, Direction.UP, false);
|
||||
if (remainder.isEmpty())
|
||||
if (remainder.isEmpty()) {
|
||||
entityIn.discard();
|
||||
else if (remainder.getCount() < stack.getCount() && entityIn instanceof ItemEntity)
|
||||
if (entityIn instanceof PackageEntity box) {
|
||||
Player player = box.tossedBy.get();
|
||||
if (player != null)
|
||||
AllAdvancements.PACKAGE_CHUTE_THROW.awardTo(player);
|
||||
}
|
||||
} else if (remainder.getCount() < stack.getCount() && entityIn instanceof ItemEntity)
|
||||
((ItemEntity) entityIn).setItem(remainder);
|
||||
}
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@ import com.simibubi.create.content.logistics.packagerLink.RequestPromise;
|
|||
import com.simibubi.create.content.logistics.packagerLink.RequestPromiseQueue;
|
||||
import com.simibubi.create.content.logistics.stockTicker.PackageOrder;
|
||||
import com.simibubi.create.content.schematics.requirement.ItemRequirement;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BehaviourType;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.ValueSettingsBoard;
|
||||
|
@ -94,7 +95,6 @@ public class FactoryPanelBehaviour extends FilteringBehaviour {
|
|||
private boolean promisePrimedForMarkDirty;
|
||||
|
||||
private boolean active;
|
||||
private boolean queueDing;
|
||||
private int lastReportedUnloadedLinks;
|
||||
private int lastReportedLevelInStorage;
|
||||
private int lastReportedPromises;
|
||||
|
@ -349,6 +349,8 @@ public class FactoryPanelBehaviour extends FilteringBehaviour {
|
|||
RequestPromiseQueue promises = Create.LOGISTICS.getQueuedPromises(network);
|
||||
if (promises != null)
|
||||
promises.add(new RequestPromise(new BigItemStack(getFilter(), recipeOutput)));
|
||||
|
||||
panelBE.advancements.awardPlayer(AllAdvancements.FACTORY_GAUGE);
|
||||
}
|
||||
|
||||
private void tryRestock() {
|
||||
|
@ -665,8 +667,6 @@ public class FactoryPanelBehaviour extends FilteringBehaviour {
|
|||
active = false;
|
||||
return;
|
||||
}
|
||||
|
||||
boolean previouslySatisfied = satisfied;
|
||||
|
||||
active = true;
|
||||
filter = FilterItemStack.of(panelTag.getCompound("Filter"));
|
||||
|
|
|
@ -10,6 +10,7 @@ import com.simibubi.create.api.schematic.requirement.ISpecialBlockItemRequiremen
|
|||
import com.simibubi.create.content.equipment.wrench.IWrenchable;
|
||||
import com.simibubi.create.content.logistics.packagerLink.LogisticallyLinkedBlockItem;
|
||||
import com.simibubi.create.content.schematics.requirement.ItemRequirement;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
import com.simibubi.create.foundation.block.ProperWaterloggedBlock;
|
||||
import com.simibubi.create.foundation.utility.CreateLang;
|
||||
|
@ -179,6 +180,7 @@ public class FactoryPanelBlock extends FaceAttachedHorizontalDirectionalBlock
|
|||
super.setPlacedBy(pLevel, pPos, pState, pPlacer, pStack);
|
||||
if (pPlacer == null)
|
||||
return;
|
||||
AdvancementBehaviour.setPlacedBy(pLevel, pPos, pPlacer);
|
||||
double range = pPlacer.getAttribute(ForgeMod.BLOCK_REACH.get())
|
||||
.getValue() + 1;
|
||||
HitResult hitResult = pPlacer.pick(range, 1, false);
|
||||
|
|
|
@ -10,6 +10,8 @@ import com.simibubi.create.AllBlocks;
|
|||
import com.simibubi.create.content.logistics.factoryBoard.FactoryPanelBlock.PanelSlot;
|
||||
import com.simibubi.create.content.logistics.packager.PackagerBlockEntity;
|
||||
import com.simibubi.create.content.logistics.packager.repackager.RepackagerBlockEntity;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.blockEntity.SmartBlockEntity;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
|
||||
|
||||
|
@ -37,6 +39,8 @@ public class FactoryPanelBlockEntity extends SmartBlockEntity {
|
|||
public boolean restocker;
|
||||
|
||||
private VoxelShape lastShape;
|
||||
|
||||
public AdvancementBehaviour advancements;
|
||||
|
||||
public FactoryPanelBlockEntity(BlockEntityType<?> type, BlockPos pos, BlockState state) {
|
||||
super(type, pos, state);
|
||||
|
@ -52,6 +56,8 @@ public class FactoryPanelBlockEntity extends SmartBlockEntity {
|
|||
panels.put(slot, e);
|
||||
behaviours.add(e);
|
||||
}
|
||||
|
||||
behaviours.add(advancements = new AdvancementBehaviour(this, AllAdvancements.FACTORY_GAUGE));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -6,6 +6,7 @@ import com.simibubi.create.AllBlockEntityTypes;
|
|||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.AllShapes;
|
||||
import com.simibubi.create.content.equipment.wrench.IWrenchable;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
|
||||
import net.createmod.catnip.utility.VecHelper;
|
||||
|
@ -49,6 +50,7 @@ public class FrogportBlock extends Block implements IBE<FrogportBlockEntity>, IW
|
|||
super.setPlacedBy(pLevel, pPos, pState, pPlacer, pStack);
|
||||
if (pPlacer == null)
|
||||
return;
|
||||
AdvancementBehaviour.setPlacedBy(pLevel, pPos, pPlacer);
|
||||
withBlockEntityDo(pLevel, pPos, be -> {
|
||||
Vec3 diff = VecHelper.getCenterOf(pPos)
|
||||
.subtract(pPlacer.position());
|
||||
|
|
|
@ -8,6 +8,9 @@ import com.simibubi.create.content.logistics.box.PackageItem;
|
|||
import com.simibubi.create.content.logistics.box.PackageStyles;
|
||||
import com.simibubi.create.content.logistics.packagePort.PackagePortBlockEntity;
|
||||
import com.simibubi.create.content.logistics.packager.PackagerItemHandler;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
|
||||
import com.simibubi.create.foundation.item.ItemHelper;
|
||||
import com.simibubi.create.foundation.item.TooltipHelper;
|
||||
|
||||
|
@ -48,6 +51,8 @@ public class FrogportBlockEntity extends PackagePortBlockEntity implements IHave
|
|||
|
||||
private boolean failedLastExport;
|
||||
private FrogportSounds sounds;
|
||||
|
||||
private AdvancementBehaviour advancements;
|
||||
|
||||
public FrogportBlockEntity(BlockEntityType<?> type, BlockPos pos, BlockState state) {
|
||||
super(type, pos, state);
|
||||
|
@ -59,6 +64,12 @@ public class FrogportBlockEntity extends PackagePortBlockEntity implements IHave
|
|||
.chase(0, 0.35, Chaser.LINEAR);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addBehaviours(List<BlockEntityBehaviour> behaviours) {
|
||||
behaviours.add(advancements = new AdvancementBehaviour(this, AllAdvancements.FROGPORT));
|
||||
super.addBehaviours(behaviours);
|
||||
}
|
||||
|
||||
public boolean isAnimationInProgress() {
|
||||
return animationProgress.getChaseTarget() == 1;
|
||||
}
|
||||
|
@ -174,6 +185,9 @@ public class FrogportBlockEntity extends PackagePortBlockEntity implements IHave
|
|||
animationProgress.chase(1, 0.1, Chaser.LINEAR);
|
||||
animatedPackage = box;
|
||||
currentlyDepositing = deposit;
|
||||
|
||||
if (level != null && !deposit && !level.isClientSide())
|
||||
advancements.awardPlayer(AllAdvancements.FROGPORT);
|
||||
|
||||
if (level != null && level.isClientSide()) {
|
||||
sounds.open(level, worldPosition);
|
||||
|
|
|
@ -6,6 +6,7 @@ import com.simibubi.create.AllItems;
|
|||
import com.simibubi.create.AllSoundEvents;
|
||||
import com.simibubi.create.content.equipment.wrench.IWrenchable;
|
||||
import com.simibubi.create.content.logistics.box.PackageItem;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
import com.simibubi.create.foundation.block.WrenchableDirectionalBlock;
|
||||
|
||||
|
@ -13,6 +14,7 @@ import net.minecraft.core.BlockPos;
|
|||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
import net.minecraft.world.InteractionResult;
|
||||
import net.minecraft.world.entity.LivingEntity;
|
||||
import net.minecraft.world.entity.player.Player;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.context.BlockPlaceContext;
|
||||
|
@ -46,6 +48,12 @@ public class PackagerBlock extends WrenchableDirectionalBlock implements IBE<Pac
|
|||
registerDefaultState(defaultBlockState.setValue(POWERED, false));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlacedBy(Level pLevel, BlockPos pPos, BlockState pState, LivingEntity pPlacer, ItemStack pStack) {
|
||||
super.setPlacedBy(pLevel, pPos, pState, pPlacer, pStack);
|
||||
AdvancementBehaviour.setPlacedBy(pLevel, pPos, pPlacer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockState getStateForPlacement(BlockPlaceContext context) {
|
||||
Capability<IItemHandler> itemCap = ForgeCapabilities.ITEM_HANDLER;
|
||||
|
|
|
@ -26,6 +26,8 @@ import com.simibubi.create.content.logistics.packagerLink.PackagerLinkBlockEntit
|
|||
import com.simibubi.create.content.logistics.packagerLink.RequestPromiseQueue;
|
||||
import com.simibubi.create.content.logistics.stockTicker.PackageOrder;
|
||||
import com.simibubi.create.content.processing.basin.BasinBlockEntity;
|
||||
import com.simibubi.create.foundation.advancement.AdvancementBehaviour;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.blockEntity.SmartBlockEntity;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour;
|
||||
import com.simibubi.create.foundation.blockEntity.behaviour.inventory.CapManipulationBehaviourBase.InterfaceProvider;
|
||||
|
@ -78,6 +80,8 @@ public class PackagerBlockEntity extends SmartBlockEntity {
|
|||
|
||||
private InventorySummary availableItems;
|
||||
private VersionedInventoryTrackerBehaviour invVersionTracker;
|
||||
|
||||
private AdvancementBehaviour advancements;
|
||||
|
||||
//
|
||||
|
||||
|
@ -101,6 +105,7 @@ public class PackagerBlockEntity extends SmartBlockEntity {
|
|||
behaviours.add(targetInventory = new InvManipulationBehaviour(this, InterfaceProvider.oppositeOfBlockFacing())
|
||||
.withFilter(this::supportsBlockEntity));
|
||||
behaviours.add(invVersionTracker = new VersionedInventoryTrackerBehaviour(this));
|
||||
behaviours.add(advancements = new AdvancementBehaviour(this, AllAdvancements.PACKAGER));
|
||||
}
|
||||
|
||||
private boolean supportsBlockEntity(BlockEntity target) {
|
||||
|
@ -535,7 +540,8 @@ public class PackagerBlockEntity extends SmartBlockEntity {
|
|||
heldBox = createdBox;
|
||||
animationInward = false;
|
||||
animationTicks = CYCLE;
|
||||
|
||||
|
||||
advancements.awardPlayer(AllAdvancements.PACKAGER);
|
||||
triggerStockCheck();
|
||||
notifyUpdate();
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.simibubi.create.content.logistics.stockTicker;
|
|||
import com.simibubi.create.AllSoundEvents;
|
||||
import com.simibubi.create.content.logistics.packagerLink.LogisticallyLinkedBehaviour.RequestType;
|
||||
import com.simibubi.create.content.logistics.redstoneRequester.RedstoneRequesterBlock;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.networking.BlockEntityConfigurationPacket;
|
||||
|
||||
import net.minecraft.core.BlockPos;
|
||||
|
@ -45,14 +46,18 @@ public class PackageOrderRequestPacket extends BlockEntityConfigurationPacket<St
|
|||
|
||||
@Override
|
||||
protected void applySettings(ServerPlayer player, StockTickerBlockEntity be) {
|
||||
if (!order.isEmpty())
|
||||
AllSoundEvents.STOCK_TICKER_REQUEST.playOnServer(be.getLevel(), pos);
|
||||
|
||||
if (encodeRequester) {
|
||||
if (!order.isEmpty())
|
||||
AllSoundEvents.CONFIRM.playOnServer(be.getLevel(), pos);
|
||||
player.closeContainer();
|
||||
RedstoneRequesterBlock.programRequester(player, be, order, address);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!order.isEmpty()) {
|
||||
AllSoundEvents.STOCK_TICKER_REQUEST.playOnServer(be.getLevel(), pos);
|
||||
AllAdvancements.STOCK_TICKER.awardTo(player);
|
||||
}
|
||||
|
||||
be.broadcastPackageRequest(RequestType.PLAYER, order, null, address);
|
||||
return;
|
||||
|
|
|
@ -10,6 +10,7 @@ import com.simibubi.create.AllShapes;
|
|||
import com.simibubi.create.AllTags.AllItemTags;
|
||||
import com.simibubi.create.content.equipment.wrench.IWrenchable;
|
||||
import com.simibubi.create.content.logistics.redstoneRequester.AutoRequestData;
|
||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||
import com.simibubi.create.foundation.block.IBE;
|
||||
import com.simibubi.create.foundation.block.IHaveBigOutline;
|
||||
|
||||
|
@ -80,6 +81,7 @@ public class TableClothBlock extends Block implements IHaveBigOutline, IWrenchab
|
|||
dcbe.owner = player.getUUID();
|
||||
dcbe.facing = player.getDirection()
|
||||
.getOpposite();
|
||||
AllAdvancements.TABLE_CLOTH_SHOP.awardTo(player);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -21,15 +21,15 @@ class TableClothFilterSlot extends ValueBoxTransform {
|
|||
|
||||
@Override
|
||||
public Vec3 getLocalOffset(LevelAccessor level, BlockPos pos, BlockState state) {
|
||||
Vec3 v = be.sideOccluded ? VecHelper.voxelSpace(8, 0.75, 14.25) : VecHelper.voxelSpace(12, -2.75, 16.75);
|
||||
Vec3 v = be.sideOccluded ? VecHelper.voxelSpace(8, 0.75, 15.25) : VecHelper.voxelSpace(12, -2.75, 16.75);
|
||||
return VecHelper.rotateCentered(v, -be.facing.toYRot(), Axis.Y);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void rotate(LevelAccessor level, BlockPos pos, BlockState state, PoseStack ms) {
|
||||
TransformStack.of(ms)
|
||||
.rotateZDegrees(be.sideOccluded ? -90 : 0)
|
||||
.rotateYDegrees(180 - be.facing.toYRot());
|
||||
.rotateYDegrees(180 - be.facing.toYRot())
|
||||
.rotateXDegrees(be.sideOccluded ? 90 : 0);
|
||||
}
|
||||
|
||||
}
|
|
@ -19,6 +19,7 @@ import com.simibubi.create.AllBlocks;
|
|||
import com.simibubi.create.AllFluids;
|
||||
import com.simibubi.create.AllItems;
|
||||
import com.simibubi.create.AllTags.AllItemTags;
|
||||
import com.simibubi.create.content.logistics.box.PackageStyles;
|
||||
import com.simibubi.create.foundation.advancement.CreateAdvancement.Builder;
|
||||
|
||||
import net.minecraft.advancements.Advancement;
|
||||
|
@ -26,8 +27,10 @@ import net.minecraft.data.CachedOutput;
|
|||
import net.minecraft.data.DataProvider;
|
||||
import net.minecraft.data.PackOutput;
|
||||
import net.minecraft.data.PackOutput.PathProvider;
|
||||
import net.minecraft.nbt.CompoundTag;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.item.DyeColor;
|
||||
import net.minecraft.world.item.ItemStack;
|
||||
import net.minecraft.world.item.Items;
|
||||
import net.minecraft.world.level.block.Blocks;
|
||||
|
||||
|
@ -121,7 +124,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(ANDESITE)),
|
||||
|
||||
WINDMILL = create("windmill", b -> b.icon(AllBlocks.SAIL_FRAME)
|
||||
.title("A Mild Breeze")
|
||||
.title("A mild Breeze")
|
||||
.description("Assemble a windmill and use it to generate torque")
|
||||
.after(WATER_WHEEL)),
|
||||
|
||||
|
@ -147,7 +150,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(SUPER_GLUE)),
|
||||
|
||||
PSI = create("portable_storage_interface", b -> b.icon(AllBlocks.PORTABLE_STORAGE_INTERFACE)
|
||||
.title("Drive-By Exchange")
|
||||
.title("Drive-by Exchange")
|
||||
.description("Use a Portable Storage Interface to take or insert items into a Contraption")
|
||||
.after(CONTRAPTION_ACTORS)),
|
||||
|
||||
|
@ -164,7 +167,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(WRENCH_GOGGLES)),
|
||||
|
||||
CUCKOO_CLOCK = create("cuckoo_clock", b -> b.icon(AllBlocks.CUCKOO_CLOCK)
|
||||
.title("Is It Time?")
|
||||
.title("Is it Time?")
|
||||
.description("Witness your Cuckoo Clock announce bedtime")
|
||||
.after(STRESSOMETER)
|
||||
.special(NOISY)),
|
||||
|
@ -172,7 +175,7 @@ public class AllAdvancements implements DataProvider {
|
|||
// Andesite - Expert Branch
|
||||
|
||||
WINDMILL_MAXED = create("windmill_maxed", b -> b.icon(AllBlocks.SAIL)
|
||||
.title("A Strong Breeze")
|
||||
.title("A strong Breeze")
|
||||
.description("Assemble a windmill of maximum strength")
|
||||
.after(ANDESITE)
|
||||
.special(EXPERT)),
|
||||
|
@ -227,6 +230,64 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(MIXER)
|
||||
.special(SECRET)),
|
||||
|
||||
// Logistics
|
||||
|
||||
CARDBOARD = create("cardboard", b -> b.icon(AllItems.CARDBOARD)
|
||||
.title("Part and Parcel")
|
||||
.description("Produce or obtain your first Cardboard")
|
||||
.whenIconCollected()
|
||||
.after(MIXER)),
|
||||
|
||||
PACKAGER = create("packager", b -> b.icon(AllBlocks.PACKAGER)
|
||||
.title("Post Production")
|
||||
.description("Package items from an inventory using the Packager")
|
||||
.after(CARDBOARD)),
|
||||
|
||||
STOCK_TICKER = create("stock_ticker", b -> b.icon(AllBlocks.STOCK_TICKER)
|
||||
.title("Order Up!")
|
||||
.description("Employ a mob at your stock ticker and make your first requests")
|
||||
.special(NOISY)
|
||||
.after(PACKAGER)),
|
||||
|
||||
FROGPORT = create("frogport", b -> b.icon(AllBlocks.PACKAGE_FROGPORT)
|
||||
.title("Hungry hoppers")
|
||||
.description("Catch packages from your Chain Conveyor using a Frogport")
|
||||
.special(NOISY)
|
||||
.after(STOCK_TICKER)),
|
||||
|
||||
TABLE_CLOTH_SHOP = create("table_cloth_shop", b -> b.icon(AllBlocks.TABLE_CLOTHS.get(DyeColor.RED))
|
||||
.title("Open for business")
|
||||
.description("Put items up for sale using a Table Cloth")
|
||||
.special(NOISY)
|
||||
.after(FROGPORT)),
|
||||
|
||||
FACTORY_GAUGE = create("factory_gauge", b -> b.icon(AllBlocks.FACTORY_GAUGE)
|
||||
.title("High Logistics")
|
||||
.description("Trigger an automatic package request using Factory Gauges")
|
||||
.special(NOISY)
|
||||
.after(TABLE_CLOTH_SHOP)),
|
||||
|
||||
CARDBOARD_ARMOR = create("cardboard_armor", b -> b.icon(AllItems.CARDBOARD_CHESTPLATE)
|
||||
.title("Full Stealth")
|
||||
.description("Sneak around in full Cardboard Armor")
|
||||
.after(FACTORY_GAUGE)),
|
||||
|
||||
// Logistics - Secret
|
||||
|
||||
PACKAGE_CHUTE_THROW = create("package_chute_throw", b -> b.icon(PackageStyles.getDefaultBox())
|
||||
.title("Nothing but net")
|
||||
.description("Land your cardboard package throw in an item chute")
|
||||
.after(CARDBOARD_ARMOR)
|
||||
.special(SECRET)),
|
||||
|
||||
// TODO: award using AllAdvancements.CARDBOARD_ARMOR_TRIM.awardTo() on server
|
||||
CARDBOARD_ARMOR_TRIM = create("cardboard_armor_trim",
|
||||
b -> b.icon(createArmorTrimmedCardboardChestplate())
|
||||
.title("Arts and Crafts")
|
||||
.description("Decorate your cardboard equipment with armor trims")
|
||||
.after(CARDBOARD_ARMOR)
|
||||
.special(SECRET)),
|
||||
|
||||
// Copper - Central Branch
|
||||
|
||||
COPPER = create("copper", b -> b.icon(Items.COPPER_INGOT)
|
||||
|
@ -239,8 +300,7 @@ public class AllAdvancements implements DataProvider {
|
|||
COPPER_CASING = create("copper_casing", b -> b.icon(AllBlocks.COPPER_CASING)
|
||||
.title("The Copper Age")
|
||||
.description("Apply Copper Ingots to stripped wood, creating a waterproof casing for your machines")
|
||||
.after(COPPER)
|
||||
.special(NOISY)),
|
||||
.after(COPPER)),
|
||||
|
||||
SPOUT = create("spout", b -> b.icon(AllBlocks.SPOUT)
|
||||
.title("Sploosh")
|
||||
|
@ -367,7 +427,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.special(NOISY)),
|
||||
|
||||
ROSE_QUARTZ = create("rose_quartz", b -> b.icon(AllItems.POLISHED_ROSE_QUARTZ)
|
||||
.title("Pink Diamonds")
|
||||
.title("Supercharged")
|
||||
.description("Polish some Rose Quartz")
|
||||
.whenIconCollected()
|
||||
.after(BRASS_CASING)),
|
||||
|
@ -401,7 +461,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(MECHANICAL_ARM)),
|
||||
|
||||
CRUSHING_WHEEL = create("crushing_wheel", b -> b.icon(AllBlocks.CRUSHING_WHEEL)
|
||||
.title("A Pair of Giants")
|
||||
.title("Wheels of Destruction")
|
||||
.description("Place and power a set of Crushing Wheels")
|
||||
.after(CRAFTER)
|
||||
.special(NOISY)),
|
||||
|
@ -415,7 +475,7 @@ public class AllAdvancements implements DataProvider {
|
|||
.special(NOISY)),
|
||||
|
||||
CLOCKWORK_BEARING = create("clockwork_bearing", b -> b.icon(AllBlocks.CLOCKWORK_BEARING)
|
||||
.title("Contraption O'Clock")
|
||||
.title("Contraption o'Clock")
|
||||
.description("Assemble a structure mounted on a Clockwork Bearing")
|
||||
.after(HAUNTED_BELL)
|
||||
.special(NOISY)),
|
||||
|
@ -423,8 +483,7 @@ public class AllAdvancements implements DataProvider {
|
|||
DISPLAY_LINK = create("display_link", b -> b.icon(AllBlocks.DISPLAY_LINK)
|
||||
.title("Big Data")
|
||||
.description("Use a Display Link to visualise information")
|
||||
.after(CLOCKWORK_BEARING)
|
||||
.special(NOISY)),
|
||||
.after(CLOCKWORK_BEARING)),
|
||||
|
||||
POTATO_CANNON = create("potato_cannon", b -> b.icon(AllItems.POTATO_CANNON)
|
||||
.title("Fwoomp!")
|
||||
|
@ -508,10 +567,9 @@ public class AllAdvancements implements DataProvider {
|
|||
.after(CRUSHING_WHEEL)),
|
||||
|
||||
TRAIN_CASING = create("train_casing_00", b -> b.icon(AllBlocks.RAILWAY_CASING)
|
||||
.title("The Logistical Age")
|
||||
.title("The Locomotive Age")
|
||||
.description("Use Sturdy Sheets to create a casing for railway components")
|
||||
.after(STURDY_SHEET)
|
||||
.special(NOISY)),
|
||||
.after(STURDY_SHEET)),
|
||||
|
||||
TRAIN = create("train", b -> b.icon(AllBlocks.TRACK_STATION)
|
||||
.title("All Aboard!")
|
||||
|
@ -603,6 +661,17 @@ public class AllAdvancements implements DataProvider {
|
|||
//
|
||||
END = null;
|
||||
|
||||
private static ItemStack createArmorTrimmedCardboardChestplate() {
|
||||
ItemStack asStack = AllItems.CARDBOARD_CHESTPLATE.asStack();
|
||||
CompoundTag tag = new CompoundTag();
|
||||
CompoundTag trimTag = new CompoundTag();
|
||||
trimTag.putString("material", "minecraft:diamond");
|
||||
trimTag.putString("pattern", "minecraft:sentry");
|
||||
tag.put("Trim", trimTag);
|
||||
asStack.setTag(tag);
|
||||
return asStack;
|
||||
}
|
||||
|
||||
private static CreateAdvancement create(String id, UnaryOperator<Builder> b) {
|
||||
return new CreateAdvancement(id, b);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue