mirror of
https://github.com/Creators-of-Create/Create.git
synced 2025-03-04 06:44:40 +01:00
Pondering Alone, Part V
- merge mc1.18/dev - reuse transform interfaces from Flywheel and include them in catnip - extend SBB interface slightly - copy .editorconfig to catnip and ponder
This commit is contained in:
commit
25f259e0bc
1328 changed files with 36567 additions and 21590 deletions
4
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
4
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
|
@ -49,6 +49,9 @@ body:
|
||||||
label: Mod Version
|
label: Mod Version
|
||||||
description: The version of the mod you were using when the bug occured
|
description: The version of the mod you were using when the bug occured
|
||||||
options:
|
options:
|
||||||
|
- "0.5.0f"
|
||||||
|
- "0.5.0e"
|
||||||
|
- "0.5.0d"
|
||||||
- "0.5.0c"
|
- "0.5.0c"
|
||||||
- "0.5.0b"
|
- "0.5.0b"
|
||||||
- "0.5.0a"
|
- "0.5.0a"
|
||||||
|
@ -106,6 +109,7 @@ body:
|
||||||
label: Minecraft Version
|
label: Minecraft Version
|
||||||
description: The version of Minecraft you were using when the bug occured
|
description: The version of Minecraft you were using when the bug occured
|
||||||
options:
|
options:
|
||||||
|
- "1.19.2"
|
||||||
- "1.18.2"
|
- "1.18.2"
|
||||||
- "1.18.1"
|
- "1.18.1"
|
||||||
- "1.18"
|
- "1.18"
|
||||||
|
|
2
.github/config/labels.yml
vendored
2
.github/config/labels.yml
vendored
|
@ -8,3 +8,5 @@
|
||||||
- "1.17"
|
- "1.17"
|
||||||
1.18:
|
1.18:
|
||||||
- "1.18"
|
- "1.18"
|
||||||
|
1.19:
|
||||||
|
- "1.19"
|
||||||
|
|
26
.github/workflows/gradle.yml
vendored
26
.github/workflows/gradle.yml
vendored
|
@ -1,26 +0,0 @@
|
||||||
# This workflow will build a Java project with Gradle
|
|
||||||
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
|
|
||||||
|
|
||||||
name: Java CI with Gradle
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [ mc1.15/dev ]
|
|
||||||
pull_request:
|
|
||||||
branches: [ mc1.15/dev ]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- name: Set up JDK 1.8
|
|
||||||
uses: actions/setup-java@v1
|
|
||||||
with:
|
|
||||||
java-version: 1.8
|
|
||||||
- name: Grant execute permission for gradlew
|
|
||||||
run: chmod +x gradlew
|
|
||||||
- name: Build with Gradle
|
|
||||||
run: ./gradlew build
|
|
|
@ -9,9 +9,9 @@
|
||||||
<br><br>
|
<br><br>
|
||||||
</h1>
|
</h1>
|
||||||
|
|
||||||
<p>Welcome to Create, a mod offering a variety of tools and blocks for Building, Decoration and Aesthetic Automation.</p>
|
<p>Welcome to Create, a mod offering a variety of tools and blocks for Building, Decoration, and Aesthetic Automation.</p>
|
||||||
<p>The added elements of tech are designed to leave as many design choices to the player as possible. With Create, the game isn't played inside a bunch of UIs, it challenges you to setup contraptions of animated components working together in many possible arrangements.</p>
|
<p>The added elements of tech are designed to leave as many design choices to the player as possible. With Create, the game isn't played inside a bunch of UIs, it challenges you to set up contraptions of animated components working together in many possible arrangements.</p>
|
||||||
<p>Create's visual in-game documentation called 'Ponder' will guide you though all added mechanics and gadgets.</p>
|
<p>Create's visual in-game documentation called 'Ponder' will guide you through all added mechanics and gadgets.</p>
|
||||||
<p> </p>
|
<p> </p>
|
||||||
<p align="center"><a href="https://github.com/Creators-of-Create/Create/issues"><img src="https://i.imgur.com/qPmjSXy.png" width="160" /></a> <a href="https://www.youtube.com/channel/UCrKV2QTuyGcv4E3eSJpBiYA/playlists"><img src="https://i.imgur.com/L1bU9mr.png" width="160" /></a><a href="https://discord.gg/hmaD7Se"><img src="https://i.imgur.com/uf6V9ZX.png" width="160" /></a> <a href="https://github.com/Creators-of-Create/Create/wiki/Supporting-the-Project"><img src="https://i.imgur.com/fHQ45KR.png" width="227" /></a></p>
|
<p align="center"><a href="https://github.com/Creators-of-Create/Create/issues"><img src="https://i.imgur.com/qPmjSXy.png" width="160" /></a> <a href="https://www.youtube.com/channel/UCrKV2QTuyGcv4E3eSJpBiYA/playlists"><img src="https://i.imgur.com/L1bU9mr.png" width="160" /></a><a href="https://discord.gg/hmaD7Se"><img src="https://i.imgur.com/uf6V9ZX.png" width="160" /></a> <a href="https://github.com/Creators-of-Create/Create/wiki/Supporting-the-Project"><img src="https://i.imgur.com/fHQ45KR.png" width="227" /></a></p>
|
||||||
|
|
||||||
|
|
123
build.gradle
123
build.gradle
|
@ -7,13 +7,13 @@ buildscript {
|
||||||
maven { url = 'https://maven.parchmentmc.org' }
|
maven { url = 'https://maven.parchmentmc.org' }
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: "${forgegradle_version}", changing: true
|
classpath group: 'net.minecraftforge.gradle', name: 'ForgeGradle', version: "${forgegradle_version}", changing: false
|
||||||
classpath "org.spongepowered:mixingradle:${mixingradle_version}"
|
classpath "org.spongepowered:mixingradle:${mixingradle_version}"
|
||||||
classpath "org.parchmentmc:librarian:${librarian_version}"
|
classpath "org.parchmentmc:librarian:${librarian_version}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id 'com.github.johnrengelman.shadow' version "${shadow_version}"
|
|
||||||
id 'com.matthewprenger.cursegradle' version "${cursegradle_version}"
|
id 'com.matthewprenger.cursegradle' version "${cursegradle_version}"
|
||||||
}
|
}
|
||||||
apply plugin: 'net.minecraftforge.gradle'
|
apply plugin: 'net.minecraftforge.gradle'
|
||||||
|
@ -22,6 +22,8 @@ apply plugin: 'eclipse'
|
||||||
apply plugin: 'maven-publish'
|
apply plugin: 'maven-publish'
|
||||||
apply plugin: 'org.spongepowered.mixin'
|
apply plugin: 'org.spongepowered.mixin'
|
||||||
|
|
||||||
|
jarJar.enable()
|
||||||
|
|
||||||
boolean dev = System.getenv('RELEASE') == null || System.getenv('RELEASE').equals('false');
|
boolean dev = System.getenv('RELEASE') == null || System.getenv('RELEASE').equals('false');
|
||||||
// jozu: I use a gradle workspace with both projects.
|
// jozu: I use a gradle workspace with both projects.
|
||||||
// The project is named Flywheel-Forge, but sub-projects are named by folder.
|
// The project is named Flywheel-Forge, but sub-projects are named by folder.
|
||||||
|
@ -40,11 +42,10 @@ if (ponderInWorkspace) {
|
||||||
}
|
}
|
||||||
|
|
||||||
ext.buildNumber = System.getenv('BUILD_NUMBER')
|
ext.buildNumber = System.getenv('BUILD_NUMBER')
|
||||||
if (buildNumber == null) buildNumber = 'custom'
|
|
||||||
|
|
||||||
version = "mc${minecraft_version}_v${mod_version}" + (dev && !buildNumber.equals('custom') ? "+${buildNumber}" : '')
|
|
||||||
group = 'com.simibubi.create'
|
group = 'com.simibubi.create'
|
||||||
archivesBaseName = 'create'
|
archivesBaseName = "create-${artifact_minecraft_version}"
|
||||||
|
version = mod_version + (dev && buildNumber != null ? "-${buildNumber}" : '')
|
||||||
|
|
||||||
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
|
java.toolchain.languageVersion = JavaLanguageVersion.of(17)
|
||||||
|
|
||||||
|
@ -68,6 +69,7 @@ minecraft {
|
||||||
arg '-mixin.config=catnip.mixins.json'
|
arg '-mixin.config=catnip.mixins.json'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//jvmArgs("-XX:+IgnoreUnrecognizedVMOptions", "-XX:+AllowEnhancedClassRedefinition") // uncomment with jbr
|
||||||
//jvmArgs '-XX:+UnlockCommercialFeatures' // uncomment for profiling
|
//jvmArgs '-XX:+UnlockCommercialFeatures' // uncomment for profiling
|
||||||
property 'forge.logging.console.level', 'info'
|
property 'forge.logging.console.level', 'info'
|
||||||
mods {
|
mods {
|
||||||
|
@ -166,18 +168,6 @@ minecraft {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
compileJava {
|
|
||||||
options.compilerArgs = ['-Xdiags:verbose']
|
|
||||||
}
|
|
||||||
|
|
||||||
sourceSets.main.resources {
|
|
||||||
srcDir 'src/generated/resources'
|
|
||||||
}
|
|
||||||
|
|
||||||
mixin {
|
|
||||||
add sourceSets.main, 'create.refmap.json'
|
|
||||||
}
|
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
maven {
|
maven {
|
||||||
// Location of the maven that hosts JEI files (and TiC)
|
// Location of the maven that hosts JEI files (and TiC)
|
||||||
|
@ -218,23 +208,32 @@ repositories {
|
||||||
name 'createmod maven'
|
name 'createmod maven'
|
||||||
url 'https://maven.createmod.net'
|
url 'https://maven.createmod.net'
|
||||||
}
|
}
|
||||||
}
|
maven {
|
||||||
|
name = "Modrinth"
|
||||||
configurations {
|
url = "https://api.modrinth.com/maven"
|
||||||
shade
|
content {
|
||||||
|
includeGroup "maven.modrinth"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
|
minecraft "net.minecraftforge:forge:${minecraft_version}-${forge_version}"
|
||||||
|
|
||||||
def registrate = "com.tterrag.registrate:Registrate:${registrate_version}"
|
jarJar(group: 'com.tterrag.registrate', name: 'Registrate', version: '[MC1.18.2-1.1.3,)') {
|
||||||
implementation fg.deobf(registrate)
|
jarJar.pin(it, project.registrate_version)
|
||||||
shade registrate
|
}
|
||||||
|
// Uncomment once Forge fixes mixins for included jars
|
||||||
|
//jarJar(group: 'com.jozufozu.flywheel', name: "flywheel-forge-${flywheel_minecraft_version}", version: '[0.6.4,0.6.5)') {
|
||||||
|
// jarJar.pin(it, project.flywheel_version)
|
||||||
|
//}
|
||||||
|
|
||||||
|
implementation fg.deobf("com.tterrag.registrate:Registrate:${registrate_version}")
|
||||||
|
|
||||||
if (flywheelInWorkspace) {
|
if (flywheelInWorkspace) {
|
||||||
implementation project(':Flywheel')
|
implementation project(':Flywheel')
|
||||||
} else {
|
} else {
|
||||||
implementation fg.deobf("com.jozufozu.flywheel:Flywheel-Forge:${flywheel_version}")
|
implementation fg.deobf("com.jozufozu.flywheel:flywheel-forge-${flywheel_minecraft_version}:${flywheel_version}")
|
||||||
}
|
}
|
||||||
|
|
||||||
if (catnipInWorkspace) {
|
if (catnipInWorkspace) {
|
||||||
|
@ -263,6 +262,7 @@ dependencies {
|
||||||
// runtimeOnly fg.deobf("vazkii.quark:Quark:r2.0-212.984")
|
// runtimeOnly fg.deobf("vazkii.quark:Quark:r2.0-212.984")
|
||||||
// runtimeOnly fg.deobf("slimeknights.mantle:Mantle:1.16.5-1.6.115")
|
// runtimeOnly fg.deobf("slimeknights.mantle:Mantle:1.16.5-1.6.115")
|
||||||
// runtimeOnly fg.deobf("slimeknights.tconstruct:TConstruct:1.16.5-3.1.1.252")
|
// runtimeOnly fg.deobf("slimeknights.tconstruct:TConstruct:1.16.5-3.1.1.252")
|
||||||
|
// runtimeOnly fg.deobf("maven.modrinth:rubidium:0.5.3")
|
||||||
|
|
||||||
// https://discord.com/channels/313125603924639766/725850371834118214/910619168821354497
|
// https://discord.com/channels/313125603924639766/725850371834118214/910619168821354497
|
||||||
// Prevent Mixin annotation processor from getting into IntelliJ's annotation processor settings
|
// Prevent Mixin annotation processor from getting into IntelliJ's annotation processor settings
|
||||||
|
@ -272,6 +272,29 @@ dependencies {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sourceSets.main.resources {
|
||||||
|
srcDir 'src/generated/resources'
|
||||||
|
exclude '.cache/'
|
||||||
|
}
|
||||||
|
|
||||||
|
mixin {
|
||||||
|
add sourceSets.main, 'create.refmap.json'
|
||||||
|
}
|
||||||
|
|
||||||
|
// Workaround for SpongePowered/MixinGradle#38
|
||||||
|
afterEvaluate {
|
||||||
|
tasks.configureReobfTaskForReobfJar.mustRunAfter(tasks.compileJava)
|
||||||
|
tasks.configureReobfTaskForReobfJarJar.mustRunAfter(tasks.compileJava)
|
||||||
|
}
|
||||||
|
|
||||||
|
tasks.withType(JavaCompile).configureEach {
|
||||||
|
options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation
|
||||||
|
}
|
||||||
|
|
||||||
|
compileJava {
|
||||||
|
options.compilerArgs = ['-Xdiags:verbose']
|
||||||
|
}
|
||||||
|
|
||||||
jar {
|
jar {
|
||||||
classifier = 'slim'
|
classifier = 'slim'
|
||||||
manifest {
|
manifest {
|
||||||
|
@ -279,8 +302,8 @@ jar {
|
||||||
'Specification-Title': 'create',
|
'Specification-Title': 'create',
|
||||||
'Specification-Vendor': 'simibubi',
|
'Specification-Vendor': 'simibubi',
|
||||||
'Specification-Version': '1',
|
'Specification-Version': '1',
|
||||||
'Implementation-Title': project.name,
|
'Implementation-Title': project.jar.baseName,
|
||||||
'Implementation-Version': "${version}",
|
'Implementation-Version': project.jar.archiveVersion,
|
||||||
'Implementation-Vendor': 'simibubi',
|
'Implementation-Vendor': 'simibubi',
|
||||||
'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
|
'Implementation-Timestamp': new Date().format("yyyy-MM-dd'T'HH:mm:ssZ"),
|
||||||
'MixinConfigs': 'create.mixins.json'
|
'MixinConfigs': 'create.mixins.json'
|
||||||
|
@ -288,40 +311,40 @@ jar {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
shadowJar {
|
task jarJarRelease {
|
||||||
classifier = ''
|
doLast {
|
||||||
configurations = [project.configurations.shade]
|
tasks.jarJar {
|
||||||
relocate 'com.tterrag.registrate', 'com.simibubi.create.repack.registrate'
|
classifier = ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
finalizedBy tasks.jarJar
|
||||||
}
|
}
|
||||||
|
|
||||||
reobf {
|
java {
|
||||||
shadowJar {}
|
withSourcesJar()
|
||||||
|
withJavadocJar()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void addLicense(jarTask) {
|
||||||
task sourcesJar(type: Jar) {
|
jarTask.from('LICENSE') {
|
||||||
from sourceSets.main.allSource
|
rename { "${it}_${project.archivesBaseName}" }
|
||||||
archiveBaseName.set(project.archivesBaseName)
|
}
|
||||||
archiveVersion.set("${project.version}")
|
|
||||||
archiveClassifier.set('sources')
|
|
||||||
}
|
}
|
||||||
|
|
||||||
task javadocJar(type: Jar, dependsOn: javadoc) {
|
jar.finalizedBy('reobfJar')
|
||||||
from javadoc.destinationDir
|
tasks.jarJar.finalizedBy('reobfJarJar')
|
||||||
archiveClassifier.set('javadoc')
|
|
||||||
}
|
|
||||||
|
|
||||||
artifacts {
|
addLicense(jar)
|
||||||
archives jar, shadowJar, sourcesJar, javadocJar
|
addLicense(tasks.jarJar)
|
||||||
}
|
|
||||||
|
|
||||||
publishing {
|
publishing {
|
||||||
tasks.publish.dependsOn 'build'
|
|
||||||
publications {
|
publications {
|
||||||
mavenJava(MavenPublication) {
|
mavenJava(MavenPublication) {
|
||||||
artifact shadowJar
|
artifactId = archivesBaseName
|
||||||
artifact sourcesJar
|
|
||||||
artifact javadocJar
|
from components.java
|
||||||
|
fg.component(it)
|
||||||
|
jarJar.component(it)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,28 +4,30 @@ org.gradle.jvmargs = -Xmx3G
|
||||||
org.gradle.daemon = false
|
org.gradle.daemon = false
|
||||||
|
|
||||||
# mod version info
|
# mod version info
|
||||||
mod_version = 0.5.0c
|
mod_version = 0.5.0.e
|
||||||
|
artifact_minecraft_version = 1.18.2
|
||||||
|
|
||||||
minecraft_version = 1.18.2
|
minecraft_version = 1.18.2
|
||||||
forge_version = 40.1.60
|
forge_version = 40.1.60
|
||||||
|
|
||||||
# build dependency versions
|
# build dependency versions
|
||||||
forgegradle_version = 5.1.+
|
forgegradle_version = 5.1.53
|
||||||
mixingradle_version = 0.7-SNAPSHOT
|
mixingradle_version = 0.7-SNAPSHOT
|
||||||
mixin_version = 0.8.5
|
mixin_version = 0.8.5
|
||||||
librarian_version = 1.+
|
librarian_version = 1.+
|
||||||
shadow_version = 7.1.0
|
|
||||||
cursegradle_version = 1.4.0
|
cursegradle_version = 1.4.0
|
||||||
parchment_version = 2022.07.10
|
parchment_version = 2022.07.10
|
||||||
|
|
||||||
# dependency versions
|
# dependency versions
|
||||||
registrate_version = MC1.18.2-1.1.3
|
registrate_version = MC1.18.2-1.1.3
|
||||||
flywheel_version = 1.18-0.6.4.86
|
flywheel_minecraft_version = 1.18.2
|
||||||
|
flywheel_version = 0.6.5-91
|
||||||
jei_minecraft_version = 1.18.2
|
jei_minecraft_version = 1.18.2
|
||||||
jei_version = 9.5.3.143
|
jei_version = 9.7.0.209
|
||||||
curios_minecraft_version = 1.18.2
|
curios_minecraft_version = 1.18.2
|
||||||
curios_version = 5.0.7.0
|
curios_version = 5.0.7.0
|
||||||
catnip_version = 0.5.5
|
catnip_version = 0.5.6
|
||||||
ponder_version = 0.5.6
|
ponder_version = 0.5.7
|
||||||
|
|
||||||
# curseforge information
|
# curseforge information
|
||||||
projectId = 328085
|
projectId = 328085
|
||||||
|
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,5 +1,5 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.1-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/black_valve_handle",
|
"model": "create:block/black_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/black_valve_handle"
|
"model": "create:block/black_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/black_valve_handle",
|
"model": "create:block/black_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/black_valve_handle",
|
"model": "create:block/black_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/black_valve_handle",
|
"model": "create:block/black_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/black_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/black_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/black_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/black_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/black_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/black_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/black_valve_handle",
|
"model": "create:block/black_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/blue_valve_handle",
|
"model": "create:block/blue_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/blue_valve_handle"
|
"model": "create:block/blue_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/blue_valve_handle",
|
"model": "create:block/blue_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/blue_valve_handle",
|
"model": "create:block/blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/blue_valve_handle",
|
"model": "create:block/blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/blue_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/blue_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/blue_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/blue_valve_handle",
|
"model": "create:block/blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/brown_valve_handle",
|
"model": "create:block/brown_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/brown_valve_handle"
|
"model": "create:block/brown_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/brown_valve_handle",
|
"model": "create:block/brown_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/brown_valve_handle",
|
"model": "create:block/brown_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/brown_valve_handle",
|
"model": "create:block/brown_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/brown_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/brown_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/brown_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/brown_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/brown_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/brown_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/brown_valve_handle",
|
"model": "create:block/brown_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/copper_valve_handle",
|
"model": "create:block/copper_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/copper_valve_handle"
|
"model": "create:block/copper_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/copper_valve_handle",
|
"model": "create:block/copper_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/copper_valve_handle",
|
"model": "create:block/copper_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/copper_valve_handle",
|
"model": "create:block/copper_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/copper_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/copper_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/copper_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/copper_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/copper_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/copper_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/copper_valve_handle",
|
"model": "create:block/copper_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/cyan_valve_handle",
|
"model": "create:block/cyan_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/cyan_valve_handle"
|
"model": "create:block/cyan_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/cyan_valve_handle",
|
"model": "create:block/cyan_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/cyan_valve_handle",
|
"model": "create:block/cyan_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/cyan_valve_handle",
|
"model": "create:block/cyan_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/cyan_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/cyan_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/cyan_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/cyan_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/cyan_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/cyan_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/cyan_valve_handle",
|
"model": "create:block/cyan_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,53 +1,5 @@
|
||||||
{
|
{
|
||||||
"multipart": [
|
"multipart": [
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"down": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/down"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"up": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/up"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"north": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/north"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"south": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/south"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"west": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/west"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"east": "true"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/connection/east"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"up": "true",
|
"up": "true",
|
||||||
|
@ -158,17 +110,6 @@
|
||||||
"model": "create:block/fluid_pipe/r_x"
|
"model": "create:block/fluid_pipe/r_x"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"up": "false",
|
|
||||||
"south": "false",
|
|
||||||
"north": "false",
|
|
||||||
"down": "false"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/none_x"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"south": "true",
|
"south": "true",
|
||||||
|
@ -279,17 +220,6 @@
|
||||||
"model": "create:block/fluid_pipe/r_y"
|
"model": "create:block/fluid_pipe/r_y"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"south": "false",
|
|
||||||
"east": "false",
|
|
||||||
"west": "false",
|
|
||||||
"north": "false"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/none_y"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"when": {
|
"when": {
|
||||||
"up": "true",
|
"up": "true",
|
||||||
|
@ -399,17 +329,6 @@
|
||||||
"apply": {
|
"apply": {
|
||||||
"model": "create:block/fluid_pipe/r_z"
|
"model": "create:block/fluid_pipe/r_z"
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
"when": {
|
|
||||||
"up": "false",
|
|
||||||
"east": "false",
|
|
||||||
"west": "false",
|
|
||||||
"down": "false"
|
|
||||||
},
|
|
||||||
"apply": {
|
|
||||||
"model": "create:block/fluid_pipe/none_z"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -1,98 +1,194 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"axis_along_first=false,enabled=false,facing=down": {
|
"axis_along_first=false,enabled=false,facing=down,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"x": 270,
|
"x": 270,
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=down": {
|
"axis_along_first=true,enabled=false,facing=down,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"x": 270
|
"x": 270
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=down": {
|
"axis_along_first=false,enabled=true,facing=down,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"x": 270,
|
"x": 270,
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=down": {
|
"axis_along_first=true,enabled=true,facing=down,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"x": 270
|
"x": 270
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=false,facing=up": {
|
"axis_along_first=false,enabled=false,facing=up,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=up": {
|
"axis_along_first=true,enabled=false,facing=up,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=up": {
|
"axis_along_first=false,enabled=true,facing=up,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=up": {
|
"axis_along_first=true,enabled=true,facing=up,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=false,facing=north": {
|
"axis_along_first=false,enabled=false,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_closed",
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=north": {
|
"axis_along_first=true,enabled=false,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=north": {
|
"axis_along_first=false,enabled=true,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_open",
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=north": {
|
"axis_along_first=true,enabled=true,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=false,facing=south": {
|
"axis_along_first=false,enabled=false,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_closed"
|
"model": "create:block/fluid_valve/block_vertical_closed"
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=south": {
|
"axis_along_first=true,enabled=false,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed"
|
"model": "create:block/fluid_valve/block_horizontal_closed"
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=south": {
|
"axis_along_first=false,enabled=true,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_open"
|
"model": "create:block/fluid_valve/block_vertical_open"
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=south": {
|
"axis_along_first=true,enabled=true,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open"
|
"model": "create:block/fluid_valve/block_horizontal_open"
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=false,facing=west": {
|
"axis_along_first=false,enabled=false,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=west": {
|
"axis_along_first=true,enabled=false,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_closed",
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=west": {
|
"axis_along_first=false,enabled=true,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=west": {
|
"axis_along_first=true,enabled=true,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_open",
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=false,facing=east": {
|
"axis_along_first=false,enabled=false,facing=east,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_closed",
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=false,facing=east": {
|
"axis_along_first=true,enabled=false,facing=east,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_closed",
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"axis_along_first=false,enabled=true,facing=east": {
|
"axis_along_first=false,enabled=true,facing=east,waterlogged=false": {
|
||||||
"model": "create:block/fluid_valve/block_horizontal_open",
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"axis_along_first=true,enabled=true,facing=east": {
|
"axis_along_first=true,enabled=true,facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"x": 270,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"x": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"x": 270,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"x": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_closed"
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed"
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_open"
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open"
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=false,facing=east,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_closed",
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=false,facing=east,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_vertical_closed",
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=false,enabled=true,facing=east,waterlogged=true": {
|
||||||
|
"model": "create:block/fluid_valve/block_horizontal_open",
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"axis_along_first=true,enabled=true,facing=east,waterlogged=true": {
|
||||||
"model": "create:block/fluid_valve/block_vertical_open",
|
"model": "create:block/fluid_valve/block_vertical_open",
|
||||||
"y": 270
|
"y": 270
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/gray_valve_handle",
|
"model": "create:block/gray_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/gray_valve_handle"
|
"model": "create:block/gray_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/gray_valve_handle",
|
"model": "create:block/gray_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/gray_valve_handle",
|
"model": "create:block/gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/gray_valve_handle",
|
"model": "create:block/gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/gray_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/gray_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/gray_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/gray_valve_handle",
|
"model": "create:block/gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/green_valve_handle",
|
"model": "create:block/green_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/green_valve_handle"
|
"model": "create:block/green_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/green_valve_handle",
|
"model": "create:block/green_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/green_valve_handle",
|
"model": "create:block/green_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/green_valve_handle",
|
"model": "create:block/green_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/green_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/green_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/green_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/green_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/green_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/green_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/green_valve_handle",
|
"model": "create:block/green_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/hand_crank/block",
|
"model": "create:block/hand_crank/block",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/hand_crank/block"
|
"model": "create:block/hand_crank/block"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/hand_crank/block",
|
"model": "create:block/hand_crank/block",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/hand_crank/block",
|
"model": "create:block/hand_crank/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/hand_crank/block",
|
"model": "create:block/hand_crank/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/hand_crank/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/hand_crank/block",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/hand_crank/block"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/hand_crank/block",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/hand_crank/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/hand_crank/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/hand_crank/block",
|
"model": "create:block/hand_crank/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/light_blue_valve_handle",
|
"model": "create:block/light_blue_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/light_blue_valve_handle"
|
"model": "create:block/light_blue_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/light_blue_valve_handle",
|
"model": "create:block/light_blue_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/light_blue_valve_handle",
|
"model": "create:block/light_blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/light_blue_valve_handle",
|
"model": "create:block/light_blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/light_blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/light_blue_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/light_blue_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/light_blue_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/light_blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/light_blue_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/light_blue_valve_handle",
|
"model": "create:block/light_blue_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/light_gray_valve_handle",
|
"model": "create:block/light_gray_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/light_gray_valve_handle"
|
"model": "create:block/light_gray_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/light_gray_valve_handle",
|
"model": "create:block/light_gray_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/light_gray_valve_handle",
|
"model": "create:block/light_gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/light_gray_valve_handle",
|
"model": "create:block/light_gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/light_gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/light_gray_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/light_gray_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/light_gray_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/light_gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/light_gray_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/light_gray_valve_handle",
|
"model": "create:block/light_gray_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/lime_valve_handle",
|
"model": "create:block/lime_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/lime_valve_handle"
|
"model": "create:block/lime_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/lime_valve_handle",
|
"model": "create:block/lime_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/lime_valve_handle",
|
"model": "create:block/lime_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/lime_valve_handle",
|
"model": "create:block/lime_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/lime_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/lime_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/lime_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/lime_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/lime_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/lime_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/lime_valve_handle",
|
"model": "create:block/lime_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/magenta_valve_handle",
|
"model": "create:block/magenta_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/magenta_valve_handle"
|
"model": "create:block/magenta_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/magenta_valve_handle",
|
"model": "create:block/magenta_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/magenta_valve_handle",
|
"model": "create:block/magenta_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/magenta_valve_handle",
|
"model": "create:block/magenta_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/magenta_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/magenta_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/magenta_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/magenta_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/magenta_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/magenta_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/magenta_valve_handle",
|
"model": "create:block/magenta_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/mechanical_drill/block",
|
"model": "create:block/mechanical_drill/block",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/mechanical_drill/block"
|
"model": "create:block/mechanical_drill/block"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/mechanical_drill/block",
|
"model": "create:block/mechanical_drill/block",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/mechanical_drill/block",
|
"model": "create:block/mechanical_drill/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/mechanical_drill/block",
|
"model": "create:block/mechanical_drill/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/mechanical_drill/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/mechanical_drill/block",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/mechanical_drill/block"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/mechanical_drill/block",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/mechanical_drill/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/mechanical_drill/block",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/mechanical_drill/block",
|
"model": "create:block/mechanical_drill/block",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/orange_valve_handle",
|
"model": "create:block/orange_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/orange_valve_handle"
|
"model": "create:block/orange_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/orange_valve_handle",
|
"model": "create:block/orange_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/orange_valve_handle",
|
"model": "create:block/orange_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/orange_valve_handle",
|
"model": "create:block/orange_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/orange_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/orange_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/orange_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/orange_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/orange_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/orange_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/orange_valve_handle",
|
"model": "create:block/orange_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/pink_valve_handle",
|
"model": "create:block/pink_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/pink_valve_handle"
|
"model": "create:block/pink_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/pink_valve_handle",
|
"model": "create:block/pink_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/pink_valve_handle",
|
"model": "create:block/pink_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/pink_valve_handle",
|
"model": "create:block/pink_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/pink_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/pink_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/pink_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/pink_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/pink_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/pink_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/pink_valve_handle",
|
"model": "create:block/pink_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/purple_valve_handle",
|
"model": "create:block/purple_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/purple_valve_handle"
|
"model": "create:block/purple_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/purple_valve_handle",
|
"model": "create:block/purple_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/purple_valve_handle",
|
"model": "create:block/purple_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/purple_valve_handle",
|
"model": "create:block/purple_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/purple_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/purple_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/purple_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/purple_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/purple_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/purple_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/purple_valve_handle",
|
"model": "create:block/purple_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/red_valve_handle",
|
"model": "create:block/red_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/red_valve_handle"
|
"model": "create:block/red_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/red_valve_handle",
|
"model": "create:block/red_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/red_valve_handle",
|
"model": "create:block/red_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/red_valve_handle",
|
"model": "create:block/red_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/red_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/red_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/red_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/red_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/red_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/red_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/red_valve_handle",
|
"model": "create:block/red_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,54 +1,107 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"face=floor,facing=north": {
|
"face=floor,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"face=wall,facing=north": {
|
"face=wall,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 270,
|
"x": 270,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"face=ceiling,facing=north": {
|
"face=ceiling,facing=north,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"face=floor,facing=south": {
|
"face=floor,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block"
|
"model": "create:block/smart_fluid_pipe/block"
|
||||||
},
|
},
|
||||||
"face=wall,facing=south": {
|
"face=wall,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 270
|
"x": 270
|
||||||
},
|
},
|
||||||
"face=ceiling,facing=south": {
|
"face=ceiling,facing=south,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 180,
|
"x": 180,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"face=floor,facing=west": {
|
"face=floor,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"face=wall,facing=west": {
|
"face=wall,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 270,
|
"x": 270,
|
||||||
"y": 90
|
"y": 90
|
||||||
},
|
},
|
||||||
"face=ceiling,facing=west": {
|
"face=ceiling,facing=west,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 180,
|
"x": 180,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"face=floor,facing=east": {
|
"face=floor,facing=east,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"face=wall,facing=east": {
|
"face=wall,facing=east,waterlogged=false": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 270,
|
"x": 270,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"face=ceiling,facing=east": {
|
"face=ceiling,facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 180,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"face=floor,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"face=wall,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 270,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"face=ceiling,facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"face=floor,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block"
|
||||||
|
},
|
||||||
|
"face=wall,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 270
|
||||||
|
},
|
||||||
|
"face=ceiling,facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 180,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"face=floor,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"face=wall,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 270,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"face=ceiling,facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 180,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"face=floor,facing=east,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"face=wall,facing=east,waterlogged=true": {
|
||||||
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
|
"x": 270,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"face=ceiling,facing=east,waterlogged=true": {
|
||||||
"model": "create:block/smart_fluid_pipe/block",
|
"model": "create:block/smart_fluid_pipe/block",
|
||||||
"x": 180,
|
"x": 180,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/white_valve_handle",
|
"model": "create:block/white_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/white_valve_handle"
|
"model": "create:block/white_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/white_valve_handle",
|
"model": "create:block/white_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/white_valve_handle",
|
"model": "create:block/white_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/white_valve_handle",
|
"model": "create:block/white_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/white_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/white_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/white_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/white_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/white_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/white_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/white_valve_handle",
|
"model": "create:block/white_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -1,27 +1,53 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=down": {
|
"facing=down,waterlogged=false": {
|
||||||
"model": "create:block/yellow_valve_handle",
|
"model": "create:block/yellow_valve_handle",
|
||||||
"x": 180
|
"x": 180
|
||||||
},
|
},
|
||||||
"facing=up": {
|
"facing=up,waterlogged=false": {
|
||||||
"model": "create:block/yellow_valve_handle"
|
"model": "create:block/yellow_valve_handle"
|
||||||
},
|
},
|
||||||
"facing=north": {
|
"facing=north,waterlogged=false": {
|
||||||
"model": "create:block/yellow_valve_handle",
|
"model": "create:block/yellow_valve_handle",
|
||||||
"x": 90
|
"x": 90
|
||||||
},
|
},
|
||||||
"facing=south": {
|
"facing=south,waterlogged=false": {
|
||||||
"model": "create:block/yellow_valve_handle",
|
"model": "create:block/yellow_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 180
|
"y": 180
|
||||||
},
|
},
|
||||||
"facing=west": {
|
"facing=west,waterlogged=false": {
|
||||||
"model": "create:block/yellow_valve_handle",
|
"model": "create:block/yellow_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 270
|
"y": 270
|
||||||
},
|
},
|
||||||
"facing=east": {
|
"facing=east,waterlogged=false": {
|
||||||
|
"model": "create:block/yellow_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 90
|
||||||
|
},
|
||||||
|
"facing=down,waterlogged=true": {
|
||||||
|
"model": "create:block/yellow_valve_handle",
|
||||||
|
"x": 180
|
||||||
|
},
|
||||||
|
"facing=up,waterlogged=true": {
|
||||||
|
"model": "create:block/yellow_valve_handle"
|
||||||
|
},
|
||||||
|
"facing=north,waterlogged=true": {
|
||||||
|
"model": "create:block/yellow_valve_handle",
|
||||||
|
"x": 90
|
||||||
|
},
|
||||||
|
"facing=south,waterlogged=true": {
|
||||||
|
"model": "create:block/yellow_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 180
|
||||||
|
},
|
||||||
|
"facing=west,waterlogged=true": {
|
||||||
|
"model": "create:block/yellow_valve_handle",
|
||||||
|
"x": 90,
|
||||||
|
"y": 270
|
||||||
|
},
|
||||||
|
"facing=east,waterlogged=true": {
|
||||||
"model": "create:block/yellow_valve_handle",
|
"model": "create:block/yellow_valve_handle",
|
||||||
"x": 90,
|
"x": 90,
|
||||||
"y": 90
|
"y": 90
|
||||||
|
|
|
@ -666,28 +666,28 @@
|
||||||
"_": "->------------------------] Advancements [------------------------<-",
|
"_": "->------------------------] Advancements [------------------------<-",
|
||||||
|
|
||||||
"advancement.create.root": "Welcome to Create",
|
"advancement.create.root": "Welcome to Create",
|
||||||
"advancement.create.root.desc": "Here be Contraptions",
|
"advancement.create.root.desc": "Here Be Contraptions",
|
||||||
"advancement.create.andesite_alloy": "Sturdier Rocks",
|
"advancement.create.andesite_alloy": "Sturdier Rocks",
|
||||||
"advancement.create.andesite_alloy.desc": "Obtain some Andesite Alloy, Create's most important resource",
|
"advancement.create.andesite_alloy.desc": "Obtain some Andesite Alloy, Create's most important resource",
|
||||||
"advancement.create.andesite_casing": "The Andesite Age",
|
"advancement.create.andesite_casing": "The Andesite Age",
|
||||||
"advancement.create.andesite_casing.desc": "Apply Andesite Alloy to wood creating a basic casing for your machines",
|
"advancement.create.andesite_casing.desc": "Apply Andesite Alloy to stripped wood, creating a basic casing for your machines",
|
||||||
"advancement.create.mechanical_press": "Bonk",
|
"advancement.create.mechanical_press": "Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "Wind maker",
|
"advancement.create.encased_fan": "Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "Processing by Particle",
|
"advancement.create.fan_processing": "Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "Workshop's most feared",
|
"advancement.create.saw_processing": "Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "Compactification",
|
"advancement.create.compacting": "Compactification",
|
||||||
"advancement.create.compacting.desc": "Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "Kelp Drive",
|
"advancement.create.belt": "Kelp Drive",
|
||||||
"advancement.create.belt.desc": "Connect two Shafts with a Mechanical Belt",
|
"advancement.create.belt.desc": "Connect two Shafts with a Mechanical Belt",
|
||||||
"advancement.create.funnel": "Airport Aesthetic",
|
"advancement.create.funnel": "Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "Vertical Logistics",
|
"advancement.create.chute": "Vertical Logistics",
|
||||||
"advancement.create.chute.desc": "Transport some items by Chute",
|
"advancement.create.chute.desc": "Transport some items by Chute",
|
||||||
"advancement.create.mechanical_mixer": "Mixing it up",
|
"advancement.create.mechanical_mixer": "Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "Sentient Fireplace",
|
"advancement.create.burner": "Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "Obtain a Blaze Burner",
|
||||||
|
@ -702,25 +702,25 @@
|
||||||
"advancement.create.super_glue": "Area of Connect",
|
"advancement.create.super_glue": "Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "Moving with Purpose",
|
"advancement.create.contraption_actors": "Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"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.portable_storage_interface.desc": "Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "Kitted out",
|
"advancement.create.wrench_goggles": "Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "Stress for Nerds",
|
"advancement.create.stressometer": "Stress for Nerds",
|
||||||
"advancement.create.stressometer.desc": "Get an exact readout with the help of Goggles and a Stressometer",
|
"advancement.create.stressometer.desc": "Get an exact readout with the help of Engineer's Goggles and a Stressometer",
|
||||||
"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.cuckoo_clock.desc": "Witness your Cuckoo Clock announce bedtime",
|
||||||
"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.windmill_maxed.desc": "Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "Springboard Champion",
|
"advancement.create.ejector_maxed": "Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "Rope to Nowhere",
|
"advancement.create.pulley_maxed": "Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "Strong Arms",
|
"advancement.create.cart_pickup": "Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "Blacksmith Artillery",
|
"advancement.create.anvil_plough": "Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "Magma Wheel",
|
"advancement.create.lava_wheel_00000": "Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "Workout Session",
|
"advancement.create.hand_crank_000": "Workout Session",
|
||||||
|
@ -729,62 +729,62 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
"advancement.create.belt_funnel_kiss.desc": "Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
||||||
"advancement.create.stressometer_maxed": "Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "More Sturdier Rocks",
|
"advancement.create.copper": "Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "The Copper Age",
|
"advancement.create.copper_casing": "The Copper Age",
|
||||||
"advancement.create.copper_casing.desc": "Apply Copper Ingots to wood creating a waterproof casing for your machines",
|
"advancement.create.copper_casing.desc": "Apply Copper Ingots to stripped wood, creating a waterproof casing for your machines",
|
||||||
"advancement.create.spout": "Sploosh",
|
"advancement.create.spout": "Sploosh",
|
||||||
"advancement.create.spout.desc": "Watch a fluid containing item be filled using a Spout",
|
"advancement.create.spout.desc": "Watch a fluid-containing item be filled by a Spout",
|
||||||
"advancement.create.drain": "Tumble Draining",
|
"advancement.create.drain": "Tumble Draining",
|
||||||
"advancement.create.drain.desc": "Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "The Powerhouse",
|
"advancement.create.steam_engine": "The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "Voice of an Angel",
|
"advancement.create.steam_whistle": "Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "Pressure to Go",
|
"advancement.create.backtank": "Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "Ready for the Depths",
|
"advancement.create.diving_suit": "Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "Under Pressure",
|
"advancement.create.mechanical_pump_0": "Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "Flow Discovery",
|
"advancement.create.glass_pipe": "Flow Discovery",
|
||||||
"advancement.create.glass_pipe.desc": "Use your Wrench on a pipe that contains a fluid",
|
"advancement.create.glass_pipe.desc": "Use your Wrench on a pipe that contains a fluid",
|
||||||
"advancement.create.water_supply": "Puddle Collector",
|
"advancement.create.water_supply": "Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "Industrial Spillage",
|
"advancement.create.hose_pulley": "Industrial Spillage",
|
||||||
"advancement.create.hose_pulley.desc": "Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
"advancement.create.hose_pulley.desc": "Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
||||||
"advancement.create.chocolate_bucket": "A World of Imagination",
|
"advancement.create.chocolate_bucket": "A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "Full Steam",
|
"advancement.create.steam_engine_maxed": "Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "Balanced Diet",
|
"advancement.create.foods": "Balanced Diet",
|
||||||
"advancement.create.foods.desc": "Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "On a Roll",
|
"advancement.create.chained_drain": "On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "Don't cross the Streams!",
|
"advancement.create.cross_streams": "Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "The Pipe Organ",
|
"advancement.create.pipe_organ": "The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "Real Alloys",
|
"advancement.create.brass": "Real Alloys",
|
||||||
"advancement.create.brass.desc": "Create some Brass from Copper and Zinc ingots in your Blaze-powered Mixer",
|
"advancement.create.brass.desc": "Create Brass Ingots by alloying Copper and Zinc Ingots in your Blaze-heated Mechanical Mixer",
|
||||||
"advancement.create.brass_casing": "The Brass Age",
|
"advancement.create.brass_casing": "The Brass Age",
|
||||||
"advancement.create.brass_casing.desc": "Apply Brass Ingots to wood creating a casing for more sophisticated machines",
|
"advancement.create.brass_casing.desc": "Apply Brass Ingots to stripped wood, creating a casing for more sophisticated machines",
|
||||||
"advancement.create.rose_quartz": "Pink Diamonds",
|
"advancement.create.rose_quartz": "Pink Diamonds",
|
||||||
"advancement.create.rose_quartz.desc": "Polish some Rose Quartz",
|
"advancement.create.rose_quartz.desc": "Polish some Rose Quartz",
|
||||||
"advancement.create.deployer": "Artificial Intelligence",
|
"advancement.create.deployer": "Artificial Intelligence",
|
||||||
"advancement.create.deployer.desc": "Place and activate a Deployer, the perfect reflection of yourself",
|
"advancement.create.deployer.desc": "Place and power a Deployer, the perfect reflection of yourself",
|
||||||
"advancement.create.precision_mechanism": "Complex Curiosities",
|
"advancement.create.precision_mechanism": "Complex Curiosities",
|
||||||
"advancement.create.precision_mechanism.desc": "Assemble a Precision Mechanism",
|
"advancement.create.precision_mechanism.desc": "Assemble a Precision Mechanism",
|
||||||
"advancement.create.speed_controller": "Engineers Hate Him!",
|
"advancement.create.speed_controller": "Engineers Hate Him!",
|
||||||
"advancement.create.speed_controller.desc": "Fine tune your contraption with a Rotation Speed Controller",
|
"advancement.create.speed_controller.desc": "Fine-tune your Contraption with a Rotation Speed Controller",
|
||||||
"advancement.create.mechanical_arm": "Busy Hands",
|
"advancement.create.mechanical_arm": "Busy Hands",
|
||||||
"advancement.create.mechanical_arm.desc": "Watch your Mechanical Arm transport its first Item",
|
"advancement.create.mechanical_arm.desc": "Watch your Mechanical Arm transport its first item",
|
||||||
"advancement.create.mechanical_crafter": "Automated Assembly",
|
"advancement.create.mechanical_crafter": "Automated Assembly",
|
||||||
"advancement.create.mechanical_crafter.desc": "Place and power some Mechanical Crafters",
|
"advancement.create.mechanical_crafter.desc": "Place and power some Mechanical Crafters",
|
||||||
"advancement.create.crushing_wheel": "A Pair of Giants",
|
"advancement.create.crushing_wheel": "A Pair of Giants",
|
||||||
|
@ -794,7 +794,7 @@
|
||||||
"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.clockwork_bearing.desc": "Assemble a structure mounted on a Clockwork Bearing",
|
||||||
"advancement.create.display_link": "Big Data",
|
"advancement.create.display_link": "Big Data",
|
||||||
"advancement.create.display_link.desc": "Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "Fwoomp!",
|
"advancement.create.potato_cannon": "Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "Defeat an enemy with your Potato Cannon",
|
"advancement.create.potato_cannon.desc": "Defeat an enemy with your Potato Cannon",
|
||||||
"advancement.create.extendo_grip": "Boioioing!",
|
"advancement.create.extendo_grip": "Boioioing!",
|
||||||
|
@ -803,54 +803,54 @@
|
||||||
"advancement.create.linked_controller.desc": "Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "Combust-o-Tron",
|
"advancement.create.arm_blaze_burner": "Combust-o-Tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "Instruct a Mechanical Arm to feed your Blaze Burner",
|
"advancement.create.arm_blaze_burner.desc": "Instruct a Mechanical Arm to feed your Blaze Burner",
|
||||||
"advancement.create.crusher_maxed_0000": "Crushing it",
|
"advancement.create.crusher_maxed_0000": "Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "Organize-o-Tron",
|
"advancement.create.arm_many_targets": "Organize-o-Tron",
|
||||||
"advancement.create.arm_many_targets.desc": "Program a Mechanical Arm with ten or more output locations",
|
"advancement.create.arm_many_targets.desc": "Program a Mechanical Arm with 10 or more output locations",
|
||||||
"advancement.create.potato_cannon_collide": "Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "Self-Driving Cart",
|
"advancement.create.self_deploying": "Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "Pound It, Bro!",
|
"advancement.create.fist_bump": "Pound It, Bro!",
|
||||||
"advancement.create.fist_bump.desc": "Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
"advancement.create.fist_bump.desc": "Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
||||||
"advancement.create.crafter_lazy_000": "Desperate Measures",
|
"advancement.create.crafter_lazy_000": "Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "To full Extent",
|
"advancement.create.extendo_grip_dual": "To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "DJ Mechanico",
|
"advancement.create.musical_arm": "DJ Mechanico",
|
||||||
"advancement.create.musical_arm.desc": "Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
"advancement.create.musical_arm.desc": "Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
||||||
"advancement.create.sturdy_sheet": "The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "The Logistical Age",
|
"advancement.create.train_casing_00": "The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "All Aboard!",
|
"advancement.create.train": "All Aboard!",
|
||||||
"advancement.create.train.desc": "Assemble your first Train",
|
"advancement.create.train.desc": "Assemble your first Train",
|
||||||
"advancement.create.conductor": "Conductor Instructor",
|
"advancement.create.conductor": "Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "Traffic Control",
|
"advancement.create.track_signal": "Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "Place a Train Signal",
|
"advancement.create.track_signal.desc": "Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "Dynamic Timetables",
|
"advancement.create.display_board_0": "Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "A new Gauge",
|
"advancement.create.track_0": "A New Gauge",
|
||||||
"advancement.create.track_0.desc": "Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "Choo choo!",
|
"advancement.create.train_whistle": "Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "Dimensional Commuter",
|
"advancement.create.train_portal": "Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "Track Factory",
|
"advancement.create.track_crafting_factory": "Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "The Longest Bend",
|
"advancement.create.long_bend": "The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "Ambitious Endeavours",
|
"advancement.create.long_train": "Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "Field Trip",
|
"advancement.create.long_travel": "Field Trip",
|
||||||
"advancement.create.long_travel.desc": "Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "Road Kill",
|
"advancement.create.train_roadkill": "Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "Expert Driver",
|
"advancement.create.red_signal": "Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "Terrible Service",
|
"advancement.create.train_crash": "Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "Blind Spot",
|
"advancement.create.train_crash_backwards": "Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1259,8 +1259,10 @@
|
||||||
"create.item_attributes.smeltable.inverted": "cannot be Smelted",
|
"create.item_attributes.smeltable.inverted": "cannot be Smelted",
|
||||||
"create.item_attributes.smokable": "can be Smoked",
|
"create.item_attributes.smokable": "can be Smoked",
|
||||||
"create.item_attributes.smokable.inverted": "cannot be Smoked",
|
"create.item_attributes.smokable.inverted": "cannot be Smoked",
|
||||||
"create.item_attributes.blastable": "is smeltable in Blast Furnace",
|
"create.item_attributes.blastable": "can be Smelted in a Blast Furnace",
|
||||||
"create.item_attributes.blastable.inverted": "is not smeltable in Blast Furnace",
|
"create.item_attributes.blastable.inverted": "cannot be Smelted in a Blast Furnace",
|
||||||
|
"create.item_attributes.compostable": "can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "is shulker %1$s",
|
"create.item_attributes.shulker_level": "is shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "is shulker not %1$s",
|
"create.item_attributes.shulker_level.inverted": "is shulker not %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "full",
|
"create.item_attributes.shulker_level.full": "full",
|
||||||
|
@ -1367,6 +1369,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "Fans pull from Above",
|
"create.tooltip.chute.fans_pull_up": "Fans pull from Above",
|
||||||
"create.tooltip.chute.fans_pull_down": "Fans pull from Below",
|
"create.tooltip.chute.fans_pull_down": "Fans pull from Below",
|
||||||
"create.tooltip.chute.contains": "Contains: %1$s x%2$s",
|
"create.tooltip.chute.contains": "Contains: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "Currently distributing:",
|
"create.tooltip.brass_tunnel.contains": "Currently distributing:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "Right-Click to retrieve",
|
"create.tooltip.brass_tunnel.retrieve": "Right-Click to retrieve",
|
||||||
|
@ -1480,6 +1486,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "exactly",
|
"create.schedule.condition.threshold.equal": "exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "%1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "%1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "Matching Content",
|
"create.schedule.condition.threshold.matching_content": "Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "Item Measure",
|
"create.schedule.condition.threshold.item_measure": "Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "Items",
|
"create.schedule.condition.threshold.items": "Items",
|
||||||
"create.schedule.condition.threshold.stacks": "Stacks",
|
"create.schedule.condition.threshold.stacks": "Stacks",
|
||||||
|
@ -1487,6 +1494,7 @@
|
||||||
"create.schedule.condition.threshold.status": "Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "Reference Item",
|
"create.schedule.condition.threshold.place_item": "Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "Redstone Link",
|
"create.schedule.condition.redstone_link": "Redstone Link",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 980",
|
"_": "Missing Localizations: 988",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -672,23 +672,23 @@
|
||||||
"advancement.create.andesite_alloy.desc": "Los materiales de create tienen nombres raros. La Aleación de Andesita es uno de ellos.",
|
"advancement.create.andesite_alloy.desc": "Los materiales de create tienen nombres raros. La Aleación de Andesita es uno de ellos.",
|
||||||
"advancement.create.andesite_casing": "La Edad de la Andesita",
|
"advancement.create.andesite_casing": "La Edad de la Andesita",
|
||||||
"advancement.create.andesite_casing.desc": "Utilice un poco de madera y aleación de andesita para crear una cubierta básica.",
|
"advancement.create.andesite_casing.desc": "Utilice un poco de madera y aleación de andesita para crear una cubierta básica.",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "UNLOCALIZED: Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "Unidad de Algas",
|
"advancement.create.belt": "Unidad de Algas",
|
||||||
"advancement.create.belt.desc": "Conecta dos ejes con una cinta mecánica.",
|
"advancement.create.belt.desc": "Conecta dos ejes con una cinta mecánica.",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "Viniendose Abajo",
|
"advancement.create.chute": "Viniendose Abajo",
|
||||||
"advancement.create.chute.desc": "Coloca un tolvogán, la contraparte vertical de las cintas mecánicas.",
|
"advancement.create.chute.desc": "Coloca un tolvogán, la contraparte vertical de las cintas mecánicas.",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
||||||
|
@ -703,25 +703,25 @@
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-By Exchange",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "Pero, ¿qué tan estresado exactamente?",
|
"advancement.create.stressometer": "Pero, ¿qué tan estresado exactamente?",
|
||||||
"advancement.create.stressometer.desc": "Coloca y dale poder a un Estresómetro. Míralo con tus gafas para leer el número exacto.",
|
"advancement.create.stressometer.desc": "Coloca y dale poder a un Estresómetro. Míralo con tus gafas para leer el número exacto.",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is It Time?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
||||||
|
@ -730,48 +730,48 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "Haz que dos ingresos montados en una cinta mecánica se besen.",
|
"advancement.create.belt_funnel_kiss.desc": "Haz que dos ingresos montados en una cinta mecánica se besen.",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "UNLOCALIZED: Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "La Edad del Cobre",
|
"advancement.create.copper_casing": "La Edad del Cobre",
|
||||||
"advancement.create.copper_casing.desc": "Utiliza planchas de cobre y un poco de madera para crear cubiertas de cobre.",
|
"advancement.create.copper_casing.desc": "Utiliza planchas de cobre y un poco de madera para crear cubiertas de cobre.",
|
||||||
"advancement.create.spout": "Splash",
|
"advancement.create.spout": "Splash",
|
||||||
"advancement.create.spout.desc": "Observa cómo se llena un objeto de líquido con un surtidor.",
|
"advancement.create.spout.desc": "Observa cómo se llena un objeto de líquido con un surtidor.",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "UNLOCALIZED: Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "Flujo Espía",
|
"advancement.create.glass_pipe": "Flujo Espía",
|
||||||
"advancement.create.glass_pipe.desc": "Observa cómo se propaga el fluido a través de una tubería con ventana. Puedes añadir una ventana a una tubería recta con tu Llave Inglesa.",
|
"advancement.create.glass_pipe.desc": "Observa cómo se propaga el fluido a través de una tubería con ventana. Puedes añadir una ventana a una tubería recta con tu Llave Inglesa.",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "Derrame industrial",
|
"advancement.create.hose_pulley": "Derrame industrial",
|
||||||
"advancement.create.hose_pulley.desc": "Baja una polea manguera y observa cómo drena o llena un cuerpo de fluido.",
|
"advancement.create.hose_pulley.desc": "Baja una polea manguera y observa cómo drena o llena un cuerpo de fluido.",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "UNLOCALIZED: Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "Aleaciones de verdad",
|
"advancement.create.brass": "Aleaciones de verdad",
|
||||||
"advancement.create.brass.desc": "Usa cobre triturado y zinc triturado para crear algo de latón.",
|
"advancement.create.brass.desc": "Usa cobre triturado y zinc triturado para crear algo de latón.",
|
||||||
"advancement.create.brass_casing": "La Edad del Latón",
|
"advancement.create.brass_casing": "La Edad del Latón",
|
||||||
|
@ -795,7 +795,7 @@
|
||||||
"advancement.create.clockwork_bearing": "Contrapción en Punto",
|
"advancement.create.clockwork_bearing": "Contrapción en Punto",
|
||||||
"advancement.create.clockwork_bearing.desc": "Ensambla una estructura montada sobre un rodamiento de relojería.",
|
"advancement.create.clockwork_bearing.desc": "Ensambla una estructura montada sobre un rodamiento de relojería.",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "¡Fwoomp!",
|
"advancement.create.potato_cannon": "¡Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "Derrota a un enemigo con tu Cañón de Papas.",
|
"advancement.create.potato_cannon.desc": "Derrota a un enemigo con tu Cañón de Papas.",
|
||||||
"advancement.create.extendo_grip": "¡Boioioing!",
|
"advancement.create.extendo_grip": "¡Boioioing!",
|
||||||
|
@ -804,54 +804,54 @@
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "Combustrón 3001",
|
"advancement.create.arm_blaze_burner": "Combustrón 3001",
|
||||||
"advancement.create.arm_blaze_burner.desc": "Instruye a un brazo mecánico para que alimente tu Quemador Blaze.",
|
"advancement.create.arm_blaze_burner.desc": "Instruye a un brazo mecánico para que alimente tu Quemador Blaze.",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "Organizatrón 3000",
|
"advancement.create.arm_many_targets": "Organizatrón 3000",
|
||||||
"advancement.create.arm_many_targets.desc": "Programa un brazo mecánico con 10 o más localizaciones de salida.",
|
"advancement.create.arm_many_targets.desc": "Programa un brazo mecánico con 10 o más localizaciones de salida.",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "¡Dame el puño, hermano!",
|
"advancement.create.fist_bump": "¡Dame el puño, hermano!",
|
||||||
"advancement.create.fist_bump.desc": "Haz que dos Desplegadores se golpeen con el puño.",
|
"advancement.create.fist_bump.desc": "Haz que dos Desplegadores se golpeen con el puño.",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "¡Póneme mi tema principal!",
|
"advancement.create.musical_arm": "¡Póneme mi tema principal!",
|
||||||
"advancement.create.musical_arm.desc": "Observa cómo un brazo mecánico opera un tocadiscos.",
|
"advancement.create.musical_arm.desc": "Observa cómo un brazo mecánico opera un tocadiscos.",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "UNLOCALIZED: A New Gauge",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "UNLOCALIZED: Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1262,6 +1262,8 @@
|
||||||
"create.item_attributes.smokable.inverted": "no puede ser Ahumado",
|
"create.item_attributes.smokable.inverted": "no puede ser Ahumado",
|
||||||
"create.item_attributes.blastable": "puede ser cocinado en un Alto Horno",
|
"create.item_attributes.blastable": "puede ser cocinado en un Alto Horno",
|
||||||
"create.item_attributes.blastable.inverted": "no puede ser cocinado en un Alto Horno",
|
"create.item_attributes.blastable.inverted": "no puede ser cocinado en un Alto Horno",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "es un shulker %1$s",
|
"create.item_attributes.shulker_level": "es un shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "no es un shulker %1$s",
|
"create.item_attributes.shulker_level.inverted": "no es un shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "lleno",
|
"create.item_attributes.shulker_level.full": "lleno",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "Ventiladores tirando desde arriba",
|
"create.tooltip.chute.fans_pull_up": "Ventiladores tirando desde arriba",
|
||||||
"create.tooltip.chute.fans_pull_down": "Ventiladores tirando desde abajo",
|
"create.tooltip.chute.fans_pull_down": "Ventiladores tirando desde abajo",
|
||||||
"create.tooltip.chute.contains": "Contiene: %1$s x%2$s",
|
"create.tooltip.chute.contains": "Contiene: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "Actualmente distribuyendo:",
|
"create.tooltip.brass_tunnel.contains": "Actualmente distribuyendo:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "Click-Derecho para recuperar",
|
"create.tooltip.brass_tunnel.retrieve": "Click-Derecho para recuperar",
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 2112",
|
"_": "Missing Localizations: 2120",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -671,24 +671,24 @@
|
||||||
"advancement.create.andesite_alloy": "UNLOCALIZED: Sturdier Rocks",
|
"advancement.create.andesite_alloy": "UNLOCALIZED: Sturdier Rocks",
|
||||||
"advancement.create.andesite_alloy.desc": "Certains matériaux de Create ont des noms bizzares; l'alliage d'andésite est l'un d'entre eux.",
|
"advancement.create.andesite_alloy.desc": "Certains matériaux de Create ont des noms bizzares; l'alliage d'andésite est l'un d'entre eux.",
|
||||||
"advancement.create.andesite_casing": "UNLOCALIZED: The Andesite Age",
|
"advancement.create.andesite_casing": "UNLOCALIZED: The Andesite Age",
|
||||||
"advancement.create.andesite_casing.desc": "UNLOCALIZED: Apply Andesite Alloy to wood creating a basic casing for your machines",
|
"advancement.create.andesite_casing.desc": "UNLOCALIZED: Apply Andesite Alloy to stripped wood, creating a basic casing for your machines",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "UNLOCALIZED: Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "UNLOCALIZED: Kelp Drive",
|
"advancement.create.belt": "UNLOCALIZED: Kelp Drive",
|
||||||
"advancement.create.belt.desc": "UNLOCALIZED: Connect two Shafts with a Mechanical Belt",
|
"advancement.create.belt.desc": "UNLOCALIZED: Connect two Shafts with a Mechanical Belt",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "UNLOCALIZED: Vertical Logistics",
|
"advancement.create.chute": "UNLOCALIZED: Vertical Logistics",
|
||||||
"advancement.create.chute.desc": "UNLOCALIZED: Transport some items by Chute",
|
"advancement.create.chute.desc": "UNLOCALIZED: Transport some items by Chute",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
||||||
|
@ -703,25 +703,25 @@
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-By Exchange",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "UNLOCALIZED: Stress for Nerds",
|
"advancement.create.stressometer": "UNLOCALIZED: Stress for Nerds",
|
||||||
"advancement.create.stressometer.desc": "UNLOCALIZED: Get an exact readout with the help of Goggles and a Stressometer",
|
"advancement.create.stressometer.desc": "UNLOCALIZED: Get an exact readout with the help of Engineer's Goggles and a Stressometer",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is It Time?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
||||||
|
@ -730,62 +730,62 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "UNLOCALIZED: Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "UNLOCALIZED: The Copper Age",
|
"advancement.create.copper_casing": "UNLOCALIZED: The Copper Age",
|
||||||
"advancement.create.copper_casing.desc": "UNLOCALIZED: Apply Copper Ingots to wood creating a waterproof casing for your machines",
|
"advancement.create.copper_casing.desc": "UNLOCALIZED: Apply Copper Ingots to stripped wood, creating a waterproof casing for your machines",
|
||||||
"advancement.create.spout": "UNLOCALIZED: Sploosh",
|
"advancement.create.spout": "UNLOCALIZED: Sploosh",
|
||||||
"advancement.create.spout.desc": "UNLOCALIZED: Watch a fluid containing item be filled using a Spout",
|
"advancement.create.spout.desc": "UNLOCALIZED: Watch a fluid-containing item be filled by a Spout",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "UNLOCALIZED: Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "UNLOCALIZED: Flow Discovery",
|
"advancement.create.glass_pipe": "UNLOCALIZED: Flow Discovery",
|
||||||
"advancement.create.glass_pipe.desc": "UNLOCALIZED: Use your Wrench on a pipe that contains a fluid",
|
"advancement.create.glass_pipe.desc": "UNLOCALIZED: Use your Wrench on a pipe that contains a fluid",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "UNLOCALIZED: Industrial Spillage",
|
"advancement.create.hose_pulley": "UNLOCALIZED: Industrial Spillage",
|
||||||
"advancement.create.hose_pulley.desc": "UNLOCALIZED: Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
"advancement.create.hose_pulley.desc": "UNLOCALIZED: Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "UNLOCALIZED: Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "UNLOCALIZED: Real Alloys",
|
"advancement.create.brass": "UNLOCALIZED: Real Alloys",
|
||||||
"advancement.create.brass.desc": "UNLOCALIZED: Create some Brass from Copper and Zinc ingots in your Blaze-powered Mixer",
|
"advancement.create.brass.desc": "UNLOCALIZED: Create Brass Ingots by alloying Copper and Zinc Ingots in your Blaze-heated Mechanical Mixer",
|
||||||
"advancement.create.brass_casing": "UNLOCALIZED: The Brass Age",
|
"advancement.create.brass_casing": "UNLOCALIZED: The Brass Age",
|
||||||
"advancement.create.brass_casing.desc": "UNLOCALIZED: Apply Brass Ingots to wood creating a casing for more sophisticated machines",
|
"advancement.create.brass_casing.desc": "UNLOCALIZED: Apply Brass Ingots to stripped wood, creating a casing for more sophisticated machines",
|
||||||
"advancement.create.rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
"advancement.create.rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
||||||
"advancement.create.rose_quartz.desc": "UNLOCALIZED: Polish some Rose Quartz",
|
"advancement.create.rose_quartz.desc": "UNLOCALIZED: Polish some Rose Quartz",
|
||||||
"advancement.create.deployer": "UNLOCALIZED: Artificial Intelligence",
|
"advancement.create.deployer": "UNLOCALIZED: Artificial Intelligence",
|
||||||
"advancement.create.deployer.desc": "UNLOCALIZED: Place and activate a Deployer, the perfect reflection of yourself",
|
"advancement.create.deployer.desc": "UNLOCALIZED: Place and power a Deployer, the perfect reflection of yourself",
|
||||||
"advancement.create.precision_mechanism": "UNLOCALIZED: Complex Curiosities",
|
"advancement.create.precision_mechanism": "UNLOCALIZED: Complex Curiosities",
|
||||||
"advancement.create.precision_mechanism.desc": "UNLOCALIZED: Assemble a Precision Mechanism",
|
"advancement.create.precision_mechanism.desc": "UNLOCALIZED: Assemble a Precision Mechanism",
|
||||||
"advancement.create.speed_controller": "UNLOCALIZED: Engineers Hate Him!",
|
"advancement.create.speed_controller": "UNLOCALIZED: Engineers Hate Him!",
|
||||||
"advancement.create.speed_controller.desc": "UNLOCALIZED: Fine tune your contraption with a Rotation Speed Controller",
|
"advancement.create.speed_controller.desc": "UNLOCALIZED: Fine-tune your Contraption with a Rotation Speed Controller",
|
||||||
"advancement.create.mechanical_arm": "UNLOCALIZED: Busy Hands",
|
"advancement.create.mechanical_arm": "UNLOCALIZED: Busy Hands",
|
||||||
"advancement.create.mechanical_arm.desc": "UNLOCALIZED: Watch your Mechanical Arm transport its first Item",
|
"advancement.create.mechanical_arm.desc": "UNLOCALIZED: Watch your Mechanical Arm transport its first item",
|
||||||
"advancement.create.mechanical_crafter": "UNLOCALIZED: Automated Assembly",
|
"advancement.create.mechanical_crafter": "UNLOCALIZED: Automated Assembly",
|
||||||
"advancement.create.mechanical_crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters",
|
"advancement.create.mechanical_crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters",
|
||||||
"advancement.create.crushing_wheel": "UNLOCALIZED: A Pair of Giants",
|
"advancement.create.crushing_wheel": "UNLOCALIZED: A Pair of Giants",
|
||||||
|
@ -795,7 +795,7 @@
|
||||||
"advancement.create.clockwork_bearing": "UNLOCALIZED: Contraption O'Clock",
|
"advancement.create.clockwork_bearing": "UNLOCALIZED: Contraption O'Clock",
|
||||||
"advancement.create.clockwork_bearing.desc": "UNLOCALIZED: Assemble a structure mounted on a Clockwork Bearing",
|
"advancement.create.clockwork_bearing.desc": "UNLOCALIZED: Assemble a structure mounted on a Clockwork Bearing",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "UNLOCALIZED: Fwoomp!",
|
"advancement.create.potato_cannon": "UNLOCALIZED: Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "UNLOCALIZED: Defeat an enemy with your Potato Cannon",
|
"advancement.create.potato_cannon.desc": "UNLOCALIZED: Defeat an enemy with your Potato Cannon",
|
||||||
"advancement.create.extendo_grip": "UNLOCALIZED: Boioioing!",
|
"advancement.create.extendo_grip": "UNLOCALIZED: Boioioing!",
|
||||||
|
@ -804,54 +804,54 @@
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "UNLOCALIZED: Combust-o-Tron",
|
"advancement.create.arm_blaze_burner": "UNLOCALIZED: Combust-o-Tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "UNLOCALIZED: Instruct a Mechanical Arm to feed your Blaze Burner",
|
"advancement.create.arm_blaze_burner.desc": "UNLOCALIZED: Instruct a Mechanical Arm to feed your Blaze Burner",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "UNLOCALIZED: Organize-o-Tron",
|
"advancement.create.arm_many_targets": "UNLOCALIZED: Organize-o-Tron",
|
||||||
"advancement.create.arm_many_targets.desc": "UNLOCALIZED: Program a Mechanical Arm with ten or more output locations",
|
"advancement.create.arm_many_targets.desc": "UNLOCALIZED: Program a Mechanical Arm with 10 or more output locations",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
||||||
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "UNLOCALIZED: DJ Mechanico",
|
"advancement.create.musical_arm": "UNLOCALIZED: DJ Mechanico",
|
||||||
"advancement.create.musical_arm.desc": "UNLOCALIZED: Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
"advancement.create.musical_arm.desc": "UNLOCALIZED: Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "UNLOCALIZED: A New Gauge",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "UNLOCALIZED: Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1262,6 +1262,8 @@
|
||||||
"create.item_attributes.smokable.inverted": "ne peut pas être fumé",
|
"create.item_attributes.smokable.inverted": "ne peut pas être fumé",
|
||||||
"create.item_attributes.blastable": "est fondable dans un Haut fourneau",
|
"create.item_attributes.blastable": "est fondable dans un Haut fourneau",
|
||||||
"create.item_attributes.blastable.inverted": "n'est pas fondable dans un Haut fourneau",
|
"create.item_attributes.blastable.inverted": "n'est pas fondable dans un Haut fourneau",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
||||||
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
||||||
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 2460",
|
"_": "Missing Localizations: 2468",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -667,28 +667,28 @@
|
||||||
"_": "->------------------------] Advancements [------------------------<-",
|
"_": "->------------------------] Advancements [------------------------<-",
|
||||||
|
|
||||||
"advancement.create.root": "UNLOCALIZED: Welcome to Create",
|
"advancement.create.root": "UNLOCALIZED: Welcome to Create",
|
||||||
"advancement.create.root.desc": "UNLOCALIZED: Here be Contraptions",
|
"advancement.create.root.desc": "UNLOCALIZED: Here Be Contraptions",
|
||||||
"advancement.create.andesite_alloy": "UNLOCALIZED: Sturdier Rocks",
|
"advancement.create.andesite_alloy": "UNLOCALIZED: Sturdier Rocks",
|
||||||
"advancement.create.andesite_alloy.desc": "UNLOCALIZED: Obtain some Andesite Alloy, Create's most important resource",
|
"advancement.create.andesite_alloy.desc": "UNLOCALIZED: Obtain some Andesite Alloy, Create's most important resource",
|
||||||
"advancement.create.andesite_casing": "UNLOCALIZED: The Andesite Age",
|
"advancement.create.andesite_casing": "UNLOCALIZED: The Andesite Age",
|
||||||
"advancement.create.andesite_casing.desc": "UNLOCALIZED: Apply Andesite Alloy to wood creating a basic casing for your machines",
|
"advancement.create.andesite_casing.desc": "UNLOCALIZED: Apply Andesite Alloy to stripped wood, creating a basic casing for your machines",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "UNLOCALIZED: Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "UNLOCALIZED: Kelp Drive",
|
"advancement.create.belt": "UNLOCALIZED: Kelp Drive",
|
||||||
"advancement.create.belt.desc": "UNLOCALIZED: Connect two Shafts with a Mechanical Belt",
|
"advancement.create.belt.desc": "UNLOCALIZED: Connect two Shafts with a Mechanical Belt",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "UNLOCALIZED: Vertical Logistics",
|
"advancement.create.chute": "UNLOCALIZED: Vertical Logistics",
|
||||||
"advancement.create.chute.desc": "UNLOCALIZED: Transport some items by Chute",
|
"advancement.create.chute.desc": "UNLOCALIZED: Transport some items by Chute",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
||||||
|
@ -703,25 +703,25 @@
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-By Exchange",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "UNLOCALIZED: Stress for Nerds",
|
"advancement.create.stressometer": "UNLOCALIZED: Stress for Nerds",
|
||||||
"advancement.create.stressometer.desc": "UNLOCALIZED: Get an exact readout with the help of Goggles and a Stressometer",
|
"advancement.create.stressometer.desc": "UNLOCALIZED: Get an exact readout with the help of Engineer's Goggles and a Stressometer",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is It Time?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
||||||
|
@ -730,62 +730,62 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "UNLOCALIZED: Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "UNLOCALIZED: The Copper Age",
|
"advancement.create.copper_casing": "UNLOCALIZED: The Copper Age",
|
||||||
"advancement.create.copper_casing.desc": "UNLOCALIZED: Apply Copper Ingots to wood creating a waterproof casing for your machines",
|
"advancement.create.copper_casing.desc": "UNLOCALIZED: Apply Copper Ingots to stripped wood, creating a waterproof casing for your machines",
|
||||||
"advancement.create.spout": "UNLOCALIZED: Sploosh",
|
"advancement.create.spout": "UNLOCALIZED: Sploosh",
|
||||||
"advancement.create.spout.desc": "UNLOCALIZED: Watch a fluid containing item be filled using a Spout",
|
"advancement.create.spout.desc": "UNLOCALIZED: Watch a fluid-containing item be filled by a Spout",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "UNLOCALIZED: Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "UNLOCALIZED: Flow Discovery",
|
"advancement.create.glass_pipe": "UNLOCALIZED: Flow Discovery",
|
||||||
"advancement.create.glass_pipe.desc": "UNLOCALIZED: Use your Wrench on a pipe that contains a fluid",
|
"advancement.create.glass_pipe.desc": "UNLOCALIZED: Use your Wrench on a pipe that contains a fluid",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "UNLOCALIZED: Industrial Spillage",
|
"advancement.create.hose_pulley": "UNLOCALIZED: Industrial Spillage",
|
||||||
"advancement.create.hose_pulley.desc": "UNLOCALIZED: Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
"advancement.create.hose_pulley.desc": "UNLOCALIZED: Lower a Hose Pulley and watch it drain or fill a body of fluid",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "UNLOCALIZED: Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "UNLOCALIZED: Real Alloys",
|
"advancement.create.brass": "UNLOCALIZED: Real Alloys",
|
||||||
"advancement.create.brass.desc": "UNLOCALIZED: Create some Brass from Copper and Zinc ingots in your Blaze-powered Mixer",
|
"advancement.create.brass.desc": "UNLOCALIZED: Create Brass Ingots by alloying Copper and Zinc Ingots in your Blaze-heated Mechanical Mixer",
|
||||||
"advancement.create.brass_casing": "UNLOCALIZED: The Brass Age",
|
"advancement.create.brass_casing": "UNLOCALIZED: The Brass Age",
|
||||||
"advancement.create.brass_casing.desc": "UNLOCALIZED: Apply Brass Ingots to wood creating a casing for more sophisticated machines",
|
"advancement.create.brass_casing.desc": "UNLOCALIZED: Apply Brass Ingots to stripped wood, creating a casing for more sophisticated machines",
|
||||||
"advancement.create.rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
"advancement.create.rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
||||||
"advancement.create.rose_quartz.desc": "UNLOCALIZED: Polish some Rose Quartz",
|
"advancement.create.rose_quartz.desc": "UNLOCALIZED: Polish some Rose Quartz",
|
||||||
"advancement.create.deployer": "UNLOCALIZED: Artificial Intelligence",
|
"advancement.create.deployer": "UNLOCALIZED: Artificial Intelligence",
|
||||||
"advancement.create.deployer.desc": "UNLOCALIZED: Place and activate a Deployer, the perfect reflection of yourself",
|
"advancement.create.deployer.desc": "UNLOCALIZED: Place and power a Deployer, the perfect reflection of yourself",
|
||||||
"advancement.create.precision_mechanism": "UNLOCALIZED: Complex Curiosities",
|
"advancement.create.precision_mechanism": "UNLOCALIZED: Complex Curiosities",
|
||||||
"advancement.create.precision_mechanism.desc": "UNLOCALIZED: Assemble a Precision Mechanism",
|
"advancement.create.precision_mechanism.desc": "UNLOCALIZED: Assemble a Precision Mechanism",
|
||||||
"advancement.create.speed_controller": "UNLOCALIZED: Engineers Hate Him!",
|
"advancement.create.speed_controller": "UNLOCALIZED: Engineers Hate Him!",
|
||||||
"advancement.create.speed_controller.desc": "UNLOCALIZED: Fine tune your contraption with a Rotation Speed Controller",
|
"advancement.create.speed_controller.desc": "UNLOCALIZED: Fine-tune your Contraption with a Rotation Speed Controller",
|
||||||
"advancement.create.mechanical_arm": "UNLOCALIZED: Busy Hands",
|
"advancement.create.mechanical_arm": "UNLOCALIZED: Busy Hands",
|
||||||
"advancement.create.mechanical_arm.desc": "UNLOCALIZED: Watch your Mechanical Arm transport its first Item",
|
"advancement.create.mechanical_arm.desc": "UNLOCALIZED: Watch your Mechanical Arm transport its first item",
|
||||||
"advancement.create.mechanical_crafter": "UNLOCALIZED: Automated Assembly",
|
"advancement.create.mechanical_crafter": "UNLOCALIZED: Automated Assembly",
|
||||||
"advancement.create.mechanical_crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters",
|
"advancement.create.mechanical_crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters",
|
||||||
"advancement.create.crushing_wheel": "UNLOCALIZED: A Pair of Giants",
|
"advancement.create.crushing_wheel": "UNLOCALIZED: A Pair of Giants",
|
||||||
|
@ -795,7 +795,7 @@
|
||||||
"advancement.create.clockwork_bearing": "UNLOCALIZED: Contraption O'Clock",
|
"advancement.create.clockwork_bearing": "UNLOCALIZED: Contraption O'Clock",
|
||||||
"advancement.create.clockwork_bearing.desc": "UNLOCALIZED: Assemble a structure mounted on a Clockwork Bearing",
|
"advancement.create.clockwork_bearing.desc": "UNLOCALIZED: Assemble a structure mounted on a Clockwork Bearing",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "UNLOCALIZED: Fwoomp!",
|
"advancement.create.potato_cannon": "UNLOCALIZED: Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "UNLOCALIZED: Defeat an enemy with your Potato Cannon",
|
"advancement.create.potato_cannon.desc": "UNLOCALIZED: Defeat an enemy with your Potato Cannon",
|
||||||
"advancement.create.extendo_grip": "UNLOCALIZED: Boioioing!",
|
"advancement.create.extendo_grip": "UNLOCALIZED: Boioioing!",
|
||||||
|
@ -804,54 +804,54 @@
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "UNLOCALIZED: Combust-o-Tron",
|
"advancement.create.arm_blaze_burner": "UNLOCALIZED: Combust-o-Tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "UNLOCALIZED: Instruct a Mechanical Arm to feed your Blaze Burner",
|
"advancement.create.arm_blaze_burner.desc": "UNLOCALIZED: Instruct a Mechanical Arm to feed your Blaze Burner",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "UNLOCALIZED: Organize-o-Tron",
|
"advancement.create.arm_many_targets": "UNLOCALIZED: Organize-o-Tron",
|
||||||
"advancement.create.arm_many_targets.desc": "UNLOCALIZED: Program a Mechanical Arm with ten or more output locations",
|
"advancement.create.arm_many_targets.desc": "UNLOCALIZED: Program a Mechanical Arm with 10 or more output locations",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
||||||
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "UNLOCALIZED: DJ Mechanico",
|
"advancement.create.musical_arm": "UNLOCALIZED: DJ Mechanico",
|
||||||
"advancement.create.musical_arm.desc": "UNLOCALIZED: Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
"advancement.create.musical_arm.desc": "UNLOCALIZED: Watch a Mechanical Arm operate your Jukebox§7\n(Hidden Advancement)",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "UNLOCALIZED: A New Gauge",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "UNLOCALIZED: Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1260,8 +1260,10 @@
|
||||||
"create.item_attributes.smeltable.inverted": "UNLOCALIZED: cannot be Smelted",
|
"create.item_attributes.smeltable.inverted": "UNLOCALIZED: cannot be Smelted",
|
||||||
"create.item_attributes.smokable": "UNLOCALIZED: can be Smoked",
|
"create.item_attributes.smokable": "UNLOCALIZED: can be Smoked",
|
||||||
"create.item_attributes.smokable.inverted": "UNLOCALIZED: cannot be Smoked",
|
"create.item_attributes.smokable.inverted": "UNLOCALIZED: cannot be Smoked",
|
||||||
"create.item_attributes.blastable": "UNLOCALIZED: is smeltable in Blast Furnace",
|
"create.item_attributes.blastable": "UNLOCALIZED: can be Smelted in a Blast Furnace",
|
||||||
"create.item_attributes.blastable.inverted": "UNLOCALIZED: is not smeltable in Blast Furnace",
|
"create.item_attributes.blastable.inverted": "UNLOCALIZED: cannot be Smelted in a Blast Furnace",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
||||||
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
||||||
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 1494",
|
"_": "Missing Localizations: 1312",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@
|
||||||
"block.create.andesite_encased_large_cogwheel": "Roda dentada grande revestida com andesito",
|
"block.create.andesite_encased_large_cogwheel": "Roda dentada grande revestida com andesito",
|
||||||
"block.create.andesite_encased_shaft": "Eixo revestido com latão",
|
"block.create.andesite_encased_shaft": "Eixo revestido com latão",
|
||||||
"block.create.andesite_funnel": "Funil de Andesito",
|
"block.create.andesite_funnel": "Funil de Andesito",
|
||||||
"block.create.andesite_ladder": "UNLOCALIZED: Andesite Ladder",
|
"block.create.andesite_ladder": "Escada de mão de andesito",
|
||||||
"block.create.andesite_pillar": "Pilar de andesito",
|
"block.create.andesite_pillar": "Pilar de andesito",
|
||||||
"block.create.andesite_tunnel": "Tunel de Andesito",
|
"block.create.andesite_tunnel": "Tunel de Andesito",
|
||||||
"block.create.asurine": "Asurino",
|
"block.create.asurine": "Asurino",
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
"block.create.brass_encased_large_cogwheel": "Roda dentada grande revestida com latão",
|
"block.create.brass_encased_large_cogwheel": "Roda dentada grande revestida com latão",
|
||||||
"block.create.brass_encased_shaft": "Eixo Revestido com Latão",
|
"block.create.brass_encased_shaft": "Eixo Revestido com Latão",
|
||||||
"block.create.brass_funnel": "Funil de Latão",
|
"block.create.brass_funnel": "Funil de Latão",
|
||||||
"block.create.brass_ladder": "UNLOCALIZED: Brass Ladder",
|
"block.create.brass_ladder": "Escada de mão de latão",
|
||||||
"block.create.brass_tunnel": "Tunel de Latão",
|
"block.create.brass_tunnel": "Tunel de Latão",
|
||||||
"block.create.brown_nixie_tube": "Tubo de nixie marrom",
|
"block.create.brown_nixie_tube": "Tubo de nixie marrom",
|
||||||
"block.create.brown_sail": "Vela marrom",
|
"block.create.brown_sail": "Vela marrom",
|
||||||
|
@ -56,10 +56,10 @@
|
||||||
"block.create.cogwheel": "Roda Dentada",
|
"block.create.cogwheel": "Roda Dentada",
|
||||||
"block.create.content_observer": "Observador de Conteúdo",
|
"block.create.content_observer": "Observador de Conteúdo",
|
||||||
"block.create.controller_rail": "Trilho Controlador",
|
"block.create.controller_rail": "Trilho Controlador",
|
||||||
"block.create.controls": "UNLOCALIZED: Train Controls",
|
"block.create.controls": "Controles do trem",
|
||||||
"block.create.copper_backtank": "Tanque Traseiro de Cobre",
|
"block.create.copper_backtank": "Tanque Traseiro de Cobre",
|
||||||
"block.create.copper_casing": "Revestimento de Cobre",
|
"block.create.copper_casing": "Revestimento de Cobre",
|
||||||
"block.create.copper_ladder": "UNLOCALIZED: Copper Ladder",
|
"block.create.copper_ladder": "Escada de mão de cobre",
|
||||||
"block.create.copper_shingle_slab": "Laje de telha de cobre",
|
"block.create.copper_shingle_slab": "Laje de telha de cobre",
|
||||||
"block.create.copper_shingle_stairs": "Escada de telha de cobre",
|
"block.create.copper_shingle_stairs": "Escada de telha de cobre",
|
||||||
"block.create.copper_shingles": "Telha de cobre",
|
"block.create.copper_shingles": "Telha de cobre",
|
||||||
|
@ -201,8 +201,8 @@
|
||||||
"block.create.deployer": "Implantador",
|
"block.create.deployer": "Implantador",
|
||||||
"block.create.depot": "Depósito",
|
"block.create.depot": "Depósito",
|
||||||
"block.create.diorite_pillar": "Pilar de diorito",
|
"block.create.diorite_pillar": "Pilar de diorito",
|
||||||
"block.create.display_board": "UNLOCALIZED: Display Board",
|
"block.create.display_board": "Placa de exibição",
|
||||||
"block.create.display_link": "UNLOCALIZED: Display Link",
|
"block.create.display_link": "Conexão de placa de exibição",
|
||||||
"block.create.dripstone_pillar": "Pilar de espeleotema",
|
"block.create.dripstone_pillar": "Pilar de espeleotema",
|
||||||
"block.create.encased_chain_drive": "Correia Revestida",
|
"block.create.encased_chain_drive": "Correia Revestida",
|
||||||
"block.create.encased_fan": "Ventilador Revestida",
|
"block.create.encased_fan": "Ventilador Revestida",
|
||||||
|
@ -213,15 +213,15 @@
|
||||||
"block.create.exposed_copper_tile_slab": "Laje de ladrilho de cobre exposta",
|
"block.create.exposed_copper_tile_slab": "Laje de ladrilho de cobre exposta",
|
||||||
"block.create.exposed_copper_tile_stairs": "Escada de ladrilho de cobre exposta",
|
"block.create.exposed_copper_tile_stairs": "Escada de ladrilho de cobre exposta",
|
||||||
"block.create.exposed_copper_tiles": "Ladrilho de cobre exposto",
|
"block.create.exposed_copper_tiles": "Ladrilho de cobre exposto",
|
||||||
"block.create.fake_track": "UNLOCALIZED: Track Marker for Maps",
|
"block.create.fake_track": "Marcador de trilhos para mapa",
|
||||||
"block.create.fluid_pipe": "Cano de Fluido",
|
"block.create.fluid_pipe": "Cano de Fluido",
|
||||||
"block.create.fluid_tank": "Tanque de fluido",
|
"block.create.fluid_tank": "Tanque de fluido",
|
||||||
"block.create.fluid_valve": "Válvula",
|
"block.create.fluid_valve": "Válvula",
|
||||||
"block.create.flywheel": "Volante de inércia",
|
"block.create.flywheel": "Volante de inércia",
|
||||||
"block.create.framed_glass": "Vidro emoldurado",
|
"block.create.framed_glass": "Vidro emoldurado",
|
||||||
"block.create.framed_glass_door": "UNLOCALIZED: Framed Glass Door",
|
"block.create.framed_glass_door": "Porta de vidro emoldurado",
|
||||||
"block.create.framed_glass_pane": "Vidraça emoldurada",
|
"block.create.framed_glass_pane": "Vidraça emoldurada",
|
||||||
"block.create.framed_glass_trapdoor": "UNLOCALIZED: Framed Glass Trapdoor",
|
"block.create.framed_glass_trapdoor": "Alçapão de vidro emoldurado",
|
||||||
"block.create.gantry_carriage": "Carruagem de Pórtico",
|
"block.create.gantry_carriage": "Carruagem de Pórtico",
|
||||||
"block.create.gantry_shaft": "Eixo de Pórtico",
|
"block.create.gantry_shaft": "Eixo de Pórtico",
|
||||||
"block.create.gearbox": "Caixa de Transmissão",
|
"block.create.gearbox": "Caixa de Transmissão",
|
||||||
|
@ -248,7 +248,7 @@
|
||||||
"block.create.item_vault": "Cofre de itens",
|
"block.create.item_vault": "Cofre de itens",
|
||||||
"block.create.jungle_window": "Janela da selva",
|
"block.create.jungle_window": "Janela da selva",
|
||||||
"block.create.jungle_window_pane": "Vidraça da selva",
|
"block.create.jungle_window_pane": "Vidraça da selva",
|
||||||
"block.create.large_bogey": "UNLOCALIZED: Large Bogey",
|
"block.create.large_bogey": "Roda grande do trem",
|
||||||
"block.create.large_cogwheel": "Roda dentada grande",
|
"block.create.large_cogwheel": "Roda dentada grande",
|
||||||
"block.create.layered_andesite": "Andesito estratificado",
|
"block.create.layered_andesite": "Andesito estratificado",
|
||||||
"block.create.layered_asurine": "Asurino estratificado",
|
"block.create.layered_asurine": "Asurino estratificado",
|
||||||
|
@ -302,8 +302,8 @@
|
||||||
"block.create.mechanical_pump": "Bomba Mecânica",
|
"block.create.mechanical_pump": "Bomba Mecânica",
|
||||||
"block.create.mechanical_saw": "Serra Mecânica",
|
"block.create.mechanical_saw": "Serra Mecânica",
|
||||||
"block.create.metal_bracket": "Suporte de metal",
|
"block.create.metal_bracket": "Suporte de metal",
|
||||||
"block.create.metal_girder": "UNLOCALIZED: Metal Girder",
|
"block.create.metal_girder": "Viga de metal",
|
||||||
"block.create.metal_girder_encased_shaft": "UNLOCALIZED: Metal Girder Encased Shaft",
|
"block.create.metal_girder_encased_shaft": "Eixo revestido com viga de metal",
|
||||||
"block.create.millstone": "Pedra de Moer",
|
"block.create.millstone": "Pedra de Moer",
|
||||||
"block.create.minecart_anchor": "Ancóra de carrinho de Mina",
|
"block.create.minecart_anchor": "Ancóra de carrinho de Mina",
|
||||||
"block.create.mysterious_cuckoo_clock": "Relógio cuckoo",
|
"block.create.mysterious_cuckoo_clock": "Relógio cuckoo",
|
||||||
|
@ -332,7 +332,7 @@
|
||||||
"block.create.pink_toolbox": "Caixa de ferramentas rosa",
|
"block.create.pink_toolbox": "Caixa de ferramentas rosa",
|
||||||
"block.create.pink_valve_handle": "Válvula rosa",
|
"block.create.pink_valve_handle": "Válvula rosa",
|
||||||
"block.create.piston_extension_pole": "Vara de Extensão do Pistão",
|
"block.create.piston_extension_pole": "Vara de Extensão do Pistão",
|
||||||
"block.create.placard": "UNLOCALIZED: Placard",
|
"block.create.placard": "Cartaz",
|
||||||
"block.create.polished_cut_andesite": "Andesito lapidado polido",
|
"block.create.polished_cut_andesite": "Andesito lapidado polido",
|
||||||
"block.create.polished_cut_andesite_slab": "Laje de andesito lapidado polido",
|
"block.create.polished_cut_andesite_slab": "Laje de andesito lapidado polido",
|
||||||
"block.create.polished_cut_andesite_stairs": "Escada de andesito lapidado polido",
|
"block.create.polished_cut_andesite_stairs": "Escada de andesito lapidado polido",
|
||||||
|
@ -392,9 +392,9 @@
|
||||||
"block.create.portable_fluid_interface": "Interface de fluidos portátil",
|
"block.create.portable_fluid_interface": "Interface de fluidos portátil",
|
||||||
"block.create.portable_storage_interface": "Interface de armazenamento portátil",
|
"block.create.portable_storage_interface": "Interface de armazenamento portátil",
|
||||||
"block.create.powered_latch": "Trava de redstone",
|
"block.create.powered_latch": "Trava de redstone",
|
||||||
"block.create.powered_shaft": "UNLOCALIZED: Powered Shaft",
|
"block.create.powered_shaft": "Eixo energizado",
|
||||||
"block.create.powered_toggle_latch": "Trave de alternância de redstone",
|
"block.create.powered_toggle_latch": "Trava de alternância de redstone",
|
||||||
"block.create.pulley_magnet": "Imã da Polia",
|
"block.create.pulley_magnet": "Ímã da Polia",
|
||||||
"block.create.pulse_extender": "Extensor de pulso",
|
"block.create.pulse_extender": "Extensor de pulso",
|
||||||
"block.create.pulse_repeater": "Repetidor de Pulso",
|
"block.create.pulse_repeater": "Repetidor de Pulso",
|
||||||
"block.create.purple_nixie_tube": "Tubo nixie roxo",
|
"block.create.purple_nixie_tube": "Tubo nixie roxo",
|
||||||
|
@ -403,7 +403,7 @@
|
||||||
"block.create.purple_toolbox": "Caixa de ferramentas roxa",
|
"block.create.purple_toolbox": "Caixa de ferramentas roxa",
|
||||||
"block.create.purple_valve_handle": "válvula roxa",
|
"block.create.purple_valve_handle": "válvula roxa",
|
||||||
"block.create.radial_chassis": "Chassis Radial",
|
"block.create.radial_chassis": "Chassis Radial",
|
||||||
"block.create.railway_casing": "UNLOCALIZED: Train Casing",
|
"block.create.railway_casing": "Revestimento de trem",
|
||||||
"block.create.raw_zinc_block": "Bloco de zinco bruto",
|
"block.create.raw_zinc_block": "Bloco de zinco bruto",
|
||||||
"block.create.red_nixie_tube": "Tubo nixie vermelho",
|
"block.create.red_nixie_tube": "Tubo nixie vermelho",
|
||||||
"block.create.red_sail": "Vela vermelha",
|
"block.create.red_sail": "Vela vermelha",
|
||||||
|
@ -415,11 +415,11 @@
|
||||||
"block.create.refined_radiance_casing": "Revestimento Brilhante",
|
"block.create.refined_radiance_casing": "Revestimento Brilhante",
|
||||||
"block.create.rope": "Corda",
|
"block.create.rope": "Corda",
|
||||||
"block.create.rope_pulley": "Polia",
|
"block.create.rope_pulley": "Polia",
|
||||||
"block.create.rose_quartz_block": "UNLOCALIZED: Block of Rose Quartz",
|
"block.create.rose_quartz_block": "Bloco de quartzo rosa",
|
||||||
"block.create.rose_quartz_lamp": "UNLOCALIZED: Rose Quartz Lamp",
|
"block.create.rose_quartz_lamp": "Lâmpada de quartzo rosa",
|
||||||
"block.create.rose_quartz_tiles": "UNLOCALIZED: Rose Quartz Tiles",
|
"block.create.rose_quartz_tiles": "Telha de quartzo rosa",
|
||||||
"block.create.rotation_speed_controller": "Controlador de Velocidade Rotacional",
|
"block.create.rotation_speed_controller": "Controlador de velocidade rotacional",
|
||||||
"block.create.sail_frame": "moldura de vela",
|
"block.create.sail_frame": "Moldura de vela",
|
||||||
"block.create.schematic_table": "Mesa de Esquema",
|
"block.create.schematic_table": "Mesa de Esquema",
|
||||||
"block.create.schematicannon": "Canhão de Esquema",
|
"block.create.schematicannon": "Canhão de Esquema",
|
||||||
"block.create.scorchia": "Escória negra",
|
"block.create.scorchia": "Escória negra",
|
||||||
|
@ -427,8 +427,8 @@
|
||||||
"block.create.scoria": "Escória",
|
"block.create.scoria": "Escória",
|
||||||
"block.create.scoria_pillar": "Pilar de escória",
|
"block.create.scoria_pillar": "Pilar de escória",
|
||||||
"block.create.secondary_linear_chassis": "Chassis linear secundário",
|
"block.create.secondary_linear_chassis": "Chassis linear secundário",
|
||||||
"block.create.sequenced_gearshift": "Câmbio sequenciado",
|
"block.create.sequenced_gearshift": "Câmbio sequencial",
|
||||||
"block.create.shadow_steel_casing": "Revestiment das Sombras",
|
"block.create.shadow_steel_casing": "Revestimento das Sombras",
|
||||||
"block.create.shaft": "Eixo",
|
"block.create.shaft": "Eixo",
|
||||||
"block.create.small_andesite_brick_slab": "Laje de tijolos pequenos de andesito",
|
"block.create.small_andesite_brick_slab": "Laje de tijolos pequenos de andesito",
|
||||||
"block.create.small_andesite_brick_stairs": "Escada de tijolos pequenos de andesito",
|
"block.create.small_andesite_brick_stairs": "Escada de tijolos pequenos de andesito",
|
||||||
|
@ -438,7 +438,7 @@
|
||||||
"block.create.small_asurine_brick_stairs": "Escada de tijolos pequenos de Asurino",
|
"block.create.small_asurine_brick_stairs": "Escada de tijolos pequenos de Asurino",
|
||||||
"block.create.small_asurine_brick_wall": "Muro de tijolos pequenos de Asurino",
|
"block.create.small_asurine_brick_wall": "Muro de tijolos pequenos de Asurino",
|
||||||
"block.create.small_asurine_bricks": "Tijolos pequenos de Asurino",
|
"block.create.small_asurine_bricks": "Tijolos pequenos de Asurino",
|
||||||
"block.create.small_bogey": "UNLOCALIZED: Small Bogey",
|
"block.create.small_bogey": "Roda do trem pequena",
|
||||||
"block.create.small_calcite_brick_slab": "Laje de tijolos pequenos de calcita",
|
"block.create.small_calcite_brick_slab": "Laje de tijolos pequenos de calcita",
|
||||||
"block.create.small_calcite_brick_stairs": "Escada de tijolos pequenos de calcita",
|
"block.create.small_calcite_brick_stairs": "Escada de tijolos pequenos de calcita",
|
||||||
"block.create.small_calcite_brick_wall": "Muro de tijolos pequenos de calcita",
|
"block.create.small_calcite_brick_wall": "Muro de tijolos pequenos de calcita",
|
||||||
|
@ -471,7 +471,7 @@
|
||||||
"block.create.small_ochrum_brick_stairs": "Escada de tijolos pequenos de Ocrom",
|
"block.create.small_ochrum_brick_stairs": "Escada de tijolos pequenos de Ocrom",
|
||||||
"block.create.small_ochrum_brick_wall": "Muro de tijolos pequenos de Ocrom",
|
"block.create.small_ochrum_brick_wall": "Muro de tijolos pequenos de Ocrom",
|
||||||
"block.create.small_ochrum_bricks": "Tijolos pequenos de Ocrom",
|
"block.create.small_ochrum_bricks": "Tijolos pequenos de Ocrom",
|
||||||
"block.create.small_rose_quartz_tiles": "UNLOCALIZED: Small Rose Quartz Tiles",
|
"block.create.small_rose_quartz_tiles": "Telha de quartzo rosa pequena",
|
||||||
"block.create.small_scorchia_brick_slab": "Laje de tijolos pequenos de escória negra",
|
"block.create.small_scorchia_brick_slab": "Laje de tijolos pequenos de escória negra",
|
||||||
"block.create.small_scorchia_brick_stairs": "Escada de tijolos pequenos de escória negra",
|
"block.create.small_scorchia_brick_stairs": "Escada de tijolos pequenos de escória negra",
|
||||||
"block.create.small_scorchia_brick_wall": "Muro de tijolos pequenos de escória negra",
|
"block.create.small_scorchia_brick_wall": "Muro de tijolos pequenos de escória negra",
|
||||||
|
@ -494,21 +494,21 @@
|
||||||
"block.create.spout": "Bica",
|
"block.create.spout": "Bica",
|
||||||
"block.create.spruce_window": "Janela de pinheiro",
|
"block.create.spruce_window": "Janela de pinheiro",
|
||||||
"block.create.spruce_window_pane": "Vidraça de pinheiro",
|
"block.create.spruce_window_pane": "Vidraça de pinheiro",
|
||||||
"block.create.steam_engine": "UNLOCALIZED: Steam Engine",
|
"block.create.steam_engine": "Motor a vapor",
|
||||||
"block.create.steam_whistle": "UNLOCALIZED: Steam Whistle",
|
"block.create.steam_whistle": "Apito a vapor",
|
||||||
"block.create.steam_whistle_extension": "UNLOCALIZED: Steam Whistle Extension",
|
"block.create.steam_whistle_extension": "Extensão do apito a vapor",
|
||||||
"block.create.sticker": "Adesivo",
|
"block.create.sticker": "Adesivo",
|
||||||
"block.create.sticky_mechanical_piston": "Pistão Mecânico Grudento",
|
"block.create.sticky_mechanical_piston": "Pistão Mecânico Grudento",
|
||||||
"block.create.stockpile_switch": "Disjuntor de Armazenamento",
|
"block.create.stockpile_switch": "Disjuntor de Armazenamento",
|
||||||
"block.create.stressometer": "Estressómetro",
|
"block.create.stressometer": "Estressómetro",
|
||||||
"block.create.tiled_glass": "Vidro Entalhado",
|
"block.create.tiled_glass": "Vidro Entalhado",
|
||||||
"block.create.tiled_glass_pane": "Vidraça Entalhada",
|
"block.create.tiled_glass_pane": "Vidraça Entalhada",
|
||||||
"block.create.track": "UNLOCALIZED: Train Track",
|
"block.create.track": "Trilho do trem",
|
||||||
"block.create.track_observer": "UNLOCALIZED: Train Observer",
|
"block.create.track_observer": "Observador de trem",
|
||||||
"block.create.track_signal": "UNLOCALIZED: Train Signal",
|
"block.create.track_signal": "Sinal de trem",
|
||||||
"block.create.track_station": "UNLOCALIZED: Train Station",
|
"block.create.track_station": "Estação de trem",
|
||||||
"block.create.train_door": "UNLOCALIZED: Train Door",
|
"block.create.train_door": "Porta de trem",
|
||||||
"block.create.train_trapdoor": "UNLOCALIZED: Train Trapdoor",
|
"block.create.train_trapdoor": "Alçapão de trem",
|
||||||
"block.create.tuff_pillar": "Pilar de tufo",
|
"block.create.tuff_pillar": "Pilar de tufo",
|
||||||
"block.create.turntable": "Mesa giratória",
|
"block.create.turntable": "Mesa giratória",
|
||||||
"block.create.veridium": "Veridiano",
|
"block.create.veridium": "Veridiano",
|
||||||
|
@ -532,7 +532,7 @@
|
||||||
"block.create.waxed_exposed_copper_tiles": "Ladrilhos de cobre exposto encerado",
|
"block.create.waxed_exposed_copper_tiles": "Ladrilhos de cobre exposto encerado",
|
||||||
"block.create.waxed_oxidized_copper_shingle_slab": "Laje de telha de cobre oxidada encerada",
|
"block.create.waxed_oxidized_copper_shingle_slab": "Laje de telha de cobre oxidada encerada",
|
||||||
"block.create.waxed_oxidized_copper_shingle_stairs": "Escada de telha de cobre oxidada encerada",
|
"block.create.waxed_oxidized_copper_shingle_stairs": "Escada de telha de cobre oxidada encerada",
|
||||||
"block.create.waxed_oxidized_copper_shingles": "Telha de cobre oxidada encerada",
|
"block.create.waxed_oxidized_copper_shingles": "Telha de cobre oxidado encerada",
|
||||||
"block.create.waxed_oxidized_copper_tile_slab": "Laje de ladrilhos de cobre oxidada encerada",
|
"block.create.waxed_oxidized_copper_tile_slab": "Laje de ladrilhos de cobre oxidada encerada",
|
||||||
"block.create.waxed_oxidized_copper_tile_stairs": "Escada de ladrilhos de cobre oxidada encerada",
|
"block.create.waxed_oxidized_copper_tile_stairs": "Escada de ladrilhos de cobre oxidada encerada",
|
||||||
"block.create.waxed_oxidized_copper_tiles": "Ladrilhos de cobre oxidado encerado",
|
"block.create.waxed_oxidized_copper_tiles": "Ladrilhos de cobre oxidado encerado",
|
||||||
|
@ -567,10 +567,10 @@
|
||||||
"enchantment.create.capacity": "Capacidade",
|
"enchantment.create.capacity": "Capacidade",
|
||||||
"enchantment.create.potato_recovery": "Recuperação de Batata",
|
"enchantment.create.potato_recovery": "Recuperação de Batata",
|
||||||
|
|
||||||
"entity.create.carriage_contraption": "UNLOCALIZED: Carriage Contraption",
|
"entity.create.carriage_contraption": "Engenhoca de carruagem",
|
||||||
"entity.create.contraption": "Engenhoca",
|
"entity.create.contraption": "Engenhoca",
|
||||||
"entity.create.crafting_blueprint": "Esquema de Fabricação",
|
"entity.create.crafting_blueprint": "Esquema de Fabricação",
|
||||||
"entity.create.gantry_contraption": "Engenhoca de Pórticolo",
|
"entity.create.gantry_contraption": "Engenhoca de Pórtico",
|
||||||
"entity.create.potato_projectile": "Projétil de batata",
|
"entity.create.potato_projectile": "Projétil de batata",
|
||||||
"entity.create.seat": "Assento",
|
"entity.create.seat": "Assento",
|
||||||
"entity.create.stationary_contraption": "Engenhoca estacionária",
|
"entity.create.stationary_contraption": "Engenhoca estacionária",
|
||||||
|
@ -595,8 +595,8 @@
|
||||||
"item.create.chocolate_glazed_berries": "Baga com Cobertura de Chocolate",
|
"item.create.chocolate_glazed_berries": "Baga com Cobertura de Chocolate",
|
||||||
"item.create.chromatic_compound": "Composto Cromático",
|
"item.create.chromatic_compound": "Composto Cromático",
|
||||||
"item.create.cinder_flour": "Farinha de Netherrack",
|
"item.create.cinder_flour": "Farinha de Netherrack",
|
||||||
"item.create.copper_backtank": "Tanque Traseiro",
|
"item.create.copper_backtank": "Tanque Traseiro de cobre",
|
||||||
"item.create.copper_backtank_placeable": "UNLOCALIZED: Copper Backtank Placeable",
|
"item.create.copper_backtank_placeable": "Tanque de cobre traseiro colocável",
|
||||||
"item.create.copper_nugget": "Pepita de Cobre",
|
"item.create.copper_nugget": "Pepita de Cobre",
|
||||||
"item.create.copper_sheet": "Chapa de Cobre",
|
"item.create.copper_sheet": "Chapa de Cobre",
|
||||||
"item.create.crafter_slot_cover": "Cobertura do slot de fabricador",
|
"item.create.crafter_slot_cover": "Cobertura do slot de fabricador",
|
||||||
|
@ -631,7 +631,7 @@
|
||||||
"item.create.honey_bucket": "Balde de Mel",
|
"item.create.honey_bucket": "Balde de Mel",
|
||||||
"item.create.honeyed_apple": "Maçã com Cobertura de Mel",
|
"item.create.honeyed_apple": "Maçã com Cobertura de Mel",
|
||||||
"item.create.incomplete_precision_mechanism": "Mecanismo de Precisão",
|
"item.create.incomplete_precision_mechanism": "Mecanismo de Precisão",
|
||||||
"item.create.incomplete_track": "UNLOCALIZED: Incomplete Track",
|
"item.create.incomplete_track": "trilho incompleto",
|
||||||
"item.create.iron_sheet": "Chapa de Ferro",
|
"item.create.iron_sheet": "Chapa de Ferro",
|
||||||
"item.create.linked_controller": "Controle conectado",
|
"item.create.linked_controller": "Controle conectado",
|
||||||
"item.create.minecart_contraption": "Engenhoca de Carrinho de Mina",
|
"item.create.minecart_contraption": "Engenhoca de Carrinho de Mina",
|
||||||
|
@ -646,15 +646,15 @@
|
||||||
"item.create.refined_radiance": "Luz Refinada",
|
"item.create.refined_radiance": "Luz Refinada",
|
||||||
"item.create.rose_quartz": "Quartzo Rosa",
|
"item.create.rose_quartz": "Quartzo Rosa",
|
||||||
"item.create.sand_paper": "Lixa",
|
"item.create.sand_paper": "Lixa",
|
||||||
"item.create.schedule": "UNLOCALIZED: Train Schedule",
|
"item.create.schedule": "Programação do trem",
|
||||||
"item.create.schematic": "Esquema",
|
"item.create.schematic": "Esquema",
|
||||||
"item.create.schematic_and_quill": "Esquema e pena",
|
"item.create.schematic_and_quill": "Esquema e pena",
|
||||||
"item.create.shadow_steel": "Aço sombrio",
|
"item.create.shadow_steel": "Aço sombrio",
|
||||||
"item.create.sturdy_sheet": "UNLOCALIZED: Sturdy Sheet",
|
"item.create.sturdy_sheet": "Chapa resistente",
|
||||||
"item.create.super_glue": "Super Cola",
|
"item.create.super_glue": "Super Cola",
|
||||||
"item.create.sweet_roll": "Rolinho Doce",
|
"item.create.sweet_roll": "Rolinho Doce",
|
||||||
"item.create.tree_fertilizer": "Fertilizante de Árvore",
|
"item.create.tree_fertilizer": "Fertilizante de Árvore",
|
||||||
"item.create.unprocessed_obsidian_sheet": "UNLOCALIZED: Unprocessed Obsidian Sheet",
|
"item.create.unprocessed_obsidian_sheet": "Chapa de obsidiana não processada",
|
||||||
"item.create.vertical_gearbox": "Caixa de Transmissão Vertical",
|
"item.create.vertical_gearbox": "Caixa de Transmissão Vertical",
|
||||||
"item.create.wand_of_symmetry": "Varinha de Simetria",
|
"item.create.wand_of_symmetry": "Varinha de Simetria",
|
||||||
"item.create.wheat_flour": "Farinha de trigo",
|
"item.create.wheat_flour": "Farinha de trigo",
|
||||||
|
@ -669,29 +669,29 @@
|
||||||
"advancement.create.root": "Bem vindo a Create",
|
"advancement.create.root": "Bem vindo a Create",
|
||||||
"advancement.create.root.desc": "É hora de construir engenhocas maravilhosas",
|
"advancement.create.root.desc": "É hora de construir engenhocas maravilhosas",
|
||||||
"advancement.create.andesite_alloy": "Aliterações Em abundância",
|
"advancement.create.andesite_alloy": "Aliterações Em abundância",
|
||||||
"advancement.create.andesite_alloy.desc": "Materiais do Create tem nomes estranhos, a liga de andesito é um deles.",
|
"advancement.create.andesite_alloy.desc": "Materiais do Create têm nomes estranhos, a liga de andesito é um deles.",
|
||||||
"advancement.create.andesite_casing": "A era do andesito",
|
"advancement.create.andesite_casing": "A era do andesito",
|
||||||
"advancement.create.andesite_casing.desc": "Use um pouco de liga de andesito e madeira para fazer um revestimento basico.",
|
"advancement.create.andesite_casing.desc": "Use um pouco de liga de andesito e madeira para fazer um revestimento basico.",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "Bonk",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "Crie algumas chapas na prensa mecânica",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "Fazedor de vento",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "Coloque e ative um ventilador revestido",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "Processando por particulas",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "Use um ventilador revestido para processar materiais",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "O mais temido da oficina",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "Use uma serra mecânica de pé para processar materiais",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "Compactação",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "Use uma prensa e uma bacia para criar menos itens de mais itens",
|
||||||
"advancement.create.belt": "Correia de alga",
|
"advancement.create.belt": "Correia de alga",
|
||||||
"advancement.create.belt.desc": "Conecte dois eixos com uma esteira mecânica.",
|
"advancement.create.belt.desc": "Conecte dois eixos com uma esteira mecânica.",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "Estética de aeroporto",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "Extraia ou insira itens num container usando um funil de andesito",
|
||||||
"advancement.create.chute": "Caindo",
|
"advancement.create.chute": "Caindo",
|
||||||
"advancement.create.chute.desc": "coloque uma calha a versão vertical da esteira mecanica.",
|
"advancement.create.chute.desc": "coloque uma calha a versão vertical da esteira mecânica.",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "Misturando",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "Combina ingredientes em uma batedeira mecânica",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "Fogueira viva",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "Obtenha um queimador de blaze",
|
||||||
"advancement.create.water_wheel": "aproveitamento hidráulico",
|
"advancement.create.water_wheel": "aproveitamento hidráulico",
|
||||||
"advancement.create.water_wheel.desc": "Coloque uma roda de água e tente conseguir gira-la!",
|
"advancement.create.water_wheel.desc": "Coloque uma roda de água e tente conseguir gira-la!",
|
||||||
"advancement.create.windmill": "Uma brisa moderada",
|
"advancement.create.windmill": "Uma brisa moderada",
|
||||||
|
@ -700,160 +700,160 @@
|
||||||
"advancement.create.shifting_gears.desc": "Conecte uma roda dentada grande com uma roda dentada pequena, permitindo você a mudar a velocidade da engenhoca.",
|
"advancement.create.shifting_gears.desc": "Conecte uma roda dentada grande com uma roda dentada pequena, permitindo você a mudar a velocidade da engenhoca.",
|
||||||
"advancement.create.millstone": "Moedor portátil",
|
"advancement.create.millstone": "Moedor portátil",
|
||||||
"advancement.create.millstone.desc": "Coloque e energize uma pedra de moer",
|
"advancement.create.millstone.desc": "Coloque e energize uma pedra de moer",
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "Área de conexão",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "Cole alguns blocos em um grupo",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "Movimento com proposito",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "Crie uma engenhoca com brocas, serras ou coletores a bordo",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "Troca por drive-thru",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "Use uma interface de armazenamento portátil para extrair ou inserir itens numa engenhoca",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "Bem equipado",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "Equipe um óculos do engenheiro e uma chave inglesa",
|
||||||
"advancement.create.stressometer": "Mas quão estressado exatamente?",
|
"advancement.create.stressometer": "Mas quão estressado exatamente?",
|
||||||
"advancement.create.stressometer.desc": "Coloque e energise o estressômetro. Olhe a este por atraves dos seus óculos para ler o valor exato.",
|
"advancement.create.stressometer.desc": "Coloque e energise o estressômetro. Olhe a este por através dos seus óculos para ler o valor exato.",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "Mas é a hora?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "testemunhe seu relógio cuckoo anunciar a hora de dormir",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "Uma brisa forte",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "Monte um moinho de vento com força maxima",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "Campeão do trampolim",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "Seja lançado mais de 30 blocos por um ejetor ponderado",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "Corda para lugar nenhum",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "Extenda uma corda por mais de 200 blocos de profundidade",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "Braçõs fortes",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "Pegue uma engenhoca de carrinho de minas com pelos menos 200 blocos colados",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "Artilharia de ferreiro",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "Lance uma bigorna com um arador mecânico",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "Roda de magma",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "Isso nãoi deveria ter funcionado§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "Sessão de malhação",
|
||||||
"advancement.create.hand_crank_000.desc": "UNLOCALIZED: Use a Hand Crank until fully exhausted§7\n(Hidden Advancement)",
|
"advancement.create.hand_crank_000.desc": "Use uma manivela até estar completamente exausto§7\n(Hidden Advancement)",
|
||||||
"advancement.create.belt_funnel_kiss": "UNLOCALIZED: The Parrots and the Flaps",
|
"advancement.create.belt_funnel_kiss": "Os pombinhos",
|
||||||
"advancement.create.belt_funnel_kiss.desc": "Faça dois funis de esteira beijarem.",
|
"advancement.create.belt_funnel_kiss.desc": "Faça dois funis de esteira beijarem.",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "Perfeitamente estressado",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "Consiga uma leitura de 100% de um estressómetro§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "Rochas mais resistentes",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "Acumule cobre para as suas explorações na manipulações de fluido",
|
||||||
"advancement.create.copper_casing": "A era do cobre",
|
"advancement.create.copper_casing": "A era do cobre",
|
||||||
"advancement.create.copper_casing.desc": "Use um pouco de chapas de cobre e madeira para criar um pouco de revestimentos de cobre.",
|
"advancement.create.copper_casing.desc": "Use um pouco de chapas de cobre e madeira para criar um pouco de revestimentos de cobre.",
|
||||||
"advancement.create.spout": "Sploosh",
|
"advancement.create.spout": "Sploosh",
|
||||||
"advancement.create.spout.desc": "Assista um item ser enchido usando uma bica.",
|
"advancement.create.spout.desc": "Assista um item ser enchido usando uma bica.",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "Cambalhotas de drenagem",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "Assista um item contendo fluidos ser esvaziado por um dreno de itens",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "A usina",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "Use um motor a vapor para gerar torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "Voz de um anjo",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "Ative um apito a vapor",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "Pressão para ir",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "Crie um tanque traseiro de cobre e faça ele acumular pressão",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "Preparado para as profundezas",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "Equipe um capacete de mergulhador junto com o seu tanque traseiro de cobre e pule na água",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "Sobre pressão",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "Coloque e ative uma bomba mecânica",
|
||||||
"advancement.create.glass_pipe": "Espião de fluxo",
|
"advancement.create.glass_pipe": "Espião de fluxo",
|
||||||
"advancement.create.glass_pipe.desc": "Assista fluidos se propagarem por através de canos de fluido com janela. Canos retos ficam com janelas quando uma chave inglesa é usada neles.",
|
"advancement.create.glass_pipe.desc": "Assista fluidos se propagarem por através de canos de fluido com janela. Canos retos ficam com janelas quando uma chave inglesa é usada neles.",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "Coletor de poças",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "Use a extremidade sugante de um cano ou bomba para coletar blocos de água",
|
||||||
"advancement.create.hose_pulley": "Vazamento industrial",
|
"advancement.create.hose_pulley": "Vazamento industrial",
|
||||||
"advancement.create.hose_pulley.desc": "desça uma polia de mangueira e assista esta drenar ou encher qualquer corpo de fluido.",
|
"advancement.create.hose_pulley.desc": "desça uma polia de mangueira e assista esta drenar ou encher qualquer corpo de fluido.",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "Um mundo de imaginação",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "Obtenha um balde de chocolate derretido",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "Apicultura autônoma",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "Use canos para sugar o mel de colmeias ou colmeias artificiais",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "Extraindo o manto",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "Bombeie de um corpo de lava grande o bastante para ser considerado infinito",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "Todo o vapor",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "Opere uma caldeira na potencia maxima",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "Dieta equilibrada",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "Crie bagas doces com chocolate, maçã com cobertura de mel e um rolinho doce; todas da mesma bica",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "Nadando com os lavagantes",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "Tente mergulhar na lava com o seu equipamento de mergulho de cobre§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "Rolando",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "Assista um item se mover através de uma fileira de drenos de item§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "Não cruze os fluxos!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "Assista dois fluidos se encontrarem na sua rede de canos§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "Órgão de tubo",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "Conecte 12 apitos a vapor com afinação diferentes a um único tanque de fluidos§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "Ligas de verdade",
|
"advancement.create.brass": "Ligas de verdade",
|
||||||
"advancement.create.brass.desc": "Use cobre esmagado e zinco esmagado para criar um pouco de latão.",
|
"advancement.create.brass.desc": "Use cobre esmagado e zinco esmagado para criar um pouco de latão.",
|
||||||
"advancement.create.brass_casing": "a era do latão",
|
"advancement.create.brass_casing": "a era do latão",
|
||||||
"advancement.create.brass_casing.desc": "Use o recentemente obtido latão e um pouco de madeira para criar um revestimento mais avançado.",
|
"advancement.create.brass_casing.desc": "Use o recentemente obtido latão e um pouco de madeira para criar um revestimento mais avançado.",
|
||||||
"advancement.create.rose_quartz": "UNLOCALIZED: Pink Diamonds",
|
"advancement.create.rose_quartz": "Diamantes rosa",
|
||||||
"advancement.create.rose_quartz.desc": "UNLOCALIZED: Polish some Rose Quartz",
|
"advancement.create.rose_quartz.desc": "Pula alguns quartzos rosas",
|
||||||
"advancement.create.deployer": "Cutuque, coloque e ataque",
|
"advancement.create.deployer": "Cutuque, coloque e ataque",
|
||||||
"advancement.create.deployer.desc": "coloque e energize um implantador, o reflexo perfeito de voce mesmo.",
|
"advancement.create.deployer.desc": "coloque e energize um implantador, o reflexo perfeito de você mesmo.",
|
||||||
"advancement.create.precision_mechanism": "Curiosidades complexas",
|
"advancement.create.precision_mechanism": "Curiosidades complexas",
|
||||||
"advancement.create.precision_mechanism.desc": "Monte um mecanismo de precisão.",
|
"advancement.create.precision_mechanism.desc": "Monte um mecanismo de precisão.",
|
||||||
"advancement.create.speed_controller": "Engenheiros odiam ele!",
|
"advancement.create.speed_controller": "Engenheiros odiam ele!",
|
||||||
"advancement.create.speed_controller.desc": "Coloque um Controlador de velocidade rotacional, o dispositivo ultimato para mudança de marcha.",
|
"advancement.create.speed_controller.desc": "Coloque um Controlador de velocidade rotacional, o dispositivo ultimato para mudança de marcha.",
|
||||||
"advancement.create.mechanical_arm": "Mâos ocupadas!",
|
"advancement.create.mechanical_arm": "Mâos ocupadas!",
|
||||||
"advancement.create.mechanical_arm.desc": "Fabrique um braço mecânico,selecione as entradas e saidas,Coloque e energize o; em seguida assista como elo faz todo o trabalho para você.",
|
"advancement.create.mechanical_arm.desc": "Fabrique um braço mecânico,selecione as entradas e saídas,Coloque e energize o; em seguida assista como elo faz todo o trabalho para você.",
|
||||||
"advancement.create.mechanical_crafter": "UNLOCALIZED: Automated Assembly",
|
"advancement.create.mechanical_crafter": "Fabricação automatica",
|
||||||
"advancement.create.mechanical_crafter.desc": "UNLOCALIZED: Place and power some Mechanical Crafters",
|
"advancement.create.mechanical_crafter.desc": "Coloque e ative alguns fabricadores mecânicos and power some Mechanical Crafters",
|
||||||
"advancement.create.crushing_wheel": "Par de gigantes",
|
"advancement.create.crushing_wheel": "Par de gigantes",
|
||||||
"advancement.create.crushing_wheel.desc": "Crie algumas rodas de moer para triturar alguns materiais eficientemente.",
|
"advancement.create.crushing_wheel.desc": "Crie algumas rodas de moer para triturar alguns materiais eficientemente.",
|
||||||
"advancement.create.haunted_bell": "UNLOCALIZED: Shadow Sense",
|
"advancement.create.haunted_bell": "Sentido sombrio",
|
||||||
"advancement.create.haunted_bell.desc": "UNLOCALIZED: Toll a Haunted Bell",
|
"advancement.create.haunted_bell.desc": "toque um sino assombrado",
|
||||||
"advancement.create.clockwork_bearing": "Hora da engenhoca",
|
"advancement.create.clockwork_bearing": "Hora da engenhoca",
|
||||||
"advancement.create.clockwork_bearing.desc": "Ative uma estrutura conectada a um rolamento de rêlogio.",
|
"advancement.create.clockwork_bearing.desc": "Ative uma estrutura conectada a um rolamento de relógio.",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "Grandes dados",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "Use uma conexão de placa de exibição para visualizar informações",
|
||||||
"advancement.create.potato_cannon": "Fwoomp!",
|
"advancement.create.potato_cannon": "Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "Derrote um inimigo com o seu canhão de batata.",
|
"advancement.create.potato_cannon.desc": "Derrote um inimigo com o seu canhão de batata.",
|
||||||
"advancement.create.extendo_grip": "Boioioing!",
|
"advancement.create.extendo_grip": "Boioioing!",
|
||||||
"advancement.create.extendo_grip.desc": "Apossar-se de uma extensão de pegador.",
|
"advancement.create.extendo_grip.desc": "Apossar-se de uma extensão de pegador.",
|
||||||
"advancement.create.linked_controller": "UNLOCALIZED: Remote Activation",
|
"advancement.create.linked_controller": "Ativação remota",
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "Ative uma coneção de redstone usando um controle conectado",
|
||||||
"advancement.create.arm_blaze_burner": "Combuste-tron",
|
"advancement.create.arm_blaze_burner": "Combuste-tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "Instrua um braço mecânico para alimentar seu queimador de blaze.",
|
"advancement.create.arm_blaze_burner.desc": "Instrua um braço mecânico para alimentar seu queimador de blaze.",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "Triturando",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "Opere um par de rodas de moer na velocidade maxima",
|
||||||
"advancement.create.arm_many_targets": "Organiza-tron",
|
"advancement.create.arm_many_targets": "Organiza-tron",
|
||||||
"advancement.create.arm_many_targets.desc": "Programe um braço mecânico com dez ou mais locais de saida.",
|
"advancement.create.arm_many_targets.desc": "Programe um braço mecânico com dez ou mais locais de saída.",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "Fogos de artificios vegetais",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "Colida diferentes tipos de projéteis do canhão de batata",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "Carrinho com auto-condução",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "Crie uma engenhoca de carrinho de minas que coloque trilhos à frente de si mesmo",
|
||||||
"advancement.create.fist_bump": "Bate isso, mano!",
|
"advancement.create.fist_bump": "Bate isso, mano!",
|
||||||
"advancement.create.fist_bump.desc": "Faça dois implantadores baterem com o punho.",
|
"advancement.create.fist_bump.desc": "Faça dois implantadores baterem com o punho.",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "Medidas desesperadas",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "Drasticamente desacelere um fabricador mecânico para procrastinar numa verdadeira infraestrutura§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "Extensão completa",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "Empunhe duas extensões de pegadores para ter alcance super-humano§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "toque minha musica!",
|
"advancement.create.musical_arm": "toque minha musica!",
|
||||||
"advancement.create.musical_arm.desc": "Assista um braço mecânico operar seu toca-discos.",
|
"advancement.create.musical_arm.desc": "Assista um braço mecânico operar seu toca-discos.",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "As rochas mais resistentes",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "Monte uma chapa resistente refinado obsidiana esmagada",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "A era da logistica",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "Use chapas resistente para criar o revestimento para componentes ferroviários",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "Todos a bordo!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "Monte o seu primeiro trem",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "Condutor instrutor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "Instrua um maquinista com uma programação",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "Controle de tráfego",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "Coloque um sinal de trem",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "Horarios dinâmicos",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "Exiba a previsão de chegada de um trem na sua placa de exibição com a ajuda da conexão de placa de exibição",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "Uma nova medida",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "Obtenha alguns trilhos de trem",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "Choo choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "Monte um apito a vapor no seu trem e ative ele enquanto dirige",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "Transporte dimensional",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "Ande de trem através de um portal do Nether",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "Fabrica de trilhos",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "Produza mais de 1000 trilhos de trem no mesmo fabricador mecânico",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "A curva mais longa",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "Crie uma seção de trilho curvada que abrange mais de 30 blocos de comprimento",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "Esforços ambiciosos",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "Crie um trem com pelo menos 6 vagões",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "Viagem de campo",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "Deixe um assento de trem a mais de 5000 blocos de distância da onde você começou a viagem",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "Atropelamento",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "Atropele um inimigo com o seu trem§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "Motorista expert",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "Atravesse um sinal vermelho com o seu trem§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "Serviço terrivel",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "Testemunhe uma batida de trem como um passageiro§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "Ponto cego",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "Bata em outro trem enquanto dirige para trás§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
|
||||||
"_": "->------------------------] UI & Messages [------------------------<-",
|
"_": "->------------------------] UI & Messages [------------------------<-",
|
||||||
|
@ -875,7 +875,7 @@
|
||||||
"death.attack.create.potato_cannon.item": "%1$s foi atirado por %2$s usando %3$s",
|
"death.attack.create.potato_cannon.item": "%1$s foi atirado por %2$s usando %3$s",
|
||||||
"death.attack.create.cuckoo_clock_explosion": "%1$s foi explodido por relógio cuco adulterado",
|
"death.attack.create.cuckoo_clock_explosion": "%1$s foi explodido por relógio cuco adulterado",
|
||||||
"death.attack.create.cuckoo_clock_explosion.player": "%1$s foi explodido por relógio cuco adulterado",
|
"death.attack.create.cuckoo_clock_explosion.player": "%1$s foi explodido por relógio cuco adulterado",
|
||||||
"death.attack.create.run_over": "UNLOCALIZED: %1$s was run over by %2$s",
|
"death.attack.create.run_over": "%1$s foi atropelado por %2$s",
|
||||||
|
|
||||||
"create.block.deployer.damage_source_name": "Implantador rebelde",
|
"create.block.deployer.damage_source_name": "Implantador rebelde",
|
||||||
"create.block.cart_assembler.invalid": "Coloque o seu montador de carrinho de minas num trilho",
|
"create.block.cart_assembler.invalid": "Coloque o seu montador de carrinho de minas num trilho",
|
||||||
|
@ -898,14 +898,14 @@
|
||||||
"create.recipe.fan_haunting": "Assombração em massa",
|
"create.recipe.fan_haunting": "Assombração em massa",
|
||||||
"create.recipe.fan_haunting.fan": "Ventilador atrás do fogo das almas ",
|
"create.recipe.fan_haunting.fan": "Ventilador atrás do fogo das almas ",
|
||||||
"create.recipe.fan_blasting": "Fundição em massa",
|
"create.recipe.fan_blasting": "Fundição em massa",
|
||||||
"create.recipe.fan_blasting.fan": "entilador atrás de lava",
|
"create.recipe.fan_blasting.fan": "ventilador atrás de lava",
|
||||||
"create.recipe.pressing": "Prensando",
|
"create.recipe.pressing": "Prensando",
|
||||||
"create.recipe.mixing": "Misturando",
|
"create.recipe.mixing": "Misturando",
|
||||||
"create.recipe.deploying": "Implantando",
|
"create.recipe.deploying": "Implantando",
|
||||||
"create.recipe.automatic_shapeless": "Fabricação sem forma automático",
|
"create.recipe.automatic_shapeless": "Fabricação sem forma automático",
|
||||||
"create.recipe.automatic_brewing": "Produção de poções",
|
"create.recipe.automatic_brewing": "Produção de poções",
|
||||||
"create.recipe.packing": "Compactando",
|
"create.recipe.packing": "Compactando",
|
||||||
"create.recipe.automatic_packing": "Compactamento automático",
|
"create.recipe.automatic_packing": "Compactação automático",
|
||||||
"create.recipe.sawing": "Serrando",
|
"create.recipe.sawing": "Serrando",
|
||||||
"create.recipe.mechanical_crafting": "Fabricação mecânica",
|
"create.recipe.mechanical_crafting": "Fabricação mecânica",
|
||||||
"create.recipe.automatic_shaped": "Fabricação com forma automática",
|
"create.recipe.automatic_shaped": "Fabricação com forma automática",
|
||||||
|
@ -915,8 +915,8 @@
|
||||||
"create.recipe.mystery_conversion": "Conversão misteriosa",
|
"create.recipe.mystery_conversion": "Conversão misteriosa",
|
||||||
"create.recipe.spout_filling": "Preenchimento com bica",
|
"create.recipe.spout_filling": "Preenchimento com bica",
|
||||||
"create.recipe.draining": "Drenação de item",
|
"create.recipe.draining": "Drenação de item",
|
||||||
"create.recipe.item_application": "UNLOCALIZED: Manual Item Application",
|
"create.recipe.item_application": "Aplicação de item manual",
|
||||||
"create.recipe.item_application.any_axe": "UNLOCALIZED: Any Axe",
|
"create.recipe.item_application.any_axe": "Qualquer machado",
|
||||||
"create.recipe.sequenced_assembly": "Montagem sequenciada",
|
"create.recipe.sequenced_assembly": "Montagem sequenciada",
|
||||||
"create.recipe.assembly.next": "Proximo: %1$s",
|
"create.recipe.assembly.next": "Proximo: %1$s",
|
||||||
"create.recipe.assembly.step": "Passo %1$s:",
|
"create.recipe.assembly.step": "Passo %1$s:",
|
||||||
|
@ -940,26 +940,26 @@
|
||||||
"create.generic.length": "Comprimento",
|
"create.generic.length": "Comprimento",
|
||||||
"create.generic.speed": "Velocidade",
|
"create.generic.speed": "Velocidade",
|
||||||
"create.generic.delay": "Demorada",
|
"create.generic.delay": "Demorada",
|
||||||
"create.generic.duration": "UNLOCALIZED: Duration",
|
"create.generic.duration": "Duração",
|
||||||
"create.generic.timeUnit": "UNLOCALIZED: Time Unit",
|
"create.generic.timeUnit": "Unidade de tempo",
|
||||||
"create.generic.unit.ticks": "Ticks",
|
"create.generic.unit.ticks": "Ticks",
|
||||||
"create.generic.unit.seconds": "Segundos",
|
"create.generic.unit.seconds": "Segundos",
|
||||||
"create.generic.unit.minutes": "Minutos",
|
"create.generic.unit.minutes": "Minutos",
|
||||||
"create.generic.daytime.hour": "UNLOCALIZED: Hour",
|
"create.generic.daytime.hour": "Horas",
|
||||||
"create.generic.daytime.minute": "UNLOCALIZED: Minute",
|
"create.generic.daytime.minute": "Minuto",
|
||||||
"create.generic.daytime.second": "UNLOCALIZED: Second",
|
"create.generic.daytime.second": "Segundo",
|
||||||
"create.generic.daytime.pm": "UNLOCALIZED: pm",
|
"create.generic.daytime.pm": "Da tarde",
|
||||||
"create.generic.daytime.am": "UNLOCALIZED: am",
|
"create.generic.daytime.am": "Da manhã",
|
||||||
"create.generic.unit.rpm": "RPM",
|
"create.generic.unit.rpm": "RPM",
|
||||||
"create.generic.unit.stress": "us",
|
"create.generic.unit.stress": "us",
|
||||||
"create.generic.unit.degrees": "°",
|
"create.generic.unit.degrees": "°",
|
||||||
"create.generic.unit.millibuckets": "%1$smB",
|
"create.generic.unit.millibuckets": "%1$smB",
|
||||||
"create.generic.unit.buckets": "UNLOCALIZED: B",
|
"create.generic.unit.buckets": "B",
|
||||||
"create.generic.clockwise": "Sentido horário",
|
"create.generic.clockwise": "Sentido horário",
|
||||||
"create.generic.counter_clockwise": "Sentido anti-horário",
|
"create.generic.counter_clockwise": "Sentido anti-horário",
|
||||||
"create.generic.in_quotes": "UNLOCALIZED: \"%1$s\"",
|
"create.generic.in_quotes": "\"%1$s\"",
|
||||||
"create.generic.pitch": "UNLOCALIZED: Pitch: %1$s",
|
"create.generic.pitch": "Afinação: %1$s",
|
||||||
"create.generic.notes": "UNLOCALIZED: F#;F;E;D#;D;C#;C;B;A#;A;G#;G",
|
"create.generic.notes": "F#;F;E;D#;D;C#;C;B;A#;A;G#;G",
|
||||||
|
|
||||||
"create.action.scroll": "Rolar",
|
"create.action.scroll": "Rolar",
|
||||||
"create.action.confirm": "Confirmar",
|
"create.action.confirm": "Confirmar",
|
||||||
|
@ -1243,7 +1243,7 @@
|
||||||
"create.item_attributes.damaged": "Está danificado",
|
"create.item_attributes.damaged": "Está danificado",
|
||||||
"create.item_attributes.damaged.inverted": "Não está danificado",
|
"create.item_attributes.damaged.inverted": "Não está danificado",
|
||||||
"create.item_attributes.badly_damaged": "Está severamente danificado",
|
"create.item_attributes.badly_damaged": "Está severamente danificado",
|
||||||
"create.item_attributes.badly_damaged.inverted": "Não esta severamente danificado",
|
"create.item_attributes.badly_damaged.inverted": "Não está severamente danificado",
|
||||||
"create.item_attributes.not_stackable": "Não pode ser empilhado",
|
"create.item_attributes.not_stackable": "Não pode ser empilhado",
|
||||||
"create.item_attributes.not_stackable.inverted": "Pode ser empilhado",
|
"create.item_attributes.not_stackable.inverted": "Pode ser empilhado",
|
||||||
"create.item_attributes.equipable": "Pode ser equipado",
|
"create.item_attributes.equipable": "Pode ser equipado",
|
||||||
|
@ -1262,6 +1262,8 @@
|
||||||
"create.item_attributes.smokable.inverted": "Não pode ser defumado",
|
"create.item_attributes.smokable.inverted": "Não pode ser defumado",
|
||||||
"create.item_attributes.blastable": "È fundível no alto-forno",
|
"create.item_attributes.blastable": "È fundível no alto-forno",
|
||||||
"create.item_attributes.blastable.inverted": "Não é fundível no alto-forno",
|
"create.item_attributes.blastable.inverted": "Não é fundível no alto-forno",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "O shulker é %1$s",
|
"create.item_attributes.shulker_level": "O shulker é %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "O shulker não é %1$s",
|
"create.item_attributes.shulker_level.inverted": "O shulker não é %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "Cheio",
|
"create.item_attributes.shulker_level.full": "Cheio",
|
||||||
|
@ -1297,8 +1299,8 @@
|
||||||
"create.item_attributes.astralsorcery_constellation.inverted": "Não esta sintonizado a %1$s",
|
"create.item_attributes.astralsorcery_constellation.inverted": "Não esta sintonizado a %1$s",
|
||||||
"create.item_attributes.astralsorcery_crystal": "Tem atributos de cristais %1$s",
|
"create.item_attributes.astralsorcery_crystal": "Tem atributos de cristais %1$s",
|
||||||
"create.item_attributes.astralsorcery_crystal.inverted": "Não tem atributos de cristais %1$s",
|
"create.item_attributes.astralsorcery_crystal.inverted": "Não tem atributos de cristais %1$s",
|
||||||
"create.item_attributes.astralsorcery_perk_gem": " %1$s Tem um atributo de benefio",
|
"create.item_attributes.astralsorcery_perk_gem": " %1$s Tem um atributo de beneficio",
|
||||||
"create.item_attributes.astralsorcery_perk_gem.inverted": "%1$s Não tem um atributo de benefio",
|
"create.item_attributes.astralsorcery_perk_gem.inverted": "%1$s Não tem um atributo de benefício",
|
||||||
|
|
||||||
"create.gui.attribute_filter.no_selected_attributes": "Nenhum atributo selecionado",
|
"create.gui.attribute_filter.no_selected_attributes": "Nenhum atributo selecionado",
|
||||||
"create.gui.attribute_filter.selected_attributes": "Atributos selecionados:",
|
"create.gui.attribute_filter.selected_attributes": "Atributos selecionados:",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "Ventiladores sugam de cima",
|
"create.tooltip.chute.fans_pull_up": "Ventiladores sugam de cima",
|
||||||
"create.tooltip.chute.fans_pull_down": "Ventiladores sugam de baixo",
|
"create.tooltip.chute.fans_pull_down": "Ventiladores sugam de baixo",
|
||||||
"create.tooltip.chute.contains": "Contem: %1$s x%2$s",
|
"create.tooltip.chute.contains": "Contem: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "Distribuindo:",
|
"create.tooltip.brass_tunnel.contains": "Distribuindo:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": " > %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": " > %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "Clique direito para recuperar item",
|
"create.tooltip.brass_tunnel.retrieve": "Clique direito para recuperar item",
|
||||||
|
@ -1393,9 +1399,9 @@
|
||||||
"create.hint.hose_pulley.title": "Abastecimento sem fundo",
|
"create.hint.hose_pulley.title": "Abastecimento sem fundo",
|
||||||
"create.hint.hose_pulley": "O corpo de fluido selecionado é considerado infinito.",
|
"create.hint.hose_pulley": "O corpo de fluido selecionado é considerado infinito.",
|
||||||
"create.hint.mechanical_arm_no_targets.title": "Sem alvos",
|
"create.hint.mechanical_arm_no_targets.title": "Sem alvos",
|
||||||
"create.hint.mechanical_arm_no_targets": "Aparentemente esse _Braço_ _Mecânico_ não foi designado nenhum _alvo._ Selecione esteiras, depósitos, funis e outros blocos com o _botão direito do mouse_ enquanto _segurando_ o _Braço_ _Mecanico_ na sua _mão_.",
|
"create.hint.mechanical_arm_no_targets": "Aparentemente esse _Braço_ _Mecânico_ não foi designado nenhum _alvo._ Selecione esteiras, depósitos, funis e outros blocos com o _botão direito do mouse_ enquanto _segurando_ o _Braço_ _Mecânico_ na sua _mão_.",
|
||||||
"create.hint.empty_bearing.title": "Atualizar o rolamento",
|
"create.hint.empty_bearing.title": "Atualizar o rolamento",
|
||||||
"create.hint.empty_bearing": " _clique com o botão direito_ o rolamento com a _mão_ _vazia_ para _conectar_ a estrutura que você construiu não frente disso.",
|
"create.hint.empty_bearing": " clique com o botão direito_ o rolamento com a _mão_ _vazia_ para _conectar_ a estrutura que você construiu não frente disso.",
|
||||||
"create.hint.full_deployer.title": "Implantador transbordando de itens",
|
"create.hint.full_deployer.title": "Implantador transbordando de itens",
|
||||||
"create.hint.full_deployer": "Aparenta que esse _inplantador_ contém _itens_ em _excesso_ que precisam ser _extraídos._ Use um _funil,_ _funil de andesito/latão_ ou outros meios para extrair os itens excedentes.",
|
"create.hint.full_deployer": "Aparenta que esse _inplantador_ contém _itens_ em _excesso_ que precisam ser _extraídos._ Use um _funil,_ _funil de andesito/latão_ ou outros meios para extrair os itens excedentes.",
|
||||||
|
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
@ -1723,7 +1731,7 @@
|
||||||
"create.super_glue.not_enough": "UNLOCALIZED: Not enough glue in inventory",
|
"create.super_glue.not_enough": "UNLOCALIZED: Not enough glue in inventory",
|
||||||
"create.super_glue.success": "UNLOCALIZED: Applying Glue...",
|
"create.super_glue.success": "UNLOCALIZED: Applying Glue...",
|
||||||
|
|
||||||
"create.gui.config.overlay1": "Oi :)",
|
"create.gui.config.overlay1": "UNLOCALIZED: Hi :)",
|
||||||
"create.gui.config.overlay2": "UNLOCALIZED: This is a sample overlay",
|
"create.gui.config.overlay2": "UNLOCALIZED: This is a sample overlay",
|
||||||
"create.gui.config.overlay3": "UNLOCALIZED: Click or drag with your mouse",
|
"create.gui.config.overlay3": "UNLOCALIZED: Click or drag with your mouse",
|
||||||
"create.gui.config.overlay4": "UNLOCALIZED: to move this preview",
|
"create.gui.config.overlay4": "UNLOCALIZED: to move this preview",
|
||||||
|
@ -1749,17 +1757,17 @@
|
||||||
"create.subtitle.contraption_disassemble": "Engenhoca para",
|
"create.subtitle.contraption_disassemble": "Engenhoca para",
|
||||||
"create.subtitle.peculiar_bell_use": "Sino peculiar toca",
|
"create.subtitle.peculiar_bell_use": "Sino peculiar toca",
|
||||||
"create.subtitle.worldshaper_place": "Zaps do terraformador",
|
"create.subtitle.worldshaper_place": "Zaps do terraformador",
|
||||||
"create.subtitle.whistle_train_manual": "UNLOCALIZED: Train honks",
|
"create.subtitle.whistle_train_manual": "Buzinas de trem",
|
||||||
"create.subtitle.steam": "UNLOCALIZED: Steam noises",
|
"create.subtitle.steam": "Sons de vapor",
|
||||||
"create.subtitle.saw_activate_stone": "Serra mecânica ativa",
|
"create.subtitle.saw_activate_stone": "Serra mecânica ativa",
|
||||||
"create.subtitle.schematicannon_finish": "Ding do canhão de esquema",
|
"create.subtitle.schematicannon_finish": "Ding do canhão de esquema",
|
||||||
"create.subtitle.crafter_craft": "Fabricador fábrica",
|
"create.subtitle.crafter_craft": "Fabricador fábrica",
|
||||||
"create.subtitle.wrench_remove": "Componente quebra",
|
"create.subtitle.wrench_remove": "Componente quebra",
|
||||||
"create.subtitle.train3": "UNLOCALIZED: Bogey wheels rumble muffled",
|
"create.subtitle.train3": "Tremer abafado das rodas do trem",
|
||||||
"create.subtitle.whistle": "UNLOCALIZED: Whistling",
|
"create.subtitle.whistle": "Apito",
|
||||||
"create.subtitle.cogs": "tremer da rodas dentadas",
|
"create.subtitle.cogs": "tremer da rodas dentadas",
|
||||||
"create.subtitle.slime_added": "Slime sendo espremido",
|
"create.subtitle.slime_added": "Slime sendo espremido",
|
||||||
"create.subtitle.whistle_train_low": "UNLOCALIZED: Low whistling",
|
"create.subtitle.whistle_train_low": "Apito baixo",
|
||||||
"create.subtitle.schematicannon_launch_block": "Canhão de esquema atira",
|
"create.subtitle.schematicannon_launch_block": "Canhão de esquema atira",
|
||||||
"create.subtitle.controller_take": "Atril esvaziado",
|
"create.subtitle.controller_take": "Atril esvaziado",
|
||||||
"create.subtitle.crafter_click": "Clicks do fabricador",
|
"create.subtitle.crafter_click": "Clicks do fabricador",
|
||||||
|
@ -1781,14 +1789,14 @@
|
||||||
"create.subtitle.wrench_rotate": "Chave inglesa usada",
|
"create.subtitle.wrench_rotate": "Chave inglesa usada",
|
||||||
"create.subtitle.potato_hit": "Impacto vegetal",
|
"create.subtitle.potato_hit": "Impacto vegetal",
|
||||||
"create.subtitle.saw_activate_wood": "Serra mecânica ativa",
|
"create.subtitle.saw_activate_wood": "Serra mecânica ativa",
|
||||||
"create.subtitle.whistle_high": "UNLOCALIZED: High whistling",
|
"create.subtitle.whistle_high": "Apito alto",
|
||||||
"create.subtitle.whistle_train_manual_low": "UNLOCALIZED: Train honks",
|
"create.subtitle.whistle_train_manual_low": "Buzinas de trem",
|
||||||
"create.subtitle.whistle_train": "UNLOCALIZED: Whistling",
|
"create.subtitle.whistle_train": "Apito",
|
||||||
"create.subtitle.haunted_bell_convert": "Sino assombrado acorda",
|
"create.subtitle.haunted_bell_convert": "Sino assombrado acorda",
|
||||||
"create.subtitle.train": "UNLOCALIZED: Bogey wheels rumble",
|
"create.subtitle.train": "Tremer das rodas do trem",
|
||||||
"create.subtitle.deny": "Boop de negação",
|
"create.subtitle.deny": "Boop de negação",
|
||||||
"create.subtitle.controller_click": "Clicks do controle",
|
"create.subtitle.controller_click": "Clicks do controle",
|
||||||
"create.subtitle.whistle_low": "UNLOCALIZED: Low whistling",
|
"create.subtitle.whistle_low": "Apito baixo",
|
||||||
"create.subtitle.copper_armor_equip": "Tilintar dos equipamentos de mergulho",
|
"create.subtitle.copper_armor_equip": "Tilintar dos equipamentos de mergulho",
|
||||||
"create.subtitle.mechanical_press_activation": "Clang da prensa mecânica",
|
"create.subtitle.mechanical_press_activation": "Clang da prensa mecânica",
|
||||||
"create.subtitle.contraption_assemble": "Engenhoca move",
|
"create.subtitle.contraption_assemble": "Engenhoca move",
|
||||||
|
@ -1805,13 +1813,13 @@
|
||||||
"item.create.example_item.tooltip.control1": "Quando Ctrl pressed",
|
"item.create.example_item.tooltip.control1": "Quando Ctrl pressed",
|
||||||
"item.create.example_item.tooltip.action1": "These controls are displayed.",
|
"item.create.example_item.tooltip.action1": "These controls are displayed.",
|
||||||
|
|
||||||
"block.create.wooden_bracket.tooltip": "UNLOCALIZED: WOODEN BRACKET",
|
"block.create.wooden_bracket.tooltip": "Suporte de madeira",
|
||||||
"block.create.wooden_bracket.tooltip.summary": "_Decore_ seus _eixos, rodas dentadas_ e _canos_com um pedaço aconchegante e de madeira de reforço.",
|
"block.create.wooden_bracket.tooltip.summary": "_Decore_ seus _eixos, rodas dentadas_ e _canos_com um pedaço aconchegante e de madeira de reforço.",
|
||||||
|
|
||||||
"block.create.metal_bracket.tooltip": "UNLOCALIZED: METAL BRACKET",
|
"block.create.metal_bracket.tooltip": "Suporte de ferro",
|
||||||
"block.create.metal_bracket.tooltip.summary": "UNLOCALIZED: _Decorate_ your _Shafts, Cogwheels_ and _Pipes_ with an industrial and sturdy bit of reinforcement.",
|
"block.create.metal_bracket.tooltip.summary": "UNLOCALIZED: _Decorate_ your _Shafts, Cogwheels_ and _Pipes_ with an industrial and sturdy bit of reinforcement.",
|
||||||
|
|
||||||
"block.create.seat.tooltip": "UNLOCALIZED: SEAT",
|
"block.create.seat.tooltip": "Assento",
|
||||||
"block.create.seat.tooltip.summary": "UNLOCALIZED: Sit yourself down and enjoy the ride! Will anchor a player onto a moving _contraption_. Great for static furniture too! Comes in a variety of colours.",
|
"block.create.seat.tooltip.summary": "UNLOCALIZED: Sit yourself down and enjoy the ride! Will anchor a player onto a moving _contraption_. Great for static furniture too! Comes in a variety of colours.",
|
||||||
"block.create.seat.tooltip.condition1": "UNLOCALIZED: Right click on Seat",
|
"block.create.seat.tooltip.condition1": "UNLOCALIZED: Right click on Seat",
|
||||||
"block.create.seat.tooltip.behaviour1": "UNLOCALIZED: Sits the player on the _Seat_. Press L-shift to leave the _Seat_.",
|
"block.create.seat.tooltip.behaviour1": "UNLOCALIZED: Sits the player on the _Seat_. Press L-shift to leave the _Seat_.",
|
||||||
|
@ -1839,10 +1847,10 @@
|
||||||
"item.create.handheld_worldshaper.tooltip.control3": "UNLOCALIZED: R-Click while Sneaking",
|
"item.create.handheld_worldshaper.tooltip.control3": "UNLOCALIZED: R-Click while Sneaking",
|
||||||
"item.create.handheld_worldshaper.tooltip.action3": "UNLOCALIZED: Opens the _Configuration Interface_",
|
"item.create.handheld_worldshaper.tooltip.action3": "UNLOCALIZED: Opens the _Configuration Interface_",
|
||||||
|
|
||||||
"item.create.tree_fertilizer.tooltip": "FERTILIZANTE DE ARVORE",
|
"item.create.tree_fertilizer.tooltip": "FERTILIZANTE DE ÁRVORE",
|
||||||
"item.create.tree_fertilizer.tooltip.summary": "Uma combinação poderosa de minerais para tipos comuns de arvores",
|
"item.create.tree_fertilizer.tooltip.summary": "Uma combinação poderosa de minerais para tipos comuns de árvores",
|
||||||
"item.create.tree_fertilizer.tooltip.condition1": "Quando usada em Mudas",
|
"item.create.tree_fertilizer.tooltip.condition1": "Quando usada em Mudas",
|
||||||
"item.create.tree_fertilizer.tooltip.behaviour1": "Cresce Arvores independentemente das suas Regras de espaço",
|
"item.create.tree_fertilizer.tooltip.behaviour1": "Cresce Árvores independentemente das suas Regras de espaço",
|
||||||
|
|
||||||
"item.create.extendo_grip.tooltip": "UNLOCALIZED: EXTENDO GRIP",
|
"item.create.extendo_grip.tooltip": "UNLOCALIZED: EXTENDO GRIP",
|
||||||
"item.create.extendo_grip.tooltip.summary": "UNLOCALIZED: Boioioing! Greatly _increases reach distance_ of the wielder. Can be powered with Air Pressure from a _Copper_ _Backtank_",
|
"item.create.extendo_grip.tooltip.summary": "UNLOCALIZED: Boioioing! Greatly _increases reach distance_ of the wielder. Can be powered with Air Pressure from a _Copper_ _Backtank_",
|
||||||
|
@ -1876,7 +1884,7 @@
|
||||||
"item.create.empty_schematic.tooltip.summary": "Usado como ingrediente em receitas e para escrever na _Mesa_ _de_ _Esquematizar_",
|
"item.create.empty_schematic.tooltip.summary": "Usado como ingrediente em receitas e para escrever na _Mesa_ _de_ _Esquematizar_",
|
||||||
|
|
||||||
"item.create.schematic.tooltip": "ESQUEMA",
|
"item.create.schematic.tooltip": "ESQUEMA",
|
||||||
"item.create.schematic.tooltip.summary": "Contem uma estrutura para ser posicionada e colocada no mundo. Posicione o Holograma como desejar e use um _Esquemaannon_ para construí-lo.",
|
"item.create.schematic.tooltip.summary": "Contém uma estrutura para ser posicionada e colocada no mundo. Posicione o Holograma como desejar e use um _Esquemaannon_ para construí-lo.",
|
||||||
"item.create.schematic.tooltip.condition1": "Quando Em mãos",
|
"item.create.schematic.tooltip.condition1": "Quando Em mãos",
|
||||||
"item.create.schematic.tooltip.behaviour1": "Pode ser posicionado usando as Ferramentas em Tela",
|
"item.create.schematic.tooltip.behaviour1": "Pode ser posicionado usando as Ferramentas em Tela",
|
||||||
"item.create.schematic.tooltip.control1": "B-Direito enquanto Abaixado",
|
"item.create.schematic.tooltip.control1": "B-Direito enquanto Abaixado",
|
||||||
|
@ -1954,7 +1962,7 @@
|
||||||
"block.create.content_observer.tooltip.behaviour2": "UNLOCALIZED: Emits a _Redstone Pulse_ when a _matching_ Item is _transferred_.",
|
"block.create.content_observer.tooltip.behaviour2": "UNLOCALIZED: Emits a _Redstone Pulse_ when a _matching_ Item is _transferred_.",
|
||||||
|
|
||||||
"block.create.creative_crate.tooltip": "Caixa Criativa",
|
"block.create.creative_crate.tooltip": "Caixa Criativa",
|
||||||
"block.create.creative_crate.tooltip.summary": "Provê um suprimento infinito de blocos para Canho~es de Esquema próximos",
|
"block.create.creative_crate.tooltip.summary": "Provê um suprimento infinito de blocos para Canhões de Esquema próximos",
|
||||||
"block.create.creative_crate.tooltip.condition1": "UNLOCALIZED: When Item in Filter Slot",
|
"block.create.creative_crate.tooltip.condition1": "UNLOCALIZED: When Item in Filter Slot",
|
||||||
"block.create.creative_crate.tooltip.behaviour1": "UNLOCALIZED: Anything _extracting_ from this container will provide an _endless supply_ of the item specified. Items _inserted_ into this crate will be _voided._",
|
"block.create.creative_crate.tooltip.behaviour1": "UNLOCALIZED: Anything _extracting_ from this container will provide an _endless supply_ of the item specified. Items _inserted_ into this crate will be _voided._",
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 2169",
|
"_": "Missing Localizations: 2177",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -672,23 +672,23 @@
|
||||||
"advancement.create.andesite_alloy.desc": "Materiais do Create tem nomes estranhos, a liga de andesito é um deles.",
|
"advancement.create.andesite_alloy.desc": "Materiais do Create tem nomes estranhos, a liga de andesito é um deles.",
|
||||||
"advancement.create.andesite_casing": "A era do andesito",
|
"advancement.create.andesite_casing": "A era do andesito",
|
||||||
"advancement.create.andesite_casing.desc": "Use um pouco de liga de andesito e madeira para fazer um revestimento basico.",
|
"advancement.create.andesite_casing.desc": "Use um pouco de liga de andesito e madeira para fazer um revestimento basico.",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "UNLOCALIZED: Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "Correia de alga",
|
"advancement.create.belt": "Correia de alga",
|
||||||
"advancement.create.belt.desc": "Conecte dois eixos com uma esteira mecanica.",
|
"advancement.create.belt.desc": "Conecte dois eixos com uma esteira mecanica.",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "Caindo",
|
"advancement.create.chute": "Caindo",
|
||||||
"advancement.create.chute.desc": "coloque uma calha a versão vertical da esteira mecanica.",
|
"advancement.create.chute.desc": "coloque uma calha a versão vertical da esteira mecanica.",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
||||||
|
@ -703,25 +703,25 @@
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-By Exchange",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "Mas quão estressado exatamente?",
|
"advancement.create.stressometer": "Mas quão estressado exatamente?",
|
||||||
"advancement.create.stressometer.desc": "Coloque e energise o estressómetro. Olhe a este por atraves dos seus óculos para ler o valor exato.",
|
"advancement.create.stressometer.desc": "Coloque e energise o estressómetro. Olhe a este por atraves dos seus óculos para ler o valor exato.",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is It Time?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
||||||
|
@ -730,48 +730,48 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
"advancement.create.belt_funnel_kiss.desc": "UNLOCALIZED: Make two Belt-mounted Funnels kiss§7\n(Hidden Advancement)",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "UNLOCALIZED: Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "A era do cobre",
|
"advancement.create.copper_casing": "A era do cobre",
|
||||||
"advancement.create.copper_casing.desc": "Use um pouco de chapas de cobre e madeira para criar um pouco de revestimentos de cobre.",
|
"advancement.create.copper_casing.desc": "Use um pouco de chapas de cobre e madeira para criar um pouco de revestimentos de cobre.",
|
||||||
"advancement.create.spout": "Sploosh",
|
"advancement.create.spout": "Sploosh",
|
||||||
"advancement.create.spout.desc": "Assista um item ser enchido usando uma bica.",
|
"advancement.create.spout.desc": "Assista um item ser enchido usando uma bica.",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "UNLOCALIZED: Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "Espião de fluxo",
|
"advancement.create.glass_pipe": "Espião de fluxo",
|
||||||
"advancement.create.glass_pipe.desc": "Assista fluidos se propagarem por através de canos de fluido com janela. Canos retos ficam com janelas quando uma chave inglesa é usada neles.",
|
"advancement.create.glass_pipe.desc": "Assista fluidos se propagarem por através de canos de fluido com janela. Canos retos ficam com janelas quando uma chave inglesa é usada neles.",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "Vazamento industrial",
|
"advancement.create.hose_pulley": "Vazamento industrial",
|
||||||
"advancement.create.hose_pulley.desc": "desça uma polia de mangueira e assista esta drenar ou encher qualquer corpo de fluido.",
|
"advancement.create.hose_pulley.desc": "desça uma polia de mangueira e assista esta drenar ou encher qualquer corpo de fluido.",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "UNLOCALIZED: Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "Ligas de verdade",
|
"advancement.create.brass": "Ligas de verdade",
|
||||||
"advancement.create.brass.desc": "Use cobre esmagado e zinco esmagado para criar um pouco de latão.",
|
"advancement.create.brass.desc": "Use cobre esmagado e zinco esmagado para criar um pouco de latão.",
|
||||||
"advancement.create.brass_casing": "a era do latão",
|
"advancement.create.brass_casing": "a era do latão",
|
||||||
|
@ -795,7 +795,7 @@
|
||||||
"advancement.create.clockwork_bearing": "Hora da engenhoca",
|
"advancement.create.clockwork_bearing": "Hora da engenhoca",
|
||||||
"advancement.create.clockwork_bearing.desc": "Ative uma estrutura conectada a um rolamento de rêlogio.",
|
"advancement.create.clockwork_bearing.desc": "Ative uma estrutura conectada a um rolamento de rêlogio.",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "Fwoomp!",
|
"advancement.create.potato_cannon": "Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "Derrote um inimigo com o seu canhão de batata.",
|
"advancement.create.potato_cannon.desc": "Derrote um inimigo com o seu canhão de batata.",
|
||||||
"advancement.create.extendo_grip": "Boioioing!",
|
"advancement.create.extendo_grip": "Boioioing!",
|
||||||
|
@ -804,54 +804,54 @@
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "Combuste-tron",
|
"advancement.create.arm_blaze_burner": "Combuste-tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "Instrua um braço mecânico para alimentar seu queimador de blaze.",
|
"advancement.create.arm_blaze_burner.desc": "Instrua um braço mecânico para alimentar seu queimador de blaze.",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "Organiza-tron",
|
"advancement.create.arm_many_targets": "Organiza-tron",
|
||||||
"advancement.create.arm_many_targets.desc": "Programe um braço mecânico com dez ou mais locais de saida.",
|
"advancement.create.arm_many_targets.desc": "Programe um braço mecânico com dez ou mais locais de saida.",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
"advancement.create.fist_bump": "UNLOCALIZED: Pound It, Bro!",
|
||||||
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
"advancement.create.fist_bump.desc": "UNLOCALIZED: Make two Deployers fist-bump§7\n(Hidden Advancement)",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "toque minha musica!",
|
"advancement.create.musical_arm": "toque minha musica!",
|
||||||
"advancement.create.musical_arm.desc": "Assista um braço mecânico operar seu toca-discos.",
|
"advancement.create.musical_arm.desc": "Assista um braço mecânico operar seu toca-discos.",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "UNLOCALIZED: A New Gauge",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "UNLOCALIZED: Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1260,8 +1260,10 @@
|
||||||
"create.item_attributes.smeltable.inverted": "UNLOCALIZED: cannot be Smelted",
|
"create.item_attributes.smeltable.inverted": "UNLOCALIZED: cannot be Smelted",
|
||||||
"create.item_attributes.smokable": "UNLOCALIZED: can be Smoked",
|
"create.item_attributes.smokable": "UNLOCALIZED: can be Smoked",
|
||||||
"create.item_attributes.smokable.inverted": "UNLOCALIZED: cannot be Smoked",
|
"create.item_attributes.smokable.inverted": "UNLOCALIZED: cannot be Smoked",
|
||||||
"create.item_attributes.blastable": "UNLOCALIZED: is smeltable in Blast Furnace",
|
"create.item_attributes.blastable": "UNLOCALIZED: can be Smelted in a Blast Furnace",
|
||||||
"create.item_attributes.blastable.inverted": "UNLOCALIZED: is not smeltable in Blast Furnace",
|
"create.item_attributes.blastable.inverted": "UNLOCALIZED: cannot be Smelted in a Blast Furnace",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
"create.item_attributes.shulker_level": "UNLOCALIZED: is shulker %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
"create.item_attributes.shulker_level.inverted": "UNLOCALIZED: is shulker not %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
"create.item_attributes.shulker_level.full": "UNLOCALIZED: full",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
"create.tooltip.chute.fans_pull_up": "UNLOCALIZED: Fans pull from Above",
|
||||||
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
"create.tooltip.chute.fans_pull_down": "UNLOCALIZED: Fans pull from Below",
|
||||||
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
"create.tooltip.chute.contains": "UNLOCALIZED: Contains: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
"create.tooltip.brass_tunnel.contains": "UNLOCALIZED: Currently distributing:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "UNLOCALIZED: > %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
"create.tooltip.brass_tunnel.retrieve": "UNLOCALIZED: Right-Click to retrieve",
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"_": "Missing Localizations: 647",
|
"_": "Missing Localizations: 655",
|
||||||
|
|
||||||
"_": "->------------------------] Game Elements [------------------------<-",
|
"_": "->------------------------] Game Elements [------------------------<-",
|
||||||
|
|
||||||
|
@ -672,23 +672,23 @@
|
||||||
"advancement.create.andesite_alloy.desc": "Materialele Create-ului au nume ciudate, Aliajul Din Andezit este unul dintre ele.",
|
"advancement.create.andesite_alloy.desc": "Materialele Create-ului au nume ciudate, Aliajul Din Andezit este unul dintre ele.",
|
||||||
"advancement.create.andesite_casing": "Epoca Andezitului",
|
"advancement.create.andesite_casing": "Epoca Andezitului",
|
||||||
"advancement.create.andesite_casing.desc": "Folosește niște Aliaj De Andezit și Lemn ca să creezi o Carcasă de bază.",
|
"advancement.create.andesite_casing.desc": "Folosește niște Aliaj De Andezit și Lemn ca să creezi o Carcasă de bază.",
|
||||||
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk",
|
"advancement.create.mechanical_press": "UNLOCALIZED: Bonk!",
|
||||||
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
"advancement.create.mechanical_press.desc": "UNLOCALIZED: Create some sheets in a Mechanical Press",
|
||||||
"advancement.create.encased_fan": "UNLOCALIZED: Wind maker",
|
"advancement.create.encased_fan": "UNLOCALIZED: Wind Maker",
|
||||||
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and activate an Encased Fan",
|
"advancement.create.encased_fan.desc": "UNLOCALIZED: Place and power an Encased Fan",
|
||||||
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
"advancement.create.fan_processing": "UNLOCALIZED: Processing by Particle",
|
||||||
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
"advancement.create.fan_processing.desc": "UNLOCALIZED: Use an Encased Fan to process materials",
|
||||||
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's most feared",
|
"advancement.create.saw_processing": "UNLOCALIZED: Workshop's Most Feared",
|
||||||
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
"advancement.create.saw_processing.desc": "UNLOCALIZED: Use an upright Mechanical Saw to process materials",
|
||||||
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
"advancement.create.compacting": "UNLOCALIZED: Compactification",
|
||||||
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Press and a Basin to create less items from more items",
|
"advancement.create.compacting.desc": "UNLOCALIZED: Use a Mechanical Press and a Basin to create fewer items from more",
|
||||||
"advancement.create.belt": "Conducere de Alge",
|
"advancement.create.belt": "Conducere de Alge",
|
||||||
"advancement.create.belt.desc": "Conectează două rotoare cu o Bandă Mecanică.",
|
"advancement.create.belt.desc": "Conectează două rotoare cu o Bandă Mecanică.",
|
||||||
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
"advancement.create.funnel": "UNLOCALIZED: Airport Aesthetic",
|
||||||
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
"advancement.create.funnel.desc": "UNLOCALIZED: Extract or insert items into a container using a Funnel",
|
||||||
"advancement.create.chute": "Rostogolind în Jos",
|
"advancement.create.chute": "Rostogolind în Jos",
|
||||||
"advancement.create.chute.desc": "Plasează un Tobogan, partea verticală echivalentă a unei Benzi.",
|
"advancement.create.chute.desc": "Plasează un Tobogan, partea verticală echivalentă a unei Benzi.",
|
||||||
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing it up",
|
"advancement.create.mechanical_mixer": "UNLOCALIZED: Mixing It Up",
|
||||||
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
"advancement.create.mechanical_mixer.desc": "UNLOCALIZED: Combine ingredients in a Mechanical Mixer",
|
||||||
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
"advancement.create.burner": "UNLOCALIZED: Sentient Fireplace",
|
||||||
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
"advancement.create.burner.desc": "UNLOCALIZED: Obtain a Blaze Burner",
|
||||||
|
@ -703,25 +703,25 @@
|
||||||
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
"advancement.create.super_glue": "UNLOCALIZED: Area of Connect",
|
||||||
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
"advancement.create.super_glue.desc": "UNLOCALIZED: Super Glue some blocks into a group",
|
||||||
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
"advancement.create.contraption_actors": "UNLOCALIZED: Moving with Purpose",
|
||||||
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a contraption with drills, saws or harvesters on board",
|
"advancement.create.contraption_actors.desc": "UNLOCALIZED: Create a Contraption with drills, saws, or harvesters on board",
|
||||||
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-by exchange",
|
"advancement.create.portable_storage_interface": "UNLOCALIZED: Drive-By Exchange",
|
||||||
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a contraption",
|
"advancement.create.portable_storage_interface.desc": "UNLOCALIZED: Use a Portable Storage Interface to take or insert items into a Contraption",
|
||||||
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted out",
|
"advancement.create.wrench_goggles": "UNLOCALIZED: Kitted Out",
|
||||||
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's goggles and a Wrench",
|
"advancement.create.wrench_goggles.desc": "UNLOCALIZED: Equip Engineer's Goggles and a Wrench",
|
||||||
"advancement.create.stressometer": "Dar Cât De Stresat, Mai Exact?",
|
"advancement.create.stressometer": "Dar Cât De Stresat, Mai Exact?",
|
||||||
"advancement.create.stressometer.desc": "Plasează și alimentează un Stresometru. Uită-te la el prin Ochelari ca să îi citești valoarea exactă.",
|
"advancement.create.stressometer.desc": "Plasează și alimentează un Stresometru. Uită-te la el prin Ochelari ca să îi citești valoarea exactă.",
|
||||||
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is it Time?",
|
"advancement.create.cuckoo_clock": "UNLOCALIZED: Is It Time?",
|
||||||
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
"advancement.create.cuckoo_clock.desc": "UNLOCALIZED: Witness your Cuckoo Clock announce bedtime",
|
||||||
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
"advancement.create.windmill_maxed": "UNLOCALIZED: A Strong Breeze",
|
||||||
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
"advancement.create.windmill_maxed.desc": "UNLOCALIZED: Assemble a windmill of maximum strength",
|
||||||
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
"advancement.create.ejector_maxed": "UNLOCALIZED: Springboard Champion",
|
||||||
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched for more than 30 blocks by a Weighted Ejector",
|
"advancement.create.ejector_maxed.desc": "UNLOCALIZED: Get launched more than 30 blocks by a Weighted Ejector",
|
||||||
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
"advancement.create.pulley_maxed": "UNLOCALIZED: Rope to Nowhere",
|
||||||
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
"advancement.create.pulley_maxed.desc": "UNLOCALIZED: Extend a Rope Pulley over 200 blocks deep",
|
||||||
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
"advancement.create.cart_pickup": "UNLOCALIZED: Strong Arms",
|
||||||
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
"advancement.create.cart_pickup.desc": "UNLOCALIZED: Pick up a Minecart Contraption with at least 200 attached blocks",
|
||||||
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
"advancement.create.anvil_plough": "UNLOCALIZED: Blacksmith Artillery",
|
||||||
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical ploughs",
|
"advancement.create.anvil_plough.desc": "UNLOCALIZED: Launch an Anvil with Mechanical Ploughs",
|
||||||
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
"advancement.create.lava_wheel_00000": "UNLOCALIZED: Magma Wheel",
|
||||||
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
"advancement.create.lava_wheel_00000.desc": "UNLOCALIZED: This shouldn't have worked§7\n(Hidden Advancement)",
|
||||||
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
"advancement.create.hand_crank_000": "UNLOCALIZED: Workout Session",
|
||||||
|
@ -730,48 +730,48 @@
|
||||||
"advancement.create.belt_funnel_kiss.desc": "Fă două săruturi de Pâlnii montate pe Bandă.",
|
"advancement.create.belt_funnel_kiss.desc": "Fă două săruturi de Pâlnii montate pe Bandă.",
|
||||||
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
"advancement.create.stressometer_maxed": "UNLOCALIZED: Perfectly Stressed",
|
||||||
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
"advancement.create.stressometer_maxed.desc": "UNLOCALIZED: Get a 100% readout from a Stressometer§7\n(Hidden Advancement)",
|
||||||
"advancement.create.copper": "UNLOCALIZED: More Sturdier Rocks",
|
"advancement.create.copper": "UNLOCALIZED: Cuprum Bokum",
|
||||||
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper for your exploits in Fluid Manipulation",
|
"advancement.create.copper.desc": "UNLOCALIZED: Amass some Copper Ingots for your exploits in fluid manipulation",
|
||||||
"advancement.create.copper_casing": "Epoca de cupru",
|
"advancement.create.copper_casing": "Epoca de cupru",
|
||||||
"advancement.create.copper_casing.desc": "Folosește niște and Wood to create some Copper Casings.",
|
"advancement.create.copper_casing.desc": "Folosește niște and Wood to create some Copper Casings.",
|
||||||
"advancement.create.spout": "Splosh",
|
"advancement.create.spout": "Splosh",
|
||||||
"advancement.create.spout.desc": "Privește un obiect de fluid fiind umplut folosind o Duză.",
|
"advancement.create.spout.desc": "Privește un obiect de fluid fiind umplut folosind o Duză.",
|
||||||
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
"advancement.create.drain": "UNLOCALIZED: Tumble Draining",
|
||||||
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid containing item be emptied by an Item Drain",
|
"advancement.create.drain.desc": "UNLOCALIZED: Watch a fluid-containing item be emptied by an Item Drain",
|
||||||
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
"advancement.create.steam_engine": "UNLOCALIZED: The Powerhouse",
|
||||||
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam engine to generate torque",
|
"advancement.create.steam_engine.desc": "UNLOCALIZED: Use a Steam Engine to generate torque",
|
||||||
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
"advancement.create.steam_whistle": "UNLOCALIZED: Voice of an Angel",
|
||||||
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
"advancement.create.steam_whistle.desc": "UNLOCALIZED: Activate a Steam Whistle",
|
||||||
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
"advancement.create.backtank": "UNLOCALIZED: Pressure to Go",
|
||||||
"advancement.create.backtank.desc": "UNLOCALIZED: Create a copper backtank and make it accumulate Air Pressure",
|
"advancement.create.backtank.desc": "UNLOCALIZED: Create a Copper Backtank and make it accumulate air pressure",
|
||||||
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
"advancement.create.diving_suit": "UNLOCALIZED: Ready for the Depths",
|
||||||
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a diving helmet together with your backtank and jump into water",
|
"advancement.create.diving_suit.desc": "UNLOCALIZED: Equip a Diving Helmet and a Copper Backtank, then jump into water",
|
||||||
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
"advancement.create.mechanical_pump_0": "UNLOCALIZED: Under Pressure",
|
||||||
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
"advancement.create.mechanical_pump_0.desc": "UNLOCALIZED: Place and power a Mechanical Pump",
|
||||||
"advancement.create.glass_pipe": "Spion De Flux",
|
"advancement.create.glass_pipe": "Spion De Flux",
|
||||||
"advancement.create.glass_pipe.desc": "Privește un fluid propagându-se printr-o Conductă De Fluide De Sticlă. Conducte De Fluide Drepte devin de sticlă când o cheie este folosită pe ele.",
|
"advancement.create.glass_pipe.desc": "Privește un fluid propagându-se printr-o Conductă De Fluide De Sticlă. Conducte De Fluide Drepte devin de sticlă când o cheie este folosită pe ele.",
|
||||||
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
"advancement.create.water_supply": "UNLOCALIZED: Puddle Collector",
|
||||||
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a pipe or pump to collect a water block",
|
"advancement.create.water_supply.desc": "UNLOCALIZED: Use the pulling end of a Fluid Pipe or Mechanical Pump to collect water",
|
||||||
"advancement.create.hose_pulley": "Vărsare Industrială",
|
"advancement.create.hose_pulley": "Vărsare Industrială",
|
||||||
"advancement.create.hose_pulley.desc": "Coboară un Scripete De Furtun și privește-l scurgând sau umplând un corp de fluid.",
|
"advancement.create.hose_pulley.desc": "Coboară un Scripete De Furtun și privește-l scurgând sau umplând un corp de fluid.",
|
||||||
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
"advancement.create.chocolate_bucket": "UNLOCALIZED: A World of Imagination",
|
||||||
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a Bucket of Molten Chocolate",
|
"advancement.create.chocolate_bucket.desc": "UNLOCALIZED: Obtain a bucket of molten chocolate",
|
||||||
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
"advancement.create.honey_drain": "UNLOCALIZED: Autonomous Bee-Keeping",
|
||||||
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Bee House",
|
"advancement.create.honey_drain.desc": "UNLOCALIZED: Use pipes to pull honey from a Bee Nest or Beehive",
|
||||||
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
"advancement.create.hose_pulley_lava": "UNLOCALIZED: Tapping the Mantle",
|
||||||
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of Lava large enough to be considered infinite",
|
"advancement.create.hose_pulley_lava.desc": "UNLOCALIZED: Pump from a body of lava large enough to be considered infinite",
|
||||||
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
"advancement.create.steam_engine_maxed": "UNLOCALIZED: Full Steam",
|
||||||
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
"advancement.create.steam_engine_maxed.desc": "UNLOCALIZED: Run a boiler at the maximum level of power",
|
||||||
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
"advancement.create.foods": "UNLOCALIZED: Balanced Diet",
|
||||||
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Berries, a Honeyed Apple and a Sweet Roll; all from the same Spout",
|
"advancement.create.foods.desc": "UNLOCALIZED: Create Chocolate Glazed Berries, a Honeyed Apple, and a Sweet Roll all from the same Spout",
|
||||||
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
"advancement.create.diving_suit_lava": "UNLOCALIZED: Swimming with the Striders",
|
||||||
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your Copper Diving Gear§7\n(Hidden Advancement)",
|
"advancement.create.diving_suit_lava.desc": "UNLOCALIZED: Attempt to take a dive in lava with your diving gear§7\n(Hidden Advancement)",
|
||||||
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
"advancement.create.chained_drain": "UNLOCALIZED: On a Roll",
|
||||||
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an Item move across a row of Item Drains§7\n(Hidden Advancement)",
|
"advancement.create.chained_drain.desc": "UNLOCALIZED: Watch an item move across a row of Item Drains§7\n(Hidden Advancement)",
|
||||||
"advancement.create.cross_streams": "UNLOCALIZED: Don't cross the Streams!",
|
"advancement.create.cross_streams": "UNLOCALIZED: Don't Cross the Streams!",
|
||||||
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
"advancement.create.cross_streams.desc": "UNLOCALIZED: Watch two fluids meet in your pipe network§7\n(Hidden Advancement)",
|
||||||
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
"advancement.create.pipe_organ": "UNLOCALIZED: The Pipe Organ",
|
||||||
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single fluid tank§7\n(Hidden Advancement)",
|
"advancement.create.pipe_organ.desc": "UNLOCALIZED: Attach 12 uniquely pitched Steam Whistles to a single Fluid Tank§7\n(Hidden Advancement)",
|
||||||
"advancement.create.brass": "Aliaje reale",
|
"advancement.create.brass": "Aliaje reale",
|
||||||
"advancement.create.brass.desc": "Folosește Cupru Zdrobit și Zinc Zdrobit ca să creezi niște Alamă.",
|
"advancement.create.brass.desc": "Folosește Cupru Zdrobit și Zinc Zdrobit ca să creezi niște Alamă.",
|
||||||
"advancement.create.brass_casing": "Epoca Alamei",
|
"advancement.create.brass_casing": "Epoca Alamei",
|
||||||
|
@ -795,7 +795,7 @@
|
||||||
"advancement.create.clockwork_bearing": "Ora Invențiilor",
|
"advancement.create.clockwork_bearing": "Ora Invențiilor",
|
||||||
"advancement.create.clockwork_bearing.desc": "Asamblează o structură montată pe un Rulment De Ceasornic.",
|
"advancement.create.clockwork_bearing.desc": "Asamblează o structură montată pe un Rulment De Ceasornic.",
|
||||||
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
"advancement.create.display_link": "UNLOCALIZED: Big Data",
|
||||||
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display link to visualise information",
|
"advancement.create.display_link.desc": "UNLOCALIZED: Use a Display Link to visualise information",
|
||||||
"advancement.create.potato_cannon": "Fwoomp!",
|
"advancement.create.potato_cannon": "Fwoomp!",
|
||||||
"advancement.create.potato_cannon.desc": "Înfrânge un inamic cu Tunul tău De Cartofi.",
|
"advancement.create.potato_cannon.desc": "Înfrânge un inamic cu Tunul tău De Cartofi.",
|
||||||
"advancement.create.extendo_grip": "Boioioing!",
|
"advancement.create.extendo_grip": "Boioioing!",
|
||||||
|
@ -804,54 +804,54 @@
|
||||||
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
"advancement.create.linked_controller.desc": "UNLOCALIZED: Activate a Redstone Link using a Linked Controller",
|
||||||
"advancement.create.arm_blaze_burner": "Arzător-o-Tron",
|
"advancement.create.arm_blaze_burner": "Arzător-o-Tron",
|
||||||
"advancement.create.arm_blaze_burner.desc": "Instructează un Braț Mecanic să hrănească Arzătorul tău De Dogoreală.",
|
"advancement.create.arm_blaze_burner.desc": "Instructează un Braț Mecanic să hrănească Arzătorul tău De Dogoreală.",
|
||||||
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing it",
|
"advancement.create.crusher_maxed_0000": "UNLOCALIZED: Crushing It",
|
||||||
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a Pair of Crushing wheels at max speed",
|
"advancement.create.crusher_maxed_0000.desc": "UNLOCALIZED: Operate a pair of Crushing Wheels at maximum speed",
|
||||||
"advancement.create.arm_many_targets": "Organiz-o-Tron",
|
"advancement.create.arm_many_targets": "Organiz-o-Tron",
|
||||||
"advancement.create.arm_many_targets.desc": "Programează un Braț Mecanic cu zece sau mai multe locații de ieșire.",
|
"advancement.create.arm_many_targets.desc": "Programează un Braț Mecanic cu zece sau mai multe locații de ieșire.",
|
||||||
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
"advancement.create.potato_cannon_collide": "UNLOCALIZED: Veggie Fireworks",
|
||||||
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause potato cannon projectiles of different types to collide with each other",
|
"advancement.create.potato_cannon_collide.desc": "UNLOCALIZED: Cause Potato Cannon projectiles of different types to collide with each other",
|
||||||
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
"advancement.create.self_deploying": "UNLOCALIZED: Self-Driving Cart",
|
||||||
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
"advancement.create.self_deploying.desc": "UNLOCALIZED: Create a Minecart Contraption that places tracks in front of itself",
|
||||||
"advancement.create.fist_bump": "Bate-o, Bro!",
|
"advancement.create.fist_bump": "Bate-o, Bro!",
|
||||||
"advancement.create.fist_bump.desc": "Fă două Deployere să bată pumnul.",
|
"advancement.create.fist_bump.desc": "Fă două Deployere să bată pumnul.",
|
||||||
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
"advancement.create.crafter_lazy_000": "UNLOCALIZED: Desperate Measures",
|
||||||
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
"advancement.create.crafter_lazy_000.desc": "UNLOCALIZED: Drastically slow down a Mechanical Crafter to procrastinate on proper infrastructure§7\n(Hidden Advancement)",
|
||||||
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To full Extent",
|
"advancement.create.extendo_grip_dual": "UNLOCALIZED: To Full Extent",
|
||||||
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual wield Extendo Grips for super-human reach§7\n(Hidden Advancement)",
|
"advancement.create.extendo_grip_dual.desc": "UNLOCALIZED: Dual-wield Extendo Grips for superhuman reach§7\n(Hidden Advancement)",
|
||||||
"advancement.create.musical_arm": "Cântă-mi melodia mea tematică!",
|
"advancement.create.musical_arm": "Cântă-mi melodia mea tematică!",
|
||||||
"advancement.create.musical_arm.desc": "Privește un Braț Mecanic operând Tonomatul tău.",
|
"advancement.create.musical_arm.desc": "Privește un Braț Mecanic operând Tonomatul tău.",
|
||||||
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
"advancement.create.sturdy_sheet": "UNLOCALIZED: The Sturdiest Rocks",
|
||||||
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet from refining crushed Obsidian",
|
"advancement.create.sturdy_sheet.desc": "UNLOCALIZED: Assemble a Sturdy Sheet by refining Powdered Obsidian",
|
||||||
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
"advancement.create.train_casing_00": "UNLOCALIZED: The Logistical Age",
|
||||||
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a Casing for Railway Components",
|
"advancement.create.train_casing_00.desc": "UNLOCALIZED: Use Sturdy Sheets to create a casing for railway components",
|
||||||
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
"advancement.create.train": "UNLOCALIZED: All Aboard!",
|
||||||
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
"advancement.create.train.desc": "UNLOCALIZED: Assemble your first Train",
|
||||||
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
"advancement.create.conductor": "UNLOCALIZED: Conductor Instructor",
|
||||||
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Schedule",
|
"advancement.create.conductor.desc": "UNLOCALIZED: Instruct a Train driver with a Train Schedule",
|
||||||
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
"advancement.create.track_signal": "UNLOCALIZED: Traffic Control",
|
||||||
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
"advancement.create.track_signal.desc": "UNLOCALIZED: Place a Train Signal",
|
||||||
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
"advancement.create.display_board_0": "UNLOCALIZED: Dynamic Timetables",
|
||||||
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
"advancement.create.display_board_0.desc": "UNLOCALIZED: Forecast a Train's arrival on your Display Board with the help of Display Links",
|
||||||
"advancement.create.track_0": "UNLOCALIZED: A new Gauge",
|
"advancement.create.track_0": "UNLOCALIZED: A New Gauge",
|
||||||
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
"advancement.create.track_0.desc": "UNLOCALIZED: Obtain some Train Tracks",
|
||||||
"advancement.create.train_whistle": "UNLOCALIZED: Choo choo!",
|
"advancement.create.train_whistle": "UNLOCALIZED: Choo Choo!",
|
||||||
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
"advancement.create.train_whistle.desc": "UNLOCALIZED: Assemble a Steam Whistle to your Train and activate it while driving",
|
||||||
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
"advancement.create.train_portal": "UNLOCALIZED: Dimensional Commuter",
|
||||||
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a train through a Nether Portal",
|
"advancement.create.train_portal.desc": "UNLOCALIZED: Ride a Train through a Nether portal",
|
||||||
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
"advancement.create.track_crafting_factory": "UNLOCALIZED: Track Factory",
|
||||||
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 train tracks in the same Mechanical Press",
|
"advancement.create.track_crafting_factory.desc": "UNLOCALIZED: Produce more than 1000 Train Tracks with the same Mechanical Press",
|
||||||
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
"advancement.create.long_bend": "UNLOCALIZED: The Longest Bend",
|
||||||
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a Curved track section that spans more than 30 blocks in length",
|
"advancement.create.long_bend.desc": "UNLOCALIZED: Create a curved track section that spans more than 30 blocks in length",
|
||||||
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
"advancement.create.long_train": "UNLOCALIZED: Ambitious Endeavours",
|
||||||
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least six Carriages",
|
"advancement.create.long_train.desc": "UNLOCALIZED: Create a Train with at least 6 carriages",
|
||||||
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
"advancement.create.long_travel": "UNLOCALIZED: Field Trip",
|
||||||
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
"advancement.create.long_travel.desc": "UNLOCALIZED: Leave a Train Seat over 5000 blocks away from where you started travelling",
|
||||||
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
"advancement.create.train_roadkill": "UNLOCALIZED: Road Kill",
|
||||||
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an Enemy with your Train§7\n(Hidden Advancement)",
|
"advancement.create.train_roadkill.desc": "UNLOCALIZED: Run over an enemy with your Train§7\n(Hidden Advancement)",
|
||||||
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
"advancement.create.red_signal": "UNLOCALIZED: Expert Driver",
|
||||||
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a Red Signal with your Train§7\n(Hidden Advancement)",
|
"advancement.create.red_signal.desc": "UNLOCALIZED: Run a red Train Signal§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
"advancement.create.train_crash": "UNLOCALIZED: Terrible Service",
|
||||||
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train Crash as a Passenger§7\n(Hidden Advancement)",
|
"advancement.create.train_crash.desc": "UNLOCALIZED: Witness a Train crash as a passenger§7\n(Hidden Advancement)",
|
||||||
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
"advancement.create.train_crash_backwards": "UNLOCALIZED: Blind Spot",
|
||||||
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
"advancement.create.train_crash_backwards.desc": "UNLOCALIZED: Crash into another Train while driving backwards§7\n(Hidden Advancement)",
|
||||||
|
|
||||||
|
@ -1262,6 +1262,8 @@
|
||||||
"create.item_attributes.smokable.inverted": "nu poate fi Afumat",
|
"create.item_attributes.smokable.inverted": "nu poate fi Afumat",
|
||||||
"create.item_attributes.blastable": "poate fi topit în Furnal",
|
"create.item_attributes.blastable": "poate fi topit în Furnal",
|
||||||
"create.item_attributes.blastable.inverted": "nu poate fi topit în Furnal",
|
"create.item_attributes.blastable.inverted": "nu poate fi topit în Furnal",
|
||||||
|
"create.item_attributes.compostable": "UNLOCALIZED: can be composted",
|
||||||
|
"create.item_attributes.compostable.inverted": "UNLOCALIZED: cannot be composted",
|
||||||
"create.item_attributes.shulker_level": "este shulkerul %1$s",
|
"create.item_attributes.shulker_level": "este shulkerul %1$s",
|
||||||
"create.item_attributes.shulker_level.inverted": "nu este shulkerul %1$s",
|
"create.item_attributes.shulker_level.inverted": "nu este shulkerul %1$s",
|
||||||
"create.item_attributes.shulker_level.full": "plin",
|
"create.item_attributes.shulker_level.full": "plin",
|
||||||
|
@ -1368,6 +1370,10 @@
|
||||||
"create.tooltip.chute.fans_pull_up": "Ventilatoarele trag de Sus",
|
"create.tooltip.chute.fans_pull_up": "Ventilatoarele trag de Sus",
|
||||||
"create.tooltip.chute.fans_pull_down": "Ventilatoarele trag de Jos",
|
"create.tooltip.chute.fans_pull_down": "Ventilatoarele trag de Jos",
|
||||||
"create.tooltip.chute.contains": "Conține: %1$s x%2$s",
|
"create.tooltip.chute.contains": "Conține: %1$s x%2$s",
|
||||||
|
"create.tooltip.deployer.header": "UNLOCALIZED: Deployer Information",
|
||||||
|
"create.tooltip.deployer.using": "UNLOCALIZED: Mode: Use",
|
||||||
|
"create.tooltip.deployer.punching": "UNLOCALIZED: Mode: Attack",
|
||||||
|
"create.tooltip.deployer.contains": "UNLOCALIZED: Item: %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.contains": "Distribuie Curent:",
|
"create.tooltip.brass_tunnel.contains": "Distribuie Curent:",
|
||||||
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
"create.tooltip.brass_tunnel.contains_entry": "> %1$s x%2$s",
|
||||||
"create.tooltip.brass_tunnel.retrieve": "Click Dreapta pentru a recupera",
|
"create.tooltip.brass_tunnel.retrieve": "Click Dreapta pentru a recupera",
|
||||||
|
@ -1481,6 +1487,7 @@
|
||||||
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
"create.schedule.condition.threshold.equal": "UNLOCALIZED: exactly",
|
||||||
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
"create.schedule.condition.threshold.x_units_of_item": "UNLOCALIZED: %1$s %2$s of %3$s",
|
||||||
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
"create.schedule.condition.threshold.matching_content": "UNLOCALIZED: Matching Content",
|
||||||
|
"create.schedule.condition.threshold.anything": "UNLOCALIZED: Anything",
|
||||||
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
"create.schedule.condition.threshold.item_measure": "UNLOCALIZED: Item Measure",
|
||||||
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
"create.schedule.condition.threshold.items": "UNLOCALIZED: Items",
|
||||||
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
"create.schedule.condition.threshold.stacks": "UNLOCALIZED: Stacks",
|
||||||
|
@ -1488,6 +1495,7 @@
|
||||||
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
"create.schedule.condition.threshold.status": "UNLOCALIZED: Cargo: %1$s/%2$s %3$s",
|
||||||
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
"create.schedule.condition.threshold.place_item": "UNLOCALIZED: Reference Item",
|
||||||
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
"create.schedule.condition.threshold.place_item_2": "UNLOCALIZED: Filters can be used",
|
||||||
|
"create.schedule.condition.threshold.place_item_3": "UNLOCALIZED: Leave empty to match any",
|
||||||
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
"create.schedule.condition.fluid_threshold": "UNLOCALIZED: Fluid Cargo Condition",
|
||||||
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
"create.schedule.condition.item_threshold": "UNLOCALIZED: Item Cargo Condition",
|
||||||
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
"create.schedule.condition.redstone_link": "UNLOCALIZED: Redstone Link",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
3013
src/generated/resources/assets/create/lang/unfinished/uk_ua.json
Normal file
3013
src/generated/resources/assets/create/lang/unfinished/uk_ua.json
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
"parent": "create:block/fluid_pipe/core_x",
|
|
||||||
"elements": [
|
|
||||||
{
|
|
||||||
"from": [
|
|
||||||
4,
|
|
||||||
4,
|
|
||||||
4
|
|
||||||
],
|
|
||||||
"to": [
|
|
||||||
12,
|
|
||||||
12,
|
|
||||||
12
|
|
||||||
],
|
|
||||||
"faces": {
|
|
||||||
"west": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
16.0,
|
|
||||||
8.0,
|
|
||||||
12.0,
|
|
||||||
12.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"east": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
12.0,
|
|
||||||
8.0,
|
|
||||||
16.0,
|
|
||||||
12.0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
"parent": "create:block/fluid_pipe/core_y",
|
|
||||||
"elements": [
|
|
||||||
{
|
|
||||||
"from": [
|
|
||||||
4,
|
|
||||||
4,
|
|
||||||
4
|
|
||||||
],
|
|
||||||
"to": [
|
|
||||||
12,
|
|
||||||
12,
|
|
||||||
12
|
|
||||||
],
|
|
||||||
"faces": {
|
|
||||||
"down": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
16.0,
|
|
||||||
8.0,
|
|
||||||
12.0,
|
|
||||||
12.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"up": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
16.0,
|
|
||||||
12.0,
|
|
||||||
12.0,
|
|
||||||
8.0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
"parent": "create:block/fluid_pipe/core_z",
|
|
||||||
"elements": [
|
|
||||||
{
|
|
||||||
"from": [
|
|
||||||
4,
|
|
||||||
4,
|
|
||||||
4
|
|
||||||
],
|
|
||||||
"to": [
|
|
||||||
12,
|
|
||||||
12,
|
|
||||||
12
|
|
||||||
],
|
|
||||||
"faces": {
|
|
||||||
"north": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
12.0,
|
|
||||||
8.0,
|
|
||||||
16.0,
|
|
||||||
12.0
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"south": {
|
|
||||||
"texture": "#0",
|
|
||||||
"uv": [
|
|
||||||
16.0,
|
|
||||||
8.0,
|
|
||||||
12.0,
|
|
||||||
12.0
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -19,7 +19,7 @@
|
||||||
"chance": 0.75
|
"chance": 0.75
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"item": "minecraft:cobblestone",
|
"item": "minecraft:cobbled_deepslate",
|
||||||
"chance": 0.125
|
"chance": 0.125
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
|
@ -73,6 +73,10 @@
|
||||||
"item": "create:cogwheel",
|
"item": "create:cogwheel",
|
||||||
"chance": 5.0
|
"chance": 5.0
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"item": "minecraft:gold_nugget",
|
||||||
|
"chance": 3.0
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"item": "create:shaft",
|
"item": "create:shaft",
|
||||||
"chance": 2.0
|
"chance": 2.0
|
||||||
|
@ -81,10 +85,6 @@
|
||||||
"item": "create:crushed_gold_ore",
|
"item": "create:crushed_gold_ore",
|
||||||
"chance": 2.0
|
"chance": 2.0
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"item": "minecraft:gold_nugget",
|
|
||||||
"chance": 2.0
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"item": "minecraft:iron_ingot"
|
"item": "minecraft:iron_ingot"
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
{
|
|
||||||
"replace": false,
|
|
||||||
"values": [
|
|
||||||
"create:blaze_burner",
|
|
||||||
"create:lit_blaze_burner",
|
|
||||||
"#minecraft:fire",
|
|
||||||
"#minecraft:campfires",
|
|
||||||
"minecraft:magma_block",
|
|
||||||
"minecraft:lava"
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,6 +1,11 @@
|
||||||
{
|
{
|
||||||
"replace": false,
|
"replace": false,
|
||||||
"values": [
|
"values": [
|
||||||
"#create:fan_heaters"
|
"create:blaze_burner",
|
||||||
|
"create:lit_blaze_burner",
|
||||||
|
"#minecraft:fire",
|
||||||
|
"#minecraft:campfires",
|
||||||
|
"minecraft:magma_block",
|
||||||
|
"minecraft:lava"
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"replace": false,
|
||||||
|
"values": [
|
||||||
|
"minecraft:bee_nest",
|
||||||
|
"minecraft:vine",
|
||||||
|
"minecraft:moss_carpet",
|
||||||
|
"minecraft:shroomlight",
|
||||||
|
"minecraft:cocoa"
|
||||||
|
]
|
||||||
|
}
|
|
@ -16,6 +16,7 @@
|
||||||
"minecraft:tripwire",
|
"minecraft:tripwire",
|
||||||
"minecraft:tripwire_hook",
|
"minecraft:tripwire_hook",
|
||||||
"minecraft:daylight_detector",
|
"minecraft:daylight_detector",
|
||||||
"minecraft:target"
|
"minecraft:target",
|
||||||
|
"minecraft:hopper"
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"replace": false,
|
||||||
|
"values": [
|
||||||
|
"create:copper_backtank"
|
||||||
|
]
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
"replace": false,
|
"replace": false,
|
||||||
"values": [
|
"values": [
|
||||||
|
"create:sturdy_sheet",
|
||||||
"create:copper_sheet",
|
"create:copper_sheet",
|
||||||
"create:brass_sheet",
|
"create:brass_sheet",
|
||||||
"create:iron_sheet",
|
"create:iron_sheet",
|
||||||
|
|
|
@ -161,16 +161,14 @@ public class AllBlockPartials {
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
public static final Map<FluidTransportBehaviour.AttachmentTypes, Map<Direction, PartialModel>> PIPE_ATTACHMENTS =
|
public static final Map<FluidTransportBehaviour.AttachmentTypes.ComponentPartials, Map<Direction, PartialModel>> PIPE_ATTACHMENTS =
|
||||||
new EnumMap<>(FluidTransportBehaviour.AttachmentTypes.class);
|
new EnumMap<>(FluidTransportBehaviour.AttachmentTypes.ComponentPartials.class);
|
||||||
|
|
||||||
public static final Map<Direction, PartialModel> METAL_GIRDER_BRACKETS = new EnumMap<>(Direction.class);
|
public static final Map<Direction, PartialModel> METAL_GIRDER_BRACKETS = new EnumMap<>(Direction.class);
|
||||||
public static final Map<DyeColor, PartialModel> TOOLBOX_LIDS = new EnumMap<>(DyeColor.class);
|
public static final Map<DyeColor, PartialModel> TOOLBOX_LIDS = new EnumMap<>(DyeColor.class);
|
||||||
|
|
||||||
static {
|
static {
|
||||||
for (FluidTransportBehaviour.AttachmentTypes type : FluidTransportBehaviour.AttachmentTypes.values()) {
|
for (FluidTransportBehaviour.AttachmentTypes.ComponentPartials type : FluidTransportBehaviour.AttachmentTypes.ComponentPartials.values()) {
|
||||||
if (!type.hasModel())
|
|
||||||
continue;
|
|
||||||
Map<Direction, PartialModel> map = new HashMap<>();
|
Map<Direction, PartialModel> map = new HashMap<>();
|
||||||
for (Direction d : Iterate.directions) {
|
for (Direction d : Iterate.directions) {
|
||||||
String asId = Lang.asId(type.name());
|
String asId = Lang.asId(type.name());
|
||||||
|
|
|
@ -172,7 +172,7 @@ import com.simibubi.create.content.logistics.block.display.source.FluidListDispl
|
||||||
import com.simibubi.create.content.logistics.block.display.source.ItemCountDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.ItemCountDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.ItemListDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.ItemListDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.ItemNameDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.ItemNameDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.ItemThoughputDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.ItemThroughputDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.KineticSpeedDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.KineticSpeedDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.KineticStressDisplaySource;
|
import com.simibubi.create.content.logistics.block.display.source.KineticStressDisplaySource;
|
||||||
import com.simibubi.create.content.logistics.block.display.source.ObservedTrainNameSource;
|
import com.simibubi.create.content.logistics.block.display.source.ObservedTrainNameSource;
|
||||||
|
@ -241,12 +241,12 @@ import net.createmod.catnip.utility.Couple;
|
||||||
import net.minecraft.client.renderer.RenderType;
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraft.core.Direction.Axis;
|
import net.minecraft.core.Direction.Axis;
|
||||||
import net.minecraft.core.Direction.AxisDirection;
|
import net.minecraft.core.Direction.AxisDirection;
|
||||||
|
import net.minecraft.core.Registry;
|
||||||
import net.minecraft.data.recipes.ShapelessRecipeBuilder;
|
import net.minecraft.data.recipes.ShapelessRecipeBuilder;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.tags.BlockTags;
|
import net.minecraft.tags.BlockTags;
|
||||||
import net.minecraft.tags.ItemTags;
|
import net.minecraft.tags.ItemTags;
|
||||||
import net.minecraft.world.item.DyeColor;
|
import net.minecraft.world.item.DyeColor;
|
||||||
import net.minecraft.world.item.Item;
|
|
||||||
import net.minecraft.world.item.Rarity;
|
import net.minecraft.world.item.Rarity;
|
||||||
import net.minecraft.world.item.enchantment.Enchantments;
|
import net.minecraft.world.item.enchantment.Enchantments;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
|
@ -570,7 +570,7 @@ public class AllBlocks {
|
||||||
.transform(axeOrPickaxe())
|
.transform(axeOrPickaxe())
|
||||||
.transform(BuilderTransformers.cuckooClock())
|
.transform(BuilderTransformers.cuckooClock())
|
||||||
.lang("Cuckoo Clock")
|
.lang("Cuckoo Clock")
|
||||||
.onRegisterAfter(Item.class, c -> TooltipHelper.referTo(c, CUCKOO_CLOCK))
|
.onRegisterAfter(Registry.ITEM_REGISTRY, c -> TooltipHelper.referTo(c, CUCKOO_CLOCK))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
public static final BlockEntry<MillstoneBlock> MILLSTONE = REGISTRATE.block("millstone", MillstoneBlock::new)
|
public static final BlockEntry<MillstoneBlock> MILLSTONE = REGISTRATE.block("millstone", MillstoneBlock::new)
|
||||||
|
@ -652,7 +652,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.lightLevel(BlazeBurnerBlock::getLight))
|
.properties(p -> p.lightLevel(BlazeBurnerBlock::getLight))
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.addLayer(() -> RenderType::cutoutMipped)
|
.addLayer(() -> RenderType::cutoutMipped)
|
||||||
.tag(AllBlockTags.FAN_TRANSPARENT.tag, AllBlockTags.FAN_HEATERS.tag)
|
.tag(AllBlockTags.FAN_TRANSPARENT.tag, AllBlockTags.PASSIVE_BOILER_HEATERS.tag)
|
||||||
.loot((lt, block) -> lt.add(block, BlazeBurnerBlock.buildLootTable()))
|
.loot((lt, block) -> lt.add(block, BlazeBurnerBlock.buildLootTable()))
|
||||||
.blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p)))
|
.blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p)))
|
||||||
.onRegister(movementBehaviour(new BlazeBurnerMovementBehaviour()))
|
.onRegister(movementBehaviour(new BlazeBurnerMovementBehaviour()))
|
||||||
|
@ -669,7 +669,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.lightLevel(LitBlazeBurnerBlock::getLight))
|
.properties(p -> p.lightLevel(LitBlazeBurnerBlock::getLight))
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.addLayer(() -> RenderType::cutoutMipped)
|
.addLayer(() -> RenderType::cutoutMipped)
|
||||||
.tag(AllBlockTags.FAN_TRANSPARENT.tag, AllBlockTags.FAN_HEATERS.tag)
|
.tag(AllBlockTags.FAN_TRANSPARENT.tag, AllBlockTags.PASSIVE_BOILER_HEATERS.tag)
|
||||||
.loot((lt, block) -> lt.dropOther(block, AllItems.EMPTY_BLAZE_BURNER.get()))
|
.loot((lt, block) -> lt.dropOther(block, AllItems.EMPTY_BLAZE_BURNER.get()))
|
||||||
.blockstate((c, p) -> p.getVariantBuilder(c.get())
|
.blockstate((c, p) -> p.getVariantBuilder(c.get())
|
||||||
.forAllStates(state -> ConfiguredModel.builder()
|
.forAllStates(state -> ConfiguredModel.builder()
|
||||||
|
@ -812,7 +812,7 @@ public class AllBlocks {
|
||||||
.initialProperties(SharedProperties::copperMetal)
|
.initialProperties(SharedProperties::copperMetal)
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(BlockStateGen.pipe())
|
.blockstate(BlockStateGen.pipe())
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::opaque))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
|
@ -827,7 +827,7 @@ public class AllBlocks {
|
||||||
.onRegister(CreateRegistrate.connectedTextures(() -> new EncasedCTBehaviour(AllSpriteShifts.COPPER_CASING)))
|
.onRegister(CreateRegistrate.connectedTextures(() -> new EncasedCTBehaviour(AllSpriteShifts.COPPER_CASING)))
|
||||||
.onRegister(CreateRegistrate.casingConnectivity((block, cc) -> cc.make(block, AllSpriteShifts.COPPER_CASING,
|
.onRegister(CreateRegistrate.casingConnectivity((block, cc) -> cc.make(block, AllSpriteShifts.COPPER_CASING,
|
||||||
(s, f) -> !s.getValue(EncasedPipeBlock.FACING_TO_PROPERTY_MAP.get(f)))))
|
(s, f) -> !s.getValue(EncasedPipeBlock.FACING_TO_PROPERTY_MAP.get(f)))))
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::opaque))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.loot((p, b) -> p.dropOther(b, FLUID_PIPE.get()))
|
.loot((p, b) -> p.dropOther(b, FLUID_PIPE.get()))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
|
@ -849,7 +849,7 @@ public class AllBlocks {
|
||||||
.build();
|
.build();
|
||||||
}, BlockStateProperties.WATERLOGGED);
|
}, BlockStateProperties.WATERLOGGED);
|
||||||
})
|
})
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::transparent))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.loot((p, b) -> p.dropOther(b, FLUID_PIPE.get()))
|
.loot((p, b) -> p.dropOther(b, FLUID_PIPE.get()))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
|
@ -858,7 +858,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.color(MaterialColor.STONE))
|
.properties(p -> p.color(MaterialColor.STONE))
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(BlockStateGen.directionalBlockProviderIgnoresWaterlogged(true))
|
.blockstate(BlockStateGen.directionalBlockProviderIgnoresWaterlogged(true))
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::opaque))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.transform(BlockStressDefaults.setImpact(4.0))
|
.transform(BlockStressDefaults.setImpact(4.0))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
|
@ -870,7 +870,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.color(MaterialColor.TERRACOTTA_YELLOW))
|
.properties(p -> p.color(MaterialColor.TERRACOTTA_YELLOW))
|
||||||
.transform(pickaxeOnly())
|
.transform(pickaxeOnly())
|
||||||
.blockstate(new SmartFluidPipeGenerator()::generate)
|
.blockstate(new SmartFluidPipeGenerator()::generate)
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::transparent))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
|
@ -881,7 +881,7 @@ public class AllBlocks {
|
||||||
.blockstate((c, p) -> BlockStateGen.directionalAxisBlock(c, p,
|
.blockstate((c, p) -> BlockStateGen.directionalAxisBlock(c, p,
|
||||||
(state, vertical) -> AssetLookup.partialBaseModel(c, p, vertical ? "vertical" : "horizontal",
|
(state, vertical) -> AssetLookup.partialBaseModel(c, p, vertical ? "vertical" : "horizontal",
|
||||||
state.getValue(FluidValveBlock.ENABLED) ? "open" : "closed")))
|
state.getValue(FluidValveBlock.ENABLED) ? "open" : "closed")))
|
||||||
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::opaque))
|
.onRegister(CreateRegistrate.blockModel(() -> PipeAttachmentModel::new))
|
||||||
.item()
|
.item()
|
||||||
.transform(customItemModel())
|
.transform(customItemModel())
|
||||||
.register();
|
.register();
|
||||||
|
@ -1337,7 +1337,7 @@ public class AllBlocks {
|
||||||
.unlockedBy("has_seat", RegistrateRecipeProvider.has(AllItemTags.SEATS.tag))
|
.unlockedBy("has_seat", RegistrateRecipeProvider.has(AllItemTags.SEATS.tag))
|
||||||
.save(p, Create.asResource("crafting/kinetics/" + c.getName() + "_from_other_seat"));
|
.save(p, Create.asResource("crafting/kinetics/" + c.getName() + "_from_other_seat"));
|
||||||
})
|
})
|
||||||
.onRegisterAfter(Item.class, v -> TooltipHelper.referTo(v, "block.create.brown_seat"))
|
.onRegisterAfter(Registry.ITEM_REGISTRY, v -> TooltipHelper.referTo(v, "block.create.brown_seat"))
|
||||||
.tag(AllBlockTags.SEATS.tag)
|
.tag(AllBlockTags.SEATS.tag)
|
||||||
.item()
|
.item()
|
||||||
.tag(AllItemTags.SEATS.tag)
|
.tag(AllItemTags.SEATS.tag)
|
||||||
|
@ -1696,7 +1696,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.color(MaterialColor.STONE))
|
.properties(p -> p.color(MaterialColor.STONE))
|
||||||
.transform(BuilderTransformers.beltTunnel("andesite", new ResourceLocation("block/polished_andesite")))
|
.transform(BuilderTransformers.beltTunnel("andesite", new ResourceLocation("block/polished_andesite")))
|
||||||
.onRegister(assignDataBehaviour(new AccumulatedItemCountDisplaySource(), "accumulate_items"))
|
.onRegister(assignDataBehaviour(new AccumulatedItemCountDisplaySource(), "accumulate_items"))
|
||||||
.onRegister(assignDataBehaviour(new ItemThoughputDisplaySource(), "item_throughput"))
|
.onRegister(assignDataBehaviour(new ItemThroughputDisplaySource(), "item_throughput"))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
public static final BlockEntry<BrassTunnelBlock> BRASS_TUNNEL =
|
public static final BlockEntry<BrassTunnelBlock> BRASS_TUNNEL =
|
||||||
|
@ -1704,7 +1704,7 @@ public class AllBlocks {
|
||||||
.properties(p -> p.color(MaterialColor.TERRACOTTA_YELLOW))
|
.properties(p -> p.color(MaterialColor.TERRACOTTA_YELLOW))
|
||||||
.transform(BuilderTransformers.beltTunnel("brass", Create.asResource("block/brass_block")))
|
.transform(BuilderTransformers.beltTunnel("brass", Create.asResource("block/brass_block")))
|
||||||
.onRegister(assignDataBehaviour(new AccumulatedItemCountDisplaySource(), "accumulate_items"))
|
.onRegister(assignDataBehaviour(new AccumulatedItemCountDisplaySource(), "accumulate_items"))
|
||||||
.onRegister(assignDataBehaviour(new ItemThoughputDisplaySource(), "item_throughput"))
|
.onRegister(assignDataBehaviour(new ItemThroughputDisplaySource(), "item_throughput"))
|
||||||
.onRegister(connectedTextures(BrassTunnelCTBehaviour::new))
|
.onRegister(connectedTextures(BrassTunnelCTBehaviour::new))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
|
@ -1953,7 +1953,7 @@ public class AllBlocks {
|
||||||
.withExistingParent(colourName + "_toolbox", p.modLoc("block/toolbox/block"))
|
.withExistingParent(colourName + "_toolbox", p.modLoc("block/toolbox/block"))
|
||||||
.texture("0", p.modLoc("block/toolbox/" + colourName)));
|
.texture("0", p.modLoc("block/toolbox/" + colourName)));
|
||||||
})
|
})
|
||||||
.onRegisterAfter(Item.class, v -> TooltipHelper.referTo(v, "block.create.toolbox"))
|
.onRegisterAfter(Registry.ITEM_REGISTRY, v -> TooltipHelper.referTo(v, "block.create.toolbox"))
|
||||||
.tag(AllBlockTags.TOOLBOXES.tag)
|
.tag(AllBlockTags.TOOLBOXES.tag)
|
||||||
.item(UncontainableBlockItem::new)
|
.item(UncontainableBlockItem::new)
|
||||||
.model((c, p) -> p.withExistingParent(colourName + "_toolbox", p.modLoc("block/toolbox/item"))
|
.model((c, p) -> p.withExistingParent(colourName + "_toolbox", p.modLoc("block/toolbox/item"))
|
||||||
|
|
|
@ -2,17 +2,20 @@ package com.simibubi.create;
|
||||||
|
|
||||||
import com.simibubi.create.content.logistics.trains.entity.CarriageSyncDataSerializer;
|
import com.simibubi.create.content.logistics.trains.entity.CarriageSyncDataSerializer;
|
||||||
|
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
import net.minecraftforge.registries.DataSerializerEntry;
|
import net.minecraftforge.registries.DataSerializerEntry;
|
||||||
import net.minecraftforge.registries.IForgeRegistry;
|
import net.minecraftforge.registries.DeferredRegister;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
|
import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
public class AllEntityDataSerializers {
|
public class AllEntityDataSerializers {
|
||||||
|
private static final DeferredRegister<DataSerializerEntry> REGISTER = DeferredRegister.create(ForgeRegistries.Keys.DATA_SERIALIZERS, Create.ID);
|
||||||
|
|
||||||
public static final CarriageSyncDataSerializer CARRIAGE_DATA = new CarriageSyncDataSerializer();
|
public static final CarriageSyncDataSerializer CARRIAGE_DATA = new CarriageSyncDataSerializer();
|
||||||
|
|
||||||
public static void register(RegistryEvent.Register<DataSerializerEntry> event) {
|
public static final RegistryObject<DataSerializerEntry> CARRIAGE_DATA_ENTRY = REGISTER.register("carriage_data", () -> new DataSerializerEntry(CARRIAGE_DATA));
|
||||||
IForgeRegistry<DataSerializerEntry> registry = event.getRegistry();
|
|
||||||
registry.register(new DataSerializerEntry(CARRIAGE_DATA).setRegistryName(Create.asResource("carriage_data")));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
public static void register(IEventBus modEventBus) {
|
||||||
|
REGISTER.register(modEventBus);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,15 +10,11 @@ import com.simibubi.create.content.palettes.AllPaletteStoneTypes;
|
||||||
import com.simibubi.create.foundation.data.CreateRegistrate;
|
import com.simibubi.create.foundation.data.CreateRegistrate;
|
||||||
import com.tterrag.registrate.util.entry.FluidEntry;
|
import com.tterrag.registrate.util.entry.FluidEntry;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.ItemBlockRenderTypes;
|
|
||||||
import net.minecraft.client.renderer.RenderType;
|
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.world.level.BlockAndTintGetter;
|
import net.minecraft.world.level.BlockAndTintGetter;
|
||||||
import net.minecraft.world.level.block.state.BlockState;
|
import net.minecraft.world.level.block.state.BlockState;
|
||||||
import net.minecraft.world.level.material.Fluid;
|
import net.minecraft.world.level.material.Fluid;
|
||||||
import net.minecraft.world.level.material.FluidState;
|
import net.minecraft.world.level.material.FluidState;
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
|
||||||
import net.minecraftforge.fluids.FluidAttributes;
|
import net.minecraftforge.fluids.FluidAttributes;
|
||||||
import net.minecraftforge.fluids.ForgeFlowingFluid;
|
import net.minecraftforge.fluids.ForgeFlowingFluid;
|
||||||
|
|
||||||
|
@ -28,17 +24,17 @@ public class AllFluids {
|
||||||
|
|
||||||
public static final FluidEntry<PotionFluid> POTION =
|
public static final FluidEntry<PotionFluid> POTION =
|
||||||
REGISTRATE.virtualFluid("potion", PotionFluidAttributes::new, PotionFluid::new)
|
REGISTRATE.virtualFluid("potion", PotionFluidAttributes::new, PotionFluid::new)
|
||||||
.lang(f -> "fluid.create.potion", "Potion")
|
.lang("Potion")
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
public static final FluidEntry<VirtualFluid> TEA = REGISTRATE.virtualFluid("tea")
|
public static final FluidEntry<VirtualFluid> TEA = REGISTRATE.virtualFluid("tea")
|
||||||
.lang(f -> "fluid.create.tea", "Builder's Tea")
|
.lang("Builder's Tea")
|
||||||
.tag(AllTags.forgeFluidTag("tea"))
|
.tag(AllTags.forgeFluidTag("tea"))
|
||||||
.register();
|
.register();
|
||||||
|
|
||||||
public static final FluidEntry<ForgeFlowingFluid.Flowing> HONEY =
|
public static final FluidEntry<ForgeFlowingFluid.Flowing> HONEY =
|
||||||
REGISTRATE.standardFluid("honey", NoColorFluidAttributes::new)
|
REGISTRATE.standardFluid("honey", NoColorFluidAttributes::new)
|
||||||
.lang(f -> "fluid.create.honey", "Honey")
|
.lang("Honey")
|
||||||
.attributes(b -> b.viscosity(2000)
|
.attributes(b -> b.viscosity(2000)
|
||||||
.density(1400))
|
.density(1400))
|
||||||
.properties(p -> p.levelDecreasePerBlock(2)
|
.properties(p -> p.levelDecreasePerBlock(2)
|
||||||
|
@ -54,7 +50,7 @@ public class AllFluids {
|
||||||
|
|
||||||
public static final FluidEntry<ForgeFlowingFluid.Flowing> CHOCOLATE =
|
public static final FluidEntry<ForgeFlowingFluid.Flowing> CHOCOLATE =
|
||||||
REGISTRATE.standardFluid("chocolate", NoColorFluidAttributes::new)
|
REGISTRATE.standardFluid("chocolate", NoColorFluidAttributes::new)
|
||||||
.lang(f -> "fluid.create.chocolate", "Chocolate")
|
.lang("Chocolate")
|
||||||
.tag(AllTags.forgeFluidTag("chocolate"))
|
.tag(AllTags.forgeFluidTag("chocolate"))
|
||||||
.attributes(b -> b.viscosity(1500)
|
.attributes(b -> b.viscosity(1500)
|
||||||
.density(1400))
|
.density(1400))
|
||||||
|
@ -68,16 +64,6 @@ public class AllFluids {
|
||||||
|
|
||||||
public static void register() {}
|
public static void register() {}
|
||||||
|
|
||||||
@OnlyIn(Dist.CLIENT)
|
|
||||||
public static void assignRenderLayers() {}
|
|
||||||
|
|
||||||
@OnlyIn(Dist.CLIENT)
|
|
||||||
private static void makeTranslucent(FluidEntry<?> entry) {
|
|
||||||
ForgeFlowingFluid fluid = entry.get();
|
|
||||||
ItemBlockRenderTypes.setRenderLayer(fluid, RenderType.translucent());
|
|
||||||
ItemBlockRenderTypes.setRenderLayer(fluid.getSource(), RenderType.translucent());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public static BlockState getLavaInteraction(FluidState fluidState) {
|
public static BlockState getLavaInteraction(FluidState fluidState) {
|
||||||
Fluid fluid = fluidState.getType();
|
Fluid fluid = fluidState.getType();
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
package com.simibubi.create;
|
package com.simibubi.create;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
@ -11,20 +9,32 @@ import com.simibubi.create.content.contraptions.components.structureMovement.Mov
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.DoorMovingInteraction;
|
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.DoorMovingInteraction;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.LeverMovingInteraction;
|
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.LeverMovingInteraction;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.TrapdoorMovingInteraction;
|
import com.simibubi.create.content.contraptions.components.structureMovement.interaction.TrapdoorMovingInteraction;
|
||||||
|
import com.simibubi.create.foundation.utility.CreateRegistry;
|
||||||
import com.tterrag.registrate.util.nullness.NonNullConsumer;
|
import com.tterrag.registrate.util.nullness.NonNullConsumer;
|
||||||
|
|
||||||
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.tags.BlockTags;
|
import net.minecraft.tags.BlockTags;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
import net.minecraft.world.level.block.state.BlockState;
|
import net.minecraft.world.level.block.state.BlockState;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
import net.minecraftforge.registries.IRegistryDelegate;
|
import net.minecraftforge.registries.IRegistryDelegate;
|
||||||
|
|
||||||
public class AllInteractionBehaviours {
|
public class AllInteractionBehaviours {
|
||||||
private static final Map<IRegistryDelegate<Block>, MovingInteractionBehaviour> BLOCK_BEHAVIOURS = new HashMap<>();
|
private static final CreateRegistry<Block, MovingInteractionBehaviour> BLOCK_BEHAVIOURS = new CreateRegistry<>(ForgeRegistries.BLOCKS);
|
||||||
private static final List<BehaviourProvider> GLOBAL_BEHAVIOURS = new ArrayList<>();
|
private static final List<BehaviourProvider> GLOBAL_BEHAVIOURS = new ArrayList<>();
|
||||||
|
|
||||||
|
public static void registerBehaviour(ResourceLocation block, MovingInteractionBehaviour provider) {
|
||||||
|
BLOCK_BEHAVIOURS.register(block, provider);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void registerBehaviour(Block block, MovingInteractionBehaviour provider) {
|
||||||
|
BLOCK_BEHAVIOURS.register(block, provider);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
public static void registerBehaviour(IRegistryDelegate<Block> block, MovingInteractionBehaviour provider) {
|
public static void registerBehaviour(IRegistryDelegate<Block> block, MovingInteractionBehaviour provider) {
|
||||||
BLOCK_BEHAVIOURS.put(block, provider);
|
registerBehaviour(block.name(), provider);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void registerBehaviourProvider(BehaviourProvider provider) {
|
public static void registerBehaviourProvider(BehaviourProvider provider) {
|
||||||
|
@ -33,7 +43,7 @@ public class AllInteractionBehaviours {
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public static MovingInteractionBehaviour getBehaviour(BlockState state) {
|
public static MovingInteractionBehaviour getBehaviour(BlockState state) {
|
||||||
MovingInteractionBehaviour behaviour = BLOCK_BEHAVIOURS.get(state.getBlock().delegate);
|
MovingInteractionBehaviour behaviour = BLOCK_BEHAVIOURS.get(state.getBlock());
|
||||||
if (behaviour != null) {
|
if (behaviour != null) {
|
||||||
return behaviour;
|
return behaviour;
|
||||||
}
|
}
|
||||||
|
@ -50,11 +60,11 @@ public class AllInteractionBehaviours {
|
||||||
|
|
||||||
public static <B extends Block> NonNullConsumer<? super B> interactionBehaviour(
|
public static <B extends Block> NonNullConsumer<? super B> interactionBehaviour(
|
||||||
MovingInteractionBehaviour behaviour) {
|
MovingInteractionBehaviour behaviour) {
|
||||||
return b -> registerBehaviour(b.delegate, behaviour);
|
return b -> registerBehaviour(b, behaviour);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void registerDefaults() {
|
static void registerDefaults() {
|
||||||
registerBehaviour(Blocks.LEVER.delegate, new LeverMovingInteraction());
|
registerBehaviour(Blocks.LEVER, new LeverMovingInteraction());
|
||||||
|
|
||||||
DoorMovingInteraction doorBehaviour = new DoorMovingInteraction();
|
DoorMovingInteraction doorBehaviour = new DoorMovingInteraction();
|
||||||
registerBehaviourProvider(state -> {
|
registerBehaviourProvider(state -> {
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
package com.simibubi.create;
|
package com.simibubi.create;
|
||||||
|
|
||||||
import static com.simibubi.create.AllTags.forgeItemTag;
|
|
||||||
import static com.simibubi.create.AllTags.AllItemTags.CREATE_INGOTS;
|
import static com.simibubi.create.AllTags.AllItemTags.CREATE_INGOTS;
|
||||||
import static com.simibubi.create.AllTags.AllItemTags.CRUSHED_ORES;
|
import static com.simibubi.create.AllTags.AllItemTags.CRUSHED_ORES;
|
||||||
import static com.simibubi.create.AllTags.AllItemTags.PLATES;
|
import static com.simibubi.create.AllTags.AllItemTags.PLATES;
|
||||||
|
import static com.simibubi.create.AllTags.forgeItemTag;
|
||||||
import static com.simibubi.create.content.AllSections.CURIOSITIES;
|
import static com.simibubi.create.content.AllSections.CURIOSITIES;
|
||||||
import static com.simibubi.create.content.AllSections.KINETICS;
|
import static com.simibubi.create.content.AllSections.KINETICS;
|
||||||
import static com.simibubi.create.content.AllSections.LOGISTICS;
|
import static com.simibubi.create.content.AllSections.LOGISTICS;
|
||||||
|
@ -85,7 +85,7 @@ public class AllItems {
|
||||||
DOUGH = taggedIngredient("dough", forgeItemTag("dough"), forgeItemTag("dough/wheat")),
|
DOUGH = taggedIngredient("dough", forgeItemTag("dough"), forgeItemTag("dough/wheat")),
|
||||||
CINDER_FLOUR = ingredient("cinder_flour"), ROSE_QUARTZ = ingredient("rose_quartz"),
|
CINDER_FLOUR = ingredient("cinder_flour"), ROSE_QUARTZ = ingredient("rose_quartz"),
|
||||||
POLISHED_ROSE_QUARTZ = ingredient("polished_rose_quartz"), POWDERED_OBSIDIAN = ingredient("powdered_obsidian"),
|
POLISHED_ROSE_QUARTZ = ingredient("polished_rose_quartz"), POWDERED_OBSIDIAN = ingredient("powdered_obsidian"),
|
||||||
STURDY_SHEET = taggedIngredient("sturdy_sheet", forgeItemTag("plates/obsidian")),
|
STURDY_SHEET = taggedIngredient("sturdy_sheet", forgeItemTag("plates/obsidian"), PLATES.tag),
|
||||||
PROPELLER = ingredient("propeller"), WHISK = ingredient("whisk"), BRASS_HAND = ingredient("brass_hand"),
|
PROPELLER = ingredient("propeller"), WHISK = ingredient("whisk"), BRASS_HAND = ingredient("brass_hand"),
|
||||||
CRAFTER_SLOT_COVER = ingredient("crafter_slot_cover"), ELECTRON_TUBE = ingredient("electron_tube");
|
CRAFTER_SLOT_COVER = ingredient("crafter_slot_cover"), ELECTRON_TUBE = ingredient("electron_tube");
|
||||||
|
|
||||||
|
@ -248,6 +248,7 @@ public class AllItems {
|
||||||
|
|
||||||
COPPER_BACKTANK = REGISTRATE.item("copper_backtank", p -> new CopperBacktankItem(p, COPPER_BACKTANK_PLACEABLE))
|
COPPER_BACKTANK = REGISTRATE.item("copper_backtank", p -> new CopperBacktankItem(p, COPPER_BACKTANK_PLACEABLE))
|
||||||
.model(AssetLookup.customGenericItemModel("_", "item"))
|
.model(AssetLookup.customGenericItemModel("_", "item"))
|
||||||
|
.tag(AllItemTags.PRESSURIZED_AIR_SOURCES.tag)
|
||||||
.register(),
|
.register(),
|
||||||
|
|
||||||
DIVING_HELMET = REGISTRATE.item("diving_helmet", DivingHelmetItem::new)
|
DIVING_HELMET = REGISTRATE.item("diving_helmet", DivingHelmetItem::new)
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
package com.simibubi.create;
|
package com.simibubi.create;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
@ -12,19 +10,31 @@ import com.simibubi.create.content.contraptions.components.actors.CampfireMoveme
|
||||||
import com.simibubi.create.content.contraptions.components.actors.dispenser.DispenserMovementBehaviour;
|
import com.simibubi.create.content.contraptions.components.actors.dispenser.DispenserMovementBehaviour;
|
||||||
import com.simibubi.create.content.contraptions.components.actors.dispenser.DropperMovementBehaviour;
|
import com.simibubi.create.content.contraptions.components.actors.dispenser.DropperMovementBehaviour;
|
||||||
import com.simibubi.create.content.contraptions.components.structureMovement.MovementBehaviour;
|
import com.simibubi.create.content.contraptions.components.structureMovement.MovementBehaviour;
|
||||||
|
import com.simibubi.create.foundation.utility.CreateRegistry;
|
||||||
import com.tterrag.registrate.util.nullness.NonNullConsumer;
|
import com.tterrag.registrate.util.nullness.NonNullConsumer;
|
||||||
|
|
||||||
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
import net.minecraft.world.level.block.state.BlockState;
|
import net.minecraft.world.level.block.state.BlockState;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
import net.minecraftforge.registries.IRegistryDelegate;
|
import net.minecraftforge.registries.IRegistryDelegate;
|
||||||
|
|
||||||
public class AllMovementBehaviours {
|
public class AllMovementBehaviours {
|
||||||
private static final Map<IRegistryDelegate<Block>, MovementBehaviour> BLOCK_BEHAVIOURS = new HashMap<>();
|
private static final CreateRegistry<Block, MovementBehaviour> BLOCK_BEHAVIOURS = new CreateRegistry<>(ForgeRegistries.BLOCKS);
|
||||||
private static final List<BehaviourProvider> GLOBAL_BEHAVIOURS = new ArrayList<>();
|
private static final List<BehaviourProvider> GLOBAL_BEHAVIOURS = new ArrayList<>();
|
||||||
|
|
||||||
|
public static void registerBehaviour(ResourceLocation block, MovementBehaviour behaviour) {
|
||||||
|
BLOCK_BEHAVIOURS.register(block, behaviour);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void registerBehaviour(Block block, MovementBehaviour behaviour) {
|
||||||
|
BLOCK_BEHAVIOURS.register(block, behaviour);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
public static void registerBehaviour(IRegistryDelegate<Block> block, MovementBehaviour behaviour) {
|
public static void registerBehaviour(IRegistryDelegate<Block> block, MovementBehaviour behaviour) {
|
||||||
BLOCK_BEHAVIOURS.put(block, behaviour);
|
registerBehaviour(block.name(), behaviour);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void registerBehaviourProvider(BehaviourProvider provider) {
|
public static void registerBehaviourProvider(BehaviourProvider provider) {
|
||||||
|
@ -33,7 +43,7 @@ public class AllMovementBehaviours {
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public static MovementBehaviour getBehaviour(BlockState state) {
|
public static MovementBehaviour getBehaviour(BlockState state) {
|
||||||
MovementBehaviour behaviour = BLOCK_BEHAVIOURS.get(state.getBlock().delegate);
|
MovementBehaviour behaviour = BLOCK_BEHAVIOURS.get(state.getBlock());
|
||||||
if (behaviour != null) {
|
if (behaviour != null) {
|
||||||
return behaviour;
|
return behaviour;
|
||||||
}
|
}
|
||||||
|
@ -50,16 +60,16 @@ public class AllMovementBehaviours {
|
||||||
|
|
||||||
public static <B extends Block> NonNullConsumer<? super B> movementBehaviour(
|
public static <B extends Block> NonNullConsumer<? super B> movementBehaviour(
|
||||||
MovementBehaviour behaviour) {
|
MovementBehaviour behaviour) {
|
||||||
return b -> registerBehaviour(b.delegate, behaviour);
|
return b -> registerBehaviour(b, behaviour);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void registerDefaults() {
|
static void registerDefaults() {
|
||||||
registerBehaviour(Blocks.BELL.delegate, new BellMovementBehaviour());
|
registerBehaviour(Blocks.BELL, new BellMovementBehaviour());
|
||||||
registerBehaviour(Blocks.CAMPFIRE.delegate, new CampfireMovementBehaviour());
|
registerBehaviour(Blocks.CAMPFIRE, new CampfireMovementBehaviour());
|
||||||
|
|
||||||
DispenserMovementBehaviour.gatherMovedDispenseItemBehaviours();
|
DispenserMovementBehaviour.gatherMovedDispenseItemBehaviours();
|
||||||
registerBehaviour(Blocks.DISPENSER.delegate, new DispenserMovementBehaviour());
|
registerBehaviour(Blocks.DISPENSER, new DispenserMovementBehaviour());
|
||||||
registerBehaviour(Blocks.DROPPER.delegate, new DropperMovementBehaviour());
|
registerBehaviour(Blocks.DROPPER, new DropperMovementBehaviour());
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface BehaviourProvider {
|
public interface BehaviourProvider {
|
||||||
|
|
|
@ -18,12 +18,13 @@ import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.particle.ParticleEngine;
|
import net.minecraft.client.particle.ParticleEngine;
|
||||||
import net.minecraft.core.particles.ParticleOptions;
|
import net.minecraft.core.particles.ParticleOptions;
|
||||||
import net.minecraft.core.particles.ParticleType;
|
import net.minecraft.core.particles.ParticleType;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||||
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
|
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
import net.minecraftforge.registries.IForgeRegistry;
|
import net.minecraftforge.registries.DeferredRegister;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
|
import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
public enum AllParticleTypes {
|
public enum AllParticleTypes {
|
||||||
|
|
||||||
|
@ -39,19 +40,17 @@ public enum AllParticleTypes {
|
||||||
SOUL(SoulParticle.Data::new),
|
SOUL(SoulParticle.Data::new),
|
||||||
SOUL_BASE(SoulBaseParticle.Data::new),
|
SOUL_BASE(SoulBaseParticle.Data::new),
|
||||||
SOUL_PERIMETER(SoulParticle.PerimeterData::new),
|
SOUL_PERIMETER(SoulParticle.PerimeterData::new),
|
||||||
SOUL_EXPANDING_PERIMETER(SoulParticle.ExpandingPerimeterData::new)
|
SOUL_EXPANDING_PERIMETER(SoulParticle.ExpandingPerimeterData::new);
|
||||||
;
|
|
||||||
|
|
||||||
private ParticleEntry<?> entry;
|
private final ParticleEntry<?> entry;
|
||||||
|
|
||||||
<D extends ParticleOptions> AllParticleTypes(Supplier<? extends ICustomParticleData<D>> typeFactory) {
|
<D extends ParticleOptions> AllParticleTypes(Supplier<? extends ICustomParticleData<D>> typeFactory) {
|
||||||
String asId = Lang.asId(this.name());
|
String name = Lang.asId(name());
|
||||||
entry = new ParticleEntry<>(new ResourceLocation(Create.ID, asId), typeFactory);
|
entry = new ParticleEntry<>(name, typeFactory);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void register(RegistryEvent.Register<ParticleType<?>> event) {
|
public static void register(IEventBus modEventBus) {
|
||||||
for (AllParticleTypes particle : values())
|
ParticleEntry.REGISTER.register(modEventBus);
|
||||||
particle.entry.register(event.getRegistry());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OnlyIn(Dist.CLIENT)
|
@OnlyIn(Dist.CLIENT)
|
||||||
|
@ -62,40 +61,31 @@ public enum AllParticleTypes {
|
||||||
}
|
}
|
||||||
|
|
||||||
public ParticleType<?> get() {
|
public ParticleType<?> get() {
|
||||||
return entry.getOrCreateType();
|
return entry.object.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String parameter() {
|
public String parameter() {
|
||||||
return Lang.asId(name());
|
return entry.name;
|
||||||
}
|
}
|
||||||
|
|
||||||
private class ParticleEntry<D extends ParticleOptions> {
|
private static class ParticleEntry<D extends ParticleOptions> {
|
||||||
Supplier<? extends ICustomParticleData<D>> typeFactory;
|
private static final DeferredRegister<ParticleType<?>> REGISTER = DeferredRegister.create(ForgeRegistries.PARTICLE_TYPES, Create.ID);
|
||||||
ParticleType<D> type;
|
|
||||||
ResourceLocation id;
|
|
||||||
|
|
||||||
public ParticleEntry(ResourceLocation id, Supplier<? extends ICustomParticleData<D>> typeFactory) {
|
private final String name;
|
||||||
this.id = id;
|
private final Supplier<? extends ICustomParticleData<D>> typeFactory;
|
||||||
|
private final RegistryObject<ParticleType<D>> object;
|
||||||
|
|
||||||
|
public ParticleEntry(String name, Supplier<? extends ICustomParticleData<D>> typeFactory) {
|
||||||
|
this.name = name;
|
||||||
this.typeFactory = typeFactory;
|
this.typeFactory = typeFactory;
|
||||||
}
|
|
||||||
|
|
||||||
void register(IForgeRegistry<ParticleType<?>> registry) {
|
object = REGISTER.register(name, () -> this.typeFactory.get().createType());
|
||||||
registry.register(getOrCreateType());
|
|
||||||
}
|
|
||||||
|
|
||||||
ParticleType<D> getOrCreateType() {
|
|
||||||
if (type != null)
|
|
||||||
return type;
|
|
||||||
type = typeFactory.get()
|
|
||||||
.createType();
|
|
||||||
type.setRegistryName(id);
|
|
||||||
return type;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@OnlyIn(Dist.CLIENT)
|
@OnlyIn(Dist.CLIENT)
|
||||||
void registerFactory(ParticleEngine particles) {
|
public void registerFactory(ParticleEngine particles) {
|
||||||
typeFactory.get()
|
typeFactory.get()
|
||||||
.register(getOrCreateType(), particles);
|
.register(object.get(), particles);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,8 @@ import java.util.Optional;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableSet;
|
import com.google.common.collect.ImmutableSet;
|
||||||
import com.simibubi.create.compat.jei.ConversionRecipe;
|
import com.simibubi.create.compat.jei.ConversionRecipe;
|
||||||
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCraftingRecipe;
|
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCraftingRecipe;
|
||||||
|
@ -27,6 +29,7 @@ import com.simibubi.create.content.curiosities.toolbox.ToolboxDyeingRecipe;
|
||||||
import com.simibubi.create.content.curiosities.tools.SandPaperPolishingRecipe;
|
import com.simibubi.create.content.curiosities.tools.SandPaperPolishingRecipe;
|
||||||
import com.simibubi.create.foundation.utility.recipe.IRecipeTypeInfo;
|
import com.simibubi.create.foundation.utility.recipe.IRecipeTypeInfo;
|
||||||
|
|
||||||
|
import net.createmod.catnip.platform.CatnipServices;
|
||||||
import net.createmod.catnip.utility.lang.Lang;
|
import net.createmod.catnip.utility.lang.Lang;
|
||||||
import net.minecraft.core.Registry;
|
import net.minecraft.core.Registry;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
@ -37,7 +40,10 @@ import net.minecraft.world.item.crafting.RecipeType;
|
||||||
import net.minecraft.world.item.crafting.ShapedRecipe;
|
import net.minecraft.world.item.crafting.ShapedRecipe;
|
||||||
import net.minecraft.world.item.crafting.SimpleRecipeSerializer;
|
import net.minecraft.world.item.crafting.SimpleRecipeSerializer;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
|
import net.minecraftforge.registries.DeferredRegister;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
|
import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
public enum AllRecipeTypes implements IRecipeTypeInfo {
|
public enum AllRecipeTypes implements IRecipeTypeInfo {
|
||||||
|
|
||||||
|
@ -60,34 +66,53 @@ public enum AllRecipeTypes implements IRecipeTypeInfo {
|
||||||
MECHANICAL_CRAFTING(MechanicalCraftingRecipe.Serializer::new),
|
MECHANICAL_CRAFTING(MechanicalCraftingRecipe.Serializer::new),
|
||||||
SEQUENCED_ASSEMBLY(SequencedAssemblyRecipeSerializer::new),
|
SEQUENCED_ASSEMBLY(SequencedAssemblyRecipeSerializer::new),
|
||||||
|
|
||||||
TOOLBOX_DYEING(() -> new SimpleRecipeSerializer<>(ToolboxDyeingRecipe::new), RecipeType.CRAFTING);
|
TOOLBOX_DYEING(() -> new SimpleRecipeSerializer<>(ToolboxDyeingRecipe::new), () -> RecipeType.CRAFTING, false);
|
||||||
|
|
||||||
;
|
private final ResourceLocation id;
|
||||||
|
private final RegistryObject<RecipeSerializer<?>> serializerObject;
|
||||||
|
@Nullable
|
||||||
|
private final RegistryObject<RecipeType<?>> typeObject;
|
||||||
|
private final Supplier<RecipeType<?>> type;
|
||||||
|
|
||||||
private ResourceLocation id;
|
AllRecipeTypes(Supplier<RecipeSerializer<?>> serializerSupplier, Supplier<RecipeType<?>> typeSupplier, boolean registerType) {
|
||||||
private Supplier<RecipeSerializer<?>> serializerSupplier;
|
String name = Lang.asId(name());
|
||||||
private Supplier<RecipeType<?>> typeSupplier;
|
id = Create.asResource(name);
|
||||||
private RecipeSerializer<?> serializer;
|
serializerObject = Registers.SERIALIZER_REGISTER.register(name, serializerSupplier);
|
||||||
private RecipeType<?> type;
|
if (registerType) {
|
||||||
|
typeObject = Registers.TYPE_REGISTER.register(name, typeSupplier);
|
||||||
AllRecipeTypes(Supplier<RecipeSerializer<?>> serializerSupplier, Supplier<RecipeType<?>> typeSupplier) {
|
type = typeObject;
|
||||||
this.id = Create.asResource(Lang.asId(name()));
|
} else {
|
||||||
this.serializerSupplier = serializerSupplier;
|
typeObject = null;
|
||||||
this.typeSupplier = typeSupplier;
|
type = typeSupplier;
|
||||||
}
|
}
|
||||||
|
|
||||||
AllRecipeTypes(Supplier<RecipeSerializer<?>> serializerSupplier, RecipeType<?> existingType) {
|
|
||||||
this(serializerSupplier, () -> existingType);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
AllRecipeTypes(Supplier<RecipeSerializer<?>> serializerSupplier) {
|
AllRecipeTypes(Supplier<RecipeSerializer<?>> serializerSupplier) {
|
||||||
this.id = Create.asResource(Lang.asId(name()));
|
String name = Lang.asId(name());
|
||||||
this.serializerSupplier = serializerSupplier;
|
id = Create.asResource(name);
|
||||||
this.typeSupplier = () -> simpleType(id);
|
serializerObject = Registers.SERIALIZER_REGISTER.register(name, serializerSupplier);
|
||||||
|
typeObject = Registers.TYPE_REGISTER.register(name, () -> simpleType(id));
|
||||||
|
type = typeObject;
|
||||||
}
|
}
|
||||||
|
|
||||||
AllRecipeTypes(ProcessingRecipeFactory<?> processingFactory) {
|
AllRecipeTypes(ProcessingRecipeFactory<?> processingFactory) {
|
||||||
this(processingSerializer(processingFactory));
|
this(() -> new ProcessingRecipeSerializer<>(processingFactory));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static <T extends Recipe<?>> RecipeType<T> simpleType(ResourceLocation id) {
|
||||||
|
String stringId = id.toString();
|
||||||
|
return new RecipeType<T>() {
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return stringId;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void register(IEventBus modEventBus) {
|
||||||
|
ShapedRecipe.setCraftingSize(9, 9);
|
||||||
|
Registers.SERIALIZER_REGISTER.register(modEventBus);
|
||||||
|
Registers.TYPE_REGISTER.register(modEventBus);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -98,13 +123,13 @@ public enum AllRecipeTypes implements IRecipeTypeInfo {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public <T extends RecipeSerializer<?>> T getSerializer() {
|
public <T extends RecipeSerializer<?>> T getSerializer() {
|
||||||
return (T) serializer;
|
return (T) serializerObject.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public <T extends RecipeType<?>> T getType() {
|
public <T extends RecipeType<?>> T getType() {
|
||||||
return (T) type;
|
return (T) type.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
public <C extends Container, T extends Recipe<C>> Optional<T> find(C inv, Level world) {
|
public <C extends Container, T extends Recipe<C>> Optional<T> find(C inv, Level world) {
|
||||||
|
@ -112,42 +137,21 @@ public enum AllRecipeTypes implements IRecipeTypeInfo {
|
||||||
.getRecipeFor(getType(), inv, world);
|
.getRecipeFor(getType(), inv, world);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void register(RegistryEvent.Register<RecipeSerializer<?>> event) {
|
|
||||||
ShapedRecipe.setCraftingSize(9, 9);
|
|
||||||
|
|
||||||
for (AllRecipeTypes r : AllRecipeTypes.values()) {
|
|
||||||
r.serializer = r.serializerSupplier.get();
|
|
||||||
r.type = r.typeSupplier.get();
|
|
||||||
r.serializer.setRegistryName(r.id);
|
|
||||||
event.getRegistry()
|
|
||||||
.register(r.serializer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private static Supplier<RecipeSerializer<?>> processingSerializer(ProcessingRecipeFactory<?> factory) {
|
|
||||||
return () -> new ProcessingRecipeSerializer<>(factory);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static <T extends Recipe<?>> RecipeType<T> simpleType(ResourceLocation id) {
|
|
||||||
String stringId = id.toString();
|
|
||||||
return Registry.register(Registry.RECIPE_TYPE, id, new RecipeType<T>() {
|
|
||||||
@Override
|
|
||||||
public String toString() {
|
|
||||||
return stringId;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
public static final Set<ResourceLocation> RECIPE_DENY_SET =
|
public static final Set<ResourceLocation> RECIPE_DENY_SET =
|
||||||
ImmutableSet.of(new ResourceLocation("occultism", "spirit_trade"), new ResourceLocation("occultism", "ritual"));
|
ImmutableSet.of(new ResourceLocation("occultism", "spirit_trade"), new ResourceLocation("occultism", "ritual"));
|
||||||
|
|
||||||
public static boolean shouldIgnoreInAutomation(Recipe<?> recipe) {
|
public static boolean shouldIgnoreInAutomation(Recipe<?> recipe) {
|
||||||
RecipeSerializer<?> serializer = recipe.getSerializer();
|
RecipeSerializer<?> serializer = recipe.getSerializer();
|
||||||
if (serializer != null && RECIPE_DENY_SET.contains(serializer.getRegistryName()))
|
if (serializer != null && RECIPE_DENY_SET.contains(CatnipServices.REGISTRIES.getKeyOrThrow(serializer)))
|
||||||
return true;
|
return true;
|
||||||
return recipe.getId()
|
return recipe.getId()
|
||||||
.getPath()
|
.getPath()
|
||||||
.endsWith("_manual_only");
|
.endsWith("_manual_only");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static class Registers {
|
||||||
|
private static final DeferredRegister<RecipeSerializer<?>> SERIALIZER_REGISTER = DeferredRegister.create(ForgeRegistries.RECIPE_SERIALIZERS, Create.ID);
|
||||||
|
private static final DeferredRegister<RecipeType<?>> TYPE_REGISTER = DeferredRegister.create(Registry.RECIPE_TYPE_REGISTRY, Create.ID);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,15 +6,13 @@ import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.google.gson.GsonBuilder;
|
import com.google.gson.GsonBuilder;
|
||||||
import com.google.gson.JsonArray;
|
import com.google.gson.JsonArray;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
|
|
||||||
import net.createmod.catnip.utility.Couple;
|
|
||||||
import net.createmod.catnip.utility.Pair;
|
|
||||||
import net.minecraft.core.Vec3i;
|
import net.minecraft.core.Vec3i;
|
||||||
import net.minecraft.data.DataGenerator;
|
import net.minecraft.data.DataGenerator;
|
||||||
import net.minecraft.data.DataProvider;
|
import net.minecraft.data.DataProvider;
|
||||||
|
@ -28,12 +26,15 @@ import net.minecraft.world.entity.player.Player;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.phys.Vec3;
|
import net.minecraft.world.phys.Vec3;
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
import net.minecraftforge.event.RegistryEvent;
|
||||||
|
import net.minecraftforge.registries.ForgeRegistries;
|
||||||
import net.minecraftforge.registries.IForgeRegistry;
|
import net.minecraftforge.registries.IForgeRegistry;
|
||||||
|
import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
//@EventBusSubscriber(bus = Bus.FORGE)
|
//@EventBusSubscriber(bus = Bus.FORGE)
|
||||||
public class AllSoundEvents {
|
public class AllSoundEvents {
|
||||||
|
|
||||||
public static final Map<ResourceLocation, SoundEntry> entries = new HashMap<>();
|
public static final Map<ResourceLocation, SoundEntry> ALL = new HashMap<>();
|
||||||
|
|
||||||
public static final SoundEntry
|
public static final SoundEntry
|
||||||
|
|
||||||
SCHEMATICANNON_LAUNCH_BLOCK = create("schematicannon_launch_block").subtitle("Schematicannon fires")
|
SCHEMATICANNON_LAUNCH_BLOCK = create("schematicannon_launch_block").subtitle("Schematicannon fires")
|
||||||
|
@ -306,20 +307,20 @@ public class AllSoundEvents {
|
||||||
return new SoundEntryBuilder(id);
|
return new SoundEntryBuilder(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void register(RegistryEvent.Register<SoundEvent> event) {
|
public static void prepare() {
|
||||||
IForgeRegistry<SoundEvent> registry = event.getRegistry();
|
for (SoundEntry entry : ALL.values())
|
||||||
for (SoundEntry entry : entries.values())
|
entry.prepare();
|
||||||
entry.register(registry);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void prepare() {
|
public static void register(RegistryEvent.Register<SoundEvent> event) {
|
||||||
for (SoundEntry entry : entries.values())
|
IForgeRegistry<SoundEvent> registry = event.getRegistry();
|
||||||
entry.prepare();
|
for (SoundEntry entry : ALL.values())
|
||||||
|
entry.register(registry);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static JsonObject provideLangEntries() {
|
public static JsonObject provideLangEntries() {
|
||||||
JsonObject object = new JsonObject();
|
JsonObject object = new JsonObject();
|
||||||
for (SoundEntry entry : entries.values())
|
for (SoundEntry entry : ALL.values())
|
||||||
if (entry.hasSubtitle())
|
if (entry.hasSubtitle())
|
||||||
object.addProperty(entry.getSubtitleKey(), entry.getSubtitle());
|
object.addProperty(entry.getSubtitleKey(), entry.getSubtitle());
|
||||||
return object;
|
return object;
|
||||||
|
@ -370,7 +371,7 @@ public class AllSoundEvents {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
JsonObject json = new JsonObject();
|
JsonObject json = new JsonObject();
|
||||||
entries.entrySet()
|
ALL.entrySet()
|
||||||
.stream()
|
.stream()
|
||||||
.sorted(Map.Entry.comparingByKey())
|
.sorted(Map.Entry.comparingByKey())
|
||||||
.forEach(entry -> {
|
.forEach(entry -> {
|
||||||
|
@ -386,12 +387,15 @@ public class AllSoundEvents {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public record ConfiguredSoundEvent(Supplier<SoundEvent> event, float volume, float pitch) {
|
||||||
|
}
|
||||||
|
|
||||||
public static class SoundEntryBuilder {
|
public static class SoundEntryBuilder {
|
||||||
|
|
||||||
protected ResourceLocation id;
|
protected ResourceLocation id;
|
||||||
protected String subtitle = "unregistered";
|
protected String subtitle = "unregistered";
|
||||||
protected SoundSource category = SoundSource.BLOCKS;
|
protected SoundSource category = SoundSource.BLOCKS;
|
||||||
protected List<Pair<SoundEvent, Couple<Float>>> wrappedEvents;
|
protected List<ConfiguredSoundEvent> wrappedEvents;
|
||||||
protected List<ResourceLocation> variants;
|
protected List<ResourceLocation> variants;
|
||||||
protected int attenuationDistance;
|
protected int attenuationDistance;
|
||||||
|
|
||||||
|
@ -430,11 +434,15 @@ public class AllSoundEvents {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SoundEntryBuilder playExisting(SoundEvent event, float volume, float pitch) {
|
public SoundEntryBuilder playExisting(Supplier<SoundEvent> event, float volume, float pitch) {
|
||||||
wrappedEvents.add(Pair.of(event, Couple.create(volume, pitch)));
|
wrappedEvents.add(new ConfiguredSoundEvent(event, volume, pitch));
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public SoundEntryBuilder playExisting(SoundEvent event, float volume, float pitch) {
|
||||||
|
return playExisting(() -> event, volume, pitch);
|
||||||
|
}
|
||||||
|
|
||||||
public SoundEntryBuilder playExisting(SoundEvent event) {
|
public SoundEntryBuilder playExisting(SoundEvent event) {
|
||||||
return playExisting(event, 1, 1);
|
return playExisting(event, 1, 1);
|
||||||
}
|
}
|
||||||
|
@ -443,7 +451,7 @@ public class AllSoundEvents {
|
||||||
SoundEntry entry =
|
SoundEntry entry =
|
||||||
wrappedEvents.isEmpty() ? new CustomSoundEntry(id, variants, subtitle, category, attenuationDistance)
|
wrappedEvents.isEmpty() ? new CustomSoundEntry(id, variants, subtitle, category, attenuationDistance)
|
||||||
: new WrappedSoundEntry(id, subtitle, wrappedEvents, category, attenuationDistance);
|
: new WrappedSoundEntry(id, subtitle, wrappedEvents, category, attenuationDistance);
|
||||||
entries.put(entry.getId(), entry);
|
ALL.put(entry.getId(), entry);
|
||||||
return entry;
|
return entry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -532,50 +540,53 @@ public class AllSoundEvents {
|
||||||
|
|
||||||
private static class WrappedSoundEntry extends SoundEntry {
|
private static class WrappedSoundEntry extends SoundEntry {
|
||||||
|
|
||||||
private List<Pair<SoundEvent, Couple<Float>>> wrappedEvents;
|
private List<ConfiguredSoundEvent> wrappedEvents;
|
||||||
private List<Pair<SoundEvent, Couple<Float>>> compiledEvents;
|
private List<CompiledSoundEvent> compiledEvents;
|
||||||
|
|
||||||
public WrappedSoundEntry(ResourceLocation id, String subtitle,
|
public WrappedSoundEntry(ResourceLocation id, String subtitle,
|
||||||
List<Pair<SoundEvent, Couple<Float>>> wrappedEvents, SoundSource category, int attenuationDistance) {
|
List<ConfiguredSoundEvent> wrappedEvents, SoundSource category, int attenuationDistance) {
|
||||||
super(id, subtitle, category, attenuationDistance);
|
super(id, subtitle, category, attenuationDistance);
|
||||||
this.wrappedEvents = wrappedEvents;
|
this.wrappedEvents = wrappedEvents;
|
||||||
compiledEvents = Lists.newArrayList();
|
compiledEvents = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void prepare() {
|
public void prepare() {
|
||||||
for (int i = 0; i < wrappedEvents.size(); i++) {
|
for (int i = 0; i < wrappedEvents.size(); i++) {
|
||||||
ResourceLocation location = Create.asResource(getIdOf(i));
|
ConfiguredSoundEvent wrapped = wrappedEvents.get(i);
|
||||||
SoundEvent sound = new SoundEvent(location).setRegistryName(location);
|
ResourceLocation location = getIdOf(i);
|
||||||
compiledEvents.add(Pair.of(sound, wrappedEvents.get(i)
|
RegistryObject<SoundEvent> event = RegistryObject.create(location, ForgeRegistries.SOUND_EVENTS);
|
||||||
.getSecond()));
|
compiledEvents.add(new CompiledSoundEvent(event, wrapped.volume(), wrapped.pitch()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void register(IForgeRegistry<SoundEvent> registry) {
|
public void register(IForgeRegistry<SoundEvent> registry) {
|
||||||
for (Pair<SoundEvent, Couple<Float>> pair : compiledEvents)
|
for (CompiledSoundEvent compiledEvent : compiledEvents) {
|
||||||
registry.register(pair.getFirst());
|
ResourceLocation location = compiledEvent.event().getId();
|
||||||
|
registry.register(new SoundEvent(location).setRegistryName(location));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SoundEvent getMainEvent() {
|
public SoundEvent getMainEvent() {
|
||||||
return compiledEvents.get(0)
|
return compiledEvents.get(0)
|
||||||
.getFirst();
|
.event().get();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String getIdOf(int i) {
|
protected ResourceLocation getIdOf(int i) {
|
||||||
return i == 0 ? id.getPath() : id.getPath() + "_compounded_" + i;
|
return new ResourceLocation(id.getNamespace(), i == 0 ? id.getPath() : id.getPath() + "_compounded_" + i);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void write(JsonObject json) {
|
public void write(JsonObject json) {
|
||||||
for (int i = 0; i < wrappedEvents.size(); i++) {
|
for (int i = 0; i < wrappedEvents.size(); i++) {
|
||||||
Pair<SoundEvent, Couple<Float>> pair = wrappedEvents.get(i);
|
ConfiguredSoundEvent event = wrappedEvents.get(i);
|
||||||
JsonObject entry = new JsonObject();
|
JsonObject entry = new JsonObject();
|
||||||
JsonArray list = new JsonArray();
|
JsonArray list = new JsonArray();
|
||||||
JsonObject s = new JsonObject();
|
JsonObject s = new JsonObject();
|
||||||
s.addProperty("name", pair.getFirst()
|
s.addProperty("name", event.event()
|
||||||
|
.get()
|
||||||
.getLocation()
|
.getLocation()
|
||||||
.toString());
|
.toString());
|
||||||
s.addProperty("type", "event");
|
s.addProperty("type", "event");
|
||||||
|
@ -585,33 +596,35 @@ public class AllSoundEvents {
|
||||||
entry.add("sounds", list);
|
entry.add("sounds", list);
|
||||||
if (i == 0 && hasSubtitle())
|
if (i == 0 && hasSubtitle())
|
||||||
entry.addProperty("subtitle", getSubtitleKey());
|
entry.addProperty("subtitle", getSubtitleKey());
|
||||||
json.add(getIdOf(i), entry);
|
json.add(getIdOf(i).getPath(), entry);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) {
|
public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) {
|
||||||
for (Pair<SoundEvent, Couple<Float>> pair : compiledEvents) {
|
for (CompiledSoundEvent event : compiledEvents) {
|
||||||
Couple<Float> volPitch = pair.getSecond();
|
world.playSound(entity, x, y, z, event.event().get(), category, event.volume() * volume,
|
||||||
world.playSound(entity, x, y, z, pair.getFirst(), category, volPitch.getFirst() * volume,
|
event.pitch() * pitch);
|
||||||
volPitch.getSecond() * pitch);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) {
|
public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) {
|
||||||
for (Pair<SoundEvent, Couple<Float>> pair : compiledEvents) {
|
for (CompiledSoundEvent event : compiledEvents) {
|
||||||
Couple<Float> volPitch = pair.getSecond();
|
world.playLocalSound(x, y, z, event.event().get(), category, event.volume() * volume,
|
||||||
world.playLocalSound(x, y, z, pair.getFirst(), category, volPitch.getFirst() * volume,
|
event.pitch() * pitch, fade);
|
||||||
volPitch.getSecond() * pitch, fade);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private record CompiledSoundEvent(RegistryObject<SoundEvent> event, float volume, float pitch) {
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class CustomSoundEntry extends SoundEntry {
|
private static class CustomSoundEntry extends SoundEntry {
|
||||||
|
|
||||||
protected List<ResourceLocation> variants;
|
protected List<ResourceLocation> variants;
|
||||||
protected SoundEvent event;
|
protected RegistryObject<SoundEvent> event;
|
||||||
|
|
||||||
public CustomSoundEntry(ResourceLocation id, List<ResourceLocation> variants, String subtitle,
|
public CustomSoundEntry(ResourceLocation id, List<ResourceLocation> variants, String subtitle,
|
||||||
SoundSource category, int attenuationDistance) {
|
SoundSource category, int attenuationDistance) {
|
||||||
|
@ -621,17 +634,18 @@ public class AllSoundEvents {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void prepare() {
|
public void prepare() {
|
||||||
event = new SoundEvent(id).setRegistryName(id);
|
event = RegistryObject.create(id, ForgeRegistries.SOUND_EVENTS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void register(IForgeRegistry<SoundEvent> registry) {
|
public void register(IForgeRegistry<SoundEvent> registry) {
|
||||||
registry.register(event);
|
ResourceLocation location = event.getId();
|
||||||
|
registry.register(new SoundEvent(location).setRegistryName(location));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SoundEvent getMainEvent() {
|
public SoundEvent getMainEvent() {
|
||||||
return event;
|
return event.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -663,12 +677,12 @@ public class AllSoundEvents {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) {
|
public void play(Level world, Player entity, double x, double y, double z, float volume, float pitch) {
|
||||||
world.playSound(entity, x, y, z, event, category, volume, pitch);
|
world.playSound(entity, x, y, z, event.get(), category, volume, pitch);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) {
|
public void playAt(Level world, double x, double y, double z, float volume, float pitch, boolean fade) {
|
||||||
world.playLocalSound(x, y, z, event, category, volume, pitch, fade);
|
world.playLocalSound(x, y, z, event.get(), category, volume, pitch, fade);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.simibubi.create;
|
||||||
|
|
||||||
|
import com.simibubi.create.content.schematics.SchematicProcessor;
|
||||||
|
|
||||||
|
import net.minecraft.core.Registry;
|
||||||
|
import net.minecraft.world.level.levelgen.structure.templatesystem.StructureProcessorType;
|
||||||
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
|
import net.minecraftforge.registries.DeferredRegister;
|
||||||
|
import net.minecraftforge.registries.RegistryObject;
|
||||||
|
|
||||||
|
public class AllStructureProcessorTypes {
|
||||||
|
private static final DeferredRegister<StructureProcessorType<?>> REGISTER = DeferredRegister.create(Registry.STRUCTURE_PROCESSOR_REGISTRY, Create.ID);
|
||||||
|
|
||||||
|
public static final RegistryObject<StructureProcessorType<SchematicProcessor>> SCHEMATIC = REGISTER.register("schematic", () -> () -> SchematicProcessor.CODEC);
|
||||||
|
|
||||||
|
public static void register(IEventBus modEventBus) {
|
||||||
|
REGISTER.register(modEventBus);
|
||||||
|
}
|
||||||
|
}
|
|
@ -112,9 +112,11 @@ public class AllTags {
|
||||||
public enum AllBlockTags {
|
public enum AllBlockTags {
|
||||||
|
|
||||||
BRITTLE,
|
BRITTLE,
|
||||||
FAN_HEATERS,
|
CASING,
|
||||||
FAN_TRANSPARENT,
|
FAN_TRANSPARENT,
|
||||||
|
NON_MOVABLE,
|
||||||
ORE_OVERRIDE_STONE,
|
ORE_OVERRIDE_STONE,
|
||||||
|
PASSIVE_BOILER_HEATERS,
|
||||||
SAFE_NBT,
|
SAFE_NBT,
|
||||||
SEATS,
|
SEATS,
|
||||||
TOOLBOXES,
|
TOOLBOXES,
|
||||||
|
@ -122,10 +124,7 @@ public class AllTags {
|
||||||
WINDMILL_SAILS,
|
WINDMILL_SAILS,
|
||||||
WINDOWABLE,
|
WINDOWABLE,
|
||||||
WRENCH_PICKUP,
|
WRENCH_PICKUP,
|
||||||
CASING,
|
TREE_ATTACHMENTS,
|
||||||
NON_MOVABLE,
|
|
||||||
|
|
||||||
PASSIVE_BOILER_HEATERS,
|
|
||||||
|
|
||||||
RELOCATION_NOT_SUPPORTED(FORGE),
|
RELOCATION_NOT_SUPPORTED(FORGE),
|
||||||
WG_STONE(FORGE),
|
WG_STONE(FORGE),
|
||||||
|
@ -208,10 +207,13 @@ public class AllTags {
|
||||||
|
|
||||||
BLAZE_BURNER_FUEL_REGULAR(MOD, "blaze_burner_fuel/regular"),
|
BLAZE_BURNER_FUEL_REGULAR(MOD, "blaze_burner_fuel/regular"),
|
||||||
BLAZE_BURNER_FUEL_SPECIAL(MOD, "blaze_burner_fuel/special"),
|
BLAZE_BURNER_FUEL_SPECIAL(MOD, "blaze_burner_fuel/special"),
|
||||||
|
CASING,
|
||||||
CREATE_INGOTS,
|
CREATE_INGOTS,
|
||||||
CRUSHED_ORES,
|
CRUSHED_ORES,
|
||||||
|
PRESSURIZED_AIR_SOURCES,
|
||||||
SANDPAPER,
|
SANDPAPER,
|
||||||
SEATS,
|
SEATS,
|
||||||
|
SLEEPERS,
|
||||||
TOOLBOXES,
|
TOOLBOXES,
|
||||||
UPRIGHT_ON_BELT,
|
UPRIGHT_ON_BELT,
|
||||||
VALVE_HANDLES,
|
VALVE_HANDLES,
|
||||||
|
@ -219,8 +221,6 @@ public class AllTags {
|
||||||
VANILLA_STRIPPED_WOOD,
|
VANILLA_STRIPPED_WOOD,
|
||||||
MODDED_STRIPPED_LOGS,
|
MODDED_STRIPPED_LOGS,
|
||||||
MODDED_STRIPPED_WOOD,
|
MODDED_STRIPPED_WOOD,
|
||||||
CASING,
|
|
||||||
SLEEPERS,
|
|
||||||
|
|
||||||
STRIPPED_LOGS(FORGE),
|
STRIPPED_LOGS(FORGE),
|
||||||
STRIPPED_WOOD(FORGE),
|
STRIPPED_WOOD(FORGE),
|
||||||
|
@ -401,10 +401,9 @@ public class AllTags {
|
||||||
AllBlockTags.FAN_TRANSPARENT.includeAll(BlockTags.CAMPFIRES);
|
AllBlockTags.FAN_TRANSPARENT.includeAll(BlockTags.CAMPFIRES);
|
||||||
AllBlockTags.FAN_TRANSPARENT.add(Blocks.IRON_BARS);
|
AllBlockTags.FAN_TRANSPARENT.add(Blocks.IRON_BARS);
|
||||||
|
|
||||||
AllBlockTags.FAN_HEATERS.includeAll(BlockTags.FIRE);
|
AllBlockTags.PASSIVE_BOILER_HEATERS.includeAll(BlockTags.FIRE);
|
||||||
AllBlockTags.FAN_HEATERS.includeAll(BlockTags.CAMPFIRES);
|
AllBlockTags.PASSIVE_BOILER_HEATERS.includeAll(BlockTags.CAMPFIRES);
|
||||||
AllBlockTags.FAN_HEATERS.add(Blocks.MAGMA_BLOCK, Blocks.LAVA);
|
AllBlockTags.PASSIVE_BOILER_HEATERS.add(Blocks.MAGMA_BLOCK, Blocks.LAVA);
|
||||||
AllBlockTags.FAN_HEATERS.includeIn(AllBlockTags.PASSIVE_BOILER_HEATERS);
|
|
||||||
|
|
||||||
AllBlockTags.SAFE_NBT.includeAll(BlockTags.SIGNS);
|
AllBlockTags.SAFE_NBT.includeAll(BlockTags.SIGNS);
|
||||||
AllBlockTags.SAFE_NBT.includeAll(BlockTags.BANNERS);
|
AllBlockTags.SAFE_NBT.includeAll(BlockTags.BANNERS);
|
||||||
|
@ -414,7 +413,10 @@ public class AllTags {
|
||||||
AllBlockTags.WRENCH_PICKUP.includeAll(BlockTags.PRESSURE_PLATES);
|
AllBlockTags.WRENCH_PICKUP.includeAll(BlockTags.PRESSURE_PLATES);
|
||||||
AllBlockTags.WRENCH_PICKUP.add(Blocks.REDSTONE_WIRE, Blocks.REDSTONE_TORCH, Blocks.REPEATER, Blocks.LEVER,
|
AllBlockTags.WRENCH_PICKUP.add(Blocks.REDSTONE_WIRE, Blocks.REDSTONE_TORCH, Blocks.REPEATER, Blocks.LEVER,
|
||||||
Blocks.COMPARATOR, Blocks.OBSERVER, Blocks.REDSTONE_WALL_TORCH, Blocks.PISTON, Blocks.STICKY_PISTON,
|
Blocks.COMPARATOR, Blocks.OBSERVER, Blocks.REDSTONE_WALL_TORCH, Blocks.PISTON, Blocks.STICKY_PISTON,
|
||||||
Blocks.TRIPWIRE, Blocks.TRIPWIRE_HOOK, Blocks.DAYLIGHT_DETECTOR, Blocks.TARGET);
|
Blocks.TRIPWIRE, Blocks.TRIPWIRE_HOOK, Blocks.DAYLIGHT_DETECTOR, Blocks.TARGET, Blocks.HOPPER);
|
||||||
|
|
||||||
|
AllBlockTags.TREE_ATTACHMENTS.add(Blocks.BEE_NEST, Blocks.VINE, Blocks.MOSS_CARPET, Blocks.SHROOMLIGHT,
|
||||||
|
Blocks.COCOA);
|
||||||
|
|
||||||
AllBlockTags.ORE_OVERRIDE_STONE.includeAll(BlockTags.STONE_ORE_REPLACEABLES);
|
AllBlockTags.ORE_OVERRIDE_STONE.includeAll(BlockTags.STONE_ORE_REPLACEABLES);
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ import com.simibubi.create.content.logistics.block.display.AllDisplayBehaviours;
|
||||||
import com.simibubi.create.content.logistics.block.mechanicalArm.AllArmInteractionPointTypes;
|
import com.simibubi.create.content.logistics.block.mechanicalArm.AllArmInteractionPointTypes;
|
||||||
import com.simibubi.create.content.logistics.trains.GlobalRailwayManager;
|
import com.simibubi.create.content.logistics.trains.GlobalRailwayManager;
|
||||||
import com.simibubi.create.content.palettes.AllPaletteBlocks;
|
import com.simibubi.create.content.palettes.AllPaletteBlocks;
|
||||||
import com.simibubi.create.content.schematics.SchematicProcessor;
|
import com.simibubi.create.content.palettes.PalettesItemGroup;
|
||||||
import com.simibubi.create.content.schematics.ServerSchematicLoader;
|
import com.simibubi.create.content.schematics.ServerSchematicLoader;
|
||||||
import com.simibubi.create.content.schematics.filtering.SchematicInstances;
|
import com.simibubi.create.content.schematics.filtering.SchematicInstances;
|
||||||
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
import com.simibubi.create.foundation.advancement.AllAdvancements;
|
||||||
|
@ -28,6 +28,7 @@ import com.simibubi.create.foundation.advancement.AllTriggers;
|
||||||
import com.simibubi.create.foundation.block.CopperRegistries;
|
import com.simibubi.create.foundation.block.CopperRegistries;
|
||||||
import com.simibubi.create.foundation.command.ServerLagger;
|
import com.simibubi.create.foundation.command.ServerLagger;
|
||||||
import com.simibubi.create.foundation.config.AllConfigs;
|
import com.simibubi.create.foundation.config.AllConfigs;
|
||||||
|
import com.simibubi.create.foundation.config.ContraptionMovementSetting;
|
||||||
import com.simibubi.create.foundation.data.CreateRegistrate;
|
import com.simibubi.create.foundation.data.CreateRegistrate;
|
||||||
import com.simibubi.create.foundation.data.LangMerger;
|
import com.simibubi.create.foundation.data.LangMerger;
|
||||||
import com.simibubi.create.foundation.data.recipe.MechanicalCraftingRecipeGen;
|
import com.simibubi.create.foundation.data.recipe.MechanicalCraftingRecipeGen;
|
||||||
|
@ -36,17 +37,21 @@ import com.simibubi.create.foundation.data.recipe.SequencedAssemblyRecipeGen;
|
||||||
import com.simibubi.create.foundation.data.recipe.StandardRecipeGen;
|
import com.simibubi.create.foundation.data.recipe.StandardRecipeGen;
|
||||||
import com.simibubi.create.foundation.networking.AllPackets;
|
import com.simibubi.create.foundation.networking.AllPackets;
|
||||||
import com.simibubi.create.foundation.ponder.CreatePonderPlugin;
|
import com.simibubi.create.foundation.ponder.CreatePonderPlugin;
|
||||||
import com.simibubi.create.foundation.worldgen.AllWorldFeatures;
|
import com.simibubi.create.foundation.utility.CreateRegistry;
|
||||||
|
import com.simibubi.create.foundation.worldgen.AllFeatures;
|
||||||
|
import com.simibubi.create.foundation.worldgen.AllOreFeatureConfigEntries;
|
||||||
|
import com.simibubi.create.foundation.worldgen.AllPlacementModifiers;
|
||||||
|
import com.simibubi.create.foundation.worldgen.BuiltinRegistration;
|
||||||
import com.tterrag.registrate.util.nullness.NonNullSupplier;
|
import com.tterrag.registrate.util.nullness.NonNullSupplier;
|
||||||
|
|
||||||
|
import net.createmod.catnip.utility.lang.LangBuilder;
|
||||||
import net.createmod.ponder.foundation.PonderIndex;
|
import net.createmod.ponder.foundation.PonderIndex;
|
||||||
import net.minecraft.core.particles.ParticleType;
|
|
||||||
import net.minecraft.data.DataGenerator;
|
import net.minecraft.data.DataGenerator;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.sounds.SoundEvent;
|
import net.minecraft.sounds.SoundEvent;
|
||||||
|
import net.minecraft.world.entity.Entity;
|
||||||
import net.minecraft.world.item.CreativeModeTab;
|
import net.minecraft.world.item.CreativeModeTab;
|
||||||
import net.minecraft.world.item.crafting.RecipeSerializer;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.levelgen.feature.Feature;
|
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
import net.minecraftforge.common.ForgeMod;
|
import net.minecraftforge.common.ForgeMod;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
|
@ -58,14 +63,13 @@ import net.minecraftforge.fml.common.Mod;
|
||||||
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
|
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
|
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
|
||||||
import net.minecraftforge.forge.event.lifecycle.GatherDataEvent;
|
import net.minecraftforge.forge.event.lifecycle.GatherDataEvent;
|
||||||
import net.minecraftforge.registries.DataSerializerEntry;
|
|
||||||
|
|
||||||
@Mod(Create.ID)
|
@Mod(Create.ID)
|
||||||
public class Create {
|
public class Create {
|
||||||
|
|
||||||
public static final String ID = "create";
|
public static final String ID = "create";
|
||||||
public static final String NAME = "Create";
|
public static final String NAME = "Create";
|
||||||
public static final String VERSION = "0.5c";
|
public static final String VERSION = "0.5e";
|
||||||
|
|
||||||
public static final Logger LOGGER = LogManager.getLogger();
|
public static final Logger LOGGER = LogManager.getLogger();
|
||||||
|
|
||||||
|
@ -74,13 +78,15 @@ public class Create {
|
||||||
.create();
|
.create();
|
||||||
|
|
||||||
public static final CreativeModeTab BASE_CREATIVE_TAB = new CreateItemGroup();
|
public static final CreativeModeTab BASE_CREATIVE_TAB = new CreateItemGroup();
|
||||||
// public static final CreativeModeTab PALETTES_CREATIVE_TAB = new PalettesItemGroup();
|
public static final CreativeModeTab PALETTES_CREATIVE_TAB = new PalettesItemGroup();
|
||||||
|
|
||||||
public static final ServerSchematicLoader SCHEMATIC_RECEIVER = new ServerSchematicLoader();
|
public static final ServerSchematicLoader SCHEMATIC_RECEIVER = new ServerSchematicLoader();
|
||||||
public static final RedstoneLinkNetworkHandler REDSTONE_LINK_NETWORK_HANDLER = new RedstoneLinkNetworkHandler();
|
public static final RedstoneLinkNetworkHandler REDSTONE_LINK_NETWORK_HANDLER = new RedstoneLinkNetworkHandler();
|
||||||
public static final TorquePropagator TORQUE_PROPAGATOR = new TorquePropagator();
|
public static final TorquePropagator TORQUE_PROPAGATOR = new TorquePropagator();
|
||||||
public static final GlobalRailwayManager RAILWAYS = new GlobalRailwayManager();
|
public static final GlobalRailwayManager RAILWAYS = new GlobalRailwayManager();
|
||||||
public static final ServerLagger LAGGER = new ServerLagger();
|
public static final ServerLagger LAGGER = new ServerLagger();
|
||||||
|
/** Use the {@link Random} of a local {@link Level} or {@link Entity} or create one */
|
||||||
|
@Deprecated
|
||||||
public static final Random RANDOM = new Random();
|
public static final Random RANDOM = new Random();
|
||||||
|
|
||||||
private static final NonNullSupplier<CreateRegistrate> REGISTRATE = CreateRegistrate.lazy(ID);
|
private static final NonNullSupplier<CreateRegistrate> REGISTRATE = CreateRegistrate.lazy(ID);
|
||||||
|
@ -92,6 +98,10 @@ public class Create {
|
||||||
public static void onCtor() {
|
public static void onCtor() {
|
||||||
ModLoadingContext modLoadingContext = ModLoadingContext.get();
|
ModLoadingContext modLoadingContext = ModLoadingContext.get();
|
||||||
|
|
||||||
|
IEventBus modEventBus = FMLJavaModLoadingContext.get()
|
||||||
|
.getModEventBus();
|
||||||
|
IEventBus forgeEventBus = MinecraftForge.EVENT_BUS;
|
||||||
|
|
||||||
AllSoundEvents.prepare();
|
AllSoundEvents.prepare();
|
||||||
AllBlocks.register();
|
AllBlocks.register();
|
||||||
AllItems.register();
|
AllItems.register();
|
||||||
|
@ -101,30 +111,31 @@ public class Create {
|
||||||
AllContainerTypes.register();
|
AllContainerTypes.register();
|
||||||
AllEntityTypes.register();
|
AllEntityTypes.register();
|
||||||
AllTileEntities.register();
|
AllTileEntities.register();
|
||||||
|
AllEnchantments.register();
|
||||||
|
AllRecipeTypes.register(modEventBus);
|
||||||
|
AllParticleTypes.register(modEventBus);
|
||||||
|
AllStructureProcessorTypes.register(modEventBus);
|
||||||
|
AllEntityDataSerializers.register(modEventBus);
|
||||||
|
AllOreFeatureConfigEntries.init();
|
||||||
|
AllFeatures.register(modEventBus);
|
||||||
|
AllPlacementModifiers.register(modEventBus);
|
||||||
|
BuiltinRegistration.register(modEventBus);
|
||||||
|
|
||||||
|
AllConfigs.register(modLoadingContext);
|
||||||
|
|
||||||
AllMovementBehaviours.registerDefaults();
|
AllMovementBehaviours.registerDefaults();
|
||||||
AllInteractionBehaviours.registerDefaults();
|
AllInteractionBehaviours.registerDefaults();
|
||||||
AllDisplayBehaviours.registerDefaults();
|
AllDisplayBehaviours.registerDefaults();
|
||||||
|
ContraptionMovementSetting.registerDefaults();
|
||||||
AllArmInteractionPointTypes.register();
|
AllArmInteractionPointTypes.register();
|
||||||
AllWorldFeatures.register();
|
BlockSpoutingBehaviour.registerDefaults();
|
||||||
AllEnchantments.register();
|
|
||||||
AllConfigs.register(modLoadingContext);
|
|
||||||
BlockSpoutingBehaviour.register();
|
|
||||||
|
|
||||||
ForgeMod.enableMilkFluid();
|
ForgeMod.enableMilkFluid();
|
||||||
|
|
||||||
CopperRegistries.inject();
|
CopperRegistries.inject();
|
||||||
|
|
||||||
IEventBus modEventBus = FMLJavaModLoadingContext.get()
|
|
||||||
.getModEventBus();
|
|
||||||
IEventBus forgeEventBus = MinecraftForge.EVENT_BUS;
|
|
||||||
|
|
||||||
modEventBus.addListener(Create::init);
|
modEventBus.addListener(Create::init);
|
||||||
modEventBus.addListener(EventPriority.LOWEST, Create::gatherData);
|
modEventBus.addListener(EventPriority.LOWEST, Create::gatherData);
|
||||||
modEventBus.addGenericListener(Feature.class, AllWorldFeatures::registerOreFeatures);
|
|
||||||
modEventBus.addGenericListener(RecipeSerializer.class, AllRecipeTypes::register);
|
|
||||||
modEventBus.addGenericListener(ParticleType.class, AllParticleTypes::register);
|
|
||||||
modEventBus.addGenericListener(SoundEvent.class, AllSoundEvents::register);
|
modEventBus.addGenericListener(SoundEvent.class, AllSoundEvents::register);
|
||||||
modEventBus.addGenericListener(DataSerializerEntry.class, AllEntityDataSerializers::register);
|
|
||||||
|
|
||||||
forgeEventBus.addListener(EventPriority.HIGH, SlidingDoorBlock::stopItQuark);
|
forgeEventBus.addListener(EventPriority.HIGH, SlidingDoorBlock::stopItQuark);
|
||||||
|
|
||||||
|
@ -134,6 +145,7 @@ public class Create {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void init(final FMLCommonSetupEvent event) {
|
public static void init(final FMLCommonSetupEvent event) {
|
||||||
|
CreateRegistry.unwrapAll();
|
||||||
AllPackets.registerPackets();
|
AllPackets.registerPackets();
|
||||||
SchematicInstances.register();
|
SchematicInstances.register();
|
||||||
BuiltinPotatoProjectileTypes.register();
|
BuiltinPotatoProjectileTypes.register();
|
||||||
|
@ -141,30 +153,35 @@ public class Create {
|
||||||
event.enqueueWork(() -> {
|
event.enqueueWork(() -> {
|
||||||
AllAdvancements.register();
|
AllAdvancements.register();
|
||||||
AllTriggers.register();
|
AllTriggers.register();
|
||||||
SchematicProcessor.register();
|
|
||||||
AllWorldFeatures.registerFeatures();
|
|
||||||
AllWorldFeatures.registerPlacementTypes();
|
|
||||||
BoilerHeaters.registerDefaults();
|
BoilerHeaters.registerDefaults();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void gatherData(GatherDataEvent event) {
|
public static void gatherData(GatherDataEvent event) {
|
||||||
DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> PonderIndex.addPlugin(new CreatePonderPlugin()));
|
|
||||||
|
|
||||||
DataGenerator gen = event.getGenerator();
|
DataGenerator gen = event.getGenerator();
|
||||||
gen.addProvider(new AllAdvancements(gen));
|
if (event.includeClient()) {
|
||||||
gen.addProvider(new LangMerger(gen));
|
DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> () -> PonderIndex.addPlugin(new CreatePonderPlugin()));
|
||||||
gen.addProvider(AllSoundEvents.provider(gen));
|
gen.addProvider(new LangMerger(gen));
|
||||||
gen.addProvider(new StandardRecipeGen(gen));
|
gen.addProvider(AllSoundEvents.provider(gen));
|
||||||
gen.addProvider(new MechanicalCraftingRecipeGen(gen));
|
}
|
||||||
gen.addProvider(new SequencedAssemblyRecipeGen(gen));
|
if (event.includeServer()) {
|
||||||
ProcessingRecipeGen.registerAll(gen);
|
gen.addProvider(new AllAdvancements(gen));
|
||||||
|
gen.addProvider(new StandardRecipeGen(gen));
|
||||||
|
gen.addProvider(new MechanicalCraftingRecipeGen(gen));
|
||||||
|
gen.addProvider(new SequencedAssemblyRecipeGen(gen));
|
||||||
|
ProcessingRecipeGen.registerAll(gen);
|
||||||
|
// AllOreFeatureConfigEntries.gatherData(event);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static CreateRegistrate registrate() {
|
public static CreateRegistrate registrate() {
|
||||||
return REGISTRATE.get();
|
return REGISTRATE.get();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static LangBuilder lang() {
|
||||||
|
return new LangBuilder(ID);
|
||||||
|
}
|
||||||
|
|
||||||
public static ResourceLocation asResource(String path) {
|
public static ResourceLocation asResource(String path) {
|
||||||
return new ResourceLocation(ID, path);
|
return new ResourceLocation(ID, path);
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,24 +29,22 @@ import com.simibubi.create.foundation.render.CachedPartialBuffers;
|
||||||
import com.simibubi.create.foundation.render.CreateContexts;
|
import com.simibubi.create.foundation.render.CreateContexts;
|
||||||
import com.simibubi.create.foundation.render.FlwSuperBufferFactory;
|
import com.simibubi.create.foundation.render.FlwSuperBufferFactory;
|
||||||
import com.simibubi.create.foundation.utility.ModelSwapper;
|
import com.simibubi.create.foundation.utility.ModelSwapper;
|
||||||
import com.simibubi.create.foundation.utility.ShippedResourcePacks;
|
|
||||||
|
|
||||||
import net.createmod.catnip.config.ui.BaseConfigScreen;
|
import net.createmod.catnip.config.ui.BaseConfigScreen;
|
||||||
import net.createmod.catnip.config.ui.ConfigScreen;
|
import net.createmod.catnip.config.ui.ConfigScreen;
|
||||||
import net.createmod.catnip.render.SuperBufferFactory;
|
import net.createmod.catnip.render.SuperBufferFactory;
|
||||||
import net.createmod.catnip.render.SuperByteBufferCache;
|
import net.createmod.catnip.render.SuperByteBufferCache;
|
||||||
|
import net.createmod.catnip.utility.lang.Components;
|
||||||
import net.createmod.ponder.foundation.PonderIndex;
|
import net.createmod.ponder.foundation.PonderIndex;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.GraphicsStatus;
|
import net.minecraft.client.GraphicsStatus;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.screens.Screen;
|
import net.minecraft.client.gui.screens.Screen;
|
||||||
import net.minecraft.core.Direction;
|
import net.minecraft.core.Direction;
|
||||||
import net.minecraft.network.chat.ChatType;
|
|
||||||
import net.minecraft.network.chat.ClickEvent;
|
import net.minecraft.network.chat.ClickEvent;
|
||||||
import net.minecraft.network.chat.ComponentUtils;
|
import net.minecraft.network.chat.ComponentUtils;
|
||||||
import net.minecraft.network.chat.HoverEvent;
|
import net.minecraft.network.chat.HoverEvent;
|
||||||
import net.minecraft.network.chat.MutableComponent;
|
import net.minecraft.network.chat.MutableComponent;
|
||||||
import net.minecraft.network.chat.TextComponent;
|
|
||||||
import net.minecraftforge.client.gui.ForgeIngameGui;
|
import net.minecraftforge.client.gui.ForgeIngameGui;
|
||||||
import net.minecraftforge.client.gui.OverlayRegistry;
|
import net.minecraftforge.client.gui.OverlayRegistry;
|
||||||
import net.minecraftforge.eventbus.api.IEventBus;
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
|
@ -89,10 +87,7 @@ public class CreateClient {
|
||||||
SuperByteBufferCache.getInstance().registerCompartment(KineticTileEntityRenderer.KINETIC_TILE);
|
SuperByteBufferCache.getInstance().registerCompartment(KineticTileEntityRenderer.KINETIC_TILE);
|
||||||
SuperByteBufferCache.getInstance().registerCompartment(SBBContraptionManager.CONTRAPTION, 20);
|
SuperByteBufferCache.getInstance().registerCompartment(SBBContraptionManager.CONTRAPTION, 20);
|
||||||
|
|
||||||
ShippedResourcePacks.extractFiles("Copper Legacy Pack");
|
|
||||||
|
|
||||||
AllKeys.register();
|
AllKeys.register();
|
||||||
// AllFluids.assignRenderLayers();
|
|
||||||
AllBlockPartials.init();
|
AllBlockPartials.init();
|
||||||
AllStitchedTextures.init();
|
AllStitchedTextures.init();
|
||||||
|
|
||||||
|
@ -150,16 +145,16 @@ public class CreateClient {
|
||||||
if (AllConfigs.CLIENT.ignoreFabulousWarning.get())
|
if (AllConfigs.CLIENT.ignoreFabulousWarning.get())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
MutableComponent text = ComponentUtils.wrapInSquareBrackets(new TextComponent("WARN"))
|
MutableComponent text = ComponentUtils.wrapInSquareBrackets(Components.literal("WARN"))
|
||||||
.withStyle(ChatFormatting.GOLD)
|
.withStyle(ChatFormatting.GOLD)
|
||||||
.append(new TextComponent(
|
.append(Components.literal(
|
||||||
" Some of Create's visual features will not be available while Fabulous graphics are enabled!"))
|
" Some of Create's visual features will not be available while Fabulous graphics are enabled!"))
|
||||||
.withStyle(style -> style
|
.withStyle(style -> style
|
||||||
.withClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/create dismissFabulousWarning"))
|
.withClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/create dismissFabulousWarning"))
|
||||||
.withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
|
.withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
|
||||||
new TextComponent("Click here to disable this warning"))));
|
Components.literal("Click here to disable this warning"))));
|
||||||
|
|
||||||
mc.gui.handleChat(ChatType.CHAT, text, mc.player.getUUID());
|
mc.player.displayClientMessage(text, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package com.simibubi.create.api.behaviour;
|
package com.simibubi.create.api.behaviour;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import com.simibubi.create.Create;
|
import com.simibubi.create.Create;
|
||||||
|
@ -14,7 +15,7 @@ import net.minecraftforge.fluids.FluidStack;
|
||||||
|
|
||||||
public abstract class BlockSpoutingBehaviour {
|
public abstract class BlockSpoutingBehaviour {
|
||||||
|
|
||||||
private static final HashMap<ResourceLocation, BlockSpoutingBehaviour> BLOCK_SPOUTING_BEHAVIOURS = new HashMap<>();
|
private static final Map<ResourceLocation, BlockSpoutingBehaviour> BLOCK_SPOUTING_BEHAVIOURS = new HashMap<>();
|
||||||
|
|
||||||
public static void addCustomSpoutInteraction(ResourceLocation resourceLocation,
|
public static void addCustomSpoutInteraction(ResourceLocation resourceLocation,
|
||||||
BlockSpoutingBehaviour movementBehaviour) {
|
BlockSpoutingBehaviour movementBehaviour) {
|
||||||
|
@ -45,7 +46,7 @@ public abstract class BlockSpoutingBehaviour {
|
||||||
public abstract int fillBlock(Level world, BlockPos pos, SpoutTileEntity spout, FluidStack availableFluid,
|
public abstract int fillBlock(Level world, BlockPos pos, SpoutTileEntity spout, FluidStack availableFluid,
|
||||||
boolean simulate);
|
boolean simulate);
|
||||||
|
|
||||||
public static void register() {
|
public static void registerDefaults() {
|
||||||
addCustomSpoutInteraction(Create.asResource("ticon_casting"), new SpoutCasting());
|
addCustomSpoutInteraction(Create.asResource("ticon_casting"), new SpoutCasting());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2,6 +2,7 @@ package com.simibubi.create.compat.jei;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
@ -40,14 +41,24 @@ import com.simibubi.create.compat.jei.category.SawingCategory;
|
||||||
import com.simibubi.create.compat.jei.category.SequencedAssemblyCategory;
|
import com.simibubi.create.compat.jei.category.SequencedAssemblyCategory;
|
||||||
import com.simibubi.create.compat.jei.category.SpoutCategory;
|
import com.simibubi.create.compat.jei.category.SpoutCategory;
|
||||||
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCraftingRecipe;
|
import com.simibubi.create.content.contraptions.components.crafter.MechanicalCraftingRecipe;
|
||||||
|
import com.simibubi.create.content.contraptions.components.crusher.AbstractCrushingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
||||||
import com.simibubi.create.content.contraptions.components.deployer.ManualApplicationRecipe;
|
import com.simibubi.create.content.contraptions.components.deployer.ManualApplicationRecipe;
|
||||||
|
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.press.MechanicalPressTileEntity;
|
import com.simibubi.create.content.contraptions.components.press.MechanicalPressTileEntity;
|
||||||
|
import com.simibubi.create.content.contraptions.components.press.PressingRecipe;
|
||||||
|
import com.simibubi.create.content.contraptions.components.saw.CuttingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.components.saw.SawTileEntity;
|
import com.simibubi.create.content.contraptions.components.saw.SawTileEntity;
|
||||||
|
import com.simibubi.create.content.contraptions.fluids.actors.FillingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluid;
|
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluid;
|
||||||
import com.simibubi.create.content.contraptions.fluids.recipe.PotionMixingRecipes;
|
import com.simibubi.create.content.contraptions.fluids.recipe.PotionMixingRecipes;
|
||||||
|
import com.simibubi.create.content.contraptions.itemAssembly.SequencedAssemblyRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
||||||
|
import com.simibubi.create.content.contraptions.processing.EmptyingRecipe;
|
||||||
|
import com.simibubi.create.content.contraptions.processing.ItemApplicationRecipe;
|
||||||
import com.simibubi.create.content.curiosities.tools.BlueprintScreen;
|
import com.simibubi.create.content.curiosities.tools.BlueprintScreen;
|
||||||
|
import com.simibubi.create.content.curiosities.tools.SandPaperPolishingRecipe;
|
||||||
import com.simibubi.create.content.logistics.item.LinkedControllerScreen;
|
import com.simibubi.create.content.logistics.item.LinkedControllerScreen;
|
||||||
import com.simibubi.create.content.logistics.item.filter.AbstractFilterScreen;
|
import com.simibubi.create.content.logistics.item.filter.AbstractFilterScreen;
|
||||||
import com.simibubi.create.content.logistics.trains.management.schedule.ScheduleScreen;
|
import com.simibubi.create.content.logistics.trains.management.schedule.ScheduleScreen;
|
||||||
|
@ -55,11 +66,14 @@ import com.simibubi.create.foundation.config.AllConfigs;
|
||||||
import com.simibubi.create.foundation.config.CRecipes;
|
import com.simibubi.create.foundation.config.CRecipes;
|
||||||
import com.simibubi.create.foundation.data.recipe.LogStrippingFakeRecipes;
|
import com.simibubi.create.foundation.data.recipe.LogStrippingFakeRecipes;
|
||||||
import com.simibubi.create.foundation.gui.container.AbstractSimiContainerScreen;
|
import com.simibubi.create.foundation.gui.container.AbstractSimiContainerScreen;
|
||||||
|
import com.simibubi.create.foundation.utility.CreateLang;
|
||||||
import com.simibubi.create.foundation.utility.recipe.IRecipeTypeInfo;
|
import com.simibubi.create.foundation.utility.recipe.IRecipeTypeInfo;
|
||||||
|
|
||||||
import mezz.jei.api.IModPlugin;
|
import mezz.jei.api.IModPlugin;
|
||||||
import mezz.jei.api.JeiPlugin;
|
import mezz.jei.api.JeiPlugin;
|
||||||
import mezz.jei.api.constants.RecipeTypes;
|
import mezz.jei.api.constants.RecipeTypes;
|
||||||
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
|
import mezz.jei.api.gui.drawable.IDrawable;
|
||||||
import mezz.jei.api.recipe.category.IRecipeCategory;
|
import mezz.jei.api.recipe.category.IRecipeCategory;
|
||||||
import mezz.jei.api.registration.IGuiHandlerRegistration;
|
import mezz.jei.api.registration.IGuiHandlerRegistration;
|
||||||
import mezz.jei.api.registration.IRecipeCatalystRegistration;
|
import mezz.jei.api.registration.IRecipeCatalystRegistration;
|
||||||
|
@ -73,10 +87,13 @@ import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Items;
|
import net.minecraft.world.item.Items;
|
||||||
|
import net.minecraft.world.item.crafting.AbstractCookingRecipe;
|
||||||
import net.minecraft.world.item.crafting.CraftingRecipe;
|
import net.minecraft.world.item.crafting.CraftingRecipe;
|
||||||
import net.minecraft.world.item.crafting.Recipe;
|
import net.minecraft.world.item.crafting.Recipe;
|
||||||
import net.minecraft.world.item.crafting.RecipeType;
|
import net.minecraft.world.item.crafting.RecipeType;
|
||||||
|
import net.minecraft.world.item.crafting.SmokingRecipe;
|
||||||
import net.minecraft.world.level.ItemLike;
|
import net.minecraft.world.level.ItemLike;
|
||||||
|
import net.minecraft.world.level.block.Blocks;
|
||||||
import net.minecraftforge.common.crafting.IShapedRecipe;
|
import net.minecraftforge.common.crafting.IShapedRecipe;
|
||||||
import net.minecraftforge.fml.ModList;
|
import net.minecraftforge.fml.ModList;
|
||||||
|
|
||||||
|
@ -87,161 +104,218 @@ public class CreateJEI implements IModPlugin {
|
||||||
|
|
||||||
private static final ResourceLocation ID = Create.asResource("jei_plugin");
|
private static final ResourceLocation ID = Create.asResource("jei_plugin");
|
||||||
|
|
||||||
public IIngredientManager ingredientManager;
|
|
||||||
private final List<CreateRecipeCategory<?>> allCategories = new ArrayList<>();
|
private final List<CreateRecipeCategory<?>> allCategories = new ArrayList<>();
|
||||||
|
private IIngredientManager ingredientManager;
|
||||||
|
|
||||||
private void loadCategories() {
|
private void loadCategories() {
|
||||||
allCategories.clear();
|
allCategories.clear();
|
||||||
|
|
||||||
CreateRecipeCategory<?>
|
CreateRecipeCategory<?>
|
||||||
|
|
||||||
milling = register("milling", MillingCategory::new)
|
milling = builder(AbstractCrushingRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.MILLING)
|
.addTypedRecipes(AllRecipeTypes.MILLING)
|
||||||
.catalyst(AllBlocks.MILLSTONE::get)
|
.catalyst(AllBlocks.MILLSTONE::get)
|
||||||
.build(),
|
.doubleItemIcon(AllBlocks.MILLSTONE.get(), AllItems.WHEAT_FLOUR.get())
|
||||||
|
.emptyBackground(177, 53)
|
||||||
|
.build("milling", MillingCategory::new),
|
||||||
|
|
||||||
crushing = register("crushing", CrushingCategory::new)
|
crushing = builder(AbstractCrushingRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.CRUSHING)
|
.addTypedRecipes(AllRecipeTypes.CRUSHING)
|
||||||
.addTypedRecipesExcluding(AllRecipeTypes.MILLING::getType, AllRecipeTypes.CRUSHING::getType)
|
.addTypedRecipesExcluding(AllRecipeTypes.MILLING::getType, AllRecipeTypes.CRUSHING::getType)
|
||||||
.catalyst(AllBlocks.CRUSHING_WHEEL::get)
|
.catalyst(AllBlocks.CRUSHING_WHEEL::get)
|
||||||
.build(),
|
.doubleItemIcon(AllBlocks.CRUSHING_WHEEL.get(), AllItems.CRUSHED_GOLD.get())
|
||||||
|
.emptyBackground(177, 100)
|
||||||
|
.build("crushing", CrushingCategory::new),
|
||||||
|
|
||||||
pressing = register("pressing", PressingCategory::new)
|
pressing = builder(PressingRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.PRESSING)
|
.addTypedRecipes(AllRecipeTypes.PRESSING)
|
||||||
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
||||||
.build(),
|
.doubleItemIcon(AllBlocks.MECHANICAL_PRESS.get(), AllItems.IRON_SHEET.get())
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("pressing", PressingCategory::new),
|
||||||
|
|
||||||
washing = register("fan_washing", FanWashingCategory::new)
|
washing = builder(SplashingRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.SPLASHING)
|
.addTypedRecipes(AllRecipeTypes.SPLASHING)
|
||||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_washing"))
|
.catalystStack(ProcessingViaFanCategory.getFan("fan_washing"))
|
||||||
.build(),
|
.doubleItemIcon(AllItems.PROPELLER.get(), Items.WATER_BUCKET)
|
||||||
|
.emptyBackground(178, 72)
|
||||||
|
.build("fan_washing", FanWashingCategory::new),
|
||||||
|
|
||||||
smoking = register("fan_smoking", FanSmokingCategory::new)
|
smoking = builder(SmokingRecipe.class)
|
||||||
.addTypedRecipes(() -> RecipeType.SMOKING)
|
.addTypedRecipes(() -> RecipeType.SMOKING)
|
||||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_smoking"))
|
.catalystStack(ProcessingViaFanCategory.getFan("fan_smoking"))
|
||||||
.build(),
|
.doubleItemIcon(AllItems.PROPELLER.get(), Items.CAMPFIRE)
|
||||||
|
.emptyBackground(178, 72)
|
||||||
|
.build("fan_smoking", FanSmokingCategory::new),
|
||||||
|
|
||||||
blasting = register("fan_blasting", FanBlastingCategory::new)
|
blasting = builder(AbstractCookingRecipe.class)
|
||||||
.addTypedRecipesExcluding(() -> RecipeType.SMELTING, () -> RecipeType.BLASTING)
|
.addTypedRecipesExcluding(() -> RecipeType.SMELTING, () -> RecipeType.BLASTING)
|
||||||
.addTypedRecipes(() -> RecipeType.BLASTING)
|
.addTypedRecipes(() -> RecipeType.BLASTING)
|
||||||
.removeRecipes(() -> RecipeType.SMOKING)
|
.removeRecipes(() -> RecipeType.SMOKING)
|
||||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_blasting"))
|
.catalystStack(ProcessingViaFanCategory.getFan("fan_blasting"))
|
||||||
.build(),
|
.doubleItemIcon(AllItems.PROPELLER.get(), Items.LAVA_BUCKET)
|
||||||
|
.emptyBackground(178, 72)
|
||||||
|
.build("fan_blasting", FanBlastingCategory::new),
|
||||||
|
|
||||||
haunting = register("fan_haunting", FanHauntingCategory::new).addTypedRecipes(AllRecipeTypes.HAUNTING)
|
haunting = builder(HauntingRecipe.class)
|
||||||
.catalystStack(ProcessingViaFanCategory.getFan("fan_haunting"))
|
.addTypedRecipes(AllRecipeTypes.HAUNTING)
|
||||||
.build(),
|
.catalystStack(ProcessingViaFanCategory.getFan("fan_haunting"))
|
||||||
|
.doubleItemIcon(AllItems.PROPELLER.get(), Items.SOUL_CAMPFIRE)
|
||||||
|
.emptyBackground(178, 72)
|
||||||
|
.build("fan_haunting", FanHauntingCategory::new),
|
||||||
|
|
||||||
mixing = register("mixing", MixingCategory::standard).addTypedRecipes(AllRecipeTypes.MIXING)
|
mixing = builder(BasinRecipe.class)
|
||||||
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
.addTypedRecipes(AllRecipeTypes.MIXING)
|
||||||
.catalyst(AllBlocks.BASIN::get)
|
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
||||||
.build(),
|
.catalyst(AllBlocks.BASIN::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_MIXER.get(), AllBlocks.BASIN.get())
|
||||||
|
.emptyBackground(177, 103)
|
||||||
|
.build("mixing", MixingCategory::standard),
|
||||||
|
|
||||||
seqAssembly = register("sequenced_assembly", SequencedAssemblyCategory::new)
|
autoShapeless = builder(BasinRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.SEQUENCED_ASSEMBLY)
|
.enableWhen(c -> c.allowShapelessInMixer)
|
||||||
.build(),
|
.addAllRecipesIf(r -> r instanceof CraftingRecipe && !(r instanceof IShapedRecipe<?>)
|
||||||
|
|
||||||
autoShapeless = register("automatic_shapeless", MixingCategory::autoShapeless)
|
|
||||||
.addAllRecipesIf(r -> r instanceof CraftingRecipe && !(r instanceof IShapedRecipe<?>)
|
|
||||||
&& r.getIngredients()
|
|
||||||
.size() > 1
|
|
||||||
&& !MechanicalPressTileEntity.canCompress(r) && !AllRecipeTypes.shouldIgnoreInAutomation(r),
|
|
||||||
BasinRecipe::convertShapeless)
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
|
||||||
.catalyst(AllBlocks.BASIN::get)
|
|
||||||
.enableWhen(c -> c.allowShapelessInMixer)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
brewing = register("automatic_brewing", MixingCategory::autoBrewing).addRecipes(() -> PotionMixingRecipes.ALL)
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
|
||||||
.catalyst(AllBlocks.BASIN::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
sawing = register("sawing", SawingCategory::new).addTypedRecipes(AllRecipeTypes.CUTTING)
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
blockCutting = register("block_cutting", () -> new BlockCuttingCategory(Items.STONE_BRICK_STAIRS))
|
|
||||||
.addRecipes(() -> CondensedBlockCuttingRecipe.condenseRecipes(getTypedRecipesExcluding(RecipeType.STONECUTTING, AllRecipeTypes::shouldIgnoreInAutomation)))
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
|
||||||
.enableWhen(c -> c.allowStonecuttingOnSaw)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
woodCutting = register("wood_cutting", () -> new BlockCuttingCategory(Items.OAK_STAIRS))
|
|
||||||
.addRecipes(() -> CondensedBlockCuttingRecipe.condenseRecipes(getTypedRecipesExcluding(SawTileEntity.woodcuttingRecipeType.get(), AllRecipeTypes::shouldIgnoreInAutomation)))
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
|
||||||
.enableWhenBool(c -> c.allowWoodcuttingOnSaw.get() && ModList.get()
|
|
||||||
.isLoaded("druidcraft"))
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
packing = register("packing", PackingCategory::standard).addTypedRecipes(AllRecipeTypes.COMPACTING)
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
|
||||||
.catalyst(AllBlocks.BASIN::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
autoSquare = register("automatic_packing", PackingCategory::autoSquare)
|
|
||||||
.addAllRecipesIf(
|
|
||||||
r -> (r instanceof CraftingRecipe) && !(r instanceof MechanicalCraftingRecipe)
|
|
||||||
&& MechanicalPressTileEntity.canCompress(r) && !AllRecipeTypes.shouldIgnoreInAutomation(r),
|
|
||||||
BasinRecipe::convertShapeless)
|
|
||||||
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
|
||||||
.catalyst(AllBlocks.BASIN::get)
|
|
||||||
.enableWhen(c -> c.allowShapedSquareInPress)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
polishing = register("sandpaper_polishing", PolishingCategory::new)
|
|
||||||
.addTypedRecipes(AllRecipeTypes.SANDPAPER_POLISHING)
|
|
||||||
.catalyst(AllItems.SAND_PAPER::get)
|
|
||||||
.catalyst(AllItems.RED_SAND_PAPER::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
item_application = register("item_application", ItemApplicationCategory::new)
|
|
||||||
.addTypedRecipes(AllRecipeTypes.ITEM_APPLICATION)
|
|
||||||
.addRecipes(LogStrippingFakeRecipes::createRecipes)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
deploying = register("deploying", DeployingCategory::new).addTypedRecipes(AllRecipeTypes.DEPLOYING)
|
|
||||||
.addTypedRecipes(AllRecipeTypes.SANDPAPER_POLISHING::getType, DeployerApplicationRecipe::convert)
|
|
||||||
.addTypedRecipes(AllRecipeTypes.ITEM_APPLICATION::getType, ManualApplicationRecipe::asDeploying)
|
|
||||||
.catalyst(AllBlocks.DEPLOYER::get)
|
|
||||||
.catalyst(AllBlocks.DEPOT::get)
|
|
||||||
.catalyst(AllItems.BELT_CONNECTOR::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
mysteryConversion = register("mystery_conversion", MysteriousItemConversionCategory::new)
|
|
||||||
.addRecipes(() -> MysteriousItemConversionCategory.RECIPES)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
spoutFilling = register("spout_filling", SpoutCategory::new).addTypedRecipes(AllRecipeTypes.FILLING)
|
|
||||||
.addRecipeListConsumer(recipes -> SpoutCategory.consumeRecipes(recipes::add, ingredientManager))
|
|
||||||
.catalyst(AllBlocks.SPOUT::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
draining = register("draining", ItemDrainCategory::new)
|
|
||||||
.addRecipeListConsumer(recipes -> ItemDrainCategory.consumeRecipes(recipes::add, ingredientManager))
|
|
||||||
.addTypedRecipes(AllRecipeTypes.EMPTYING)
|
|
||||||
.catalyst(AllBlocks.ITEM_DRAIN::get)
|
|
||||||
.build(),
|
|
||||||
|
|
||||||
autoShaped = register("automatic_shaped", MechanicalCraftingCategory::new)
|
|
||||||
.addAllRecipesIf(r -> r instanceof CraftingRecipe && !(r instanceof IShapedRecipe<?>)
|
|
||||||
&& r.getIngredients()
|
&& r.getIngredients()
|
||||||
.size() == 1
|
.size() > 1
|
||||||
&& !AllRecipeTypes.shouldIgnoreInAutomation(r))
|
&& !MechanicalPressTileEntity.canCompress(r) && !AllRecipeTypes.shouldIgnoreInAutomation(r),
|
||||||
.addTypedRecipesIf(() -> RecipeType.CRAFTING,
|
BasinRecipe::convertShapeless)
|
||||||
recipe -> recipe instanceof IShapedRecipe<?> && !AllRecipeTypes.shouldIgnoreInAutomation(recipe))
|
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
||||||
.catalyst(AllBlocks.MECHANICAL_CRAFTER::get)
|
.catalyst(AllBlocks.BASIN::get)
|
||||||
.enableWhen(c -> c.allowRegularCraftingInCrafter)
|
.doubleItemIcon(AllBlocks.MECHANICAL_MIXER.get(), Items.CRAFTING_TABLE)
|
||||||
.build(),
|
.emptyBackground(177, 85)
|
||||||
|
.build("automatic_shapeless", MixingCategory::autoShapeless),
|
||||||
|
|
||||||
mechanicalCrafting = register("mechanical_crafting", MechanicalCraftingCategory::new)
|
brewing = builder(BasinRecipe.class)
|
||||||
.addTypedRecipes(AllRecipeTypes.MECHANICAL_CRAFTING)
|
.enableWhen(c -> c.allowBrewingInMixer)
|
||||||
.catalyst(AllBlocks.MECHANICAL_CRAFTER::get)
|
.addRecipes(() -> PotionMixingRecipes.ALL)
|
||||||
.build();
|
.catalyst(AllBlocks.MECHANICAL_MIXER::get)
|
||||||
|
.catalyst(AllBlocks.BASIN::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_MIXER.get(), Blocks.BREWING_STAND)
|
||||||
|
.emptyBackground(177, 103)
|
||||||
|
.build("automatic_brewing", MixingCategory::autoBrewing),
|
||||||
|
|
||||||
|
packing = builder(BasinRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.COMPACTING)
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
||||||
|
.catalyst(AllBlocks.BASIN::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_PRESS.get(), AllBlocks.BASIN.get())
|
||||||
|
.emptyBackground(177, 103)
|
||||||
|
.build("packing", PackingCategory::standard),
|
||||||
|
|
||||||
|
autoSquare = builder(BasinRecipe.class)
|
||||||
|
.enableWhen(c -> c.allowShapedSquareInPress)
|
||||||
|
.addAllRecipesIf(
|
||||||
|
r -> (r instanceof CraftingRecipe) && !(r instanceof MechanicalCraftingRecipe)
|
||||||
|
&& MechanicalPressTileEntity.canCompress(r) && !AllRecipeTypes.shouldIgnoreInAutomation(r),
|
||||||
|
BasinRecipe::convertShapeless)
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_PRESS::get)
|
||||||
|
.catalyst(AllBlocks.BASIN::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_PRESS.get(), Blocks.CRAFTING_TABLE)
|
||||||
|
.emptyBackground(177, 85)
|
||||||
|
.build("automatic_packing", PackingCategory::autoSquare),
|
||||||
|
|
||||||
|
sawing = builder(CuttingRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.CUTTING)
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_SAW.get(), Items.OAK_LOG)
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("sawing", SawingCategory::new),
|
||||||
|
|
||||||
|
blockCutting = builder(CondensedBlockCuttingRecipe.class)
|
||||||
|
.enableWhen(c -> c.allowStonecuttingOnSaw)
|
||||||
|
.addRecipes(() -> CondensedBlockCuttingRecipe.condenseRecipes(getTypedRecipesExcluding(RecipeType.STONECUTTING, AllRecipeTypes::shouldIgnoreInAutomation)))
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_SAW.get(), Items.STONE_BRICK_STAIRS)
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("block_cutting", BlockCuttingCategory::new),
|
||||||
|
|
||||||
|
woodCutting = builder(CondensedBlockCuttingRecipe.class)
|
||||||
|
.enableIf(c -> c.allowWoodcuttingOnSaw.get() && ModList.get()
|
||||||
|
.isLoaded("druidcraft"))
|
||||||
|
.addRecipes(() -> CondensedBlockCuttingRecipe.condenseRecipes(getTypedRecipesExcluding(SawTileEntity.woodcuttingRecipeType.get(), AllRecipeTypes::shouldIgnoreInAutomation)))
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_SAW::get)
|
||||||
|
.doubleItemIcon(AllBlocks.MECHANICAL_SAW.get(), Items.OAK_STAIRS)
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("wood_cutting", BlockCuttingCategory::new),
|
||||||
|
|
||||||
|
polishing = builder(SandPaperPolishingRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.SANDPAPER_POLISHING)
|
||||||
|
.catalyst(AllItems.SAND_PAPER::get)
|
||||||
|
.catalyst(AllItems.RED_SAND_PAPER::get)
|
||||||
|
.itemIcon(AllItems.SAND_PAPER.get())
|
||||||
|
.emptyBackground(177, 55)
|
||||||
|
.build("sandpaper_polishing", PolishingCategory::new),
|
||||||
|
|
||||||
|
item_application = builder(ItemApplicationRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.ITEM_APPLICATION)
|
||||||
|
.addRecipes(LogStrippingFakeRecipes::createRecipes)
|
||||||
|
.itemIcon(AllItems.BRASS_HAND.get())
|
||||||
|
.emptyBackground(177, 60)
|
||||||
|
.build("item_application", ItemApplicationCategory::new),
|
||||||
|
|
||||||
|
deploying = builder(DeployerApplicationRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.DEPLOYING)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.SANDPAPER_POLISHING::getType, DeployerApplicationRecipe::convert)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.ITEM_APPLICATION::getType, ManualApplicationRecipe::asDeploying)
|
||||||
|
.catalyst(AllBlocks.DEPLOYER::get)
|
||||||
|
.catalyst(AllBlocks.DEPOT::get)
|
||||||
|
.catalyst(AllItems.BELT_CONNECTOR::get)
|
||||||
|
.itemIcon(AllBlocks.DEPLOYER.get())
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("deploying", DeployingCategory::new),
|
||||||
|
|
||||||
|
spoutFilling = builder(FillingRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.FILLING)
|
||||||
|
.addRecipeListConsumer(recipes -> SpoutCategory.consumeRecipes(recipes::add, ingredientManager))
|
||||||
|
.catalyst(AllBlocks.SPOUT::get)
|
||||||
|
.doubleItemIcon(AllBlocks.SPOUT.get(), Items.WATER_BUCKET)
|
||||||
|
.emptyBackground(177, 70)
|
||||||
|
.build("spout_filling", SpoutCategory::new),
|
||||||
|
|
||||||
|
draining = builder(EmptyingRecipe.class)
|
||||||
|
.addRecipeListConsumer(recipes -> ItemDrainCategory.consumeRecipes(recipes::add, ingredientManager))
|
||||||
|
.addTypedRecipes(AllRecipeTypes.EMPTYING)
|
||||||
|
.catalyst(AllBlocks.ITEM_DRAIN::get)
|
||||||
|
.doubleItemIcon(AllBlocks.ITEM_DRAIN.get(), Items.WATER_BUCKET)
|
||||||
|
.emptyBackground(177, 50)
|
||||||
|
.build("draining", ItemDrainCategory::new),
|
||||||
|
|
||||||
|
autoShaped = builder(CraftingRecipe.class)
|
||||||
|
.enableWhen(c -> c.allowRegularCraftingInCrafter)
|
||||||
|
.addAllRecipesIf(r -> r instanceof CraftingRecipe && !(r instanceof IShapedRecipe<?>)
|
||||||
|
&& r.getIngredients()
|
||||||
|
.size() == 1
|
||||||
|
&& !AllRecipeTypes.shouldIgnoreInAutomation(r))
|
||||||
|
.addTypedRecipesIf(() -> RecipeType.CRAFTING,
|
||||||
|
recipe -> recipe instanceof IShapedRecipe<?> && !AllRecipeTypes.shouldIgnoreInAutomation(recipe))
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_CRAFTER::get)
|
||||||
|
.itemIcon(AllBlocks.MECHANICAL_CRAFTER.get())
|
||||||
|
.emptyBackground(177, 107)
|
||||||
|
.build("automatic_shaped", MechanicalCraftingCategory::new),
|
||||||
|
|
||||||
|
mechanicalCrafting = builder(CraftingRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.MECHANICAL_CRAFTING)
|
||||||
|
.catalyst(AllBlocks.MECHANICAL_CRAFTER::get)
|
||||||
|
.itemIcon(AllBlocks.MECHANICAL_CRAFTER.get())
|
||||||
|
.emptyBackground(177, 107)
|
||||||
|
.build("mechanical_crafting", MechanicalCraftingCategory::new),
|
||||||
|
|
||||||
|
seqAssembly = builder(SequencedAssemblyRecipe.class)
|
||||||
|
.addTypedRecipes(AllRecipeTypes.SEQUENCED_ASSEMBLY)
|
||||||
|
.itemIcon(AllItems.PRECISION_MECHANISM.get())
|
||||||
|
.emptyBackground(180, 115)
|
||||||
|
.build("sequenced_assembly", SequencedAssemblyCategory::new),
|
||||||
|
|
||||||
|
mysteryConversion = builder(ConversionRecipe.class)
|
||||||
|
.addRecipes(() -> MysteriousItemConversionCategory.RECIPES)
|
||||||
|
.itemIcon(AllBlocks.PECULIAR_BELL.get())
|
||||||
|
.emptyBackground(177, 50)
|
||||||
|
.build("mystery_conversion", MysteriousItemConversionCategory::new);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private <T extends Recipe<?>> CategoryBuilder<T> register(String name, Supplier<CreateRecipeCategory<T>> supplier) {
|
private <T extends Recipe<?>> CategoryBuilder<T> builder(Class<? extends T> recipeClass) {
|
||||||
return new CategoryBuilder<>(name, supplier);
|
return new CategoryBuilder<>(recipeClass);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -250,25 +324,12 @@ public class CreateJEI implements IModPlugin {
|
||||||
return ID;
|
return ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerRecipeTransferHandlers(IRecipeTransferRegistration registration) {
|
|
||||||
registration.addRecipeTransferHandler(new BlueprintTransferHandler(), RecipeTypes.CRAFTING);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerCategories(IRecipeCategoryRegistration registration) {
|
public void registerCategories(IRecipeCategoryRegistration registration) {
|
||||||
loadCategories();
|
loadCategories();
|
||||||
registration.addRecipeCategories(allCategories.toArray(IRecipeCategory[]::new));
|
registration.addRecipeCategories(allCategories.toArray(IRecipeCategory[]::new));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void registerFluidSubtypes(ISubtypeRegistration registration) {
|
|
||||||
PotionFluidSubtypeInterpreter interpreter = new PotionFluidSubtypeInterpreter();
|
|
||||||
PotionFluid potionFluid = AllFluids.POTION.get();
|
|
||||||
registration.registerSubtypeInterpreter(potionFluid.getSource(), interpreter);
|
|
||||||
registration.registerSubtypeInterpreter(potionFluid.getFlowing(), interpreter);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerRecipes(IRecipeRegistration registration) {
|
public void registerRecipes(IRecipeRegistration registration) {
|
||||||
ingredientManager = registration.getIngredientManager();
|
ingredientManager = registration.getIngredientManager();
|
||||||
|
@ -280,7 +341,20 @@ public class CreateJEI implements IModPlugin {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) {
|
public void registerRecipeCatalysts(IRecipeCatalystRegistration registration) {
|
||||||
allCategories.forEach(c -> c.recipeCatalysts.forEach(s -> registration.addRecipeCatalyst(s.get(), c.getRecipeType())));
|
allCategories.forEach(c -> c.registerCatalysts(registration));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registerRecipeTransferHandlers(IRecipeTransferRegistration registration) {
|
||||||
|
registration.addRecipeTransferHandler(new BlueprintTransferHandler(), RecipeTypes.CRAFTING);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registerFluidSubtypes(ISubtypeRegistration registration) {
|
||||||
|
PotionFluidSubtypeInterpreter interpreter = new PotionFluidSubtypeInterpreter();
|
||||||
|
PotionFluid potionFluid = AllFluids.POTION.get();
|
||||||
|
registration.registerSubtypeInterpreter(ForgeTypes.FLUID_STACK, potionFluid.getSource(), interpreter);
|
||||||
|
registration.registerSubtypeInterpreter(ForgeTypes.FLUID_STACK, potionFluid.getFlowing(), interpreter);
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||||
|
@ -295,15 +369,27 @@ public class CreateJEI implements IModPlugin {
|
||||||
}
|
}
|
||||||
|
|
||||||
private class CategoryBuilder<T extends Recipe<?>> {
|
private class CategoryBuilder<T extends Recipe<?>> {
|
||||||
private final CreateRecipeCategory<T> category;
|
private final Class<? extends T> recipeClass;
|
||||||
private final List<Consumer<List<T>>> recipeListConsumers = new ArrayList<>();
|
private Predicate<CRecipes> predicate = cRecipes -> true;
|
||||||
private Predicate<CRecipes> predicate;
|
|
||||||
|
|
||||||
public CategoryBuilder(String name, Supplier<CreateRecipeCategory<T>> category) {
|
private IDrawable background;
|
||||||
this.category = category.get();
|
private IDrawable icon;
|
||||||
this.category.setCategoryId(name);
|
|
||||||
mezz.jei.api.recipe.RecipeType<T> recipeType = this.category.getRecipeType();
|
private final List<Consumer<List<T>>> recipeListConsumers = new ArrayList<>();
|
||||||
predicate = cRecipes -> true;
|
private final List<Supplier<? extends ItemStack>> catalysts = new ArrayList<>();
|
||||||
|
|
||||||
|
public CategoryBuilder(Class<? extends T> recipeClass) {
|
||||||
|
this.recipeClass = recipeClass;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CategoryBuilder<T> enableIf(Predicate<CRecipes> predicate) {
|
||||||
|
this.predicate = predicate;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CategoryBuilder<T> enableWhen(Function<CRecipes, ConfigBool> configValue) {
|
||||||
|
predicate = c -> configValue.apply(c).get();
|
||||||
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public CategoryBuilder<T> addRecipeListConsumer(Consumer<List<T>> consumer) {
|
public CategoryBuilder<T> addRecipeListConsumer(Consumer<List<T>> consumer) {
|
||||||
|
@ -380,38 +466,61 @@ public class CreateJEI implements IModPlugin {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public CategoryBuilder<T> catalystStack(Supplier<ItemStack> supplier) {
|
||||||
|
catalysts.add(supplier);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public CategoryBuilder<T> catalyst(Supplier<ItemLike> supplier) {
|
public CategoryBuilder<T> catalyst(Supplier<ItemLike> supplier) {
|
||||||
return catalystStack(() -> new ItemStack(supplier.get()
|
return catalystStack(() -> new ItemStack(supplier.get()
|
||||||
.asItem()));
|
.asItem()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public CategoryBuilder<T> catalystStack(Supplier<ItemStack> supplier) {
|
public CategoryBuilder<T> icon(IDrawable icon) {
|
||||||
category.recipeCatalysts.add(supplier);
|
this.icon = icon;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public CategoryBuilder<T> enableWhen(Function<CRecipes, ConfigBool> configValue) {
|
public CategoryBuilder<T> itemIcon(ItemLike item) {
|
||||||
predicate = c -> configValue.apply(c).get();
|
icon(new ItemIcon(() -> new ItemStack(item)));
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public CategoryBuilder<T> enableWhenBool(Function<CRecipes, Boolean> configValue) {
|
public CategoryBuilder<T> doubleItemIcon(ItemLike item1, ItemLike item2) {
|
||||||
predicate = configValue::apply;
|
icon(new DoubleItemIcon(() -> new ItemStack(item1), () -> new ItemStack(item2)));
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public CreateRecipeCategory<T> build() {
|
public CategoryBuilder<T> background(IDrawable background) {
|
||||||
if (predicate.test(AllConfigs.SERVER.recipes))
|
this.background = background;
|
||||||
category.recipes.add(() -> {
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CategoryBuilder<T> emptyBackground(int width, int height) {
|
||||||
|
background(new EmptyBackground(width, height));
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CreateRecipeCategory<T> build(String name, CreateRecipeCategory.Factory<T> factory) {
|
||||||
|
Supplier<List<T>> recipesSupplier;
|
||||||
|
if (predicate.test(AllConfigs.SERVER.recipes)) {
|
||||||
|
recipesSupplier = () -> {
|
||||||
List<T> recipes = new ArrayList<>();
|
List<T> recipes = new ArrayList<>();
|
||||||
for (Consumer<List<T>> consumer : recipeListConsumers)
|
for (Consumer<List<T>> consumer : recipeListConsumers)
|
||||||
consumer.accept(recipes);
|
consumer.accept(recipes);
|
||||||
return recipes;
|
return recipes;
|
||||||
});
|
};
|
||||||
|
} else {
|
||||||
|
recipesSupplier = () -> Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
|
CreateRecipeCategory.Info<T> info = new CreateRecipeCategory.Info<>(
|
||||||
|
new mezz.jei.api.recipe.RecipeType<>(Create.asResource(name), recipeClass),
|
||||||
|
CreateLang.translateDirect("recipe." + name), background, icon, recipesSupplier, catalysts);
|
||||||
|
CreateRecipeCategory<T> category = factory.create(info);
|
||||||
allCategories.add(category);
|
allCategories.add(category);
|
||||||
return category;
|
return category;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void consumeAllRecipes(Consumer<Recipe<?>> consumer) {
|
public static void consumeAllRecipes(Consumer<Recipe<?>> consumer) {
|
||||||
|
|
|
@ -56,7 +56,6 @@ public class DoubleItemIcon implements IDrawable {
|
||||||
matrixStack.popPose();
|
matrixStack.popPose();
|
||||||
|
|
||||||
matrixStack.popPose();
|
matrixStack.popPose();
|
||||||
RenderSystem.enableBlend();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
48
src/main/java/com/simibubi/create/compat/jei/ItemIcon.java
Normal file
48
src/main/java/com/simibubi/create/compat/jei/ItemIcon.java
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
package com.simibubi.create.compat.jei;
|
||||||
|
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
|
|
||||||
|
import mezz.jei.api.gui.drawable.IDrawable;
|
||||||
|
import net.createmod.catnip.gui.element.GuiGameElement;
|
||||||
|
import net.minecraft.world.item.ItemStack;
|
||||||
|
|
||||||
|
public class ItemIcon implements IDrawable {
|
||||||
|
|
||||||
|
private Supplier<ItemStack> supplier;
|
||||||
|
private ItemStack stack;
|
||||||
|
|
||||||
|
public ItemIcon(Supplier<ItemStack> stack) {
|
||||||
|
this.supplier = stack;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getWidth() {
|
||||||
|
return 18;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getHeight() {
|
||||||
|
return 18;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void draw(PoseStack matrixStack, int xOffset, int yOffset) {
|
||||||
|
if (stack == null) {
|
||||||
|
stack = supplier.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
RenderSystem.enableDepthTest();
|
||||||
|
matrixStack.pushPose();
|
||||||
|
matrixStack.translate(xOffset + 1, yOffset + 1, 0);
|
||||||
|
|
||||||
|
GuiGameElement.of(stack)
|
||||||
|
.render(matrixStack);
|
||||||
|
|
||||||
|
matrixStack.popPose();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -19,9 +19,8 @@ import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
import com.simibubi.create.foundation.item.ItemHelper;
|
import com.simibubi.create.foundation.item.ItemHelper;
|
||||||
import com.simibubi.create.foundation.utility.CreateLang;
|
import com.simibubi.create.foundation.utility.CreateLang;
|
||||||
|
|
||||||
import mezz.jei.api.constants.VanillaTypes;
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.drawable.IDrawable;
|
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
|
@ -36,16 +35,11 @@ public class BasinCategory extends CreateRecipeCategory<BasinRecipe> {
|
||||||
|
|
||||||
private final boolean needsHeating;
|
private final boolean needsHeating;
|
||||||
|
|
||||||
public BasinCategory(boolean needsHeating, IDrawable icon, IDrawable background) {
|
public BasinCategory(Info<BasinRecipe> info, boolean needsHeating) {
|
||||||
super(icon, background);
|
super(info);
|
||||||
this.needsHeating = needsHeating;
|
this.needsHeating = needsHeating;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends BasinRecipe> getRecipeClass() {
|
|
||||||
return BasinRecipe.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setRecipe(IRecipeLayoutBuilder builder, BasinRecipe recipe, IFocusGroup focuses) {
|
public void setRecipe(IRecipeLayoutBuilder builder, BasinRecipe recipe, IFocusGroup focuses) {
|
||||||
List<Pair<Ingredient, MutableInt>> condensedIngredients = ItemHelper.condenseIngredients(recipe.getIngredients());
|
List<Pair<Ingredient, MutableInt>> condensedIngredients = ItemHelper.condenseIngredients(recipe.getIngredients());
|
||||||
|
@ -72,7 +66,7 @@ public class BasinCategory extends CreateRecipeCategory<BasinRecipe> {
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.INPUT, 17 + xOffset + (i % 3) * 19, 51 - (i / 3) * 19)
|
.addSlot(RecipeIngredientRole.INPUT, 17 + xOffset + (i % 3) * 19, 51 - (i / 3) * 19)
|
||||||
.setBackground(getRenderedSlot(), -1, -1)
|
.setBackground(getRenderedSlot(), -1, -1)
|
||||||
.addIngredients(VanillaTypes.FLUID, withImprovedVisibility(fluidIngredient.getMatchingFluidStacks()))
|
.addIngredients(ForgeTypes.FLUID_STACK, withImprovedVisibility(fluidIngredient.getMatchingFluidStacks()))
|
||||||
.addTooltipCallback(addFluidTooltip(fluidIngredient.getRequiredAmount()));
|
.addTooltipCallback(addFluidTooltip(fluidIngredient.getRequiredAmount()));
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
@ -99,7 +93,7 @@ public class BasinCategory extends CreateRecipeCategory<BasinRecipe> {
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.OUTPUT, xPosition, yPosition)
|
.addSlot(RecipeIngredientRole.OUTPUT, xPosition, yPosition)
|
||||||
.setBackground(getRenderedSlot(), -1, -1)
|
.setBackground(getRenderedSlot(), -1, -1)
|
||||||
.addIngredient(VanillaTypes.FLUID, withImprovedVisibility(fluidResult))
|
.addIngredient(ForgeTypes.FLUID_STACK, withImprovedVisibility(fluidResult))
|
||||||
.addTooltipCallback(addFluidTooltip(fluidResult.getAmount()));
|
.addTooltipCallback(addFluidTooltip(fluidResult.getAmount()));
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,6 @@ import java.util.List;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.BlockCuttingCategory.CondensedBlockCuttingRecipe;
|
import com.simibubi.create.compat.jei.category.BlockCuttingCategory.CondensedBlockCuttingRecipe;
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedSaw;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedSaw;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
@ -18,7 +17,6 @@ import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.item.Item;
|
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.crafting.Ingredient;
|
import net.minecraft.world.item.crafting.Ingredient;
|
||||||
import net.minecraft.world.item.crafting.Recipe;
|
import net.minecraft.world.item.crafting.Recipe;
|
||||||
|
@ -29,13 +27,8 @@ public class BlockCuttingCategory extends CreateRecipeCategory<CondensedBlockCut
|
||||||
|
|
||||||
private final AnimatedSaw saw = new AnimatedSaw();
|
private final AnimatedSaw saw = new AnimatedSaw();
|
||||||
|
|
||||||
public BlockCuttingCategory(Item symbol) {
|
public BlockCuttingCategory(Info<CondensedBlockCuttingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.MECHANICAL_SAW.get(), symbol), emptyBackground(177, 70)); // Items.STONE_BRICK_STAIRS
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends CondensedBlockCuttingRecipe> getRecipeClass() {
|
|
||||||
return CondensedBlockCuttingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -12,63 +12,50 @@ import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllFluids;
|
import com.simibubi.create.AllFluids;
|
||||||
import com.simibubi.create.Create;
|
|
||||||
import com.simibubi.create.compat.jei.DoubleItemIcon;
|
|
||||||
import com.simibubi.create.compat.jei.EmptyBackground;
|
|
||||||
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluidHandler;
|
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluidHandler;
|
||||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
import com.simibubi.create.foundation.utility.CreateLang;
|
import com.simibubi.create.foundation.utility.CreateLang;
|
||||||
|
|
||||||
import mezz.jei.api.constants.VanillaTypes;
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
import mezz.jei.api.gui.drawable.IDrawable;
|
import mezz.jei.api.gui.drawable.IDrawable;
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotTooltipCallback;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotTooltipCallback;
|
||||||
import mezz.jei.api.recipe.RecipeType;
|
import mezz.jei.api.recipe.RecipeType;
|
||||||
import mezz.jei.api.recipe.category.IRecipeCategory;
|
import mezz.jei.api.recipe.category.IRecipeCategory;
|
||||||
|
import mezz.jei.api.registration.IRecipeCatalystRegistration;
|
||||||
import mezz.jei.api.registration.IRecipeRegistration;
|
import mezz.jei.api.registration.IRecipeRegistration;
|
||||||
|
import net.createmod.catnip.utility.lang.Components;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.MethodsReturnNonnullByDefault;
|
import net.minecraft.MethodsReturnNonnullByDefault;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.TextComponent;
|
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.crafting.Recipe;
|
import net.minecraft.world.item.crafting.Recipe;
|
||||||
import net.minecraft.world.level.ItemLike;
|
|
||||||
import net.minecraftforge.fluids.FluidStack;
|
import net.minecraftforge.fluids.FluidStack;
|
||||||
|
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
@MethodsReturnNonnullByDefault
|
@MethodsReturnNonnullByDefault
|
||||||
public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IRecipeCategory<T> {
|
public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IRecipeCategory<T> {
|
||||||
|
private static final IDrawable BASIC_SLOT = asDrawable(AllGuiTextures.JEI_SLOT);
|
||||||
|
private static final IDrawable CHANCE_SLOT = asDrawable(AllGuiTextures.JEI_CHANCE_SLOT);
|
||||||
|
|
||||||
public final List<Supplier<List<T>>> recipes = new ArrayList<>();
|
protected final RecipeType<T> type;
|
||||||
public final List<Supplier<? extends ItemStack>> recipeCatalysts = new ArrayList<>();
|
protected final Component title;
|
||||||
|
protected final IDrawable background;
|
||||||
|
protected final IDrawable icon;
|
||||||
|
|
||||||
protected String name;
|
private final Supplier<List<T>> recipes;
|
||||||
protected RecipeType<T> type;
|
private final List<Supplier<? extends ItemStack>> catalysts;
|
||||||
private final IDrawable background;
|
|
||||||
private final IDrawable icon;
|
|
||||||
|
|
||||||
private static final IDrawable basicSlot = asDrawable(AllGuiTextures.JEI_SLOT);
|
public CreateRecipeCategory(Info<T> info) {
|
||||||
private static final IDrawable chanceSlot = asDrawable(AllGuiTextures.JEI_CHANCE_SLOT);
|
this.type = info.recipeType();
|
||||||
|
this.title = info.title();
|
||||||
public CreateRecipeCategory(IDrawable icon, IDrawable background) {
|
this.background = info.background();
|
||||||
this.background = background;
|
this.icon = info.icon();
|
||||||
this.icon = icon;
|
this.recipes = info.recipes();
|
||||||
|
this.catalysts = info.catalysts();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCategoryId(String name) {
|
|
||||||
this.name = name;
|
|
||||||
this.type = RecipeType.create(Create.ID, name, getRecipeClass());
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public ResourceLocation getUid() {
|
|
||||||
return getRecipeType().getUid();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public abstract Class<? extends T> getRecipeClass();
|
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@Override
|
@Override
|
||||||
public RecipeType<T> getRecipeType() {
|
public RecipeType<T> getRecipeType() {
|
||||||
|
@ -77,7 +64,7 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Component getTitle() {
|
public Component getTitle() {
|
||||||
return CreateLang.translateDirect("recipe." + name);
|
return title;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -90,12 +77,28 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
return icon;
|
return icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Deprecated
|
||||||
|
public final ResourceLocation getUid() {
|
||||||
|
return type.getUid();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Deprecated
|
||||||
|
public final Class<? extends T> getRecipeClass() {
|
||||||
|
return type.getRecipeClass();
|
||||||
|
}
|
||||||
|
|
||||||
public void registerRecipes(IRecipeRegistration registration) {
|
public void registerRecipes(IRecipeRegistration registration) {
|
||||||
recipes.forEach(s -> registration.addRecipes(getRecipeType(), s.get()));
|
registration.addRecipes(type, recipes.get());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void registerCatalysts(IRecipeCatalystRegistration registration) {
|
||||||
|
catalysts.forEach(s -> registration.addRecipeCatalyst(s.get(), type));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IDrawable getRenderedSlot() {
|
public static IDrawable getRenderedSlot() {
|
||||||
return basicSlot;
|
return BASIC_SLOT;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IDrawable getRenderedSlot(ProcessingOutput output) {
|
public static IDrawable getRenderedSlot(ProcessingOutput output) {
|
||||||
|
@ -104,21 +107,9 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
|
|
||||||
public static IDrawable getRenderedSlot(float chance) {
|
public static IDrawable getRenderedSlot(float chance) {
|
||||||
if (chance == 1)
|
if (chance == 1)
|
||||||
return basicSlot;
|
return BASIC_SLOT;
|
||||||
|
|
||||||
return chanceSlot;
|
return CHANCE_SLOT;
|
||||||
}
|
|
||||||
|
|
||||||
public static IDrawable emptyBackground(int width, int height) {
|
|
||||||
return new EmptyBackground(width, height);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static IDrawable doubleItemIcon(ItemLike item1, ItemLike item2) {
|
|
||||||
return new DoubleItemIcon(() -> new ItemStack(item1), () -> new ItemStack(item2));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static IDrawable itemIcon(ItemLike item) {
|
|
||||||
return new DoubleItemIcon(() -> new ItemStack(item), () -> ItemStack.EMPTY);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IRecipeSlotTooltipCallback addStochasticTooltip(ProcessingOutput output) {
|
public static IRecipeSlotTooltipCallback addStochasticTooltip(ProcessingOutput output) {
|
||||||
|
@ -149,7 +140,7 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
|
|
||||||
public static IRecipeSlotTooltipCallback addFluidTooltip(int mbAmount) {
|
public static IRecipeSlotTooltipCallback addFluidTooltip(int mbAmount) {
|
||||||
return (view, tooltip) -> {
|
return (view, tooltip) -> {
|
||||||
Optional<FluidStack> displayed = view.getDisplayedIngredient(VanillaTypes.FLUID);
|
Optional<FluidStack> displayed = view.getDisplayedIngredient(ForgeTypes.FLUID_STACK);
|
||||||
if (displayed.isEmpty())
|
if (displayed.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -168,18 +159,18 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
}
|
}
|
||||||
|
|
||||||
int amount = mbAmount == -1 ? fluidStack.getAmount() : mbAmount;
|
int amount = mbAmount == -1 ? fluidStack.getAmount() : mbAmount;
|
||||||
Component text = new TextComponent(String.valueOf(amount)).append(CreateLang.translateDirect("generic.unit.millibuckets")).withStyle(ChatFormatting.GOLD);
|
Component text = Components.literal(String.valueOf(amount)).append(CreateLang.translateDirect("generic.unit.millibuckets")).withStyle(ChatFormatting.GOLD);
|
||||||
if (tooltip.isEmpty())
|
if (tooltip.isEmpty())
|
||||||
tooltip.add(0, text);
|
tooltip.add(0, text);
|
||||||
else {
|
else {
|
||||||
List<Component> siblings = tooltip.get(0).getSiblings();
|
List<Component> siblings = tooltip.get(0).getSiblings();
|
||||||
siblings.add(new TextComponent(" "));
|
siblings.add(Components.literal(" "));
|
||||||
siblings.add(text);
|
siblings.add(text);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private static IDrawable asDrawable(AllGuiTextures texture) {
|
protected static IDrawable asDrawable(AllGuiTextures texture) {
|
||||||
return new IDrawable() {
|
return new IDrawable() {
|
||||||
@Override
|
@Override
|
||||||
public int getWidth() {
|
public int getWidth() {
|
||||||
|
@ -198,4 +189,10 @@ public abstract class CreateRecipeCategory<T extends Recipe<?>> implements IReci
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public record Info<T extends Recipe<?>>(RecipeType<T> recipeType, Component title, IDrawable background, IDrawable icon, Supplier<List<T>> recipes, List<Supplier<? extends ItemStack>> catalysts) {
|
||||||
|
}
|
||||||
|
|
||||||
|
public interface Factory<T extends Recipe<?>> {
|
||||||
|
CreateRecipeCategory<T> create(Info<T> info);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,8 +6,6 @@ import java.util.List;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedCrushingWheels;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedCrushingWheels;
|
||||||
import com.simibubi.create.content.contraptions.components.crusher.AbstractCrushingRecipe;
|
import com.simibubi.create.content.contraptions.components.crusher.AbstractCrushingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||||
|
@ -25,13 +23,8 @@ public class CrushingCategory extends CreateRecipeCategory<AbstractCrushingRecip
|
||||||
|
|
||||||
private final AnimatedCrushingWheels crushingWheels = new AnimatedCrushingWheels();
|
private final AnimatedCrushingWheels crushingWheels = new AnimatedCrushingWheels();
|
||||||
|
|
||||||
public CrushingCategory() {
|
public CrushingCategory(Info<AbstractCrushingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.CRUSHING_WHEEL.get(), AllItems.CRUSHED_GOLD.get()), emptyBackground(177, 100));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends AbstractCrushingRecipe> getRecipeClass() {
|
|
||||||
return AbstractCrushingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,7 +3,6 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedDeployer;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedDeployer;
|
||||||
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
import com.simibubi.create.content.contraptions.components.deployer.DeployerApplicationRecipe;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
@ -21,13 +20,8 @@ public class DeployingCategory extends CreateRecipeCategory<DeployerApplicationR
|
||||||
|
|
||||||
private final AnimatedDeployer deployer = new AnimatedDeployer();
|
private final AnimatedDeployer deployer = new AnimatedDeployer();
|
||||||
|
|
||||||
public DeployingCategory() {
|
public DeployingCategory(Info<DeployerApplicationRecipe> info) {
|
||||||
super(itemIcon(AllBlocks.DEPLOYER.get()), emptyBackground(177, 70));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<DeployerApplicationRecipe> getRecipeClass() {
|
|
||||||
return DeployerApplicationRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,24 +3,17 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
import net.createmod.catnip.gui.element.GuiGameElement;
|
import net.createmod.catnip.gui.element.GuiGameElement;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
import net.minecraft.world.item.crafting.AbstractCookingRecipe;
|
import net.minecraft.world.item.crafting.AbstractCookingRecipe;
|
||||||
import net.minecraft.world.level.material.Fluids;
|
import net.minecraft.world.level.material.Fluids;
|
||||||
|
|
||||||
public class FanBlastingCategory extends ProcessingViaFanCategory<AbstractCookingRecipe> {
|
public class FanBlastingCategory extends ProcessingViaFanCategory<AbstractCookingRecipe> {
|
||||||
|
|
||||||
public FanBlastingCategory() {
|
public FanBlastingCategory(Info<AbstractCookingRecipe> info) {
|
||||||
super(doubleItemIcon(AllItems.PROPELLER.get(), Items.LAVA_BUCKET));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends AbstractCookingRecipe> getRecipeClass() {
|
|
||||||
return AbstractCookingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,24 +3,17 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||||
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
import com.simibubi.create.content.contraptions.components.fan.HauntingRecipe;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
import net.createmod.catnip.gui.element.GuiGameElement;
|
import net.createmod.catnip.gui.element.GuiGameElement;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
|
|
||||||
public class FanHauntingCategory extends ProcessingViaFanCategory.MultiOutput<HauntingRecipe> {
|
public class FanHauntingCategory extends ProcessingViaFanCategory.MultiOutput<HauntingRecipe> {
|
||||||
|
|
||||||
public FanHauntingCategory() {
|
public FanHauntingCategory(Info<HauntingRecipe> info) {
|
||||||
super(doubleItemIcon(AllItems.PROPELLER.get(), Items.SOUL_CAMPFIRE));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends HauntingRecipe> getRecipeClass() {
|
|
||||||
return HauntingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,24 +3,17 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
import net.createmod.catnip.gui.element.GuiGameElement;
|
import net.createmod.catnip.gui.element.GuiGameElement;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
import net.minecraft.world.item.crafting.SmokingRecipe;
|
import net.minecraft.world.item.crafting.SmokingRecipe;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
|
|
||||||
public class FanSmokingCategory extends ProcessingViaFanCategory<SmokingRecipe> {
|
public class FanSmokingCategory extends ProcessingViaFanCategory<SmokingRecipe> {
|
||||||
|
|
||||||
public FanSmokingCategory() {
|
public FanSmokingCategory(Info<SmokingRecipe> info) {
|
||||||
super(doubleItemIcon(AllItems.PROPELLER.get(), Items.CAMPFIRE));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends SmokingRecipe> getRecipeClass() {
|
|
||||||
return SmokingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,23 +3,16 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||||
import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe;
|
import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe;
|
||||||
|
|
||||||
import net.createmod.catnip.gui.element.GuiGameElement;
|
import net.createmod.catnip.gui.element.GuiGameElement;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
import net.minecraft.world.level.material.Fluids;
|
import net.minecraft.world.level.material.Fluids;
|
||||||
|
|
||||||
public class FanWashingCategory extends ProcessingViaFanCategory.MultiOutput<SplashingRecipe> {
|
public class FanWashingCategory extends ProcessingViaFanCategory.MultiOutput<SplashingRecipe> {
|
||||||
|
|
||||||
public FanWashingCategory() {
|
public FanWashingCategory(Info<SplashingRecipe> info) {
|
||||||
super(doubleItemIcon(AllItems.PROPELLER.get(), Items.WATER_BUCKET));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends SplashingRecipe> getRecipeClass() {
|
|
||||||
return SplashingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -6,7 +6,6 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.mojang.math.Vector3f;
|
import com.mojang.math.Vector3f;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedKinetics;
|
||||||
import com.simibubi.create.content.contraptions.processing.ItemApplicationRecipe;
|
import com.simibubi.create.content.contraptions.processing.ItemApplicationRecipe;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
@ -27,13 +26,8 @@ import net.minecraft.world.level.block.state.BlockState;
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class ItemApplicationCategory extends CreateRecipeCategory<ItemApplicationRecipe> {
|
public class ItemApplicationCategory extends CreateRecipeCategory<ItemApplicationRecipe> {
|
||||||
|
|
||||||
public ItemApplicationCategory() {
|
public ItemApplicationCategory(Info<ItemApplicationRecipe> info) {
|
||||||
super(itemIcon(AllItems.BRASS_HAND.get()), emptyBackground(177, 60));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<ItemApplicationRecipe> getRecipeClass() {
|
|
||||||
return ItemApplicationRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -65,7 +59,7 @@ public class ItemApplicationCategory extends CreateRecipeCategory<ItemApplicatio
|
||||||
|
|
||||||
Optional<ItemStack> displayedIngredient = recipeSlotsView.getSlotViews()
|
Optional<ItemStack> displayedIngredient = recipeSlotsView.getSlotViews()
|
||||||
.get(0)
|
.get(0)
|
||||||
.getDisplayedIngredient(VanillaTypes.ITEM);
|
.getDisplayedIngredient(VanillaTypes.ITEM_STACK);
|
||||||
if (displayedIngredient.isEmpty())
|
if (displayedIngredient.isEmpty())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@ import java.util.function.Consumer;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.Create;
|
import com.simibubi.create.Create;
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedItemDrain;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedItemDrain;
|
||||||
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluidHandler;
|
import com.simibubi.create.content.contraptions.fluids.potion.PotionFluidHandler;
|
||||||
|
@ -14,11 +13,13 @@ import com.simibubi.create.content.contraptions.processing.ProcessingRecipeBuild
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
import mezz.jei.api.constants.VanillaTypes;
|
import mezz.jei.api.constants.VanillaTypes;
|
||||||
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
import mezz.jei.api.runtime.IIngredientManager;
|
import mezz.jei.api.runtime.IIngredientManager;
|
||||||
|
import net.createmod.catnip.platform.CatnipServices;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Items;
|
import net.minecraft.world.item.Items;
|
||||||
|
@ -33,15 +34,14 @@ import net.minecraftforge.fluids.capability.IFluidHandlerItem;
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class ItemDrainCategory extends CreateRecipeCategory<EmptyingRecipe> {
|
public class ItemDrainCategory extends CreateRecipeCategory<EmptyingRecipe> {
|
||||||
|
|
||||||
AnimatedItemDrain drain;
|
private final AnimatedItemDrain drain = new AnimatedItemDrain();
|
||||||
|
|
||||||
public ItemDrainCategory() {
|
public ItemDrainCategory(Info<EmptyingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.ITEM_DRAIN.get(), Items.WATER_BUCKET), emptyBackground(177, 50));
|
super(info);
|
||||||
drain = new AnimatedItemDrain();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void consumeRecipes(Consumer<EmptyingRecipe> consumer, IIngredientManager ingredientManager) {
|
public static void consumeRecipes(Consumer<EmptyingRecipe> consumer, IIngredientManager ingredientManager) {
|
||||||
for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM)) {
|
for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM_STACK)) {
|
||||||
if (stack.getItem() instanceof PotionItem) {
|
if (stack.getItem() instanceof PotionItem) {
|
||||||
FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack);
|
FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack);
|
||||||
Ingredient potion = Ingredient.of(stack);
|
Ingredient potion = Ingredient.of(stack);
|
||||||
|
@ -69,10 +69,8 @@ public class ItemDrainCategory extends CreateRecipeCategory<EmptyingRecipe> {
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
Ingredient ingredient = Ingredient.of(stack);
|
Ingredient ingredient = Ingredient.of(stack);
|
||||||
ResourceLocation itemName = stack.getItem()
|
ResourceLocation itemName = CatnipServices.REGISTRIES.getKeyOrThrow(stack.getItem());
|
||||||
.getRegistryName();
|
ResourceLocation fluidName = CatnipServices.REGISTRIES.getKeyOrThrow(extracted.getFluid());
|
||||||
ResourceLocation fluidName = extracted.getFluid()
|
|
||||||
.getRegistryName();
|
|
||||||
|
|
||||||
consumer.accept(new ProcessingRecipeBuilder<>(EmptyingRecipe::new,
|
consumer.accept(new ProcessingRecipeBuilder<>(EmptyingRecipe::new,
|
||||||
Create.asResource("empty_" + itemName.getNamespace() + "_" + itemName.getPath() + "_of_"
|
Create.asResource("empty_" + itemName.getNamespace() + "_" + itemName.getPath() + "_of_"
|
||||||
|
@ -83,11 +81,6 @@ public class ItemDrainCategory extends CreateRecipeCategory<EmptyingRecipe> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends EmptyingRecipe> getRecipeClass() {
|
|
||||||
return EmptyingRecipe.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setRecipe(IRecipeLayoutBuilder builder, EmptyingRecipe recipe, IFocusGroup focuses) {
|
public void setRecipe(IRecipeLayoutBuilder builder, EmptyingRecipe recipe, IFocusGroup focuses) {
|
||||||
builder
|
builder
|
||||||
|
@ -97,7 +90,7 @@ public class ItemDrainCategory extends CreateRecipeCategory<EmptyingRecipe> {
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.OUTPUT, 132, 8)
|
.addSlot(RecipeIngredientRole.OUTPUT, 132, 8)
|
||||||
.setBackground(getRenderedSlot(), -1, -1)
|
.setBackground(getRenderedSlot(), -1, -1)
|
||||||
.addIngredient(VanillaTypes.FLUID, withImprovedVisibility(recipe.getResultingFluid()))
|
.addIngredient(ForgeTypes.FLUID_STACK, withImprovedVisibility(recipe.getResultingFluid()))
|
||||||
.addTooltipCallback(addFluidTooltip(recipe.getResultingFluid().getAmount()));
|
.addTooltipCallback(addFluidTooltip(recipe.getResultingFluid().getAmount()));
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.OUTPUT, 132, 27)
|
.addSlot(RecipeIngredientRole.OUTPUT, 132, 27)
|
||||||
|
|
|
@ -9,7 +9,6 @@ import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.systems.RenderSystem;
|
import com.mojang.blaze3d.systems.RenderSystem;
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedCrafter;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedCrafter;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
|
@ -19,12 +18,13 @@ import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.ingredients.IIngredientRenderer;
|
import mezz.jei.api.ingredients.IIngredientRenderer;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
|
import net.createmod.catnip.utility.lang.Components;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.Font;
|
import net.minecraft.client.gui.Font;
|
||||||
import net.minecraft.client.renderer.entity.ItemRenderer;
|
import net.minecraft.client.renderer.entity.ItemRenderer;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.TranslatableComponent;
|
import net.minecraft.network.chat.MutableComponent;
|
||||||
import net.minecraft.world.entity.player.Player;
|
import net.minecraft.world.entity.player.Player;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.TooltipFlag;
|
import net.minecraft.world.item.TooltipFlag;
|
||||||
|
@ -37,8 +37,8 @@ public class MechanicalCraftingCategory extends CreateRecipeCategory<CraftingRec
|
||||||
|
|
||||||
private final AnimatedCrafter crafter = new AnimatedCrafter();
|
private final AnimatedCrafter crafter = new AnimatedCrafter();
|
||||||
|
|
||||||
public MechanicalCraftingCategory() {
|
public MechanicalCraftingCategory(Info<CraftingRecipe> info) {
|
||||||
super(itemIcon(AllBlocks.MECHANICAL_CRAFTER.get()), emptyBackground(177, 107));
|
super(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -59,7 +59,7 @@ public class MechanicalCraftingCategory extends CreateRecipeCategory<CraftingRec
|
||||||
int yPosition = (int) (y + 1 + (i / getWidth(recipe)) * f);
|
int yPosition = (int) (y + 1 + (i / getWidth(recipe)) * f);
|
||||||
|
|
||||||
builder.addSlot(RecipeIngredientRole.INPUT, xPosition, yPosition)
|
builder.addSlot(RecipeIngredientRole.INPUT, xPosition, yPosition)
|
||||||
.setCustomRenderer(VanillaTypes.ITEM, renderer)
|
.setCustomRenderer(VanillaTypes.ITEM_STACK, renderer)
|
||||||
.addIngredients(ingredient);
|
.addIngredients(ingredient);
|
||||||
|
|
||||||
i++;
|
i++;
|
||||||
|
@ -130,11 +130,6 @@ public class MechanicalCraftingCategory extends CreateRecipeCategory<CraftingRec
|
||||||
matrixStack.popPose();
|
matrixStack.popPose();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends CraftingRecipe> getRecipeClass() {
|
|
||||||
return CraftingRecipe.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
private static final class CrafterIngredientRenderer implements IIngredientRenderer<ItemStack> {
|
private static final class CrafterIngredientRenderer implements IIngredientRenderer<ItemStack> {
|
||||||
|
|
||||||
private final CraftingRecipe recipe;
|
private final CraftingRecipe recipe;
|
||||||
|
@ -189,7 +184,7 @@ public class MechanicalCraftingCategory extends CreateRecipeCategory<CraftingRec
|
||||||
return ingredient.getTooltipLines(player, tooltipFlag);
|
return ingredient.getTooltipLines(player, tooltipFlag);
|
||||||
} catch (RuntimeException | LinkageError e) {
|
} catch (RuntimeException | LinkageError e) {
|
||||||
List<Component> list = new ArrayList<>();
|
List<Component> list = new ArrayList<>();
|
||||||
TranslatableComponent crash = new TranslatableComponent("jei.tooltip.error.crash");
|
MutableComponent crash = Components.translatable("jei.tooltip.error.crash");
|
||||||
list.add(crash.withStyle(ChatFormatting.RED));
|
list.add(crash.withStyle(ChatFormatting.RED));
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,8 +5,6 @@ import java.util.List;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedMillstone;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedMillstone;
|
||||||
import com.simibubi.create.content.contraptions.components.crusher.AbstractCrushingRecipe;
|
import com.simibubi.create.content.contraptions.components.crusher.AbstractCrushingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||||
|
@ -22,13 +20,8 @@ public class MillingCategory extends CreateRecipeCategory<AbstractCrushingRecipe
|
||||||
|
|
||||||
private final AnimatedMillstone millstone = new AnimatedMillstone();
|
private final AnimatedMillstone millstone = new AnimatedMillstone();
|
||||||
|
|
||||||
public MillingCategory() {
|
public MillingCategory(Info<AbstractCrushingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.MILLSTONE.get(), AllItems.WHEAT_FLOUR.get()), emptyBackground(177, 53));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends AbstractCrushingRecipe> getRecipeClass() {
|
|
||||||
return AbstractCrushingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,16 +3,12 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedBlazeBurner;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedBlazeBurner;
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedMixer;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedMixer;
|
||||||
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.HeatCondition;
|
import com.simibubi.create.content.contraptions.processing.HeatCondition;
|
||||||
|
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
import net.minecraft.world.level.ItemLike;
|
|
||||||
import net.minecraft.world.level.block.Blocks;
|
|
||||||
|
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class MixingCategory extends BasinCategory {
|
public class MixingCategory extends BasinCategory {
|
||||||
|
@ -22,24 +18,23 @@ public class MixingCategory extends BasinCategory {
|
||||||
MixingType type;
|
MixingType type;
|
||||||
|
|
||||||
enum MixingType {
|
enum MixingType {
|
||||||
AUTO_SHAPELESS, MIXING, AUTO_BREWING
|
MIXING, AUTO_SHAPELESS, AUTO_BREWING
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MixingCategory autoShapeless() {
|
public static MixingCategory standard(Info<BasinRecipe> info) {
|
||||||
return new MixingCategory(MixingType.AUTO_SHAPELESS, Items.CRAFTING_TABLE, 85);
|
return new MixingCategory(info, MixingType.MIXING);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MixingCategory standard() {
|
public static MixingCategory autoShapeless(Info<BasinRecipe> info) {
|
||||||
return new MixingCategory(MixingType.MIXING, AllBlocks.BASIN.get(), 103);
|
return new MixingCategory(info, MixingType.AUTO_SHAPELESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static MixingCategory autoBrewing() {
|
public static MixingCategory autoBrewing(Info<BasinRecipe> info) {
|
||||||
return new MixingCategory(MixingType.AUTO_BREWING, Blocks.BREWING_STAND, 103);
|
return new MixingCategory(info, MixingType.AUTO_BREWING);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected MixingCategory(MixingType type, ItemLike secondaryItem, int height) {
|
protected MixingCategory(Info<BasinRecipe> info, MixingType type) {
|
||||||
super(type != MixingType.AUTO_SHAPELESS, doubleItemIcon(AllBlocks.MECHANICAL_MIXER.get(), secondaryItem),
|
super(info, type != MixingType.AUTO_SHAPELESS);
|
||||||
emptyBackground(177, height));
|
|
||||||
this.type = type;
|
this.type = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -24,17 +24,12 @@ public class MysteriousItemConversionCategory extends CreateRecipeCategory<Conve
|
||||||
static {
|
static {
|
||||||
RECIPES.add(ConversionRecipe.create(AllItems.EMPTY_BLAZE_BURNER.asStack(), AllBlocks.BLAZE_BURNER.asStack()));
|
RECIPES.add(ConversionRecipe.create(AllItems.EMPTY_BLAZE_BURNER.asStack(), AllBlocks.BLAZE_BURNER.asStack()));
|
||||||
RECIPES.add(ConversionRecipe.create(AllBlocks.PECULIAR_BELL.asStack(), AllBlocks.HAUNTED_BELL.asStack()));
|
RECIPES.add(ConversionRecipe.create(AllBlocks.PECULIAR_BELL.asStack(), AllBlocks.HAUNTED_BELL.asStack()));
|
||||||
RECIPES.add(ConversionRecipe.create(AllItems.CHROMATIC_COMPOUND.asStack(), AllItems.SHADOW_STEEL.asStack()));
|
// RECIPES.add(ConversionRecipe.create(AllItems.CHROMATIC_COMPOUND.asStack(), AllItems.SHADOW_STEEL.asStack()));
|
||||||
RECIPES.add(ConversionRecipe.create(AllItems.CHROMATIC_COMPOUND.asStack(), AllItems.REFINED_RADIANCE.asStack()));
|
// RECIPES.add(ConversionRecipe.create(AllItems.CHROMATIC_COMPOUND.asStack(), AllItems.REFINED_RADIANCE.asStack()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public MysteriousItemConversionCategory() {
|
public MysteriousItemConversionCategory(Info<ConversionRecipe> info) {
|
||||||
super(itemIcon(AllItems.CHROMATIC_COMPOUND.get()), emptyBackground(177, 50));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends ConversionRecipe> getRecipeClass() {
|
|
||||||
return ConversionRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -3,7 +3,6 @@ package com.simibubi.create.compat.jei.category;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedBlazeBurner;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedBlazeBurner;
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedPress;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedPress;
|
||||||
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
import com.simibubi.create.content.contraptions.processing.BasinRecipe;
|
||||||
|
@ -16,8 +15,6 @@ import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
import net.minecraft.core.NonNullList;
|
import net.minecraft.core.NonNullList;
|
||||||
import net.minecraft.world.item.crafting.Ingredient;
|
import net.minecraft.world.item.crafting.Ingredient;
|
||||||
import net.minecraft.world.level.ItemLike;
|
|
||||||
import net.minecraft.world.level.block.Blocks;
|
|
||||||
|
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class PackingCategory extends BasinCategory {
|
public class PackingCategory extends BasinCategory {
|
||||||
|
@ -27,20 +24,19 @@ public class PackingCategory extends BasinCategory {
|
||||||
private final PackingType type;
|
private final PackingType type;
|
||||||
|
|
||||||
enum PackingType {
|
enum PackingType {
|
||||||
AUTO_SQUARE, COMPACTING
|
COMPACTING, AUTO_SQUARE
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PackingCategory standard() {
|
public static PackingCategory standard(Info<BasinRecipe> info) {
|
||||||
return new PackingCategory(PackingType.COMPACTING, AllBlocks.BASIN.get(), 103);
|
return new PackingCategory(info, PackingType.COMPACTING);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PackingCategory autoSquare() {
|
public static PackingCategory autoSquare(Info<BasinRecipe> info) {
|
||||||
return new PackingCategory(PackingType.AUTO_SQUARE, Blocks.CRAFTING_TABLE, 85);
|
return new PackingCategory(info, PackingType.AUTO_SQUARE);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected PackingCategory(PackingType type, ItemLike icon, int height) {
|
protected PackingCategory(Info<BasinRecipe> info, PackingType type) {
|
||||||
super(type != PackingType.AUTO_SQUARE, doubleItemIcon(AllBlocks.MECHANICAL_PRESS.get(), icon),
|
super(info, type != PackingType.AUTO_SQUARE);
|
||||||
emptyBackground(177, height));
|
|
||||||
this.type = type;
|
this.type = type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,16 +23,11 @@ public class PolishingCategory extends CreateRecipeCategory<SandPaperPolishingRe
|
||||||
|
|
||||||
private final ItemStack renderedSandpaper;
|
private final ItemStack renderedSandpaper;
|
||||||
|
|
||||||
public PolishingCategory() {
|
public PolishingCategory(Info<SandPaperPolishingRecipe> info) {
|
||||||
super(itemIcon(AllItems.SAND_PAPER.get()), emptyBackground(177, 55));
|
super(info);
|
||||||
renderedSandpaper = AllItems.SAND_PAPER.asStack();
|
renderedSandpaper = AllItems.SAND_PAPER.asStack();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends SandPaperPolishingRecipe> getRecipeClass() {
|
|
||||||
return SandPaperPolishingRecipe.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setRecipe(IRecipeLayoutBuilder builder, SandPaperPolishingRecipe recipe, IFocusGroup focuses) {
|
public void setRecipe(IRecipeLayoutBuilder builder, SandPaperPolishingRecipe recipe, IFocusGroup focuses) {
|
||||||
builder
|
builder
|
||||||
|
|
|
@ -5,8 +5,6 @@ import java.util.List;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedPress;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedPress;
|
||||||
import com.simibubi.create.content.contraptions.components.press.PressingRecipe;
|
import com.simibubi.create.content.contraptions.components.press.PressingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||||
|
@ -22,13 +20,8 @@ public class PressingCategory extends CreateRecipeCategory<PressingRecipe> {
|
||||||
|
|
||||||
private final AnimatedPress press = new AnimatedPress(false);
|
private final AnimatedPress press = new AnimatedPress(false);
|
||||||
|
|
||||||
public PressingCategory() {
|
public PressingCategory(Info<PressingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.MECHANICAL_PRESS.get(), AllItems.IRON_SHEET.get()), emptyBackground(177, 70));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends PressingRecipe> getRecipeClass() {
|
|
||||||
return PressingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -16,7 +16,6 @@ import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
import com.simibubi.create.foundation.utility.CreateLang;
|
import com.simibubi.create.foundation.utility.CreateLang;
|
||||||
|
|
||||||
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.drawable.IDrawable;
|
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
|
@ -28,12 +27,8 @@ public abstract class ProcessingViaFanCategory<T extends Recipe<?>> extends Crea
|
||||||
|
|
||||||
protected static final int SCALE = 24;
|
protected static final int SCALE = 24;
|
||||||
|
|
||||||
public ProcessingViaFanCategory(IDrawable icon) {
|
public ProcessingViaFanCategory(Info<T> info) {
|
||||||
this(178, icon);
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
public ProcessingViaFanCategory(int width, IDrawable icon) {
|
|
||||||
super(icon, emptyBackground(width, 72));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Supplier<ItemStack> getFan(String name) {
|
public static Supplier<ItemStack> getFan(String name) {
|
||||||
|
@ -95,8 +90,8 @@ public abstract class ProcessingViaFanCategory<T extends Recipe<?>> extends Crea
|
||||||
|
|
||||||
public static abstract class MultiOutput<T extends ProcessingRecipe<?>> extends ProcessingViaFanCategory<T> {
|
public static abstract class MultiOutput<T extends ProcessingRecipe<?>> extends ProcessingViaFanCategory<T> {
|
||||||
|
|
||||||
public MultiOutput(IDrawable icon) {
|
public MultiOutput(Info<T> info) {
|
||||||
super(icon);
|
super(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -5,7 +5,6 @@ import java.util.List;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedSaw;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedSaw;
|
||||||
import com.simibubi.create.content.contraptions.components.saw.CuttingRecipe;
|
import com.simibubi.create.content.contraptions.components.saw.CuttingRecipe;
|
||||||
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
import com.simibubi.create.content.contraptions.processing.ProcessingOutput;
|
||||||
|
@ -15,20 +14,14 @@ import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
import net.minecraft.world.item.Items;
|
|
||||||
|
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class SawingCategory extends CreateRecipeCategory<CuttingRecipe> {
|
public class SawingCategory extends CreateRecipeCategory<CuttingRecipe> {
|
||||||
|
|
||||||
private final AnimatedSaw saw = new AnimatedSaw();
|
private final AnimatedSaw saw = new AnimatedSaw();
|
||||||
|
|
||||||
public SawingCategory() {
|
public SawingCategory(Info<CuttingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.MECHANICAL_SAW.get(), Items.OAK_LOG), emptyBackground(177, 70));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends CuttingRecipe> getRecipeClass() {
|
|
||||||
return CuttingRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -10,8 +10,6 @@ import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllItems;
|
|
||||||
import com.simibubi.create.compat.jei.EmptyBackground;
|
|
||||||
import com.simibubi.create.compat.jei.category.sequencedAssembly.SequencedAssemblySubCategory;
|
import com.simibubi.create.compat.jei.category.sequencedAssembly.SequencedAssemblySubCategory;
|
||||||
import com.simibubi.create.content.contraptions.itemAssembly.SequencedAssemblyRecipe;
|
import com.simibubi.create.content.contraptions.itemAssembly.SequencedAssemblyRecipe;
|
||||||
import com.simibubi.create.content.contraptions.itemAssembly.SequencedRecipe;
|
import com.simibubi.create.content.contraptions.itemAssembly.SequencedRecipe;
|
||||||
|
@ -23,12 +21,13 @@ import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
|
import net.createmod.catnip.platform.CatnipServices;
|
||||||
|
import net.createmod.catnip.utility.lang.Components;
|
||||||
import net.minecraft.ChatFormatting;
|
import net.minecraft.ChatFormatting;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.Font;
|
import net.minecraft.client.gui.Font;
|
||||||
import net.minecraft.network.chat.Component;
|
import net.minecraft.network.chat.Component;
|
||||||
import net.minecraft.network.chat.TextComponent;
|
import net.minecraft.network.chat.MutableComponent;
|
||||||
import net.minecraft.network.chat.TranslatableComponent;
|
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
|
@ -36,13 +35,8 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
|
|
||||||
Map<ResourceLocation, SequencedAssemblySubCategory> subCategories = new HashMap<>();
|
Map<ResourceLocation, SequencedAssemblySubCategory> subCategories = new HashMap<>();
|
||||||
|
|
||||||
public SequencedAssemblyCategory() {
|
public SequencedAssemblyCategory(Info<SequencedAssemblyRecipe> info) {
|
||||||
super(itemIcon(AllItems.PRECISION_MECHANISM.get()), new EmptyBackground(180, 115));
|
super(info);
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends SequencedAssemblyRecipe> getRecipeClass() {
|
|
||||||
return SequencedAssemblyRecipe.class;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -63,8 +57,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
return;
|
return;
|
||||||
|
|
||||||
float chance = recipe.getOutputChance();
|
float chance = recipe.getOutputChance();
|
||||||
tooltip.add(1, CreateLang.translateDirect("recipe.processing.chance", chance < 0.01 ? "<1" : (int) (chance * 100))
|
tooltip.add(1, chanceComponent(chance));
|
||||||
.withStyle(ChatFormatting.GOLD));
|
|
||||||
});
|
});
|
||||||
|
|
||||||
int width = 0;
|
int width = 0;
|
||||||
|
@ -82,9 +75,8 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
}
|
}
|
||||||
|
|
||||||
private SequencedAssemblySubCategory getSubCategory(SequencedRecipe<?> sequencedRecipe) {
|
private SequencedAssemblySubCategory getSubCategory(SequencedRecipe<?> sequencedRecipe) {
|
||||||
return subCategories.computeIfAbsent(sequencedRecipe.getRecipe()
|
return subCategories.computeIfAbsent(CatnipServices.REGISTRIES.getKeyOrThrow(sequencedRecipe.getRecipe()
|
||||||
.getSerializer()
|
.getSerializer()),
|
||||||
.getRegistryName(),
|
|
||||||
rl -> sequencedRecipe.getAsAssemblyRecipe()
|
rl -> sequencedRecipe.getAsAssemblyRecipe()
|
||||||
.getJEISubCategory()
|
.getJEISubCategory()
|
||||||
.get()
|
.get()
|
||||||
|
@ -107,7 +99,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
AllGuiTextures.JEI_LONG_ARROW.render(matrixStack, 52 + xOffset, 79);
|
AllGuiTextures.JEI_LONG_ARROW.render(matrixStack, 52 + xOffset, 79);
|
||||||
if (!singleOutput) {
|
if (!singleOutput) {
|
||||||
AllGuiTextures.JEI_CHANCE_SLOT.render(matrixStack, 150 + xOffset, 75);
|
AllGuiTextures.JEI_CHANCE_SLOT.render(matrixStack, 150 + xOffset, 75);
|
||||||
Component component = new TextComponent("?").withStyle(ChatFormatting.BOLD);
|
Component component = Components.literal("?").withStyle(ChatFormatting.BOLD);
|
||||||
font.drawShadow(matrixStack, component, font.width(component) / -2 + 8 + 150 + xOffset, 2 + 78,
|
font.drawShadow(matrixStack, component, font.width(component) / -2 + 8 + 150 + xOffset, 2 + 78,
|
||||||
0xefefef);
|
0xefefef);
|
||||||
}
|
}
|
||||||
|
@ -116,7 +108,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
matrixStack.pushPose();
|
matrixStack.pushPose();
|
||||||
matrixStack.translate(15, 9, 0);
|
matrixStack.translate(15, 9, 0);
|
||||||
AllIcons.I_SEQ_REPEAT.render(matrixStack, 50 + xOffset, 75);
|
AllIcons.I_SEQ_REPEAT.render(matrixStack, 50 + xOffset, 75);
|
||||||
Component repeat = new TextComponent("x" + recipe.getLoops());
|
Component repeat = Components.literal("x" + recipe.getLoops());
|
||||||
font.draw(matrixStack, repeat, 66 + xOffset, 80, 0x888888);
|
font.draw(matrixStack, repeat, 66 + xOffset, 80, 0x888888);
|
||||||
matrixStack.popPose();
|
matrixStack.popPose();
|
||||||
}
|
}
|
||||||
|
@ -136,7 +128,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
SequencedRecipe<?> sequencedRecipe = sequence.get(i);
|
SequencedRecipe<?> sequencedRecipe = sequence.get(i);
|
||||||
SequencedAssemblySubCategory subCategory = getSubCategory(sequencedRecipe);
|
SequencedAssemblySubCategory subCategory = getSubCategory(sequencedRecipe);
|
||||||
int subWidth = subCategory.getWidth();
|
int subWidth = subCategory.getWidth();
|
||||||
TextComponent component = new TextComponent("" + romans[Math.min(i, 6)]);
|
MutableComponent component = Components.literal("" + romans[Math.min(i, 6)]);
|
||||||
font.draw(matrixStack, component, font.width(component) / -2 + subWidth / 2, 2, 0x888888);
|
font.draw(matrixStack, component, font.width(component) / -2 + subWidth / 2, 2, 0x888888);
|
||||||
subCategory.draw(sequencedRecipe, matrixStack, mouseX, mouseY, i);
|
subCategory.draw(sequencedRecipe, matrixStack, mouseX, mouseY, i);
|
||||||
matrixStack.translate(subWidth + margin, 0, 0);
|
matrixStack.translate(subWidth + margin, 0, 0);
|
||||||
|
@ -151,7 +143,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
public List<Component> getTooltipStrings(SequencedAssemblyRecipe recipe, IRecipeSlotsView iRecipeSlotsView, double mouseX, double mouseY) {
|
public List<Component> getTooltipStrings(SequencedAssemblyRecipe recipe, IRecipeSlotsView iRecipeSlotsView, double mouseX, double mouseY) {
|
||||||
List<Component> tooltip = new ArrayList<>();
|
List<Component> tooltip = new ArrayList<>();
|
||||||
|
|
||||||
TranslatableComponent junk = CreateLang.translateDirect("recipe.assembly.junk");
|
MutableComponent junk = CreateLang.translateDirect("recipe.assembly.junk");
|
||||||
|
|
||||||
boolean singleOutput = recipe.getOutputChance() == 1;
|
boolean singleOutput = recipe.getOutputChance() == 1;
|
||||||
boolean willRepeat = recipe.getLoops() > 1;
|
boolean willRepeat = recipe.getLoops() > 1;
|
||||||
|
@ -164,8 +156,7 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
if (!singleOutput && mouseX >= minX && mouseX < maxX && mouseY >= minY && mouseY < maxY) {
|
if (!singleOutput && mouseX >= minX && mouseX < maxX && mouseY >= minY && mouseY < maxY) {
|
||||||
float chance = recipe.getOutputChance();
|
float chance = recipe.getOutputChance();
|
||||||
tooltip.add(junk);
|
tooltip.add(junk);
|
||||||
tooltip.add(CreateLang.translateDirect("recipe.processing.chance", chance < 0.01 ? "<1" : 100 - (int) (chance * 100))
|
tooltip.add(chanceComponent(1 - chance));
|
||||||
.withStyle(ChatFormatting.GOLD));
|
|
||||||
return tooltip;
|
return tooltip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -205,4 +196,10 @@ public class SequencedAssemblyCategory extends CreateRecipeCategory<SequencedAss
|
||||||
|
|
||||||
return tooltip;
|
return tooltip;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected MutableComponent chanceComponent(float chance) {
|
||||||
|
String number = chance < 0.01 ? "<1" : chance > 0.99 ? ">99" : String.valueOf(Math.round(chance * 100));
|
||||||
|
return CreateLang.translateDirect("recipe.processing.chance", number)
|
||||||
|
.withStyle(ChatFormatting.GOLD);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,6 @@ import java.util.function.Consumer;
|
||||||
import javax.annotation.ParametersAreNonnullByDefault;
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
|
||||||
import com.mojang.blaze3d.vertex.PoseStack;
|
import com.mojang.blaze3d.vertex.PoseStack;
|
||||||
import com.simibubi.create.AllBlocks;
|
|
||||||
import com.simibubi.create.Create;
|
import com.simibubi.create.Create;
|
||||||
import com.simibubi.create.compat.jei.category.animations.AnimatedSpout;
|
import com.simibubi.create.compat.jei.category.animations.AnimatedSpout;
|
||||||
import com.simibubi.create.content.contraptions.fluids.actors.FillingRecipe;
|
import com.simibubi.create.content.contraptions.fluids.actors.FillingRecipe;
|
||||||
|
@ -17,11 +16,13 @@ import com.simibubi.create.foundation.fluid.FluidIngredient;
|
||||||
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
import com.simibubi.create.foundation.gui.AllGuiTextures;
|
||||||
|
|
||||||
import mezz.jei.api.constants.VanillaTypes;
|
import mezz.jei.api.constants.VanillaTypes;
|
||||||
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
import mezz.jei.api.gui.ingredient.IRecipeSlotsView;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
import mezz.jei.api.recipe.RecipeIngredientRole;
|
import mezz.jei.api.recipe.RecipeIngredientRole;
|
||||||
import mezz.jei.api.runtime.IIngredientManager;
|
import mezz.jei.api.runtime.IIngredientManager;
|
||||||
|
import net.createmod.catnip.platform.CatnipServices;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Items;
|
import net.minecraft.world.item.Items;
|
||||||
|
@ -36,16 +37,15 @@ import net.minecraftforge.fluids.capability.IFluidHandlerItem;
|
||||||
@ParametersAreNonnullByDefault
|
@ParametersAreNonnullByDefault
|
||||||
public class SpoutCategory extends CreateRecipeCategory<FillingRecipe> {
|
public class SpoutCategory extends CreateRecipeCategory<FillingRecipe> {
|
||||||
|
|
||||||
private final AnimatedSpout spout;
|
private final AnimatedSpout spout = new AnimatedSpout();
|
||||||
|
|
||||||
public SpoutCategory() {
|
public SpoutCategory(Info<FillingRecipe> info) {
|
||||||
super(doubleItemIcon(AllBlocks.SPOUT.get(), Items.WATER_BUCKET), emptyBackground(177, 70));
|
super(info);
|
||||||
spout = new AnimatedSpout();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void consumeRecipes(Consumer<FillingRecipe> consumer, IIngredientManager ingredientManager) {
|
public static void consumeRecipes(Consumer<FillingRecipe> consumer, IIngredientManager ingredientManager) {
|
||||||
Collection<FluidStack> fluidStacks = ingredientManager.getAllIngredients(VanillaTypes.FLUID);
|
Collection<FluidStack> fluidStacks = ingredientManager.getAllIngredients(ForgeTypes.FLUID_STACK);
|
||||||
for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM)) {
|
for (ItemStack stack : ingredientManager.getAllIngredients(VanillaTypes.ITEM_STACK)) {
|
||||||
if (stack.getItem() instanceof PotionItem) {
|
if (stack.getItem() instanceof PotionItem) {
|
||||||
FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack);
|
FluidStack fluidFromPotionItem = PotionFluidHandler.getFluidFromPotionItem(stack);
|
||||||
Ingredient bottle = Ingredient.of(Items.GLASS_BOTTLE);
|
Ingredient bottle = Ingredient.of(Items.GLASS_BOTTLE);
|
||||||
|
@ -78,10 +78,8 @@ public class SpoutCategory extends CreateRecipeCategory<FillingRecipe> {
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Ingredient bucket = Ingredient.of(stack);
|
Ingredient bucket = Ingredient.of(stack);
|
||||||
ResourceLocation itemName = stack.getItem()
|
ResourceLocation itemName = CatnipServices.REGISTRIES.getKeyOrThrow(stack.getItem());
|
||||||
.getRegistryName();
|
ResourceLocation fluidName = CatnipServices.REGISTRIES.getKeyOrThrow(fluidCopy.getFluid());
|
||||||
ResourceLocation fluidName = fluidCopy.getFluid()
|
|
||||||
.getRegistryName();
|
|
||||||
consumer.accept(new ProcessingRecipeBuilder<>(FillingRecipe::new,
|
consumer.accept(new ProcessingRecipeBuilder<>(FillingRecipe::new,
|
||||||
Create.asResource("fill_" + itemName.getNamespace() + "_" + itemName.getPath()
|
Create.asResource("fill_" + itemName.getNamespace() + "_" + itemName.getPath()
|
||||||
+ "_with_" + fluidName.getNamespace() + "_" + fluidName.getPath()))
|
+ "_with_" + fluidName.getNamespace() + "_" + fluidName.getPath()))
|
||||||
|
@ -94,11 +92,6 @@ public class SpoutCategory extends CreateRecipeCategory<FillingRecipe> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Class<? extends FillingRecipe> getRecipeClass() {
|
|
||||||
return FillingRecipe.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setRecipe(IRecipeLayoutBuilder builder, FillingRecipe recipe, IFocusGroup focuses) {
|
public void setRecipe(IRecipeLayoutBuilder builder, FillingRecipe recipe, IFocusGroup focuses) {
|
||||||
builder
|
builder
|
||||||
|
@ -108,7 +101,7 @@ public class SpoutCategory extends CreateRecipeCategory<FillingRecipe> {
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.INPUT, 27, 32)
|
.addSlot(RecipeIngredientRole.INPUT, 27, 32)
|
||||||
.setBackground(getRenderedSlot(), -1, -1)
|
.setBackground(getRenderedSlot(), -1, -1)
|
||||||
.addIngredients(VanillaTypes.FLUID, withImprovedVisibility(recipe.getRequiredFluid().getMatchingFluidStacks()))
|
.addIngredients(ForgeTypes.FLUID_STACK, withImprovedVisibility(recipe.getRequiredFluid().getMatchingFluidStacks()))
|
||||||
.addTooltipCallback(addFluidTooltip(recipe.getRequiredFluid().getRequiredAmount()));
|
.addTooltipCallback(addFluidTooltip(recipe.getRequiredFluid().getRequiredAmount()));
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.OUTPUT, 132, 51)
|
.addSlot(RecipeIngredientRole.OUTPUT, 132, 51)
|
||||||
|
|
|
@ -11,7 +11,7 @@ import com.simibubi.create.content.contraptions.itemAssembly.SequencedRecipe;
|
||||||
import com.simibubi.create.foundation.fluid.FluidIngredient;
|
import com.simibubi.create.foundation.fluid.FluidIngredient;
|
||||||
import com.simibubi.create.foundation.utility.CreateLang;
|
import com.simibubi.create.foundation.utility.CreateLang;
|
||||||
|
|
||||||
import mezz.jei.api.constants.VanillaTypes;
|
import mezz.jei.api.forge.ForgeTypes;
|
||||||
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
import mezz.jei.api.gui.builder.IRecipeLayoutBuilder;
|
||||||
import mezz.jei.api.gui.builder.IRecipeSlotBuilder;
|
import mezz.jei.api.gui.builder.IRecipeSlotBuilder;
|
||||||
import mezz.jei.api.recipe.IFocusGroup;
|
import mezz.jei.api.recipe.IFocusGroup;
|
||||||
|
@ -73,7 +73,7 @@ public abstract class SequencedAssemblySubCategory {
|
||||||
builder
|
builder
|
||||||
.addSlot(RecipeIngredientRole.INPUT, x + 4, 15)
|
.addSlot(RecipeIngredientRole.INPUT, x + 4, 15)
|
||||||
.setBackground(CreateRecipeCategory.getRenderedSlot(), -1, -1)
|
.setBackground(CreateRecipeCategory.getRenderedSlot(), -1, -1)
|
||||||
.addIngredients(VanillaTypes.FLUID, CreateRecipeCategory.withImprovedVisibility(fluidIngredient.getMatchingFluidStacks()))
|
.addIngredients(ForgeTypes.FLUID_STACK, CreateRecipeCategory.withImprovedVisibility(fluidIngredient.getMatchingFluidStacks()))
|
||||||
.addTooltipCallback(CreateRecipeCategory.addFluidTooltip(fluidIngredient.getRequiredAmount()));
|
.addTooltipCallback(CreateRecipeCategory.addFluidTooltip(fluidIngredient.getRequiredAmount()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@ import com.simibubi.create.content.contraptions.fluids.actors.SpoutTileEntity;
|
||||||
import com.simibubi.create.foundation.config.AllConfigs;
|
import com.simibubi.create.foundation.config.AllConfigs;
|
||||||
import com.simibubi.create.foundation.fluid.FluidHelper;
|
import com.simibubi.create.foundation.fluid.FluidHelper;
|
||||||
|
|
||||||
|
import net.createmod.catnip.platform.CatnipServices;
|
||||||
import net.minecraft.core.BlockPos;
|
import net.minecraft.core.BlockPos;
|
||||||
import net.minecraft.core.Direction;
|
import net.minecraft.core.Direction;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
@ -40,8 +41,7 @@ public class SpoutCasting extends BlockSpoutingBehaviour {
|
||||||
if (handler.getTanks() != 1)
|
if (handler.getTanks() != 1)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
ResourceLocation registryName = te.getType()
|
ResourceLocation registryName = CatnipServices.REGISTRIES.getKeyOrThrow(te.getType());
|
||||||
.getRegistryName();
|
|
||||||
if (!registryName.equals(TABLE) && !registryName.equals(BASIN))
|
if (!registryName.equals(TABLE) && !registryName.equals(BASIN))
|
||||||
return 0;
|
return 0;
|
||||||
if (!handler.isFluidValid(0, availableFluid))
|
if (!handler.isFluidValid(0, availableFluid))
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue