From eab73d6b6a0e6b15c51e1c27832667ceb55a62dc Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 31 Oct 2026 04:28:38 +0000 Subject: [PATCH 01/10] Port Electric Advantage to Forge 1.17.1 --- .github/workflows/ci.yml | 49 +++-- .github/workflows/codeql-analysis.yml | 35 +-- .github/workflows/validate-gradle-build.yml | 4 +- CHANGELOG.txt | 11 + README.md | 191 ++++++++--------- build.gradle | 163 +++++++++----- docs/NATIVE117.md | 105 +++++++++ gradle.properties | 49 +++-- .../electricadvantage/ElectricAdvantage.java | 4 +- .../blocks/ElectricConduitBlock.java | 2 +- .../blocks/ElectricScaffoldBlock.java | 18 +- .../mc/electricadvantage/blocks/Ore.java | 33 ++- .../blocks/PumpPipeBlock.java | 40 ++-- .../common/IRechargeableItem.java | 2 +- .../compat/BaseMetalsCompat.java | 28 +-- .../config/ElectricAdvantageConfig.java | 4 +- .../entities/HydroturbineEntity.java | 51 ++--- .../graphics/BufferedQuads.java | 10 +- .../graphics/ClientRegistration.java | 32 ++- .../graphics/ElectricRenderTypes.java | 25 ++- .../graphics/HydroturbineRenderer.java | 42 ++-- .../graphics/LaserDrillRenderer.java | 23 +- .../graphics/LaserTurretRenderer.java | 21 +- .../electricadvantage/gui/ArcFurnaceGUI.java | 12 +- .../gui/BatteryArrayGUI.java | 2 +- .../gui/ElectricDrillGUI.java | 2 +- .../gui/ElectricPumpGUI.java | 2 +- .../gui/ElectricStillGUI.java | 2 +- .../electricadvantage/gui/FabricatorGUI.java | 12 +- .../mc/electricadvantage/gui/GUIHelper.java | 2 +- .../gui/GenericMachineGUI.java | 2 +- .../gui/GrowthChamberControllerGUI.java | 2 +- .../gui/GrowthChamberGUI.java | 2 +- .../mc/electricadvantage/gui/OvenGUI.java | 12 +- .../gui/PlasticRefineryGUI.java | 2 +- .../gui/PowerGeneratorGUI.java | 2 +- .../electricadvantage/gui/RockCrusherGUI.java | 2 +- .../mc/electricadvantage/init/Blocks.java | 8 +- .../mc/electricadvantage/init/Entities.java | 53 +++-- .../mc/electricadvantage/init/Items.java | 2 +- .../init/OreSpawnWorldGen.java | 2 +- .../mc/electricadvantage/init/Power.java | 2 +- .../mc/electricadvantage/init/Villages.java | 18 +- .../electricadvantage/items/BatteryItem.java | 34 +-- .../machines/ElectricBatteryArrayBlock.java | 6 +- .../ElectricBatteryArrayTileEntity.java | 14 +- .../machines/ElectricCrusherBlock.java | 6 +- .../machines/ElectricCrusherTileEntity.java | 26 +-- .../machines/ElectricDrillBlock.java | 64 +++--- .../machines/ElectricDrillTileEntity.java | 75 ++++--- .../machines/ElectricFabricatorBlock.java | 6 +- .../ElectricFabricatorTileEntity.java | 14 +- .../machines/ElectricFurnaceBlock.java | 6 +- .../machines/ElectricFurnaceTileEntity.java | 24 +-- .../machines/ElectricGeneratorBlock.java | 42 ++-- .../machines/ElectricGeneratorTileEntity.java | 58 ++--- .../machines/ElectricMachineBlock.java | 42 ++-- .../machines/ElectricMachineTileEntity.java | 82 +++---- .../machines/ElectricOvenBlock.java | 6 +- .../machines/ElectricOvenTileEntity.java | 16 +- .../machines/ElectricPumpBlock.java | 20 +- .../machines/ElectricPumpTileEntity.java | 45 ++-- .../machines/ElectricStillBlock.java | 6 +- .../machines/ElectricStillTileEntity.java | 30 +-- .../machines/GrowthChamberBlock.java | 8 +- .../GrowthChamberControllerBlock.java | 14 +- .../GrowthChamberControllerTileEntity.java | 34 +-- .../machines/GrowthChamberTileEntity.java | 16 +- .../machines/HydroelectricGeneratorBlock.java | 12 +- .../HydroelectricGeneratorTileEntity.java | 16 +- .../electricadvantage/machines/LEDBlock.java | 34 +-- .../machines/LEDTileEntity.java | 12 +- .../machines/LaserTurretBlock.java | 46 ++-- .../machines/LaserTurretTileEntity.java | 181 ++++++++-------- .../machines/PhotovoltaicGeneratorBlock.java | 14 +- .../PhotovoltaicGeneratorTileEntity.java | 22 +- .../machines/PlasticRefineryBlock.java | 4 +- .../machines/PlasticRefineryTileEntity.java | 28 +-- .../SteamPoweredElectricGeneratorBlock.java | 4 +- ...eamPoweredElectricGeneratorTileEntity.java | 16 +- .../migration/ElectricLegacyMigrations.java | 8 +- .../recipe/RecipeConditions.java | 6 +- .../util/crafting/ItemMatcher.java | 8 +- .../util/crafting/ItemRecord.java | 2 +- .../util/crafting/RecipeDeconstructor.java | 24 +-- .../util/crafting/SerializedInventory.java | 2 +- .../util/farming/VirtualCrop.java | 48 ++--- src/main/resources/META-INF/mods.toml | 4 +- .../shaders/core/unshaded.json | 15 ++ .../shaders/core/unshaded.vsh | 31 +++ .../tags/blocks/mineable/pickaxe.json | 4 + .../tags/blocks/needs_stone_tool.json | 4 + src/main/resources/pack.mcmeta | 2 +- .../blocks/NativeBlockContractTest.java | 48 ++--- .../blocks/OreHarvestContractTest.java | 87 ++++++-- ...tricOperationalHydroturbineAnchorTest.java | 66 +++--- .../entities/HydroturbinePersistenceTest.java | 28 +-- .../graphics/RendererBufferContractTest.java | 58 ++--- .../electricadvantage/init/VillagesTest.java | 12 +- .../ElectricDrillPersistenceTest.java | 42 ++-- .../ElectricOperationalNativeDefectsTest.java | 46 ++-- .../ElectricOperationalPumpPickupTest.java | 73 +++---- .../ElectricOperationalRedstoneCacheTest.java | 30 ++- ...ElectricOperationalSoundBroadcastTest.java | 76 +++---- .../ElectricOperationalStillCapacityTest.java | 8 +- .../GrowthChamberPersistenceTest.java | 17 +- .../machines/LaserTurretGeometryTest.java | 20 +- .../machines/Native117ConstructionTest.java | 63 ++++++ .../ElectricLegacyMigrationsTest.java | 2 +- .../BaseMetalsRawRecipeContractTest.java | 29 +++ .../resources/BlockLootResourceTest.java | 4 +- .../resources/BuildWorkflowContractTest.java | 23 +- .../resources/ShaderResourceContractTest.java | 34 +++ tools/verification/AuditedJUnit.java | 2 +- .../ForgeNativeTestBootstrap.java | 43 ++++ tools/verification/Verify-ElectricEcj.ps1 | 59 ++++-- .../negative/RestrictedJdkReference.java | 4 + tools/verify-native-port.js | 200 +++++++++++------- 118 files changed, 1991 insertions(+), 1409 deletions(-) create mode 100644 docs/NATIVE117.md create mode 100644 src/main/resources/assets/electricadvantage/shaders/core/unshaded.json create mode 100644 src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh create mode 100644 src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json create mode 100644 src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json create mode 100644 src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java create mode 100644 src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java create mode 100644 src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java create mode 100644 tools/verification/ForgeNativeTestBootstrap.java create mode 100644 tools/verification/negative/RestrictedJdkReference.java diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3275320..c121c20 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,16 +1,16 @@ -name: Electric Advantage 1.16 CI +name: Electric Advantage 1.17 CI on: push: - branches: [master-1.16.5, 'feature/**'] + branches: [master-1.17.1, 'feature/**'] pull_request: - branches: [master-1.16.5] + branches: [master-1.17.1] permissions: contents: read concurrency: - group: electricadvantage-1.16-${{ github.workflow }}-${{ github.ref }} + group: electricadvantage-1.17-${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: @@ -31,8 +31,9 @@ jobs: set -euo pipefail power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" - if [[ "$power_ref" != "bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7" || "$power_sha" != "2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386" ]]; then - echo "PowerAdvantage 1.16.5 source/deobf pin differs from the audited candidate" >&2 + pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "28247f936ac99e7a417da1bc1c89bc8394773a26" || "$power_sha" != "7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D" ]]; then + echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi echo "power_ref=$power_ref" >> "$GITHUB_OUTPUT" @@ -40,27 +41,32 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/OreSpawn - ref: a113e5d767169189f0e35ade1e173a12d550b00e + ref: b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf path: .ci-dependencies/OreSpawn - name: Check out pinned Base Metals uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/BaseMetals - ref: 995f6cc4dd2d5eecc628a42e5c43fa5390c24bca + ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d path: .ci-dependencies/BaseMetals - - name: Check out PowerAdvantage 1.16.5 + - name: Check out PowerAdvantage 1.17.1 uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/PowerAdvantage # Local-only Power source; publish upstream before hosted builds. - ref: bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7 + ref: ${{ steps.pins.outputs.power_ref }} path: .ci-dependencies/PowerAdvantage - name: Install pinned Java 25 Mavenizer runtime uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 with: distribution: temurin java-version: '25.0.3+9.0.LTS' - - name: Install Java 8 toolchain + - name: Install Java 16 production toolchain + uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 + with: + distribution: temurin + java-version: '16.0.2+7' + - name: Install Java 8 build utilities uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 with: distribution: temurin @@ -74,12 +80,12 @@ jobs: # These are Gradle project properties, not JVM system properties. shell: bash run: >- - echo "MMD_GRADLE_TOOLCHAINS=-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64 + echo "MMD_GRADLE_TOOLCHAINS=-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_16_X64,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64 -Porg.gradle.java.installations.auto-detect=false -Porg.gradle.java.installations.auto-download=false" >> "$GITHUB_ENV" - name: Set up Gradle uses: gradle/actions/setup-gradle@9c971963bec38e04b3d30dcc455b5382be2fdbfb # v6 - - name: Build 1.16.5 dependency chain + - name: Build 1.17.1 dependency chain id: dependencies shell: bash run: | @@ -90,12 +96,12 @@ jobs: chmod +x "$orespawn/gradlew" "$basemetals/gradlew" "$power/gradlew" (cd "$orespawn" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) (cd "$basemetals" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) - osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.116051-deobf.jar" - bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.1.116051-deobf.jar" + osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.117011-deobf.jar" + bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.0.117011-deobf.jar" (cd "$power" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar verifyReleaseDependencies \ -PbaseMetalsDeobfJar="$bmjar" -PoreSpawnDeobfJar="$osjar" \ --no-daemon --stacktrace) - powerjar="$power/build/libs-dev/PowerAdvantage-2.4.7.116051-deobf.jar" + powerjar="$power/build/libs-dev/PowerAdvantage-2.4.8.117011-deobf.jar" test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" @@ -106,6 +112,7 @@ jobs: ./gradlew $MMD_GRADLE_TOOLCHAINS clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath -PpowerAdvantageDeobfJar=${{ steps.dependencies.outputs.power }} + -PpowerAdvantageUnitBootstrapSource=${{ github.workspace }}/.ci-dependencies/PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java -Ppoweradvantage_source_ref=${{ steps.dependencies.outputs.power_ref }} -PbaseMetalsDeobfJar=${{ steps.dependencies.outputs.basemetals }} -PoreSpawnDeobfJar=${{ steps.dependencies.outputs.orespawn }} @@ -113,20 +120,20 @@ jobs: - name: Upload audited release candidate uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: ElectricAdvantage-1.16.5-${{ github.sha }} + name: ElectricAdvantage-1.17.1-${{ github.sha }} if-no-files-found: error retention-days: 30 path: | - build/libs/ElectricAdvantage-2.2.8.116051.jar - build/libs/ElectricAdvantage-2.2.8.116051-sources.jar - build/libs/ElectricAdvantage-2.2.8.116051-javadoc.jar + build/libs/ElectricAdvantage-2.2.9.117011.jar + build/libs/ElectricAdvantage-2.2.9.117011-sources.jar + build/libs/ElectricAdvantage-2.2.9.117011-javadoc.jar build/release/SHA256SUMS CHANGELOG.txt - name: Upload diagnostics on failure if: failure() uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: ElectricAdvantage-1.16.5-diagnostics-${{ github.sha }} + name: ElectricAdvantage-1.17.1-diagnostics-${{ github.sha }} if-no-files-found: ignore retention-days: 14 path: | diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index ac3e2db..981cb57 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -2,9 +2,9 @@ name: CodeQL on: push: - branches: [master-1.16.5, 'feature/**'] + branches: [master-1.17.1, 'feature/**'] pull_request: - branches: [master-1.16.5] + branches: [master-1.17.1] schedule: - cron: '59 7 * * 4' @@ -31,8 +31,9 @@ jobs: set -euo pipefail power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" - if [[ "$power_ref" != "bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7" || "$power_sha" != "2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386" ]]; then - echo "PowerAdvantage 1.16.5 source/deobf pin differs from the audited candidate" >&2 + pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "28247f936ac99e7a417da1bc1c89bc8394773a26" || "$power_sha" != "7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D" ]]; then + echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi echo "power_ref=$power_ref" >> "$GITHUB_OUTPUT" @@ -40,27 +41,32 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/OreSpawn - ref: a113e5d767169189f0e35ade1e173a12d550b00e + ref: b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf path: .ci-dependencies/OreSpawn - name: Check out pinned Base Metals uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/BaseMetals - ref: 995f6cc4dd2d5eecc628a42e5c43fa5390c24bca + ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d path: .ci-dependencies/BaseMetals - - name: Check out PowerAdvantage 1.16.5 + - name: Check out PowerAdvantage 1.17.1 uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/PowerAdvantage # Local-only Power source; publish upstream before hosted builds. - ref: bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7 + ref: ${{ steps.pins.outputs.power_ref }} path: .ci-dependencies/PowerAdvantage - name: Install pinned Java 25 Mavenizer runtime uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 with: distribution: temurin java-version: '25.0.3+9.0.LTS' - - name: Install Java 8 toolchain + - name: Install Java 16 production toolchain + uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 + with: + distribution: temurin + java-version: '16.0.2+7' + - name: Install Java 8 build utilities uses: actions/setup-java@b6effb05e454b25005698d916606bdc6ffcbf961 # v5 with: distribution: temurin @@ -74,12 +80,12 @@ jobs: # These are Gradle project properties, not JVM system properties. shell: bash run: >- - echo "MMD_GRADLE_TOOLCHAINS=-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64 + echo "MMD_GRADLE_TOOLCHAINS=-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_16_X64,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64 -Porg.gradle.java.installations.auto-detect=false -Porg.gradle.java.installations.auto-download=false" >> "$GITHUB_ENV" - name: Set up Gradle uses: gradle/actions/setup-gradle@9c971963bec38e04b3d30dcc455b5382be2fdbfb # v6 - - name: Build 1.16.5 dependency chain + - name: Build 1.17.1 dependency chain id: dependencies shell: bash run: | @@ -90,12 +96,12 @@ jobs: chmod +x "$orespawn/gradlew" "$basemetals/gradlew" "$power/gradlew" (cd "$orespawn" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) (cd "$basemetals" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) - osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.116051-deobf.jar" - bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.1.116051-deobf.jar" + osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.117011-deobf.jar" + bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.0.117011-deobf.jar" (cd "$power" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar verifyReleaseDependencies \ -PbaseMetalsDeobfJar="$bmjar" -PoreSpawnDeobfJar="$osjar" \ --no-daemon --stacktrace) - powerjar="$power/build/libs-dev/PowerAdvantage-2.4.7.116051-deobf.jar" + powerjar="$power/build/libs-dev/PowerAdvantage-2.4.8.117011-deobf.jar" test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" @@ -105,6 +111,7 @@ jobs: uses: github/codeql-action/init@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4 with: languages: java-kotlin + build-mode: manual - name: Compile ElectricAdvantage production code run: | chmod +x ./gradlew diff --git a/.github/workflows/validate-gradle-build.yml b/.github/workflows/validate-gradle-build.yml index fc66575..0bf04b8 100644 --- a/.github/workflows/validate-gradle-build.yml +++ b/.github/workflows/validate-gradle-build.yml @@ -3,11 +3,11 @@ name: Validate Gradle Wrapper on: push: branches: - - master-1.16.5 + - master-1.17.1 - 'feature/**' pull_request: branches: - - master-1.16.5 + - master-1.17.1 permissions: contents: read diff --git a/CHANGELOG.txt b/CHANGELOG.txt index fc7cb5b..6f3dd5c 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,3 +1,14 @@ +Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 port candidate (local, unqualified) + +- Target Forge 37.1.1, official mappings, Java 16 production bytecode and FG7. +- Carry native machine position/state through factories, persistence and drill movement. +- Port native helper ticking, hydroturbine removal/link restoration and renderer registration. +- Retain laser geometry, NBT identities, recipes, machine constants and 1.16 regression tests. +- Use native ore harvest tags and bucket pickup, including waterlogged sources. +- Pass 95 Gradle/JUnit and 95 independent ECJ/JUnit tests plus local artifact/Eclipse audits against the pinned Power checkpoint. +- Combined packaged runtime, migration and manual acceptance remain pending; no Electric commit has been approved yet. +- No port-code push, pull request, merge, tag or release before manual testing. + Electric Advantage 2.2.8.116051 (local port candidate) - Check generator redstone before the first power pulse so a disabled solar panel cannot produce a startup burst. diff --git a/README.md b/README.md index caf01a4..489d712 100644 --- a/README.md +++ b/README.md @@ -1,114 +1,109 @@ # Electric Advantage -**Minecraft 1.16.5 source port candidate, version 2.2.8.116051.** -The follow-up checks measure finite machine jobs, energy and fluid conservation, -blocked routes, real turret hits and full-process restarts. Rendered GUI checks -require the correct labels as well as correctly placed controls. The shared -record below identifies the current jars and each completed run; earlier -results are retained separately rather than counted again. Broader player/entity -checks retain a separately controlled vanilla wolf-health difference. -Manual acceptance is pending. This is not a published release. -See [the native port checklist](docs/NATIVE116.md). -The [shared test record](https://github.com/MinecraftModDevelopmentMods/PowerAdvantage/blob/master-1.16.5/docs/1.16/CURRENT-QUALIFICATION.md) -records the exact jars, completed checks and remaining limits. -The [accepted 1.15 record](https://github.com/MinecraftModDevelopmentMods/PowerAdvantage/blob/master-1.15.2/docs/1.15/CURRENT-QUALIFICATION.md) -is a behavior reference, not evidence that this target passes. - -Electric Advantage adds electric machines, generation, storage, automation, -and defence to Power Advantage for Minecraft 1.16.5. - -## Build Target - -The build targets Forge `36.2.34`, official `1.16.5` mappings and MCP -`20210115.111550`, using ForgeGradle `7.0.34`, Renamer `1.1.5` and Gradle -`9.6.1`. Run Gradle with Temurin `17.0.1+12`; production code and Minecraft -use Temurin `8.0.502+7`. Mavenizer needs Temurin `25.0.3+9.0.LTS`, including -on a cold cache. CI registers all three JDK paths and disables toolchain -inference and downloads. - -Build inputs are separate, non-embedded deobfuscated jars: - -- Power Advantage `2.4.7.116051`: source `bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7`. -- Base Metals `3.1.1.116051`: source `995f6cc4dd2d5eecc628a42e5c43fa5390c24bca`. -- OreSpawn `4.1.0.116051`: source `a113e5d767169189f0e35ade1e173a12d550b00e`. - -Exact checksums are recorded in `gradle.properties`. Power deobf SHA-256 is -`2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386`. -The pinned Power source is available upstream. Do not bypass the release audits -or substitute a preliminary jar. -Use immutable copies for verification, not a sibling's output that another -build may replace. CI rejects pins that differ from this audited candidate. - -With the pinned dependency jars available, pass their paths and run: +Electric machines, generation, storage, automation and defence for Power Advantage. + +This is the independent **Minecraft 1.17.1 port candidate, 2.2.9.117011**. +It is local work, not a published release. Manual acceptance is pending. +No port-code push, pull request, merge, tag or release is approved before manual testing. + +## Target + +- Forge `37.1.1`, official `1.17.1` mappings, MCP `20210706.113038`. +- ForgeGradle `7.0.34`, Renamer `1.1.5`, Gradle `9.6.1`. +- Java 17 runs Gradle; Java 25 runs Mavenizer. Production and tests use + Java `16.0.2+7`, class major `60`. Java 8 is only for old dependency build utilities. +- Production artifact: `build/libs/ElectricAdvantage-2.2.9.117011.jar`. + The separate deobfuscated API artifact stays under `build/libs-dev`. + +Power Advantage is required. Base Metals remains optional in Forge metadata; +the existing required CurseForge installation relationship and ordering are unchanged. +Power, Base Metals and OreSpawn are separate dependencies, never embedded. + +## Current State + +The source and resource migration is prepared. The source inventory is 85 production +files and 27 test files containing 95 tests: all 89 inherited tests plus six native +construction, shader and dependency-recipe checks. + +On 31 October 2026 the complete local deterministic build passed all 95 JUnit +tests, Javadocs, dependency/resource/artifact audits, checksums and Eclipse +production isolation checks. Independent ECJ compilation and all 95 tests also +passed on Java 16, with no ignored tests or assumptions; its restricted-JDK +negative control failed for the expected access error. + +These results use the parent's local checkpoint, not a final combined release: +Power Advantage `2.4.8.117011`, source `28247f936ac99e7a417da1bc1c89bc8394773a26`, +API SHA-256 `7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D`. +The metadata records `LOCAL_CHECKPOINT`; any coordinated re-pin needs fresh proof. +Earlier `API_PIN_PROVISIONAL` results are retained separately. A 1.16.5 Power jar +is never accepted. Combined packaged runtime, migration and manual gameplay +acceptance remain pending, as does approval for an Electric local commit. +Prepared CI has not been run on a hosted service. + +See [the native port notes](docs/NATIVE117.md) for the API audit and remaining gates. +The retained [1.16 notes](docs/NATIVE116.md) describe the previous target, not proof +that this one passes. + +## Dependencies + +Base Metals `3.1.0.117011` is built for the development API from public source +`dacfaa3af2e3310d5cb6b081da79f09260ae103d`. +OreSpawn `4.1.0.117011` uses public source +`b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf`. +Exact API and public-runtime SHA-256 values are recorded separately in +`gradle.properties`. Published runtime jars, not unpublished dependency builds, +must be used for packaged qualification. + +For this local coordinated campaign, every Gradle invocation must go through +`D:/PowerAdvantage/_verification/advantage-117-port-20261031/Invoke-Gradle117.ps1`. +It holds the exclusive `gradle-shared.lease` and uses +`D:/GradleCaches/advantage-117-20261031`. Do not bypass the helper, delete caches, +overwrite evidence, or build against another module's mutable output. + +The required local deterministic tasks are: ```text -gradlew.bat classes test deobfJar -PpowerAdvantageDeobfJar= -PbaseMetalsDeobfJar= -PoreSpawnDeobfJar= +clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath ``` -The complete deterministic release gates are: - -```text -gradlew.bat clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath -``` - -These gates passed locally on 27 October 2026 against the pinned inputs, -with all 47 tests rerun and no build-cache reuse. The independent ECJ -run also passed all 47 tests on Java 8. These results do not replace packaged client/server tests, -disposable-world migration checks or manual acceptance. -Do not run another build concurrently against a shared Gradle cache. +Pass the exact immutable paths with `-PpowerAdvantageDeobfJar`, +`-PbaseMetalsDeobfJar` and `-PoreSpawnDeobfJar` through the helper's `Extra` argument. +Tests use the parent's hash-checked, build-only Forge capability bootstrap source +through `-PpowerAdvantageUnitBootstrapSource`. Electric's build-only wrapper also +runs Forge's event-bus plugin for the native tier/harvest checks. Neither replaces +capability tokens or events, and neither is included in production jars. +Independent ECJ verification uses `tools/verification/Verify-ElectricEcj.ps1` +after Gradle has produced a fresh classpath, unit bootstrap jar and complete test inventory. Static checks need no Gradle or game launch: ```text -node tools/verify-native-port.js --report build/native-port-static.json +node tools/verify-native-port.js --report build/native117-static-unique.json node tools/generate-recipe-unlocks.js --check ``` -The static contract compares resources, identity strings and numeric constants -with accepted source `74aa1cee1ddec821ebcd12b9f8b0515b7aec61d9`. Its reports are -not compilation, gameplay or migration results. - -## Eclipse - -Import this repository as an existing Gradle project. Once dependencies and -build access are available, run `cleanEclipse verifyEclipseProductionClasspath`. -Eclipse mod discovery uses `bin/main`; command-line launches use -`build/forge-run-mod-classes/main`. The production classpath audit checks those -paths and excludes test output. - -The Eclipse resource root is `build/resources/main`, so its builder copies -expanded metadata. After resource or version edits, process resources before -launching. Do not add raw source metadata to the production classpath. +Use a new report name on each run. The static comparison is against the merged +1.16.5 baseline `c5c8c9ea1d6f2010b8cff61e4bfae86f4c96c978`. It does not prove +compilation, native ticking, shader compilation or migration safety. ## Compatibility -The implementation namespace remains `zone.moddev.mc.electricadvantage`. -Runtime registries, legacy aliases, tile/entity IDs, NBT keys, recipe IDs, -ratios, tags, OreSpawn provider IDs and assets are retained. Electric uses -Power Advantage's shared migration hook, dimension-key network registry, -capability adapters and native lifecycle contracts. It does not create -synthetic numeric dimension IDs or a second capability implementation. - -All 46 crafting variants and four smelting recipes retain ingredient-triggered -recipe-book discoveries. The eight Base Metals crushing recipes are not -crafting-book entries. Regenerate unlocks only after an intentional recipe -change; `check` audits their coverage and criteria. - -Base Metals remains optional in Forge metadata; CurseForge's existing required -installation relationship is unchanged. Typed integration uses the matching -Base Metals and OreSpawn APIs without embedding either mod. - -The RF- and Tech Reborn-labelled converters belong to Power Advantage and use -Forge Energy. Check live rendering, GUI interaction, sound, weapons, -hydroturbine orientation and animation, multiplayer and real player login in -game. Automated tag, machine and upgrade checks do not replace that walkthrough. -No 1.16 publication is included before manual acceptance. - -Always back up a whole world before upgrading and test only disposable copies. -Keep migration backups and failed evidence. Bounded Advantage results never -qualify unrelated mods or an arbitrary existing modpack. - -The shared [machine operating checks](https://github.com/MinecraftModDevelopmentMods/PowerAdvantage/blob/master-1.16.5/docs/1.16/OPERATING-TESTS.md) -exercise finite processing, fabrication, growth, pumping, lighting, generation, -battery and turret jobs. They check real output, damage and resource use, with -blocked and starved controls and complete server restarts. +The implementation namespace remains `zone.moddev.mc.electricadvantage` and the +legacy `cyano.poweradvantage.api` integration is retained. Mod ID, asset paths, +registries, aliases, entity IDs, NBT keys and OreSpawn provider IDs stay stable. +Native constructors carry each machine's real position and block state, including +moving drills. Numeric machine constants and existing recipes are unchanged. + +All 46 crafting variants and four smelting recipes retain their recipe-book +unlocks. The eight Base Metals crushing recipes remain non-crafting entries. +The crusher continues to consume the real Base Metals recipe implementation; +no replacement raw-metal conversion or balance change is introduced. + +Eclipse imports use the Gradle wrapper, processed resources and production-only +launches. Generate metadata through `verifyEclipseProductionClasspath`; do not +hand-edit generated classpaths or disable restricted-reference tests. + +Test only disposable copies of worlds. Preserve originals, backups, failed +receipts and version-specific checkouts. Manual GUI interaction and captions, +hydroturbine animation, sound, multiplayer, weapons and player/entity behavior +remain separate acceptance gates. diff --git a/build.gradle b/build.gradle index 85a70eb..da7f495 100644 --- a/build.gradle +++ b/build.gradle @@ -44,7 +44,7 @@ ext.release_tag = project.mod_version java { toolchain { - languageVersion = JavaLanguageVersion.of(8) + languageVersion = JavaLanguageVersion.of(16) vendor = JvmVendorSpec.ADOPTIUM } withSourcesJar() @@ -53,15 +53,52 @@ java { tasks.withType(JavaCompile).configureEach { javaCompiler = javaToolchains.compilerFor { - languageVersion = JavaLanguageVersion.of(8) + languageVersion = JavaLanguageVersion.of(16) vendor = JvmVendorSpec.ADOPTIUM } - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_16 + targetCompatibility = JavaVersion.VERSION_16 options.encoding = 'UTF-8' options.compilerArgs.addAll(['-Xmaxerrs', '1000']) } +def unitBootstrapSource = file(providers.gradleProperty('powerAdvantageUnitBootstrapSource') + .getOrElse('../../PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java')) +def compileUnitBootstrap = tasks.register('compileUnitBootstrap', JavaCompile) { + source unitBootstrapSource, file('tools/verification/ForgeNativeTestBootstrap.java') + classpath = files() + destinationDirectory = layout.buildDirectory.dir('unit-bootstrap/classes') + inputs.property('approvedSourceSha256', project.poweradvantage_unit_bootstrap_sha256) + doFirst { + String hash = MessageDigest.getInstance('SHA-256').digest(unitBootstrapSource.bytes) + .encodeHex().toString().toUpperCase() + if (hash != project.poweradvantage_unit_bootstrap_sha256) { + throw new GradleException('Verified native capability bootstrap source changed') + } + } +} +def unitBootstrapJar = tasks.register('unitBootstrapJar', Jar) { + dependsOn compileUnitBootstrap + archiveFileName = 'forge-native-unit-bootstrap.jar' + destinationDirectory = layout.buildDirectory.dir('unit-bootstrap') + from compileUnitBootstrap.flatMap { it.destinationDirectory } + manifest.attributes('Premain-Class': 'zone.moddev.mc.electricadvantage.verification.ForgeNativeTestBootstrap') +} + +tasks.named('test', Test) { + dependsOn unitBootstrapJar + doFirst { jvmArgs "-javaagent:${unitBootstrapJar.get().archiveFile.get().asFile}" } + javaLauncher = javaToolchains.launcherFor { + languageVersion = JavaLanguageVersion.of(16) + vendor = JvmVendorSpec.ADOPTIUM + } + afterSuite { descriptor, result -> + if (!descriptor.parent && (result.testCount != 95 || result.skippedTestCount != 0)) { + throw new GradleException("Expected 95 tests with no skips, got ${result.testCount} tests and ${result.skippedTestCount} skips") + } + } +} + tasks.withType(Javadoc).configureEach { failOnError = false options.encoding = 'UTF-8' @@ -94,20 +131,13 @@ minecraft { def forgeRunModClassesDirectory = layout.buildDirectory.dir('forge-run-mod-classes/main') def forgeMainOutputPath = forgeRunModClassesDirectory.get().asFile.absolutePath def mainModClasses = "${mod_id}%%${forgeMainOutputPath}${File.pathSeparator}${mod_id}%%${forgeMainOutputPath}" - def forge36RunTargets = [client: 'fmluserdevclient', server: 'fmluserdevserver', data: 'fmluserdevdata'] runs { configureEach { - mainClass = 'net.minecraftforge.userdev.LaunchTesting' workingDir.convention layout.projectDirectory.dir(configuredRunDirectory) + jvmArgs '--add-opens', 'java.base/java.lang.invoke=ALL-UNNAMED' systemProperty 'forge.logging.markers', 'REGISTRIES' systemProperty 'forge.logging.console.level', 'info' mods { electricadvantage { source sourceSets.main } } - environment 'target', forge36RunTargets[name] - environment 'MCP_MAPPINGS', "${mapping_channel}_${mapping_version}" - environment 'MCP_VERSION', mcp_version - environment 'FORGE_VERSION', forge_version - environment 'FORGE_GROUP', 'net.minecraftforge' - environment 'MC_VERSION', minecraft_version environment 'MOD_CLASSES', mainModClasses } register('client') @@ -130,7 +160,7 @@ sourceSets.main.resources { def forgeRunModClassesDirectory = layout.buildDirectory.dir('forge-run-mod-classes/main') def prepareForgeRunModClasses = tasks.register('prepareForgeRunModClasses', Sync) { group = 'ide' - description = 'Merges classes and processed resources for Forge 1.16 launches.' + description = 'Merges classes and processed resources for Forge 1.17 launches.' dependsOn tasks.named('classes') from sourceSets.main.output into forgeRunModClassesDirectory @@ -165,6 +195,13 @@ repositories { // but the retired MMD Maven cannot provide a dependable deobfuscated artifact. // Local builds use the sibling FG7 output; CI supplies the same pinned jar via // -PpowerAdvantageDeobfJar after building the audited upstream commit. + +if (!project.poweradvantage_version || (!project.poweradvantage_source_ref + && project.poweradvantage_pin_state != 'API_PIN_PROVISIONAL') + || !project.poweradvantage_deobf_sha256 || !project.basemetals_deobf_sha256 + || !project.orespawn_deobf_sha256) { + throw new GradleException('The parent has not yet pinned the coordinated 1.17.1 development APIs') +} def defaultPowerAdvantageDeobfJar = file("../../PowerAdvantage/build/libs-dev/" \ + "PowerAdvantage-${project.poweradvantage_version}-deobf.jar") def powerAdvantageDeobfJar = providers.gradleProperty('powerAdvantageDeobfJar') @@ -178,18 +215,26 @@ if (!powerAdvantageDeobfJar.isFile()) { // These defaults follow the sibling MMD checkout layout. They are constants // here so another developer can override them without editing the script. def baseMetalsDeobfJar = file(providers.gradleProperty('baseMetalsDeobfJar') - .getOrElse('../../../../BaseMetals/BaseMetals 116/BaseMetals/build/libs-dev/' - + 'BaseMetals-3.1.1.116051-deobf.jar')) + .getOrElse('../../../../BaseMetals/BaseMetals 117/BaseMetals/build/libs-dev/' + + 'BaseMetals-3.1.0.117011-deobf.jar')) if (!baseMetalsDeobfJar.isFile()) { throw new GradleException("Missing Base Metals deobf jar at ${baseMetalsDeobfJar}. " - + "Build Base Metals 1.16 first, or pass -PbaseMetalsDeobfJar=.") + + "Pass the coordinated 1.17.1 API with -PbaseMetalsDeobfJar=.") } def oreSpawnDeobfJar = file(providers.gradleProperty('oreSpawnDeobfJar') - .getOrElse('../../../../MinecraftMineralogy/OS116/OreSpawn/build/libs-dev/' - + 'OreSpawn-4.1.0.116051-deobf.jar')) + .getOrElse('../../../../MinecraftMineralogy/OS117/OreSpawn/build/libs-dev/' + + 'OreSpawn-4.1.0.117011-deobf.jar')) if (!oreSpawnDeobfJar.isFile()) { throw new GradleException("Missing OreSpawn deobf jar at ${oreSpawnDeobfJar}. " - + "Build OreSpawn 1.16 first, or pass -PoreSpawnDeobfJar=.") + + "Pass the coordinated 1.17.1 API with -PoreSpawnDeobfJar=.") +} + +[(powerAdvantageDeobfJar): project.poweradvantage_deobf_sha256, + (baseMetalsDeobfJar): project.basemetals_deobf_sha256, + (oreSpawnDeobfJar): project.orespawn_deobf_sha256].each { artifact, approvedHash -> + String actual = MessageDigest.getInstance('SHA-256').digest(artifact.bytes) + .encodeHex().toString().toUpperCase() + if (actual != approvedHash) throw new GradleException("API input changed: ${artifact}") } dependencies { @@ -249,6 +294,7 @@ tasks.named('jar', Jar) { 'Implementation-Title' : base.archivesName.get(), 'Implementation-Version': project.version, 'Implementation-Vendor' : project.mod_authors, + 'API-Pin-State' : project.poweradvantage_pin_state, 'Built-On-Java' : project.java_version, 'Built-On' : "${project.minecraft_version}-${project.forge_version}" ]) @@ -281,6 +327,7 @@ def releaseJar = tasks.register('releaseJar', Jar) { 'Implementation-Title' : base.archivesName.get(), 'Implementation-Version': project.version, 'Implementation-Vendor' : project.mod_authors, + 'API-Pin-State' : project.poweradvantage_pin_state, 'Built-On-Java' : project.java_version, 'Built-On' : "${project.minecraft_version}-${project.forge_version}" ]) @@ -341,22 +388,25 @@ tasks.register('verifyReleaseConfiguration') { group = 'verification' description = 'Validates release identity, target metadata, and dependency policy.' doLast { - if (new JsonSlurper().parse(file('src/main/resources/pack.mcmeta')).pack.pack_format != 6) { - throw new GradleException('Minecraft 1.16.5 resources must use pack format 6') + if (project.poweradvantage_pin_state == 'API_PIN_PROVISIONAL') { + throw new GradleException('API_PIN_PROVISIONAL: source freeze and release qualification are pending') } - if (project.mod_version != '2.2.8.116051') { + if (new JsonSlurper().parse(file('src/main/resources/pack.mcmeta')).pack.pack_format != 7) { + throw new GradleException('Minecraft 1.17.1 resources must use pack format 7') + } + if (project.mod_version != '2.2.9.117011') { throw new GradleException("Unexpected ElectricAdvantage release version: ${project.mod_version}") } - if (project.minecraft_version != '1.16.5' - || project.forge_version != '36.2.34' + if (project.minecraft_version != '1.17.1' + || project.forge_version != '37.1.1' || project.mapping_channel != 'official' - || project.mapping_version != '1.16.5' - || project.mcp_version != '20210115.111550') { + || project.mapping_version != '1.17.1' + || project.mcp_version != '20210706.113038') { throw new GradleException('Unexpected Minecraft, Forge, or mappings target') } if (project.loader_name != 'forge' || project.loader_code != '1' - || project.java_version != '8' - || project.java_toolchain_version != '8.0.502+7' + || project.java_version != '16' + || project.java_toolchain_version != '16.0.2+7' || project.gradle_java_version != '17') { throw new GradleException('Unexpected release dispatcher target metadata') } @@ -369,36 +419,36 @@ tasks.register('verifyReleaseConfiguration') { } if (project.cf_requirements != 'power-advantage,base-metals' || project.cf_optionals != '' - || project.cf_versions != '1.16.5') { + || project.cf_versions != '1.17.1') { throw new GradleException('Unexpected CurseForge dependency or game-version metadata') } if (!project.poweradvantage_source_ref || !project.poweradvantage_deobf_sha256) { - throw new GradleException('PowerAdvantage 1.16.5 final source and deobf SHA-256 pins are pending') + throw new GradleException('PowerAdvantage 1.17.1 final source and deobf SHA-256 pins are pending') } - if (project.poweradvantage_version != '2.4.7.116051' + if (project.poweradvantage_version != '2.4.8.117011' || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/PowerAdvantage' - || project.poweradvantage_source_ref != 'bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7' - || project.poweradvantage_deobf_sha256 != '2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386') { + || project.poweradvantage_source_ref != '28247f936ac99e7a417da1bc1c89bc8394773a26' + || project.poweradvantage_deobf_sha256 != '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D') { throw new GradleException('Unexpected PowerAdvantage compile dependency identity') } - if (project.basemetals_version != '3.1.1.116051' - || project.orespawn_version != '4.1.0.116051' - || project.basemetals_source_commit != '995f6cc4dd2d5eecc628a42e5c43fa5390c24bca' - || project.orespawn_source_commit != 'a113e5d767169189f0e35ade1e173a12d550b00e' - || project.basemetals_deobf_sha256 != 'A7B0C4F394DFAF4E11E0275B1A86CB1D47C7AF8E175759D9BB84F965C684466D' - || project.orespawn_deobf_sha256 != 'DCEE75480C9DD70EE58B218AAE799C5FAB0525DAF9A05455270F1570C24F7F8F' - || project.forge_installer_sha256 != '53B73DBBCC486F38726E76CE923B13381044984C83C762847C7193340F97130F') { + if (project.basemetals_version != '3.1.0.117011' + || project.orespawn_version != '4.1.0.117011' + || project.basemetals_source_commit != 'dacfaa3af2e3310d5cb6b081da79f09260ae103d' + || project.orespawn_source_commit != 'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf' + || project.basemetals_deobf_sha256 != '4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA' + || project.orespawn_deobf_sha256 != 'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39' + || project.forge_installer_sha256 != '31F2319B1B9CA491AACCC020887240F8524A4FF2A8E0F8B795E17E889CBC043B') { throw new GradleException('Unexpected native dependency pins') } String mainSource = file( 'src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java').getText('UTF-8') if (!mainSource.contains('MODID = "electricadvantage"') - || !mainSource.contains('VERSION = "2.2.8.116051"')) { + || !mainSource.contains('VERSION = "2.2.9.117011"')) { throw new GradleException('ElectricAdvantage source identity changed') } String metadata = file('src/main/resources/META-INF/mods.toml').getText('UTF-8').replace('\r\n', '\n') ['modId="electricadvantage"', 'modId="poweradvantage"', 'modId="basemetals"', - 'versionRange="[2.4.7.116051,3.0.0)"'].each { marker -> + 'versionRange="[2.4.8.117011,3.0.0)"'].each { marker -> if (!metadata.contains(marker)) { throw new GradleException("Source mods.toml is missing ${marker}") } @@ -432,7 +482,7 @@ tasks.register('verifyReleaseDependencies') { } def manifest = new Manifest(zip.getInputStream(zip.getEntry('META-INF/MANIFEST.MF'))).mainAttributes if (manifest.getValue('Implementation-Version') != project.poweradvantage_version - || manifest.getValue('Built-On') != '1.16.5-36.2.34') { + || manifest.getValue('Built-On') != '1.17.1-37.1.1') { throw new GradleException('PowerAdvantage dependency manifest has the wrong version') } } @@ -561,8 +611,8 @@ tasks.register('verifyReleaseArtifacts') { } } int major = ((header[6] & 0xff) << 8) | (header[7] & 0xff) - if (major != 52) { - throw new GradleException("${entry.name} uses Java class major ${major}, expected 52") + if (major != 60) { + throw new GradleException("${entry.name} uses Java class major ${major}, expected 60") } } } @@ -915,6 +965,12 @@ tasks.register('verifyEclipseProductionClasspath') { throw new GradleException('Eclipse output contains incorrect mod metadata') } def eclipseClasspath = new groovy.xml.XmlSlurper().parse(file('.classpath')) + def productionJre = eclipseClasspath.classpathentry.findAll { + it.@kind.text() == 'con' && it.@path.text().startsWith('org.eclipse.jdt.launching.JRE_CONTAINER/') + } + if (productionJre.size() != 1 || productionJre[0].@path.text().tokenize('/').last() != 'JavaSE-16') { + throw new GradleException('Eclipse production JRE must be JavaSE-16') + } def processedResources = eclipseClasspath.classpathentry.findAll { it.@kind.text() == 'src' && it.@path.text() == 'build/resources/main' } @@ -988,10 +1044,19 @@ tasks.register('verifyEclipseProductionClasspath') { throw new GradleException( "${name} does not preserve the Forge bootstrap classpath order") } - if (contents.contains('${MC_VERSION}') || launch.mapAttribute.find { - it.@key.text() == 'org.eclipse.debug.core.environmentVariables' - }.mapEntry.find { it.@key.text() == 'MC_VERSION' }.@value.text() != project.minecraft_version) { - throw new GradleException("${name} does not define a literal Minecraft version") + String programArguments = launch.stringAttribute.find { + it.@key.text() == 'org.eclipse.jdt.launching.PROGRAM_ARGUMENTS' + }.@value.text() + String vmArguments = launch.stringAttribute.find { + it.@key.text() == 'org.eclipse.jdt.launching.VM_ARGUMENTS' + }.@value.text() + if (contents.contains('${MC_VERSION}') + || !programArguments.contains('--main cpw.mods.bootstraplauncher.BootstrapLauncher') + || !programArguments.contains("--fml.mcVersion ${project.minecraft_version}") + || !programArguments.contains("--fml.forgeVersion ${project.forge_version}") + || !programArguments.contains("--fml.mcpVersion ${project.mcp_version}") + || !vmArguments.contains('--add-opens java.base/java.lang.invoke=ALL-UNNAMED')) { + throw new GradleException("${name} does not define the native Forge 37 bootstrap and literal target versions") } } } diff --git a/docs/NATIVE117.md b/docs/NATIVE117.md new file mode 100644 index 0000000..32a0073 --- /dev/null +++ b/docs/NATIVE117.md @@ -0,0 +1,105 @@ +# Electric Advantage 1.17.1 Port + +Status: locally verified against Power source/API checkpoint +`28247f936ac99e7a417da1bc1c89bc8394773a26` / `7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D`. +Combined packaged runtime, migration and manual acceptance remain pending. +No commit or remote delivery has been made for this port. + +## Native API Audit + +Class moves were derived from the cached 1.16.5 MCP joined mappings and Mojang +class names, then checked against the mapped Forge `1.17.1-37.1.1` jar. All explicit +Minecraft imports resolve there. Strings and NBT keys were not globally renamed. +Changed descriptors were checked with `javap` against that same mapped jar. + +The native block-entity construction, loading and ticking requirements also match +[Forge's 1.17 documentation](https://docs.minecraftforge.net/en/1.17.x/blockentities/blockentity/). + +- All 16 machine types use native two-argument factories and `BlockEntitySupplier`. + Each block passes its actual `BlockPos` and `BlockState` into its machine. +- Persistence overrides use `load(CompoundTag)` and call the shared superclass. + NBT coordinates cannot replace the native constructor position/state. +- Moving drills load their payload into the newly placed machine without a + reflective position rewrite, then debit the retained movement cost. +- Shared GUI block parents own `PoweredEntity.tick()` routing on both logical + sides. LED is a conduit rather than a GUI block and supplies its own ticker. + First-use server redstone sampling and the eight-tick update order are retained. +- Hydroturbine constructors use `EntityType` and `Level`; native `discard()` + replaces the obsolete no-argument removal call. Saved parent links survive an + unloaded parent chunk and can resolve a replacement live block entity. +- Laser packets use constructor coordinates; renderer registration uses + `EntityRenderersEvent.RegisterRenderers`, native contexts, `PoseStack` and + `VertexConsumer`. Buffer geometry, normals, UVs and tolerances are retained. +- The native unshaded shader retains lightmap, overlay, alpha and fog processing + without diffuse directional lighting. GPU compilation and appearance remain + untested; static resource tests are not visual acceptance. +- Pump pickup uses native `BucketPickup.pickupBlock`, including waterlogged + sources. Null/empty refusal controls and energy/fluid assertions are retained. +- Lithium uses `mineable/pickaxe` and `needs_stone_tool`; sulfur uses pickaxe only. + Existing drop quantities, fortune/silk behavior and self-drop resources remain. +- Capability ownership remains in Power Advantage. Electric does not introduce a + second Forge Energy/fluid adapter or suppress invalidation/revival checks. +- Configuration loading uses `ModConfigEvent.Loading`; existing options and + defaults are unchanged. + +## Retained Watchpoints + +The inherited regression suite covers all six drill planes, progress/NBT, +native ray geometry, first-tick redstone caching, solar brightness above the +panel, controller input capacity, still output preflight, waterlogged pickup, +sound recipient bounds, turbine save/load/anchoring and normalized hydro GUI +output. New tests check native factories, tag-only load positions, turret packet +coordinates, the LED ticker type and shader resources. All 95 tests pass on the +current checkpoint with both Gradle/JUnit and independent ECJ/JUnit. + +The plain-JVM harvest fixture initializes Forge's real tier ordering and native +tag bindings. The build-only agent calls Forge's own capability and event-bus +plugins; no replacement event or capability implementation is shipped. Earlier +game-version/bootstrap/tag-fixture failures remain in the local evidence. + +All existing recipes are byte-for-byte retained. The published Base Metals 1.17 +`CrushingRecipe` remains the integration API. Its raw-metal recipes must be +exercised with public runtime bytes in the shared rig. The supplied public jar's +copper, iron and gold recipes each produce two powders per ore block but one +per raw item. A new dependency-resource test retains that published distinction; +no fabricated conversion or silent balance adjustment is included here. + +## Qualification Gates + +Current local evidence: `electric-checkpoint-i.log` in the shared campaign records +35 tasks executed successfully with `--no-build-cache --rerun-tasks`, including +all 95 tests and every deterministic release/Eclipse audit. Independent evidence +is `evidence-117-20261031/ecj-checkpoint-a/ecj-results.json`: fresh compilation of +85 production and 27 test sources, class major 60, 95 tests, zero failures, +ignored tests or assumptions. The restricted-JDK negative control rejected +`sun.security.x509.X500Name` as expected. The local static contracts and 50 recipe +unlocks pass. Hosted CI and interactive IDE launches have not been run. + +The production jar SHA-256 is +`CCA5F24A079BA75FDE0833A641FF9DAA57F55C16505C221D308CD045BF892B3B`. +The development jar SHA-256 is +`637225151CE258AE9237BA6D8E9CD98FF8AE22533D0E118E74E2D37B406FDCD0`. +Both hashes were unchanged by the two full forced rebuilds H and I; H retained a +failed old-format Eclipse audit, while I passed the native bootstrap audit. +This is a local checkpoint, not final qualification or manual acceptance. + +1. Keep the exact current Power local source/API checkpoint and published API + checksums pinned. Any coordinated source/API replacement requires new proof. +2. Use the campaign lease helper for fresh compile, all 95 JUnit tests, strict + dependency/resource/release audits, Javadocs and Eclipse generation/audit. +3. Run independent ECJ compilation and strict JUnit on Java 16, preserving access + restrictions, failed diagnostics and exact input hashes. Verify class major 60. + Native Forge capability tokens require the parent's verified build-only unit + bootstrap agent in both Gradle and standalone JUnit. Do not replace those tokens + or weaken capability tests to make a plain JVM run green. +4. Use immutable packaged Electric/Power candidates and exact public dependency + jars for the parent's disposable client/server, operating and migration rig. + Include finite power/fluid conservation, dirty-tank saves, battery caches and + charge NBT, capability revival, drill movement debit, refinery/still capacity, + helper entities, first-tick redstone and GUI caption rows. +5. Reproduce the same artifacts and retain both successful and failed receipts. +6. Obtain explicit approval for each local frozen module commit. Manual gameplay + acceptance is still required before any port-code push, PR, merge, tag or release. + +Original worlds and old-version checkouts are read-only. No hosted workflow, +publication or manual acceptance is implied by a local build result. diff --git a/gradle.properties b/gradle.properties index 096cec9..010d3fa 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,46 +5,51 @@ org.gradle.caching=true org.gradle.parallel=false net.minecraftforge.gradle.merge-source-sets=false -minecraft_version=1.16.5 -minecraft_version_range=[1.16.5] -forge_version=36.2.34 -forge_installer_sha256=53B73DBBCC486F38726E76CE923B13381044984C83C762847C7193340F97130F -forge_version_range=[36.2.34,37) -loader_version_range=[36,) +minecraft_version=1.17.1 +minecraft_version_range=[1.17.1] +forge_version=37.1.1 +forge_installer_sha256=31F2319B1B9CA491AACCC020887240F8524A4FF2A8E0F8B795E17E889CBC043B +forge_version_range=[37.1.1,38) +loader_version_range=[37,) mapping_channel=official -mapping_version=1.16.5 -mcp_version=20210115.111550 +mapping_version=1.17.1 +mcp_version=20210706.113038 loader_name=forge loader_code=1 -java_version=8 -java_toolchain_version=8.0.502+7 -java_setup_version=8.0.502+7 +java_version=16 +java_toolchain_version=16.0.2+7 +java_setup_version=16.0.2+7 gradle_java_version=17 curseforge_project_id=240985 mod_id=electricadvantage mod_name=Electric Advantage mod_license=GPL-3.0-only -mod_version=2.2.8.116051 +mod_version=2.2.9.117011 mod_group=zone.moddev.mc.electricadvantage mod_authors=DrCyano mod_description=Electric-powered machines and infrastructure for the Power Advantage platform. cf_requirements=power-advantage,base-metals cf_optionals= -cf_versions=1.16.5 +cf_versions=1.17.1 -poweradvantage_version=2.4.7.116051 +poweradvantage_version=2.4.8.117011 +poweradvantage_pin_state=LOCAL_CHECKPOINT poweradvantage_source_repository=MinecraftModDevelopmentMods/PowerAdvantage # Exact local-only Power source and immutable development artifact; publish source before hosted builds. -poweradvantage_source_ref=bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7 -poweradvantage_deobf_sha256=2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386 +# Local checkpoint only; combined runtime qualification and manual acceptance remain pending. +poweradvantage_source_ref=28247f936ac99e7a417da1bc1c89bc8394773a26 +poweradvantage_deobf_sha256=7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D +poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 -basemetals_version=3.1.1.116051 -basemetals_source_commit=995f6cc4dd2d5eecc628a42e5c43fa5390c24bca -basemetals_deobf_sha256=A7B0C4F394DFAF4E11E0275B1A86CB1D47C7AF8E175759D9BB84F965C684466D +basemetals_version=3.1.0.117011 +basemetals_source_commit=dacfaa3af2e3310d5cb6b081da79f09260ae103d +basemetals_deobf_sha256=4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA +basemetals_runtime_sha256=9276FA7E8A1E5BD6B9E336CF83CFEE9B178167DA09CE2B231C8DFF733F351B0C -orespawn_version=4.1.0.116051 -orespawn_source_commit=a113e5d767169189f0e35ade1e173a12d550b00e -orespawn_deobf_sha256=DCEE75480C9DD70EE58B218AAE799C5FAB0525DAF9A05455270F1570C24F7F8F +orespawn_version=4.1.0.117011 +orespawn_source_commit=b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf +orespawn_deobf_sha256=CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39 +orespawn_runtime_sha256=1BDEDCBB179CB5A3B169E5C8A6B301E3888AE15B94108B0AEC627D705CFAD833 diff --git a/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java b/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java index 7a1a0da..3651176 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java @@ -33,12 +33,12 @@ import zone.moddev.mc.electricadvantage.recipe.RecipeConditions; import zone.moddev.mc.electricadvantage.migration.ElectricLegacyMigrations; -/** Forge 1.16 entry point for Electric Advantage. */ +/** Forge 1.17.1 entry point for Electric Advantage. */ @Mod(ElectricAdvantage.MODID) public final class ElectricAdvantage { public static final String MODID = "electricadvantage"; public static final String NAME = "Electric Advantage"; - public static final String VERSION = "2.2.8.116051"; + public static final String VERSION = "2.2.9.117011"; public static final Logger LOGGER = LogManager.getLogger(MODID); public static ElectricAdvantage INSTANCE; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java index 957724b..d3a3a17 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java @@ -1,7 +1,7 @@ package zone.moddev.mc.electricadvantage.blocks; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.block.material.Material; +import net.minecraft.world.level.material.Material; public class ElectricConduitBlock extends cyano.poweradvantage.api.simple.BlockSimplePowerConduit{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java index 1ff5442..9701907 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java @@ -1,13 +1,13 @@ package zone.moddev.mc.electricadvantage.blocks; import cyano.poweradvantage.api.simple.BlockSimplePowerConduit; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.shapes.VoxelShape; -import net.minecraft.util.math.shapes.VoxelShapes; -import net.minecraft.util.math.shapes.ISelectionContext; -import net.minecraft.world.IBlockReader; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.level.BlockGetter; import zone.moddev.mc.electricadvantage.init.Power; /** Full-block electric track/scaffold with conduit behavior. */ @@ -17,6 +17,6 @@ public ElectricScaffoldBlock() { .isRedstoneConductor((state, world, pos) -> false), 2.0F / 16.0F, Power.ELECTRIC_POWER); } - @Override public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { return VoxelShapes.block(); } - @Override public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { return VoxelShapes.block(); } + @Override public VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return Shapes.block(); } + @Override public VoxelShape getCollisionShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return Shapes.block(); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java b/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java index 8047e7c..de0d3d4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java @@ -4,32 +4,29 @@ import java.util.Collections; import java.util.List; -import net.minecraft.block.Block; -import net.minecraft.block.SoundType; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.item.ItemStack; -import net.minecraft.enchantment.EnchantmentHelper; -import net.minecraft.enchantment.Enchantments; -import net.minecraft.loot.LootContext; -import net.minecraft.loot.LootParameters; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.common.ToolType; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.enchantment.EnchantmentHelper; +import net.minecraft.world.item.enchantment.Enchantments; +import net.minecraft.world.level.storage.loot.LootContext; +import net.minecraft.world.level.storage.loot.parameters.LootContextParams; +import net.minecraft.core.NonNullList; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; /** Legacy ElectricAdvantage ore block retaining its original drops and harvest level. */ public class Ore extends Block { private final ItemStack dropItem; private final int dropRange; - private final int harvestLevel; public Ore(ItemStack oreDrop, int pickLevel, int variation) { super(Properties.of(Material.STONE).requiresCorrectToolForDrops().sound(SoundType.STONE) .strength(1.5F + pickLevel, 5.0F * (1 + pickLevel))); dropItem = oreDrop.copy(); dropRange = variation + 1; - harvestLevel = pickLevel; } public Ore(int pickLevel) { @@ -37,15 +34,11 @@ public Ore(int pickLevel) { .strength(1.5F + pickLevel, 5.0F * (1 + pickLevel))); dropItem = ItemStack.EMPTY; dropRange = 0; - harvestLevel = pickLevel; } - @Override public ToolType getHarvestTool(BlockState state) { return ToolType.PICKAXE; } - @Override public int getHarvestLevel(BlockState state) { return harvestLevel; } - @Override public List getDrops(BlockState state, LootContext.Builder context) { - ItemStack tool = context.getOptionalParameter(LootParameters.TOOL); + ItemStack tool = context.getOptionalParameter(LootContextParams.TOOL); if (dropItem.isEmpty() || (tool != null && EnchantmentHelper.getItemEnchantmentLevel(Enchantments.SILK_TOUCH, tool) > 0)) { return Collections.singletonList(new ItemStack(this)); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java index c4b10a1..1178c28 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java @@ -1,43 +1,43 @@ package zone.moddev.mc.electricadvantage.blocks; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.shapes.VoxelShape; -import net.minecraft.util.math.shapes.VoxelShapes; -import net.minecraft.util.math.shapes.ISelectionContext; -import net.minecraft.loot.LootContext; -import net.minecraft.world.Explosion; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.ItemStack; +import net.minecraft.core.NonNullList; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.level.storage.loot.LootContext; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; /** Hidden pump intake column. */ public class PumpPipeBlock extends Block { - private static final VoxelShape SHAPE = VoxelShapes.box(0.25D, 0.0D, 0.25D, 0.75D, 1.0D, 0.75D); + private static final VoxelShape SHAPE = Shapes.box(0.25D, 0.0D, 0.25D, 0.75D, 1.0D, 0.75D); public PumpPipeBlock() { super(Properties.of(Material.METAL).strength(5.0F, 10.0F).dynamicShape().noOcclusion().isRedstoneConductor((state, world, pos) -> false).noDrops()); } - @Override public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { return SHAPE; } - @Override public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { return SHAPE; } + @Override public VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return SHAPE; } + @Override public VoxelShape getCollisionShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return SHAPE; } @Override public java.util.List getDrops(BlockState state, LootContext.Builder context) { return java.util.Collections.emptyList(); } @Override - public void onRemove(BlockState state, World world, BlockPos pos, BlockState newState, boolean moving) { + public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean moving) { if (state.getBlock() != newState.getBlock()) destroyBelow(world, pos); super.onRemove(state, world, pos, newState, moving); } - @Override public void wasExploded(World world, BlockPos pos, Explosion explosion) { + @Override public void wasExploded(Level world, BlockPos pos, Explosion explosion) { destroyBelow(world, pos); super.wasExploded(world, pos, explosion); } - private void destroyBelow(World world, BlockPos pos) { + private void destroyBelow(Level world, BlockPos pos) { if (world.isClientSide) return; BlockPos cursor = pos.below(); while (cursor.getY() > 0 && world.getBlockState(cursor).getBlock() == this) { - world.setBlock(cursor, net.minecraft.block.Blocks.AIR.defaultBlockState(), 3); + world.setBlock(cursor, net.minecraft.world.level.block.Blocks.AIR.defaultBlockState(), 3); cursor = cursor.below(); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java b/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java index df24562..bf4b50e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java @@ -1,7 +1,7 @@ package zone.moddev.mc.electricadvantage.common; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.item.ItemStack; +import net.minecraft.world.item.ItemStack; public interface IRechargeableItem { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java b/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java index 2ec2738..e24bde1 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java @@ -1,14 +1,14 @@ package zone.moddev.mc.electricadvantage.compat; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.inventory.Inventory; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.StringTextComponent; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.SimpleContainer; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.world.level.Level; import net.minecraftforge.fml.ModList; import net.minecraftforge.registries.ForgeRegistries; import zone.moddev.mc.basemetals.recipe.CrushingRecipe; @@ -27,16 +27,16 @@ public static void addCrusherRecipe(Item input, ItemStack output) {} public static void addCrusherRecipe(Block input, ItemStack output) {} public static void registerOreDictionaryCopies(String target, String... sources) {} - public static boolean hasCrusherRecipe(World world, ItemStack input) { + public static boolean hasCrusherRecipe(Level world, ItemStack input) { return getCrusherRecipeOutput(world, input) != null; } - public static ItemStack getCrusherRecipeOutput(World world, ItemStack input) { + public static ItemStack getCrusherRecipeOutput(Level world, ItemStack input) { if (world == null || input == null || input.isEmpty()) return null; if (isLoaded()) { - Inventory inventory = new Inventory(1); + SimpleContainer inventory = new SimpleContainer(1); inventory.setItem(0, input.copy()); - for (IRecipe candidate : world.getRecipeManager().getRecipes()) { + for (Recipe candidate : world.getRecipeManager().getRecipes()) { if (candidate instanceof CrushingRecipe && ((CrushingRecipe) candidate).matches(inventory, world)) { return candidate.getResultItem().copy(); } @@ -45,7 +45,7 @@ public static ItemStack getCrusherRecipeOutput(World world, ItemStack input) { return getVanillaCrusherOutput(input); } - public static ItemStack getCrusherRecipeOutput(World world, BlockState input) { + public static ItemStack getCrusherRecipeOutput(Level world, BlockState input) { return input == null ? null : getCrusherRecipeOutput(world, new ItemStack(input.getBlock())); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java b/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java index dd5c41d..a684fa3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java @@ -3,7 +3,7 @@ import java.util.Arrays; import net.minecraftforge.common.ForgeConfigSpec; -import net.minecraftforge.fml.config.ModConfig; +import net.minecraftforge.fml.event.config.ModConfigEvent; import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.util.crafting.RecipeDeconstructor; @@ -31,7 +31,7 @@ public final class ElectricAdvantageConfig { private ElectricAdvantageConfig() {} - public static void onConfigLoading(ModConfig.Loading event) { + public static void onConfigLoading(ModConfigEvent.Loading event) { if (event.getConfig().getSpec() != SPEC) return; loaded = true; apply(); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java index 60392e9..2daaaaa 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java @@ -2,21 +2,21 @@ import zone.moddev.mc.electricadvantage.init.Power; import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorTileEntity; -import net.minecraft.entity.Entity; -import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.EntityType; -import net.minecraft.fluid.FluidState; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.network.IPacket; -import net.minecraftforge.fml.network.NetworkHooks; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.vector.Vector3d; -import net.minecraft.world.World; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.protocol.Packet; +import net.minecraftforge.fmllegacy.network.NetworkHooks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.level.Level; import java.util.List; -public class HydroturbineEntity extends net.minecraft.entity.Entity{ +public class HydroturbineEntity extends net.minecraft.world.entity.Entity{ public static final float DEGREES_PER_TICK = 30; private static final float RADIANS_TO_DEGREES = (float)(180 / Math.PI); @@ -24,23 +24,24 @@ public class HydroturbineEntity extends net.minecraft.entity.Entity{ public static final float PROPELLER_DAMAGE = 5f; public float rotation = 0; public boolean isSpinning = false; - public TileEntity parent = null; + public BlockEntity parent = null; private BlockPos parentCoord = null; private final long roffset; - public HydroturbineEntity(EntityType type, World w) { + public HydroturbineEntity(EntityType type, Level w) { super(type, w); this.blocksBuilding = true; roffset = w.random.nextInt(8); } - public HydroturbineEntity(World w, BlockPos parentTileEntity) { + public HydroturbineEntity(Level w, BlockPos parentTileEntity) { this(w, w.getBlockEntity(parentTileEntity)); } - public HydroturbineEntity(World w, TileEntity parentTileEntity) { + public HydroturbineEntity(Level w, BlockEntity parentTileEntity) { this(zone.moddev.mc.electricadvantage.init.Entities.HYDROTURBINE, w); this.parent = parentTileEntity; BlockPos p = parentTileEntity.getBlockPos(); + this.parentCoord = p; this.setPos(p.getX()+0.5, p.getY()-1, p.getZ()+0.5); } @@ -50,7 +51,7 @@ protected void defineSynchedData() { } @Override - public IPacket getAddEntityPacket() { + public Packet getAddEntityPacket() { return NetworkHooks.getEntitySpawningPacket(this); } @@ -64,30 +65,30 @@ public boolean isPushedByFluid() { public void tick(){ super.tick(); FluidState fluidState = this.getCommandSenderWorld().getFluidState(blockPosition()); - Vector3d directionVector; + Vec3 directionVector; if(!fluidState.isEmpty()){ directionVector = fluidState.getFlow(getCommandSenderWorld(), blockPosition()); isSpinning = !(directionVector.x == 0 && directionVector.z == 0); } else { isSpinning = false; - directionVector = new Vector3d(0,0,0); + directionVector = new Vec3(0,0,0); } if(this.getCommandSenderWorld().isClientSide){ // client-side only if(isSpinning){ rotation += DEGREES_PER_TICK; - this.yRot = RADIANS_TO_DEGREES * (float)Math.atan2(-directionVector.z, directionVector.x) -90; + this.setYRot(RADIANS_TO_DEGREES * (float)Math.atan2(-directionVector.z, directionVector.x) -90); } else { // do nothing } } else { // server-side only - if(parent == null && parentCoord != null){ + if((parent == null || parent.isRemoved()) && parentCoord != null){ + if(!this.getCommandSenderWorld().hasChunkAt(parentCoord)) return; parent = this.getCommandSenderWorld().getBlockEntity(parentCoord); - parentCoord = null; } if(parent == null || parent.isRemoved()){ - this.remove(); + this.discard(); } else if(parent instanceof HydroelectricGeneratorTileEntity){ HydroelectricGeneratorTileEntity generator = (HydroelectricGeneratorTileEntity)parent; if(isSpinning){ @@ -106,7 +107,7 @@ public void tick(){ } @Override - protected void readAdditionalSaveData(CompoundNBT root) { + protected void readAdditionalSaveData(CompoundTag root) { parent = null; parentCoord = null; if(root.contains("parentPos", 11)){ @@ -118,7 +119,7 @@ protected void readAdditionalSaveData(CompoundNBT root) { } @Override - protected void addAdditionalSaveData(CompoundNBT root) { + protected void addAdditionalSaveData(CompoundTag root) { BlockPos p = parent != null ? parent.getBlockPos() : parentCoord; if(p != null){ int[] coords = new int[3]; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java index 13d26d3..fe25d56 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java @@ -1,18 +1,18 @@ package zone.moddev.mc.electricadvantage.graphics; -import com.mojang.blaze3d.matrix.MatrixStack; -import com.mojang.blaze3d.vertex.IVertexBuilder; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; /** Preserves the legacy quad coordinates and UVs in the native entity vertex format. */ final class BufferedQuads { - private final MatrixStack.Entry transform; - private final IVertexBuilder buffer; + private final PoseStack.Pose transform; + private final VertexConsumer buffer; private final int light; private final int overlay; private final float[][] vertices = new float[4][5]; private int count; - BufferedQuads(MatrixStack matrices, IVertexBuilder buffer, int light, int overlay) { + BufferedQuads(PoseStack matrices, VertexConsumer buffer, int light, int overlay) { this.transform = matrices.last(); this.buffer = buffer; this.light = light; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java index b0b308d..51d37dd 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java @@ -1,21 +1,39 @@ package zone.moddev.mc.electricadvantage.graphics; -import net.minecraftforge.fml.client.registry.ClientRegistry; -import net.minecraftforge.fml.client.registry.RenderingRegistry; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.client.event.EntityRenderersEvent; +import net.minecraftforge.client.event.RegisterShadersEvent; +import net.minecraft.client.renderer.ShaderInstance; +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import java.io.IOException; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod; +import zone.moddev.mc.electricadvantage.ElectricAdvantage; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.RenderTypeLookup; +import net.minecraft.client.renderer.ItemBlockRenderTypes; import zone.moddev.mc.electricadvantage.init.Blocks; import zone.moddev.mc.electricadvantage.init.Entities; /** Client-only renderer registration. */ +@Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT) public final class ClientRegistration { private ClientRegistration() {} public static void onClientSetup(FMLClientSetupEvent event) { - RenderTypeLookup.setRenderLayer(Blocks.electric_track, RenderType.cutout()); - ClientRegistry.bindTileEntityRenderer(Entities.ELECTRIC_DRILL, LaserDrillRenderer::new); - ClientRegistry.bindTileEntityRenderer(Entities.LASER_TURRET, LaserTurretRenderer::new); - RenderingRegistry.registerEntityRenderingHandler(Entities.HYDROTURBINE, HydroturbineRenderer::new); + event.enqueueWork(() -> ItemBlockRenderTypes.setRenderLayer(Blocks.electric_track, RenderType.cutout())); + } + + @SubscribeEvent + public static void registerRenderers(EntityRenderersEvent.RegisterRenderers event) { + event.registerBlockEntityRenderer(Entities.ELECTRIC_DRILL, LaserDrillRenderer::new); + event.registerBlockEntityRenderer(Entities.LASER_TURRET, LaserTurretRenderer::new); + event.registerEntityRenderer(Entities.HYDROTURBINE, HydroturbineRenderer::new); + } + + @SubscribeEvent + public static void registerShaders(RegisterShadersEvent event) throws IOException { + event.registerShader(new ShaderInstance(event.getResourceManager(), ElectricRenderTypes.UNSHADED, + DefaultVertexFormat.NEW_ENTITY), ElectricRenderTypes::setUnshadedShader); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java index 9bdc088..8455eec 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java @@ -1,22 +1,31 @@ package zone.moddev.mc.electricadvantage.graphics; -import net.minecraft.client.renderer.RenderState; +import net.minecraft.client.renderer.RenderStateShard; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.util.ResourceLocation; +import net.minecraft.client.renderer.ShaderInstance; +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.VertexFormat; +import net.minecraft.resources.ResourceLocation; /** Scoped render state replaces the old global lighting/blending mutations. */ -final class ElectricRenderTypes extends RenderState { +final class ElectricRenderTypes extends RenderStateShard { + static final ResourceLocation UNSHADED = new ResourceLocation( + zone.moddev.mc.electricadvantage.ElectricAdvantage.MODID, "unshaded"); + private static ShaderInstance unshadedShader; private ElectricRenderTypes() { super("electricadvantage", () -> {}, () -> {}); } + static void setUnshadedShader(ShaderInstance shader) { + unshadedShader = shader; + } + static RenderType unshaded(ResourceLocation texture, boolean translucent) { - return RenderType.create("electricadvantage_unshaded", DefaultVertexFormats.NEW_ENTITY, - 7, 256, false, translucent, RenderType.State.builder() - .setTextureState(new TextureState(texture, false, false)) + return RenderType.create("electricadvantage_unshaded", DefaultVertexFormat.NEW_ENTITY, + VertexFormat.Mode.QUADS, 256, false, translucent, RenderType.CompositeState.builder() + .setTextureState(new TextureStateShard(texture, false, false)) .setTransparencyState(translucent ? TRANSLUCENT_TRANSPARENCY : NO_TRANSPARENCY) - .setDiffuseLightingState(NO_DIFFUSE_LIGHTING).setCullState(NO_CULL) + .setShaderState(new ShaderStateShard(() -> unshadedShader)).setCullState(NO_CULL) .setLightmapState(LIGHTMAP).setOverlayState(OVERLAY).createCompositeState(false)); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java index b604fb5..b5278e7 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java @@ -2,15 +2,15 @@ import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.entities.HydroturbineEntity; -import com.mojang.blaze3d.matrix.MatrixStack; -import net.minecraft.client.renderer.IRenderTypeBuffer; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.util.math.vector.Vector3f; +import com.mojang.math.Vector3f; import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.client.renderer.entity.EntityRenderer; -import net.minecraft.client.renderer.entity.EntityRendererManager; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.MathHelper; +import net.minecraft.client.renderer.entity.EntityRendererProvider; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.Mth; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @@ -20,13 +20,13 @@ public class HydroturbineRenderer extends EntityRenderer{ private static final float DEGREES_TO_RADIANS = (float)(Math.PI / 180); - public HydroturbineRenderer(final EntityRendererManager rm) { + public HydroturbineRenderer(final EntityRendererProvider.Context rm) { super(rm); } @Override public void render(final HydroturbineEntity entity, final float entityYaw, final float partialTick, - final MatrixStack matrices, final IRenderTypeBuffer buffers, final int packedLight) { + final PoseStack matrices, final MultiBufferSource buffers, final int packedLight) { { final float pixel = 1.0f / 16; HydroturbineEntity e = (HydroturbineEntity)entity; @@ -40,7 +40,7 @@ public void render(final HydroturbineEntity entity, final float entityYaw, final final float shaftMaxV = 1.0f; matrices.translate(0f, 0.5f, 0f); - matrices.mulPose(Vector3f.YP.rotationDegrees(e.yRot)); + matrices.mulPose(Vector3f.YP.rotationDegrees(e.getYRot())); final BufferedQuads worldRenderer = new BufferedQuads(matrices, buffers.getBuffer(RenderType.entitySolid(texture)), packedLight, OverlayTexture.NO_OVERLAY); @@ -127,18 +127,18 @@ public void render(final HydroturbineEntity entity, final float entityYaw, final final float rotaryWidth = DEGREES_TO_RADIANS*45; final float t1 = DEGREES_TO_RADIANS*spin1, t2 = DEGREES_TO_RADIANS*spin2, t3 = DEGREES_TO_RADIANS*spin3; - final float sin1a = MathHelper.sin(t1); - final float sin1b = MathHelper.sin(t1+rotaryWidth); - final float cos1a = MathHelper.cos(t1); - final float cos1b = MathHelper.cos(t1+rotaryWidth); - final float sin2a = MathHelper.sin(t2); - final float sin2b = MathHelper.sin(t2+rotaryWidth); - final float cos2a = MathHelper.cos(t2); - final float cos2b = MathHelper.cos(t2+rotaryWidth); - final float sin3a = MathHelper.sin(t3); - final float sin3b = MathHelper.sin(t3+rotaryWidth); - final float cos3a = MathHelper.cos(t3); - final float cos3b = MathHelper.cos(t3+rotaryWidth); + final float sin1a = Mth.sin(t1); + final float sin1b = Mth.sin(t1+rotaryWidth); + final float cos1a = Mth.cos(t1); + final float cos1b = Mth.cos(t1+rotaryWidth); + final float sin2a = Mth.sin(t2); + final float sin2b = Mth.sin(t2+rotaryWidth); + final float cos2a = Mth.cos(t2); + final float cos2b = Mth.cos(t2+rotaryWidth); + final float sin3a = Mth.sin(t3); + final float sin3b = Mth.sin(t3+rotaryWidth); + final float cos3a = Mth.cos(t3); + final float cos3b = Mth.cos(t3+rotaryWidth); worldRenderer.pos(cos1b*bladeOffset, sin1b*bladeOffset, depthDelta-axelLength).tex(bladeMinU,bladeMinV).endVertex(); // inner, leading worldRenderer.pos(cos1b*bladeLength, sin1b*bladeLength, depthDelta-axelLength).tex(bladeMinU,bladeMaxV).endVertex(); // outer, leading diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java index 552d9e2..01a4090 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java @@ -2,33 +2,32 @@ import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.machines.ElectricDrillTileEntity; -import com.mojang.blaze3d.matrix.MatrixStack; -import net.minecraft.client.renderer.IRenderTypeBuffer; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.util.math.vector.Vector3f; -import net.minecraft.client.renderer.tileentity.TileEntityRenderer; -import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; -import net.minecraft.util.Direction; -import net.minecraft.util.ResourceLocation; +import com.mojang.math.Vector3f; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; +import net.minecraft.core.Direction; +import net.minecraft.resources.ResourceLocation; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @OnlyIn(Dist.CLIENT) // This is needed for classes that extend client-only classes -public class LaserDrillRenderer extends TileEntityRenderer{ +public class LaserDrillRenderer implements BlockEntityRenderer{ private final ResourceLocation texture = new ResourceLocation(ElectricAdvantage.MODID+":textures/materials/laser_beam.png"); private final RenderType beamType = ElectricRenderTypes.unshaded(texture, false); - public LaserDrillRenderer(TileEntityRendererDispatcher dispatcher) { - super(dispatcher); + public LaserDrillRenderer(BlockEntityRendererProvider.Context context) { } @Override - public void render(final ElectricDrillTileEntity e, final float partialTick, final MatrixStack matrices, - final IRenderTypeBuffer buffers, final int packedLight, final int packedOverlay) { + public void render(final ElectricDrillTileEntity e, final float partialTick, final PoseStack matrices, + final MultiBufferSource buffers, final int packedLight, final int packedOverlay) { float laserBlastLength = e.getDrillLength(); if(laserBlastLength > 0){ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java b/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java index 3840605..c1d0732 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java @@ -2,31 +2,30 @@ import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.machines.LaserTurretTileEntity; -import com.mojang.blaze3d.matrix.MatrixStack; -import net.minecraft.client.renderer.IRenderTypeBuffer; +import com.mojang.blaze3d.vertex.PoseStack; +import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.util.math.vector.Vector3f; -import net.minecraft.client.renderer.tileentity.TileEntityRenderer; -import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; -import net.minecraft.util.ResourceLocation; +import com.mojang.math.Vector3f; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; +import net.minecraft.resources.ResourceLocation; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @OnlyIn(Dist.CLIENT) // This is needed for classes that extend client-only classes -public class LaserTurretRenderer extends TileEntityRenderer{ +public class LaserTurretRenderer implements BlockEntityRenderer{ private final ResourceLocation texture = new ResourceLocation(ElectricAdvantage.MODID+":textures/entity/laser_turret.png"); private final RenderType renderType = ElectricRenderTypes.unshaded(texture, true); - public LaserTurretRenderer(TileEntityRendererDispatcher dispatcher) { - super(dispatcher); + public LaserTurretRenderer(BlockEntityRendererProvider.Context context) { } @Override - public void render(final LaserTurretTileEntity e, final float partialTick, final MatrixStack matrices, - final IRenderTypeBuffer buffers, final int packedLight, final int packedOverlay) { + public void render(final LaserTurretTileEntity e, final float partialTick, final PoseStack matrices, + final MultiBufferSource buffers, final int packedLight, final int packedOverlay) { final float sideU0 = 0; final float sideU1 = 0.5f; final float sideV0 = 0; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java index e81dc24..3039aab 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java @@ -4,10 +4,10 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.inventory.container.Slot; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.Slot; +import net.minecraft.world.item.ItemStack; +import net.minecraft.resources.ResourceLocation; public class ArcFurnaceGUI extends SimpleMachineGUI{ @@ -17,10 +17,10 @@ public ArcFurnaceGUI() { 124,45, 145,45, 124,66, 145,66, 124,87, 145,87)); for(int i = 4; i < 10; i++)super.specialSlots.put(i, (SlotContext c)->new Slot(c.machineInventory,c.slotIndex,c.screenPositionX,c.screenPositionY){ @Override - public ItemStack onTake(PlayerEntity player, ItemStack stack) + public void onTake(Player player, ItemStack stack) { stack.onCraftedBy(player.getCommandSenderWorld(), player, stack.getCount()); - return super.onTake(player, stack); + super.onTake(player, stack); } @Override public boolean mayPlace(ItemStack stack){ return false; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java index eb7c0ef..3c97942 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricBatteryArrayTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class BatteryArrayGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java index 3674f42..3142317 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class ElectricDrillGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java index ae847b6..a76ce3a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricPumpTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; public class ElectricPumpGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java index 59ab60c..4835f4d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricStillTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; public class ElectricStillGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java index cfccfd0..07f10be 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java @@ -4,10 +4,10 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.inventory.container.Slot; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.Slot; +import net.minecraft.world.item.ItemStack; +import net.minecraft.resources.ResourceLocation; public class FabricatorGUI extends SimpleMachineGUI{ @@ -26,10 +26,10 @@ public FabricatorGUI() { for(int i = 12; i <= 13; i++)super.specialSlots.put(i, (SlotContext c)->new Slot(c.machineInventory,c.slotIndex,c.screenPositionX,c.screenPositionY){ @Override - public ItemStack onTake(PlayerEntity player, ItemStack stack) + public void onTake(Player player, ItemStack stack) { stack.onCraftedBy(player.getCommandSenderWorld(), player, stack.getCount()); - return super.onTake(player, stack); + super.onTake(player, stack); } @Override public boolean mayPlace(ItemStack stack){ return false; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java index 41a7ab0..876b7a9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java @@ -3,7 +3,7 @@ import cyano.poweradvantage.api.simple.SimpleMachineGUI.GUIContainer; import zone.moddev.mc.poweradvantage.gui.FluidTankGUI; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; import java.util.HashMap; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java index 7812a17..fe4b50c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class GenericMachineGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java index 47a20da..ac9cd6e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class GrowthChamberControllerGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java index 33d4420..b1defd3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class GrowthChamberGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java index 63ca61b..bc319a3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java @@ -4,10 +4,10 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.inventory.container.Slot; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.inventory.Slot; +import net.minecraft.world.item.ItemStack; +import net.minecraft.resources.ResourceLocation; public class OvenGUI extends SimpleMachineGUI{ @@ -16,10 +16,10 @@ public OvenGUI() { Integer2D.fromCoordinates(27,67, 133,67)); super.specialSlots.put(1, (SlotContext c)->new Slot(c.machineInventory,c.slotIndex,c.screenPositionX,c.screenPositionY){ @Override - public ItemStack onTake(PlayerEntity player, ItemStack stack) + public void onTake(Player player, ItemStack stack) { stack.onCraftedBy(player.getCommandSenderWorld(), player, stack.getCount()); - return super.onTake(player, stack); + super.onTake(player, stack); } @Override public boolean mayPlace(ItemStack stack){ return false; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java index 37afa95..062d7e5 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.PlasticRefineryTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; public class PlasticRefineryGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java index c611d80..82c01db 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricGeneratorTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class PowerGeneratorGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java b/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java index 19cc321..bce6299 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java @@ -4,7 +4,7 @@ import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; import zone.moddev.mc.poweradvantage.math.Integer2D; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class RockCrusherGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java b/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java index e40e524..4180101 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java @@ -4,10 +4,10 @@ import java.util.Map; import cyano.poweradvantage.api.GUIBlock; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.BlockItem; -import net.minecraft.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java b/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java index b9524f7..5432fb2 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java @@ -1,11 +1,10 @@ package zone.moddev.mc.electricadvantage.init; -import java.util.function.Supplier; -import net.minecraft.entity.EntityType; -import net.minecraft.entity.EntityClassification; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.tileentity.TileEntityType; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @@ -31,28 +30,28 @@ /** Stable tile/entity registrations; IDs are unchanged from 1.12. */ @Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD) public final class Entities { - public static TileEntityType ELECTRIC_FURNACE; - public static TileEntityType ELECTRIC_CRUSHER; - public static TileEntityType ELECTRIC_DRILL; - public static TileEntityType ELECTRIC_FABRICATOR; - public static TileEntityType GROWTH_CHAMBER; - public static TileEntityType GROWTH_CHAMBER_CONTROLLER; - public static TileEntityType ELECTRIC_OVEN; - public static TileEntityType LASER_TURRET; - public static TileEntityType LED; - public static TileEntityType HYDROELECTRIC_GENERATOR; - public static TileEntityType PHOTOVOLTAIC_GENERATOR; - public static TileEntityType STEAM_POWERED_ELECTRIC_GENERATOR; - public static TileEntityType ELECTRIC_BATTERY_ARRAY; - public static TileEntityType ELECTRIC_PUMP; - public static TileEntityType ELECTRIC_STILL; - public static TileEntityType PLASTIC_REFINERY; + public static BlockEntityType ELECTRIC_FURNACE; + public static BlockEntityType ELECTRIC_CRUSHER; + public static BlockEntityType ELECTRIC_DRILL; + public static BlockEntityType ELECTRIC_FABRICATOR; + public static BlockEntityType GROWTH_CHAMBER; + public static BlockEntityType GROWTH_CHAMBER_CONTROLLER; + public static BlockEntityType ELECTRIC_OVEN; + public static BlockEntityType LASER_TURRET; + public static BlockEntityType LED; + public static BlockEntityType HYDROELECTRIC_GENERATOR; + public static BlockEntityType PHOTOVOLTAIC_GENERATOR; + public static BlockEntityType STEAM_POWERED_ELECTRIC_GENERATOR; + public static BlockEntityType ELECTRIC_BATTERY_ARRAY; + public static BlockEntityType ELECTRIC_PUMP; + public static BlockEntityType ELECTRIC_STILL; + public static BlockEntityType PLASTIC_REFINERY; public static EntityType HYDROTURBINE; private Entities() {} public static void init() {} - @SubscribeEvent public static void registerTiles(RegistryEvent.Register> event) { + @SubscribeEvent public static void registerTiles(RegistryEvent.Register> event) { ELECTRIC_FURNACE = tile(event, "electric_furnace", ElectricFurnaceTileEntity::new, Blocks.arc_furnace); ELECTRIC_CRUSHER = tile(event, "electric_crusher", ElectricCrusherTileEntity::new, Blocks.rock_crusher); ELECTRIC_DRILL = tile(event, "electric_drill", ElectricDrillTileEntity::new, Blocks.laser_drill); @@ -73,7 +72,7 @@ public static void init() {} @SubscribeEvent public static void registerEntities(RegistryEvent.Register> event) { HYDROTURBINE = EntityType.Builder.of( - HydroturbineEntity::new, EntityClassification.MISC) + HydroturbineEntity::new, MobCategory.MISC) .sized(0.9375F, 0.9375F) .setTrackingRange(64).setUpdateInterval(1).setShouldReceiveVelocityUpdates(true) .build(ElectricAdvantage.MODID + ":hydroturbine"); @@ -81,10 +80,10 @@ public static void init() {} event.getRegistry().register(HYDROTURBINE); } - private static TileEntityType tile( - RegistryEvent.Register> event, String id, Supplier factory, - net.minecraft.block.Block... blocks) { - TileEntityType type = TileEntityType.Builder.of(factory, blocks).build(null); + private static BlockEntityType tile( + RegistryEvent.Register> event, String id, BlockEntityType.BlockEntitySupplier factory, + net.minecraft.world.level.block.Block... blocks) { + BlockEntityType type = BlockEntityType.Builder.of(factory, blocks).build(null); type.setRegistryName(ElectricAdvantage.MODID, id); event.getRegistry().register(type); return type; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java b/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java index 74aeed6..d75100e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java @@ -4,7 +4,7 @@ import java.util.Map; import java.util.Set; -import net.minecraft.item.Item; +import net.minecraft.world.item.Item; import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java b/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java index 264a627..e28ef8a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java @@ -3,7 +3,7 @@ import java.nio.file.Files; import java.nio.file.Path; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fml.ModList; import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.orespawn.api.GeologyFamily; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java b/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java index 7f676c9..408a0fe 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.init; -import net.minecraft.util.DamageSource; +import net.minecraft.world.damagesource.DamageSource; import cyano.poweradvantage.api.ConduitType; public abstract class Power { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java b/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java index 93318d4..a641b48 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java @@ -1,11 +1,11 @@ package zone.moddev.mc.electricadvantage.init; import java.util.List; -import net.minecraft.entity.merchant.villager.VillagerProfession; -import net.minecraft.entity.merchant.villager.VillagerTrades; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.item.MerchantOffer; +import net.minecraft.world.entity.npc.VillagerProfession; +import net.minecraft.world.entity.npc.VillagerTrades; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.trading.MerchantOffer; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.village.VillagerTradesEvent; @@ -23,8 +23,8 @@ public static synchronized void init() { public static void addTrades(VillagerTradesEvent event) { if (event.getType() != VillagerProfession.LIBRARIAN) return; - List novice = event.getTrades().get(1); - List apprentice = event.getTrades().get(2); + List novice = event.getTrades().get(1); + List apprentice = event.getTrades().get(2); novice.add(sell(Blocks.electric_conduit.asItem(), -6, -3)); novice.add(sell(Items.solder, -10, -5)); novice.add(sell(Items.integrated_circuit, -6, -3)); @@ -33,12 +33,12 @@ public static void addTrades(VillagerTradesEvent event) { apprentice.add(sell(Items.power_supply_unit, 1, 3)); } - static VillagerTrades.ITrade sell(Item item, int minimumPrice, int maximumPrice) { + static VillagerTrades.ItemListing sell(Item item, int minimumPrice, int maximumPrice) { return (villager, random) -> { int price = minimumPrice + random.nextInt(maximumPrice - minimumPrice + 1); int emeralds = price < 0 ? 1 : price; int count = price < 0 ? -price : 1; - return new MerchantOffer(new ItemStack(net.minecraft.item.Items.EMERALD, emeralds), + return new MerchantOffer(new ItemStack(net.minecraft.world.item.Items.EMERALD, emeralds), new ItemStack(item, count), 7, 1, 0.0F); }; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java b/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java index 1f17c2e..0a82fe4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java @@ -3,20 +3,20 @@ import zone.moddev.mc.electricadvantage.common.IRechargeableItem; import zone.moddev.mc.electricadvantage.init.Power; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemStack; -import net.minecraft.item.Item; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.text.ITextComponent; -import net.minecraft.util.text.StringTextComponent; -import net.minecraft.util.text.TranslationTextComponent; -import net.minecraft.world.World; +import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Item; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.network.chat.TranslatableComponent; +import net.minecraft.world.level.Level; import java.text.NumberFormat; import java.util.List; -public class BatteryItem extends net.minecraft.item.Item implements IRechargeableItem { +public class BatteryItem extends net.minecraft.world.item.Item implements IRechargeableItem { private final float capacity; private final NumberFormat nf; @@ -32,7 +32,7 @@ public BatteryItem(float capacity, Item.Properties properties){ public float getEnergy(ItemStack stack) { if(stack.getItem() instanceof IRechargeableItem){ BatteryItem battery = (BatteryItem)stack.getItem(); - CompoundNBT dataTag; + CompoundTag dataTag; if(!stack.hasTag()){ return battery.capacity; // new battery starts with 100% charge } else { @@ -50,7 +50,7 @@ public float getEnergy(ItemStack stack) { @Override public void setEnergy(ItemStack stack, float energy){ if(stack.getItem() instanceof BatteryItem){ - CompoundNBT dataTag; + CompoundTag dataTag; dataTag = stack.getOrCreateTag(); dataTag.putFloat("energy", energy); stack.setTag(dataTag); @@ -66,7 +66,7 @@ public void setEnergy(ItemStack stack, float energy){ public float addEnergy(ItemStack stack, float energy, ConduitType type){ if(ConduitType.areSameType(type, Power.ELECTRIC_POWER) && stack.getItem() instanceof BatteryItem){ BatteryItem battery = (BatteryItem)stack.getItem(); - CompoundNBT dataTag; + CompoundTag dataTag; dataTag = stack.getOrCreateTag(); float currentEnergy; if(dataTag.contains("energy", 99)){ @@ -95,15 +95,15 @@ public ConduitType getEnergyType(){ } @Override - public void appendHoverText(ItemStack stack, World world, List list, ITooltipFlag flag){ + public void appendHoverText(ItemStack stack, Level world, List list, TooltipFlag flag){ super.appendHoverText(stack, world, list, flag); float max = getMaxEnergy(stack); if(max <= 0) return; // not a battery! float e = getEnergy(stack); - list.add(new StringTextComponent(nf.format(100 * e / max) + "% ") - .append(new TranslationTextComponent("tooltip.battery.charge"))); - list.add(new StringTextComponent("(" + nf.format(max) + "kJ ") - .append(new TranslationTextComponent("tooltip.battery.capacity")) + list.add(new TextComponent(nf.format(100 * e / max) + "% ") + .append(new TranslatableComponent("tooltip.battery.charge"))); + list.add(new TextComponent("(" + nf.format(max) + "kJ ") + .append(new TranslatableComponent("tooltip.battery.capacity")) .append(")")); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java index 63de1b5..7f9f951 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java @@ -1,7 +1,7 @@ package zone.moddev.mc.electricadvantage.machines; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricBatteryArrayBlock extends ElectricGeneratorBlock { @@ -10,8 +10,8 @@ public ElectricBatteryArrayBlock(){ } @Override - public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricBatteryArrayTileEntity(); + public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricBatteryArrayTileEntity(pos, state); } @Override public boolean isPowerSink(ConduitType e){ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java index 1a92d85..0654208 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java @@ -4,14 +4,14 @@ import zone.moddev.mc.electricadvantage.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; public class ElectricBatteryArrayTileEntity extends ElectricGeneratorTileEntity{ - public ElectricBatteryArrayTileEntity(){ - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_BATTERY_ARRAY, "tile.electricadvantage.electric_battery_array.name",8); + public ElectricBatteryArrayTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state){ + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_BATTERY_ARRAY, pos, state, "tile.electricadvantage.electric_battery_array.name",8); } @@ -168,12 +168,12 @@ protected boolean isValidInputItem(ItemStack item) { } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { // do nothing (inventory already handled } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { // do nothing (inventory already handled } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java index ed5e003..48af95d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricCrusherBlock extends ElectricMachineBlock{ // NOTE: If a block's meta value goes above 0xF, then the block turns into a different block when it state changes @@ -9,8 +9,8 @@ public ElectricCrusherBlock(){ } @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricCrusherTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricCrusherTileEntity(pos, state); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java index e6b34cb..59c56de 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java @@ -2,11 +2,11 @@ import zone.moddev.mc.electricadvantage.compat.BaseMetalsCompat; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.nbt.ListNBT; -import net.minecraft.nbt.ShortNBT; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.ShortTag; import java.util.Arrays; @@ -21,8 +21,8 @@ public class ElectricCrusherTileEntity extends ElectricMachineTileEntity{ private final short totalSmashTime = 200; - public ElectricCrusherTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_CRUSHER, "tile.electricadvantage.electric_crusher.name", + public ElectricCrusherTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_CRUSHER, pos, state, "tile.electricadvantage.electric_crusher.name", 3, 6, 0); Arrays.fill(smashTime, (short)0); } @@ -100,19 +100,19 @@ public float[] getProgress() { @Override - protected void saveTo(CompoundNBT tagRoot) { - ListNBT times = new ListNBT(); + protected void saveTo(CompoundTag tagRoot) { + ListTag times = new ListTag(); for(int i = 0; i < numberOfInputSlots(); i++){ - times.add(ShortNBT.valueOf(smashTime[i])); + times.add(ShortTag.valueOf(smashTime[i])); } tagRoot.put("smashTime", times); } @Override - protected void loadFrom(CompoundNBT tagRoot) { - ListNBT times = tagRoot.getList("smashTime", 2); + protected void loadFrom(CompoundTag tagRoot) { + ListTag times = tagRoot.getList("smashTime", 2); for(int i = 0; i < numberOfInputSlots() && i < times.size(); i++){ - smashTime[i] = ((ShortNBT)times.get(i)).getAsShort(); + smashTime[i] = ((ShortTag)times.get(i)).getAsShort(); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java index 626c3e2..b37fedc 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java @@ -5,24 +5,24 @@ import cyano.poweradvantage.api.ITypedConduit; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PoweredEntity; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.entity.LivingEntity; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.InventoryHelper; -import net.minecraft.item.BlockItemUseContext; -import net.minecraft.item.ItemStack; -import net.minecraft.state.BooleanProperty; -import net.minecraft.state.DirectionProperty; -import net.minecraft.state.StateContainer; -import net.minecraft.state.properties.BlockStateProperties; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.Explosion; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.Container; +import net.minecraft.world.Containers; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.properties.DirectionProperty; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; import zone.moddev.mc.electricadvantage.init.Power; import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; @@ -40,17 +40,17 @@ public ElectricDrillBlock() { } @Override - protected void createBlockStateDefinition(StateContainer.Builder builder) { + protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(ACTIVE, FACING); } @Override - public ElectricMachineTileEntity newBlockEntity(IBlockReader world) { - return new ElectricDrillTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricDrillTileEntity(pos, state); } @Override - public void onPlace(BlockState state, World world, BlockPos pos, BlockState oldState, boolean isMoving) { + public void onPlace(BlockState state, Level world, BlockPos pos, BlockState oldState, boolean isMoving) { super.onPlace(state, world, pos, oldState, isMoving); if (state.getBlock() == oldState.getBlock()) return; ConduitRegistry.getInstance().conduitBlockPlacedEvent( @@ -58,13 +58,13 @@ public void onPlace(BlockState state, World world, BlockPos pos, BlockState oldS } @Override - public void onRemove(BlockState state, World world, BlockPos pos, BlockState newState, boolean isMoving) { + public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean isMoving) { if (state.getBlock() != newState.getBlock()) { ConduitRegistry.getInstance().conduitBlockRemovedEvent( world, pos, Power.ELECTRIC_POWER); - TileEntity tile = world.getBlockEntity(pos); - if (tile instanceof IInventory) { - InventoryHelper.dropContents(world, pos, (IInventory) tile); + BlockEntity tile = world.getBlockEntity(pos); + if (tile instanceof Container) { + Containers.dropContents(world, pos, (Container) tile); world.updateNeighbourForOutputSignal(pos, this); } } @@ -72,7 +72,7 @@ public void onRemove(BlockState state, World world, BlockPos pos, BlockState new } @Override - public void wasExploded(World world, BlockPos pos, Explosion explosion) { + public void wasExploded(Level world, BlockPos pos, Explosion explosion) { ConduitRegistry.getInstance().conduitBlockRemovedEvent( world, pos, Power.ELECTRIC_POWER); super.wasExploded(world, pos, explosion); @@ -99,15 +99,15 @@ public boolean canAcceptConnection(PowerConnectorContext connection) { } @Override - public BlockState getStateForPlacement(BlockItemUseContext context) { + public BlockState getStateForPlacement(BlockPlaceContext context) { return defaultBlockState().setValue(FACING, context.getClickedFace().getOpposite()); } @Override - public void setPlacedBy(World world, BlockPos pos, BlockState state, + public void setPlacedBy(Level world, BlockPos pos, BlockState state, LivingEntity placer, ItemStack stack) { if (stack.hasCustomHoverName()) { - TileEntity tile = world.getBlockEntity(pos); + BlockEntity tile = world.getBlockEntity(pos); if (tile instanceof PoweredEntity) { ((PoweredEntity) tile).setCustomInventoryName(stack.getHoverName().getString()); } @@ -126,8 +126,8 @@ public int getLegacyMetaFromState(BlockState state) { } @Override - public int getAnalogOutputSignal(BlockState state, World world, BlockPos pos) { - TileEntity tile = world.getBlockEntity(pos); + public int getAnalogOutputSignal(BlockState state, Level world, BlockPos pos) { + BlockEntity tile = world.getBlockEntity(pos); return tile instanceof ElectricMachineTileEntity ? ((ElectricMachineTileEntity) tile).getComparatorOutput() : 0; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java index c9a1fd1..c76a5cb 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java @@ -3,24 +3,24 @@ import zone.moddev.mc.electricadvantage.init.Blocks; import zone.moddev.mc.electricadvantage.init.Power; import zone.moddev.mc.poweradvantage.util.InventoryWrapper; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.entity.Entity; -import net.minecraft.entity.LivingEntity; -import net.minecraft.util.SoundEvents; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.ISidedInventory; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.nbt.ListNBT; -import net.minecraft.nbt.NBTUtil; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.Direction; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.MathHelper; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.Container; +import net.minecraft.world.WorldlyContainer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.AABB; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; @@ -42,15 +42,15 @@ public class ElectricDrillTileEntity extends ElectricMachineTileEntity{ private int progressGoal = 0; private BlockPos targetBlockCoord = null; private Block[] targetBlocks = null; - private ListNBT savedTargetStates = null; + private ListTag savedTargetStates = null; private List targetBlockItems = null; private int laserLength = 0; private boolean deferred = false; - public ElectricDrillTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_DRILL, "tile.electricadvantage.electric_drill.name", + public ElectricDrillTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_DRILL, pos, state, "tile.electricadvantage.electric_drill.name", 0, 6, 0); } @@ -95,7 +95,7 @@ public void tickUpdate(boolean isServerWorld) { BlockPos[] targets = this.getArea(targetBlockCoord); for(int i = 0; i < targets.length; i++) if(canMine(targets[i])){ - getLevel().setBlock(targets[i], net.minecraft.block.Blocks.AIR.defaultBlockState(), 3); + getLevel().setBlock(targets[i], net.minecraft.world.level.block.Blocks.AIR.defaultBlockState(), 3); } for(ItemStack item : targetBlockItems){ addItem(item); @@ -148,14 +148,13 @@ private boolean followTrack(){ // clone this block into neighboring block this.untargetBlock(); - World w = getLevel(); + Level w = getLevel(); BlockPos nextPos = getBlockPos().relative(trackDir); w.setBlock(nextPos, w.getBlockState(getBlockPos()), 2); ElectricDrillTileEntity te = (ElectricDrillTileEntity)w.getBlockEntity(nextPos); - CompoundNBT dataTransfer = new CompoundNBT(); + CompoundTag dataTransfer = new CompoundTag(); this.save(dataTransfer); - te.load(w.getBlockState(nextPos), dataTransfer); - te.setPosition(nextPos); + te.load(dataTransfer); te.clearRemoved(); te.subtractEnergy(ENERGY_COST_MOVE, getEnergyType()); te.setChanged(); @@ -287,7 +286,7 @@ public void onDataFieldUpdate() { // fry any idiots who stand in the laser's path if(isActive() && targetBlocks != null && targetBlockCoord != null){ BlockPos pos = getBlockPos(); - AxisAlignedBB beamArea = new AxisAlignedBB(targetBlockCoord.getX(),targetBlockCoord.getY(),targetBlockCoord.getZ(), + AABB beamArea = new AABB(targetBlockCoord.getX(),targetBlockCoord.getY(),targetBlockCoord.getZ(), pos.getX()+1,pos.getY()+1,pos.getZ()+1); List victims = getLevel().getEntitiesOfClass(LivingEntity.class, beamArea); for(Entity e : victims){ @@ -318,14 +317,14 @@ private void targetBlock (BlockPos pos){ targetBlockCoord = pos; progressGoal = 0; targetBlocks = new Block[targets.length]; - savedTargetStates = new ListNBT(); + savedTargetStates = new ListTag(); targetBlockItems = new ArrayList<>(targets.length); for(int i = 0; i < targets.length; i++){ targetBlocks[i] = getLevel().getBlockState(targets[i]).getBlock(); - savedTargetStates.add(NBTUtil.writeBlockState(getLevel().getBlockState(targets[i]))); + savedTargetStates.add(NbtUtils.writeBlockState(getLevel().getBlockState(targets[i]))); progressGoal += this.getBlockStrength(targets[i]); targetBlockItems.addAll(Block.getDrops(getLevel().getBlockState(targets[i]), - (ServerWorld) getLevel(), targets[i], getLevel().getBlockEntity(targets[i]))); + (ServerLevel) getLevel(), targets[i], getLevel().getBlockEntity(targets[i]))); } deferred = false; } @@ -339,7 +338,7 @@ private void restoreTargetBlock(){ return; } for(int i = 0; i < targets.length; i++){ - if(!savedTargetStates.getCompound(i).equals(NBTUtil.writeBlockState(getLevel().getBlockState(targets[i])))){ + if(!savedTargetStates.getCompound(i).equals(NbtUtils.writeBlockState(getLevel().getBlockState(targets[i])))){ untargetBlock(); return; } @@ -439,9 +438,9 @@ private int getBlockStrength(BlockPos coord){ private void inventoryTransfer(BlockPos adj, Direction otherFace) { ItemStack[] inventory = this.getInventory(); - TileEntity te = getLevel().getBlockEntity(adj); - if(te instanceof IInventory ){ - ISidedInventory inv = InventoryWrapper.wrap((IInventory)te); + BlockEntity te = getLevel().getBlockEntity(adj); + if(te instanceof Container ){ + WorldlyContainer inv = InventoryWrapper.wrap((Container)te); int[] accessibleSlots = inv.getSlotsForFace(otherFace); if(accessibleSlots.length == 0) return; for(int mySlot = 0; mySlot < inventory.length; mySlot++){ @@ -489,7 +488,7 @@ public float getProgressLevel(){ @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putShort("progress",(short)progress); if(targetBlockCoord != null){ tagRoot.putInt("targetX", targetBlockCoord.getX()); @@ -500,7 +499,7 @@ protected void saveTo(CompoundNBT tagRoot) { } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { untargetBlock(); if(tagRoot.contains("progress", 99)){ progress = tagRoot.getShort("progress"); @@ -547,9 +546,9 @@ public boolean isActive(){ // Helps with laser rendering final private int renderRange = MAX_RANGE * 2; @OnlyIn(Dist.CLIENT) - public AxisAlignedBB getRenderBoundingBox() + public AABB getRenderBoundingBox() { - return new AxisAlignedBB(getBlockPos().offset(-renderRange, -renderRange, -renderRange), getBlockPos().offset(renderRange, renderRange, renderRange)); + return new AABB(getBlockPos().offset(-renderRange, -renderRange, -renderRange), getBlockPos().offset(renderRange, renderRange, renderRange)); //return super.INFINITE_EXTENT_AABB; } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java index 900d894..28f6a3f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java @@ -1,12 +1,12 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricFabricatorBlock extends ElectricMachineBlock{ @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricFabricatorTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricFabricatorTileEntity(pos, state); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java index 813cec3..fc21eb0 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java @@ -2,9 +2,9 @@ import zone.moddev.mc.electricadvantage.util.crafting.RecipeDeconstructor; import zone.moddev.mc.electricadvantage.util.crafting.SerializedInventory; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; import java.util.Arrays; import java.util.List; @@ -18,8 +18,8 @@ public class ElectricFabricatorTileEntity extends ElectricMachineTileEntity { private int progress; private final int progressGoal = 200; - public ElectricFabricatorTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FABRICATOR, "tile.electricadvantage.electric_fabricator.name", 12, 2, 1); + public ElectricFabricatorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FABRICATOR, pos, state, "tile.electricadvantage.electric_fabricator.name", 12, 2, 1); } @@ -160,13 +160,13 @@ public float[] getProgress() { } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putShort("progress", (short)progress); tagRoot.putByte("FSM", (byte)state.ordinal()); } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { if(tagRoot.contains("progress", 99)){ this.progress = tagRoot.getShort("progress"); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java index 0b670c3..d9ec45b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricFurnaceBlock extends ElectricMachineBlock{ @@ -9,8 +9,8 @@ public ElectricFurnaceBlock(){ } @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricFurnaceTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricFurnaceTileEntity(pos, state); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java index 7b18f0f..e3dbf6c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java @@ -3,10 +3,10 @@ import java.util.Arrays; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.nbt.ListNBT; -import net.minecraft.nbt.ShortNBT; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.ShortTag; public class ElectricFurnaceTileEntity extends ElectricMachineTileEntity{ @@ -19,8 +19,8 @@ public class ElectricFurnaceTileEntity extends ElectricMachineTileEntity{ private final short totalBurnTime = 200; - public ElectricFurnaceTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FURNACE, "tile.electricadvantage.electric_furnace.name", + public ElectricFurnaceTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FURNACE, pos, state, "tile.electricadvantage.electric_furnace.name", 4, 6, 0); Arrays.fill(burnTime, (short)0); } @@ -96,19 +96,19 @@ public float[] getProgress() { @Override - protected void saveTo(CompoundNBT tagRoot) { - ListNBT burnTimes = new ListNBT(); + protected void saveTo(CompoundTag tagRoot) { + ListTag burnTimes = new ListTag(); for(int i = 0; i < numberOfInputSlots(); i++){ - burnTimes.add(ShortNBT.valueOf(burnTime[i])); + burnTimes.add(ShortTag.valueOf(burnTime[i])); } tagRoot.put("cookTime", burnTimes); } @Override - protected void loadFrom(CompoundNBT tagRoot) { - ListNBT burnTimes = tagRoot.getList("cookTime", 2); + protected void loadFrom(CompoundTag tagRoot) { + ListTag burnTimes = tagRoot.getList("cookTime", 2); for(int i = 0; i < numberOfInputSlots() && i < burnTimes.size(); i++){ - burnTime[i] = ((ShortNBT)burnTimes.get(i)).getAsShort(); + burnTime[i] = ((ShortTag)burnTimes.get(i)).getAsShort(); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java index 10dbbf1..dbe3c07 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java @@ -2,18 +2,18 @@ import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.InventoryHelper; -import net.minecraft.state.BooleanProperty; -import net.minecraft.state.StateContainer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.Container; +import net.minecraft.world.Containers; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; import zone.moddev.mc.electricadvantage.init.Power; public abstract class ElectricGeneratorBlock extends BlockSimplePowerMachine { @@ -40,7 +40,7 @@ private void initializeDefaultState() { } @Override - protected void createBlockStateDefinition(StateContainer.Builder builder) { + protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(ACTIVE, FACING); } @@ -56,11 +56,11 @@ public int getLegacyMetaFromState(BlockState state) { } @Override - public abstract ElectricGeneratorTileEntity newBlockEntity(IBlockReader world); + public abstract ElectricGeneratorTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state); @Override - public int getAnalogOutputSignal(BlockState state, World world, BlockPos pos) { - TileEntity tile = world.getBlockEntity(pos); + public int getAnalogOutputSignal(BlockState state, Level world, BlockPos pos) { + BlockEntity tile = world.getBlockEntity(pos); return tile instanceof ElectricGeneratorTileEntity ? ((ElectricGeneratorTileEntity) tile).getComparatorOutput() : 0; } @@ -71,12 +71,12 @@ public boolean hasAnalogOutputSignal(BlockState state) { } @Override - public void onRemove(BlockState state, World world, BlockPos pos, BlockState newState, boolean isMoving) { + public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean isMoving) { if (state.getBlock() != newState.getBlock()) { - TileEntity tile = world.getBlockEntity(pos); - if (tile instanceof IInventory) { - InventoryHelper.dropContents(world, pos, (IInventory) tile); - ((IInventory) tile).clearContent(); + BlockEntity tile = world.getBlockEntity(pos); + if (tile instanceof Container) { + Containers.dropContents(world, pos, (Container) tile); + ((Container) tile).clearContent(); world.updateNeighbourForOutputSignal(pos, this); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java index 6e55ebb..1bc9331 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java @@ -2,20 +2,20 @@ import zone.moddev.mc.electricadvantage.init.Power; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.block.BlockState; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.network.play.server.SPlaySoundPacket; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.Direction; -import net.minecraft.util.SoundCategory; -import net.minecraft.util.SoundEvent; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.tileentity.TileEntityType; -import net.minecraft.world.World; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.player.Player; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.protocol.game.ClientboundCustomSoundPacket; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.Direction; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.phys.AABB; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.Level; import zone.moddev.mc.electricadvantage.ElectricAdvantage; import java.util.Arrays; @@ -26,8 +26,8 @@ public abstract class ElectricGeneratorTileEntity extends cyano.poweradvantage.a private final int[] inputSlots; - public ElectricGeneratorTileEntity(TileEntityType tileType, String name,int numInputSlots) { - super(tileType, Power.ELECTRIC_POWER, 1000, name); + public ElectricGeneratorTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name,int numInputSlots) { + super(tileType, pos, state, Power.ELECTRIC_POWER, 1000, name); inventory = new ItemStack[numInputSlots]; inputSlots = new int[numInputSlots]; for(int i = 0; i < inventory.length; i++){ @@ -35,8 +35,8 @@ public ElectricGeneratorTileEntity(TileEntityType tileType, String name,int n } } - public ElectricGeneratorTileEntity(TileEntityType tileType, String name,int numInputSlots, ConduitType[] types, float[] energyBuffers) { - super(tileType, types, energyBuffers, name); + public ElectricGeneratorTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name,int numInputSlots, ConduitType[] types, float[] energyBuffers) { + super(tileType, pos, state, types, energyBuffers, name); inventory = new ItemStack[numInputSlots]; inputSlots = new int[numInputSlots]; for(int i = 0; i < inventory.length; i++){ @@ -81,16 +81,16 @@ protected void setActive(boolean active){ protected void playSoundEffect(double x, double y, double z, SoundEvent sound, float volume, float pitch){ if(getLevel().isClientSide) return; final double range = 16; - AxisAlignedBB bounds = new AxisAlignedBB( + AABB bounds = new AABB( x - range, y - range, z - range, x + range, y + range, z + range); // A world-wide entity query can load chunks just to broadcast a sound. - for(PlayerEntity candidate : getLevel().players()){ - if(!(candidate instanceof ServerPlayerEntity)) continue; - ServerPlayerEntity player = (ServerPlayerEntity)candidate; + for(Player candidate : getLevel().players()){ + if(!(candidate instanceof ServerPlayer)) continue; + ServerPlayer player = (ServerPlayer)candidate; if(player.connection == null || player.isSpectator() || !player.getBoundingBox().intersects(bounds)) continue; - player.connection.send(new SPlaySoundPacket(sound.getRegistryName(), SoundCategory.BLOCKS, - new net.minecraft.util.math.vector.Vector3d(x, y, z), volume, pitch)); + player.connection.send(new ClientboundCustomSoundPacket(sound.getRegistryName(), SoundSource.BLOCKS, + new net.minecraft.world.phys.Vec3(x, y, z), volume, pitch)); } } @@ -179,20 +179,20 @@ public int getComparatorOutput(){ @Override - public CompoundNBT save(CompoundNBT tagRoot){ + public CompoundTag save(CompoundTag tagRoot){ super.save(tagRoot); saveTo(tagRoot); return tagRoot; } @Override - public void load(BlockState state, CompoundNBT tagRoot){ - super.load(state, tagRoot); + public void load(CompoundTag tagRoot){ + super.load(tagRoot); loadFrom(tagRoot); } - protected abstract void saveTo(CompoundNBT tagRoot); - protected abstract void loadFrom(CompoundNBT tagRoot); + protected abstract void saveTo(CompoundTag tagRoot); + protected abstract void loadFrom(CompoundTag tagRoot); @Override public int getMaxStackSize(){return 64;} } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java index 86a8968..81503a6 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java @@ -2,18 +2,18 @@ import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.InventoryHelper; -import net.minecraft.state.BooleanProperty; -import net.minecraft.state.StateContainer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.Container; +import net.minecraft.world.Containers; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; import zone.moddev.mc.electricadvantage.init.Power; public abstract class ElectricMachineBlock extends BlockSimplePowerMachine { @@ -46,7 +46,7 @@ public ElectricMachineBlock(Material material) { } @Override - protected void createBlockStateDefinition(StateContainer.Builder builder) { + protected void createBlockStateDefinition(StateDefinition.Builder builder) { builder.add(ACTIVE, FACING, POWERED); } @@ -85,11 +85,11 @@ private static Direction metaToFacing(int meta) { } @Override - public abstract ElectricMachineTileEntity newBlockEntity(IBlockReader world); + public abstract ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state); @Override - public int getAnalogOutputSignal(BlockState state, World world, BlockPos pos) { - TileEntity tile = world.getBlockEntity(pos); + public int getAnalogOutputSignal(BlockState state, Level world, BlockPos pos) { + BlockEntity tile = world.getBlockEntity(pos); return tile instanceof ElectricMachineTileEntity ? ((ElectricMachineTileEntity) tile).getComparatorOutput() : 0; } @@ -100,12 +100,12 @@ public boolean hasAnalogOutputSignal(BlockState state) { } @Override - public void onRemove(BlockState state, World world, BlockPos pos, BlockState newState, boolean isMoving) { + public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean isMoving) { if (state.getBlock() != newState.getBlock()) { - TileEntity tile = world.getBlockEntity(pos); - if (tile instanceof IInventory) { - InventoryHelper.dropContents(world, pos, (IInventory) tile); - ((IInventory) tile).clearContent(); + BlockEntity tile = world.getBlockEntity(pos); + if (tile instanceof Container) { + Containers.dropContents(world, pos, (Container) tile); + ((Container) tile).clearContent(); world.updateNeighbourForOutputSignal(pos, this); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java index 0f9feb7..028ec2b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java @@ -2,24 +2,24 @@ import zone.moddev.mc.electricadvantage.init.Power; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.block.BlockState; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.inventory.Inventory; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.network.play.server.SPlaySoundPacket; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.tileentity.TileEntityType; -import net.minecraft.util.Direction; -import net.minecraft.util.SoundCategory; -import net.minecraft.util.SoundEvent; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.text.StringTextComponent; -import net.minecraft.world.World; -import net.minecraft.item.crafting.IRecipeType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.player.Player; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.SimpleContainer; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.protocol.game.ClientboundCustomSoundPacket; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.core.Direction; +import net.minecraft.sounds.SoundSource; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.phys.AABB; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.TextComponent; +import net.minecraft.world.level.Level; +import net.minecraft.world.item.crafting.RecipeType; import zone.moddev.mc.electricadvantage.ElectricAdvantage; import java.util.Arrays; @@ -34,12 +34,12 @@ public abstract class ElectricMachineTileEntity extends cyano.poweradvantage.api - public ElectricMachineTileEntity(TileEntityType tileType, String name,float bufferSize,int numInputSlots, int numOutputSlots, int numOtherSlots) { - this(tileType,name,Power.ELECTRIC_POWER,bufferSize,numInputSlots,numOutputSlots,numOtherSlots); + public ElectricMachineTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name,float bufferSize,int numInputSlots, int numOutputSlots, int numOtherSlots) { + this(tileType, pos, state,name,Power.ELECTRIC_POWER,bufferSize,numInputSlots,numOutputSlots,numOtherSlots); } - public ElectricMachineTileEntity(TileEntityType tileType, String name, ConduitType powerType, float bufferSize,int numInputSlots, int numOutputSlots, int numOtherSlots) { - super(tileType, powerType, bufferSize, name); + public ElectricMachineTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name, ConduitType powerType, float bufferSize,int numInputSlots, int numOutputSlots, int numOtherSlots) { + super(tileType, pos, state, powerType, bufferSize, name); inventory = new ItemStack[numInputSlots+numOutputSlots+numOtherSlots]; inputSlots = new int[numInputSlots]; outputSlots = new int[numOutputSlots]; @@ -52,11 +52,11 @@ public ElectricMachineTileEntity(TileEntityType tileType, String name, Condui if(i < otherSlots.length)otherSlots[i] = inputSlots.length + outputSlots.length + i; } } - public ElectricMachineTileEntity(TileEntityType tileType, String name,int numInputSlots, int numOutputSlots, int numOtherSlots) { - this(tileType,name,500f,numInputSlots,numOutputSlots,numOtherSlots); + public ElectricMachineTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name,int numInputSlots, int numOutputSlots, int numOtherSlots) { + this(tileType, pos, state,name,500f,numInputSlots,numOutputSlots,numOtherSlots); } - public ElectricMachineTileEntity(TileEntityType tileType, String name,int numInputSlots, int numOutputSlots, int numOtherSlots, ConduitType[] energyTypes, float[] energyBuffers) { - super(tileType, energyTypes, energyBuffers, name); + public ElectricMachineTileEntity(BlockEntityType tileType, net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state, String name,int numInputSlots, int numOutputSlots, int numOtherSlots, ConduitType[] energyTypes, float[] energyBuffers) { + super(tileType, pos, state, energyTypes, energyBuffers, name); inventory = new ItemStack[numInputSlots+numOutputSlots+numOtherSlots]; inputSlots = new int[numInputSlots]; outputSlots = new int[numOutputSlots]; @@ -224,32 +224,32 @@ protected static boolean areItemStacksEqualNullable(ItemStack left, ItemStack ri protected ItemStack getSmeltingResult(ItemStack input) { if (isEmptyStack(input) || getLevel() == null) return ItemStack.EMPTY; - Inventory inventory = new Inventory(1); + SimpleContainer inventory = new SimpleContainer(1); inventory.setItem(0, input); - return getLevel().getRecipeManager().getRecipeFor(IRecipeType.SMELTING, inventory, getLevel()) + return getLevel().getRecipeManager().getRecipeFor(RecipeType.SMELTING, inventory, getLevel()) .map(recipe -> recipe.assemble(inventory)).orElse(ItemStack.EMPTY); } @Override - public CompoundNBT save(CompoundNBT tagRoot){ + public CompoundTag save(CompoundTag tagRoot){ super.save(tagRoot); saveTo(tagRoot); return tagRoot; } @Override - public CompoundNBT getUpdateTag() { - return save(new CompoundNBT()); + public CompoundTag getUpdateTag() { + return save(new CompoundTag()); } @Override - public void load(BlockState state, CompoundNBT tagRoot){ - super.load(state, tagRoot); + public void load(CompoundTag tagRoot){ + super.load(tagRoot); loadFrom(tagRoot); } - protected abstract void saveTo(CompoundNBT tagRoot); - protected abstract void loadFrom(CompoundNBT tagRoot); + protected abstract void saveTo(CompoundTag tagRoot); + protected abstract void loadFrom(CompoundTag tagRoot); @Override @@ -350,16 +350,16 @@ public ItemStack insertItemToInputSlots(ItemStack itemStack){ protected void playSoundEffect(double x, double y, double z, SoundEvent sound, float volume, float pitch){ if(getLevel().isClientSide) return; final double range = 16; - AxisAlignedBB bounds = new AxisAlignedBB( + AABB bounds = new AABB( x - range, y - range, z - range, x + range, y + range, z + range); // A world-wide entity query can load chunks just to broadcast a sound. - for(PlayerEntity candidate : getLevel().players()){ - if(!(candidate instanceof ServerPlayerEntity)) continue; - ServerPlayerEntity player = (ServerPlayerEntity)candidate; + for(Player candidate : getLevel().players()){ + if(!(candidate instanceof ServerPlayer)) continue; + ServerPlayer player = (ServerPlayer)candidate; if(player.connection == null || player.isSpectator() || !player.getBoundingBox().intersects(bounds)) continue; - player.connection.send(new SPlaySoundPacket(sound.getRegistryName(), SoundCategory.BLOCKS, - new net.minecraft.util.math.vector.Vector3d(x, y, z), volume, pitch)); + player.connection.send(new ClientboundCustomSoundPacket(sound.getRegistryName(), SoundSource.BLOCKS, + new net.minecraft.world.phys.Vec3(x, y, z), volume, pitch)); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java index 1e28d8f..8992a93 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricOvenBlock extends ElectricMachineBlock{ @@ -9,8 +9,8 @@ public ElectricOvenBlock(){ } @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricOvenTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricOvenTileEntity(pos, state); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java index 4ef0441..1c1c743 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java @@ -1,10 +1,10 @@ package zone.moddev.mc.electricadvantage.machines; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; public class ElectricOvenTileEntity extends ElectricMachineTileEntity{ @@ -13,8 +13,8 @@ public class ElectricOvenTileEntity extends ElectricMachineTileEntity{ private final short totalCookTime = 100; private short progress = 0; - public ElectricOvenTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_OVEN, "tile.electricadvantage.electric_oven.name", 1, 1, 0); + public ElectricOvenTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_OVEN, pos, state, "tile.electricadvantage.electric_oven.name", 1, 1, 0); } @Override @@ -75,12 +75,12 @@ public float[] getProgress() { } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putShort("cookTime", progress); } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { if(tagRoot.contains("cookTime", 99)){ progress = tagRoot.getShort("cookTime"); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java index fcd654e..649a0d1 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java @@ -6,16 +6,16 @@ import cyano.poweradvantage.api.PowerConnectorContext; import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; import zone.moddev.mc.poweradvantage.init.Fluids; -import net.minecraft.block.BlockState; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.Explosion; -import net.minecraft.world.World; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.Level; public class ElectricPumpBlock extends ElectricMachineBlock{ @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricPumpTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricPumpTileEntity(pos, state); } ///// Overrides to make this a multi-type block ///// @@ -24,7 +24,7 @@ public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader * This method is called whenever the block is placed into the world */ @Override - public void onRemove(BlockState state, World w, BlockPos coord, BlockState newState, boolean isMoving) { + public void onRemove(BlockState state, Level w, BlockPos coord, BlockState newState, boolean isMoving) { if (state.getBlock() != newState.getBlock()) destroyPipe(w, coord); super.onRemove(state, w, coord, newState, isMoving); } @@ -32,18 +32,18 @@ public void onRemove(BlockState state, World w, BlockPos coord, BlockState newSt * This method is called when the block is destroyed by an explosion. */ @Override - public void wasExploded(World w, BlockPos coord, Explosion boom){ + public void wasExploded(Level w, BlockPos coord, Explosion boom){ destroyPipe(w,coord); super.wasExploded(w, coord, boom); } - private void destroyPipe(World w, BlockPos coord) { + private void destroyPipe(Level w, BlockPos coord) { if(w.isClientSide) return; // destroy connected drill bits BlockPos c = coord.below(); while(c.getY() > 0 && w.getBlockState(c).getBlock() == Blocks.pump_pipe_electric){ - w.setBlockAndUpdate(c, net.minecraft.block.Blocks.AIR.defaultBlockState()); + w.setBlockAndUpdate(c, net.minecraft.world.level.block.Blocks.AIR.defaultBlockState()); c = c.below(); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java index 4e474ce..d814b4e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java @@ -8,15 +8,15 @@ import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; import zone.moddev.mc.poweradvantage.init.Fluids; import zone.moddev.mc.poweradvantage.util.FluidIdHelper; -import net.minecraft.block.BlockState; -import net.minecraft.block.IBucketPickupHandler; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraft.fluid.Fluid; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.BucketPickup; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.Fluid; import cyano.poweradvantage.api.fluid.FluidStack; import cyano.poweradvantage.api.fluid.FluidTank; import cyano.poweradvantage.api.fluid.FluidTankInfo; @@ -43,8 +43,8 @@ public class ElectricPumpTileEntity extends ElectricMachineTileEntity implements - public ElectricPumpTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_PUMP, "tile.electricadvantage.electric_pump.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{ENERGY_COST_PUMP + 256 * ENERGY_COST_VERTICAL,1000f}); + public ElectricPumpTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_PUMP, pos, state, "tile.electricadvantage.electric_pump.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{ENERGY_COST_PUMP + 256 * ENERGY_COST_VERTICAL,1000f}); tank = new FluidTank(FluidTank.BUCKET_VOLUME); } @@ -58,7 +58,7 @@ public void tickUpdate(boolean isServerWorld) { if(!hasRedstoneSignal()){ if(timeUntilNextPump > 0) timeUntilNextPump--; if(timeUntilNextPump == 0 && getTank().getFluidAmount() <= 0){ - World w = getLevel(); + Level w = getLevel(); boolean success = false; BlockPos target = this.getBlockPos().below(); while(target.getY() > 0 && w.getBlockState(target).getBlock() == zone.moddev.mc.electricadvantage.init.Blocks.pump_pipe_electric){ @@ -83,10 +83,11 @@ public void tickUpdate(boolean isServerWorld) { float cost = ENERGY_COST_PUMP+ENERGY_COST_VERTICAL*(getBlockPos().getY()-fluidSource.getY()); // Found a fluid to suck-up! BlockState blockstate = w.getBlockState(fluidSource); - if(blockstate.getBlock() instanceof IBucketPickupHandler && getEnergy() >= cost){ + if(blockstate.getBlock() instanceof BucketPickup && getEnergy() >= cost){ // Native pickup drains waterlogging without deleting the containing block. - Fluid f = ((IBucketPickupHandler)blockstate.getBlock()).takeLiquid(w, fluidSource, blockstate); - if(f != null && f != net.minecraft.fluid.Fluids.EMPTY){ + Fluid f = blockstate.getFluidState().getType(); + ItemStack pickup = ((BucketPickup)blockstate.getBlock()).pickupBlock(w, fluidSource, blockstate); + if(pickup != null && !pickup.isEmpty() && f != net.minecraft.world.level.material.Fluids.EMPTY){ this.getTank().fill(new FluidStack(f, FluidTank.BUCKET_VOLUME), true); this.subtractEnergy(cost, Power.ELECTRIC_POWER); success = true; @@ -159,13 +160,13 @@ private BlockPos scan(Set searchSpace, BlockPos coord, int limit) { private boolean isSourceBlock( BlockPos coord){ BlockState state = getLevel().getBlockState(coord); - return state.getBlock() instanceof IBucketPickupHandler && state.getFluidState().isSource(); + return state.getBlock() instanceof BucketPickup && state.getFluidState().isSource(); } private boolean isFluidBlock(BlockPos coord) { - World w = getLevel(); + Level w = getLevel(); if(w.hasChunkAt(coord) == false) return false; return !w.getFluidState(coord).isEmpty(); } @@ -234,7 +235,7 @@ public int[] getDataFieldArray() { public void prepareDataFieldsForSync() { dataSyncArray[0] = Float.floatToRawIntBits(this.getEnergy()); dataSyncArray[1] = this.getTank().getFluidAmount(); - dataSyncArray[2] = (this.getTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(this.getTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.fluid.Fluids.WATER)); + dataSyncArray[2] = (this.getTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(this.getTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.world.level.material.Fluids.WATER)); dataSyncArray[3] = this.timeUntilNextPump; } @@ -253,8 +254,8 @@ public void onDataFieldUpdate() { * @param tagRoot An NBT tag */ @Override - public void saveTo(final CompoundNBT tagRoot) { - CompoundNBT tankTag = new CompoundNBT(); + public void saveTo(final CompoundTag tagRoot) { + CompoundTag tankTag = new CompoundTag(); this.getTank().writeToNBT(tankTag); tagRoot.put("Tank", tankTag); tagRoot.putByte("NextPump", (byte)this.timeUntilNextPump); @@ -264,9 +265,9 @@ public void saveTo(final CompoundNBT tagRoot) { * @param tagRoot An NBT tag */ @Override - public void loadFrom(final CompoundNBT tagRoot) { + public void loadFrom(final CompoundTag tagRoot) { if (tagRoot.contains("Tank", 10)) { - CompoundNBT tankTag = tagRoot.getCompound("Tank"); + CompoundTag tankTag = tagRoot.getCompound("Tank"); getTank().readFromNBT(tankTag); if(tankTag.contains("Empty", 1)){ // empty the tank if NBT says its empty (not default behavior of Tank.readFromNBT(...) ) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java index 1d86bcd..a57c726 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java @@ -4,13 +4,13 @@ import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import zone.moddev.mc.poweradvantage.init.Fluids; -import net.minecraft.world.World; +import net.minecraft.world.level.Level; public class ElectricStillBlock extends ElectricMachineBlock{ @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new ElectricStillTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new ElectricStillTileEntity(pos, state); } ///// Overrides to make this a multi-type block ///// diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java index c7d4e3e..37a789f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java @@ -10,11 +10,11 @@ import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipe; import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipeRegistry; import zone.moddev.mc.poweradvantage.util.FluidIdHelper; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.Direction; -import net.minecraft.fluid.Fluid; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.Direction; +import net.minecraft.world.level.material.Fluid; import cyano.poweradvantage.api.fluid.FluidStack; import cyano.poweradvantage.api.fluid.FluidTank; import cyano.poweradvantage.api.fluid.FluidTankInfo; @@ -32,8 +32,8 @@ public class ElectricStillTileEntity extends ElectricMachineTileEntity implement private final int[] dataSyncArray = new int[5]; - public ElectricStillTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_STILL, "tile.electricadvantage.electric_still.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,1000f}); + public ElectricStillTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_STILL, pos, state, "tile.electricadvantage.electric_still.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,1000f}); outputTank = new FluidTank(FluidTank.BUCKET_VOLUME ); inputTank = new FluidTank(FluidTank.BUCKET_VOLUME); } @@ -165,9 +165,9 @@ public int[] getDataFieldArray() { public void prepareDataFieldsForSync() { dataSyncArray[0] = Float.floatToRawIntBits(this.getEnergy()); dataSyncArray[1] = this.getOutputTank().getFluidAmount(); - dataSyncArray[2] = (this.getOutputTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(this.getOutputTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.fluid.Fluids.WATER)); + dataSyncArray[2] = (this.getOutputTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(this.getOutputTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.world.level.material.Fluids.WATER)); dataSyncArray[3] = getInputTank().getFluidAmount(); - dataSyncArray[4] = (getInputTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(getInputTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.fluid.Fluids.WATER)); + dataSyncArray[4] = (getInputTank().getFluidAmount() > 0 ? FluidIdHelper.getFluidId(getInputTank().getFluid().getFluid()) : FluidIdHelper.getFluidId(net.minecraft.world.level.material.Fluids.WATER)); } @Override @@ -184,11 +184,11 @@ public void onDataFieldUpdate() { * @param tagRoot An NBT tag */ @Override - public void saveTo(final CompoundNBT tagRoot) { - CompoundNBT tankTag = new CompoundNBT(); + public void saveTo(final CompoundTag tagRoot) { + CompoundTag tankTag = new CompoundTag(); this.getOutputTank().writeToNBT(tankTag); tagRoot.put("TankOut", tankTag); - CompoundNBT tankTag2 = new CompoundNBT(); + CompoundTag tankTag2 = new CompoundTag(); this.getInputTank().writeToNBT(tankTag2); tagRoot.put("TankIn", tankTag2); } @@ -197,9 +197,9 @@ public void saveTo(final CompoundNBT tagRoot) { * @param tagRoot An NBT tag */ @Override - public void loadFrom(final CompoundNBT tagRoot) { + public void loadFrom(final CompoundTag tagRoot) { if (tagRoot.contains("TankOut", 10)) { - CompoundNBT tankTag = tagRoot.getCompound("TankOut"); + CompoundTag tankTag = tagRoot.getCompound("TankOut"); getOutputTank().readFromNBT(tankTag); if(tankTag.contains("Empty", 1)){ // empty the tank if NBT says its empty (not default behavior of Tank.readFromNBT(...) ) @@ -208,7 +208,7 @@ public void loadFrom(final CompoundNBT tagRoot) { } if (tagRoot.contains("TankIn", 10)) { - CompoundNBT tankTag = tagRoot.getCompound("TankIn"); + CompoundTag tankTag = tagRoot.getCompound("TankIn"); getInputTank().readFromNBT(tankTag); if(tankTag.contains("Empty", 1)){ // empty the tank if NBT says its empty (not default behavior of Tank.readFromNBT(...) ) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java index e48c174..cf66eef 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java @@ -1,8 +1,8 @@ package zone.moddev.mc.electricadvantage.machines; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.block.material.Material; -import net.minecraft.world.World; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.Level; public class GrowthChamberBlock extends ElectricMachineBlock{ @@ -11,7 +11,7 @@ public GrowthChamberBlock(){ } @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new GrowthChamberTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new GrowthChamberTileEntity(pos, state); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java index a5a66d4..a40b17e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java @@ -5,10 +5,10 @@ import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PoweredEntity; import zone.moddev.mc.poweradvantage.init.Fluids; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; /** @@ -25,8 +25,8 @@ public GrowthChamberControllerBlock() { } @Override - public PoweredEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new GrowthChamberControllerTileEntity(); + public PoweredEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new GrowthChamberControllerTileEntity(pos, state); } @Override @@ -35,7 +35,7 @@ public boolean hasAnalogOutputSignal(BlockState bs) { } @Override - public int getAnalogOutputSignal(BlockState bs, World world, BlockPos coord) { + public int getAnalogOutputSignal(BlockState bs, Level world, BlockPos coord) { if(world.getBlockEntity(coord) instanceof GrowthChamberControllerTileEntity){ return ((GrowthChamberControllerTileEntity)world.getBlockEntity(coord)).getComparatorOutput(); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java index 0808c80..8cc6e55 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.block.BlockState; +import net.minecraft.world.level.block.state.BlockState; import zone.moddev.mc.electricadvantage.util.LegacyFluidHandler; import zone.moddev.mc.electricadvantage.init.Power; @@ -9,15 +9,15 @@ import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.fluid.FluidRequest; import zone.moddev.mc.poweradvantage.init.Fluids; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.Direction; -import net.minecraft.fluid.Fluid; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.Direction; +import net.minecraft.world.level.material.Fluid; import cyano.poweradvantage.api.fluid.FluidStack; import cyano.poweradvantage.api.fluid.FluidTank; import cyano.poweradvantage.api.fluid.FluidTankInfo; import net.minecraft.tags.ItemTags; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; public class GrowthChamberControllerTileEntity extends cyano.poweradvantage.api.simple.TileEntitySimplePowerMachine implements LegacyFluidHandler{ @@ -40,8 +40,8 @@ public class GrowthChamberControllerTileEntity extends cyano.poweradvantage.api. private final int[] dataSyncArray = new int[4]; - public GrowthChamberControllerTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER_CONTROLLER, types, capacities, "tile.electricadvantage.growth_chamber_controller.name"); + public GrowthChamberControllerTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER_CONTROLLER, pos, state, types, capacities, "tile.electricadvantage.growth_chamber_controller.name"); tank = new FluidTank((int)capacities[2]); inventory = new ItemStack[1]; } @@ -81,7 +81,7 @@ public void tickUpdate(boolean isServerWorld) { private static boolean isDirt(ItemStack i){ return i != null && !i.isEmpty() - && (i.getItem() == net.minecraft.block.Blocks.DIRT.asItem() + && (i.getItem() == net.minecraft.world.level.block.Blocks.DIRT.asItem() || ItemTags.getAllTags().getTagOrEmpty(new ResourceLocation("forge", "dirt")).contains(i.getItem())); } @@ -179,7 +179,7 @@ public void prepareDataFieldsForSync() { @Override public void onDataFieldUpdate() { this.setEnergy(Float.intBitsToFloat(dataSyncArray[0]), Power.GROWTHCHAMBER_POWER); - this.getTank().setFluid(new FluidStack(net.minecraft.fluid.Fluids.WATER,dataSyncArray[1])); + this.getTank().setFluid(new FluidStack(net.minecraft.world.level.material.Fluids.WATER,dataSyncArray[1])); this.setSoil(Float.intBitsToFloat(dataSyncArray[2])); timeSinceLastPowerRequest = dataSyncArray[3]; } @@ -190,9 +190,9 @@ public void onDataFieldUpdate() { * @param tagRoot An NBT tag */ @Override - public CompoundNBT save(final CompoundNBT tagRoot) { + public CompoundTag save(final CompoundTag tagRoot) { super.save(tagRoot); - CompoundNBT tankTag = new CompoundNBT(); + CompoundTag tankTag = new CompoundTag(); this.getTank().writeToNBT(tankTag); tagRoot.put("Tank", tankTag); tagRoot.putFloat("soil", soil); @@ -203,10 +203,10 @@ public CompoundNBT save(final CompoundNBT tagRoot) { * @param tagRoot An NBT tag */ @Override - public void load(BlockState state, final CompoundNBT tagRoot) { - super.load(state, tagRoot); + public void load(final CompoundTag tagRoot) { + super.load(tagRoot); if (tagRoot.contains("Tank", 10)) { - CompoundNBT tankTag = tagRoot.getCompound("Tank"); + CompoundTag tankTag = tagRoot.getCompound("Tank"); getTank().readFromNBT(tankTag); if(tankTag.contains("Empty", 1)){ // empty the tank if NBT says its empty (not default behavior of Tank.readFromNBT(...) ) @@ -305,7 +305,7 @@ public float subtractEnergy(float amount, ConduitType type){ @Override public PowerRequest getPowerRequest(ConduitType offer) { if(redstone) return PowerRequest.REQUEST_NOTHING; - if(Fluids.conduitTypeToFluid(offer) == net.minecraft.fluid.Fluids.WATER){ + if(Fluids.conduitTypeToFluid(offer) == net.minecraft.world.level.material.Fluids.WATER){ PowerRequest request = new FluidRequest(FluidRequest.MEDIUM_PRIORITY+1, (getTank().getCapacity() - getTank().getFluidAmount()), this); @@ -386,7 +386,7 @@ public FluidStack drain(Direction face, int amount, boolean forReal) { */ @Override public boolean canFill(Direction face, Fluid fluid) { - if(fluid != net.minecraft.fluid.Fluids.WATER) return false; + if(fluid != net.minecraft.world.level.material.Fluids.WATER) return false; if(getTank().getFluid() == null) return true; return getTank().getFluidAmount() <= getTank().getCapacity() && fluid.equals(getTank().getFluid().getFluid()); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java index 507f4e4..867ef63 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java @@ -5,10 +5,10 @@ import zone.moddev.mc.electricadvantage.util.farming.VirtualCrop; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; -import net.minecraft.entity.item.ItemEntity; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; import java.util.Arrays; import java.util.List; @@ -23,8 +23,8 @@ public class GrowthChamberTileEntity extends ElectricMachineTileEntity { private final VirtualCrop[] crops = new VirtualCrop[GROWTH_AREA]; private byte[] pendingGrowth; - public GrowthChamberTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER, "tile.electricadvantage.growth_chamber.name",Power.GROWTHCHAMBER_POWER, ENERGY_PER_TICK*64, GROWTH_AREA, 6, 0); + public GrowthChamberTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER, pos, state, "tile.electricadvantage.growth_chamber.name",Power.GROWTHCHAMBER_POWER, ENERGY_PER_TICK*64, GROWTH_AREA, 6, 0); } @@ -158,7 +158,7 @@ public float[] getProgress() { @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { byte[] growthStages = pendingGrowth == null ? new byte[GROWTH_AREA] : Arrays.copyOf(pendingGrowth, GROWTH_AREA); for(int i = 0; i < growthStages.length; i++){ @@ -171,7 +171,7 @@ protected void saveTo(CompoundNBT tagRoot) { @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { Arrays.fill(crops, null); Arrays.fill(progression, 0); Arrays.fill(progressionMax, 0); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java index cd7c312..b5477b7 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java @@ -1,8 +1,8 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.block.BlockState; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IWorldReader; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.LevelReader; public class HydroelectricGeneratorBlock extends ElectricGeneratorBlock { @@ -11,12 +11,12 @@ public HydroelectricGeneratorBlock(){ } @Override - public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new HydroelectricGeneratorTileEntity(); + public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new HydroelectricGeneratorTileEntity(pos, state); } @Override - public boolean canSurvive(BlockState state, IWorldReader worldIn, BlockPos pos) + public boolean canSurvive(BlockState state, LevelReader worldIn, BlockPos pos) { return super.canSurvive(state, worldIn, pos) && !worldIn.getBlockState(pos.below()).getMaterial().isSolid(); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java index 9c56787..9cfece6 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java @@ -1,9 +1,9 @@ package zone.moddev.mc.electricadvantage.machines; import zone.moddev.mc.electricadvantage.entities.HydroturbineEntity; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.phys.AABB; import java.util.List; import java.util.Random; @@ -19,8 +19,8 @@ public class HydroelectricGeneratorTileEntity extends ElectricGeneratorTileEntit private boolean isInitialized; - public HydroelectricGeneratorTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.HYDROELECTRIC_GENERATOR, "tile.electricadvantage.hydroelectric_generator.name", 0); + public HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.HYDROELECTRIC_GENERATOR, pos, state, "tile.electricadvantage.hydroelectric_generator.name", 0); isInitialized = false; } @@ -32,7 +32,7 @@ public void tickUpdate(boolean isServer) { } if((getLevel().getGameTime() + checkOffset) % checkInterval == 0){ // periodically check if the hydroturbine entity is still present - List turbines = getLevel().getEntitiesOfClass(HydroturbineEntity.class, new AxisAlignedBB( + List turbines = getLevel().getEntitiesOfClass(HydroturbineEntity.class, new AABB( getBlockPos().getX(),getBlockPos().getY()-1,getBlockPos().getZ(), getBlockPos().getX()+1,getBlockPos().getY(),getBlockPos().getZ()+1)); if(turbines == null || turbines.isEmpty()){ @@ -65,12 +65,12 @@ protected boolean isValidInputItem(ItemStack item) { } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putBoolean("initDone", this.isInitialized); } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { if(tagRoot.contains("initDone", 1)){ this.isInitialized = tagRoot.getBoolean("initDone"); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java index c3affba..836ee6f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java @@ -1,17 +1,22 @@ package zone.moddev.mc.electricadvantage.machines; import cyano.poweradvantage.api.ConduitType; -import net.minecraft.block.Block; -import net.minecraft.block.ITileEntityProvider; -import net.minecraft.block.BlockState; -import net.minecraft.state.BooleanProperty; -import net.minecraft.state.StateContainer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.IBlockReader; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.EntityBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BooleanProperty; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import zone.moddev.mc.electricadvantage.init.Entities; import zone.moddev.mc.electricadvantage.blocks.ElectricConduitBlock; /** Electric conduit that consumes a small amount of power to emit light. */ -public class LEDBlock extends ElectricConduitBlock implements ITileEntityProvider { +public class LEDBlock extends ElectricConduitBlock implements EntityBlock { public static final BooleanProperty LIT = BooleanProperty.create("lit"); public LEDBlock() { @@ -23,17 +28,22 @@ public LEDBlock() { } @Override - public TileEntity newBlockEntity(IBlockReader world) { - return new LEDTileEntity(); + public BlockEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new LEDTileEntity(pos, state); } @Override - public int getLightValue(BlockState state, IBlockReader world, net.minecraft.util.math.BlockPos pos) { + public BlockEntityTicker getTicker(Level level, BlockState state, BlockEntityType type) { + return type == Entities.LED ? (world, pos, blockState, tile) -> ((LEDTileEntity) tile).tick() : null; + } + + @Override + public int getLightEmission(BlockState state, BlockGetter world, BlockPos pos) { return state.getBlock() == this && state.getValue(LIT) ? 15 : 0; } @Override - protected void createBlockStateDefinition(StateContainer.Builder builder) { + protected void createBlockStateDefinition(StateDefinition.Builder builder) { super.createBlockStateDefinition(builder); builder.add(LIT); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java index 3d7b669..156c6a9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java @@ -4,17 +4,17 @@ import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.simple.TileEntitySimplePowerMachine; -import net.minecraft.block.BlockState; -import net.minecraft.item.ItemStack; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.ItemStack; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; public class LEDTileEntity extends TileEntitySimplePowerMachine { private static final float ENERGY_COST = 0.125f; - public LEDTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.LED, Power.ELECTRIC_POWER, ENERGY_COST * 4, "tile.electricadvantage.led_bar.name"); + public LEDTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.LED, pos, state, Power.ELECTRIC_POWER, ENERGY_COST * 4, "tile.electricadvantage.led_bar.name"); } private final ItemStack[] none = new ItemStack[0]; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java index b9bd5ed..bab9d29 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java @@ -1,23 +1,23 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.entity.Entity; -import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.shapes.VoxelShape; -import net.minecraft.util.math.shapes.VoxelShapes; -import net.minecraft.util.math.shapes.ISelectionContext; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; public class LaserTurretBlock extends ElectricMachineBlock { - private static final VoxelShape SHAPE = VoxelShapes.or( + private static final VoxelShape SHAPE = Shapes.or( Block.box(0, 0, 0, 16, 4, 16), Block.box(4, 4, 4, 12, 16, 12)); @@ -30,29 +30,29 @@ public LaserTurretBlock(boolean isEvil) { } @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new LaserTurretTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new LaserTurretTileEntity(pos, state); } @Override - public VoxelShape getShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { + public VoxelShape getShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return SHAPE; } @Override - public VoxelShape getCollisionShape(BlockState state, IBlockReader world, BlockPos pos, ISelectionContext context) { + public VoxelShape getCollisionShape(BlockState state, BlockGetter world, BlockPos pos, CollisionContext context) { return SHAPE; } @Override - public void setPlacedBy(World w, BlockPos pos, BlockState state, LivingEntity placer, ItemStack stack) { + public void setPlacedBy(Level w, BlockPos pos, BlockState state, LivingEntity placer, ItemStack stack) { super.setPlacedBy(w, pos, state, placer, stack); - TileEntity te = w.getBlockEntity(pos); - if(placer instanceof PlayerEntity && te instanceof LaserTurretTileEntity){ - ((LaserTurretTileEntity)te).setOwner((PlayerEntity)placer); + BlockEntity te = w.getBlockEntity(pos); + if(placer instanceof Player && te instanceof LaserTurretTileEntity){ + ((LaserTurretTileEntity)te).setOwner((Player)placer); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java index 14a6ec1..8938fca 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java @@ -2,28 +2,31 @@ import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.entity.Entity; -import net.minecraft.entity.LivingEntity; -import net.minecraft.entity.EntityClassification; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.block.Blocks; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.network.NetworkManager; -import net.minecraft.network.play.server.SUpdateTileEntityPacket; -import net.minecraft.scoreboard.Team; -import net.minecraft.tileentity.ITickableTileEntity; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.SoundEvent; -import net.minecraft.util.math.*; -import net.minecraft.util.math.vector.Vector3d; -import net.minecraft.util.math.shapes.VoxelShape; -import net.minecraft.util.math.shapes.VoxelShapes; -import net.minecraft.world.IBlockReader; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.Connection; +import net.minecraft.network.protocol.game.ClientboundBlockEntityDataPacket; +import net.minecraft.world.scores.Team; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.registries.ForgeRegistries; @@ -31,7 +34,7 @@ import java.util.ArrayList; import java.util.List; -public class LaserTurretTileEntity extends ElectricMachineTileEntity implements ITickableTileEntity{ +public class LaserTurretTileEntity extends ElectricMachineTileEntity{ private final SoundEvent LASER_SOUND; @@ -75,15 +78,16 @@ public class LaserTurretTileEntity extends ElectricMachineTileEntity implements /** used by renderer to draw laser line */ public double laserBlastLength = 0; - private Vector3d opticPosition = null; + private Vec3 opticPosition = null; /** rotation speed (non-idle), in degrees per tick */ public final float speed = 9f; - public LaserTurretTileEntity(){ - super(zone.moddev.mc.electricadvantage.init.Entities.LASER_TURRET, "tile.electricadvantage.laser_turret.name",MAX_BUFFER,0,0,0); - SoundEvent soundEvent = ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation(ElectricAdvantage.INSTANCE.LASER_SOUND)); + public LaserTurretTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state){ + super(zone.moddev.mc.electricadvantage.init.Entities.LASER_TURRET, pos, state, "tile.electricadvantage.laser_turret.name",MAX_BUFFER,0,0,0); + SoundEvent soundEvent = ElectricAdvantage.INSTANCE == null ? SoundEvents.NOTE_BLOCK_BASS + : ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation(ElectricAdvantage.INSTANCE.LASER_SOUND)); if(soundEvent == null){ LASER_SOUND = SoundEvents.ENDERMAN_TELEPORT; } else { @@ -98,7 +102,7 @@ public boolean isActive(){ @Override public void tickUpdate(boolean b) { - World w = getLevel(); + Level w = getLevel(); if(laserAttack > 0){ laserAttack--; } @@ -157,13 +161,13 @@ public void tickUpdate(boolean b) { double x = this.getOpticPosition().x; double y = this.getOpticPosition().y; double z = this.getOpticPosition().z; - List entities = w.getEntitiesOfClass(LivingEntity.class, new AxisAlignedBB(x-TARGET_RANGE, y-TARGET_RANGE, z-TARGET_RANGE, x+TARGET_RANGE, y+TARGET_RANGE, z+TARGET_RANGE)); + List entities = w.getEntitiesOfClass(LivingEntity.class, new AABB(x-TARGET_RANGE, y-TARGET_RANGE, z-TARGET_RANGE, x+TARGET_RANGE, y+TARGET_RANGE, z+TARGET_RANGE)); final double maxRangeSquared = TARGET_RANGE * TARGET_RANGE; if(isEvil){ for (Entity e : entities) { if (!( - e.getType().getCategory() == EntityClassification.MONSTER - || e.getType().getCategory() == EntityClassification.AMBIENT + e.getType().getCategory() == MobCategory.MONSTER + || e.getType().getCategory() == MobCategory.AMBIENT ) ) { if (canSeeEntity(e)) { @@ -175,13 +179,13 @@ public void tickUpdate(boolean b) { } else { for (Entity e : entities) { if (e.position().distanceToSqr(getOpticPosition()) > maxRangeSquared) continue; - if (e instanceof PlayerEntity) { - if (isEnemy((PlayerEntity) e)) { + if (e instanceof Player) { + if (isEnemy((Player) e)) { setTarget(e); break; } } - if (e.getType().getCategory() == EntityClassification.MONSTER) { + if (e.getType().getCategory() == MobCategory.MONSTER) { if (canSeeEntity(e)) { setTarget(e); break; @@ -222,7 +226,7 @@ public void tickUpdate(boolean b) { } } - private boolean isEnemy(PlayerEntity player) { + private boolean isEnemy(Player player) { if(player.isCreative()) return false; if(this.teamIdentity == null || this.teamIdentity.isEmpty()){ return false; @@ -240,19 +244,19 @@ public boolean showLaserLine(){ private List getLaserAttackVictims(){ - final Vector3d origin = getOpticPosition(); - final Vector3d dir; - final World w = getLevel(); + final Vec3 origin = getOpticPosition(); + final Vec3 dir; + final Level w = getLevel(); final Entity e = w.getEntity(targetID); if(e != null){ dir = e.position().add(0, 0.5*e.getBbHeight(), 0).subtract(origin).normalize(); } else { - dir = (new Vector3d(Math.cos(DEGREES_TO_RADIANS * rotYaw),Math.sin(rotPitch),Math.sin(rotYaw))).normalize(); + dir = (new Vec3(Math.cos(DEGREES_TO_RADIANS * rotYaw),Math.sin(rotPitch),Math.sin(rotYaw))).normalize(); } - final Vector3d terminus = followRayToSolidBlock(origin,dir,ATTACK_RANGE); + final Vec3 terminus = followRayToSolidBlock(origin,dir,ATTACK_RANGE); final double maxDistSqr = origin.distanceToSqr(terminus); final double maxDist = Math.sqrt(maxDistSqr); - List potentialVictims = w.getEntitiesOfClass(LivingEntity.class, new AxisAlignedBB( + List potentialVictims = w.getEntitiesOfClass(LivingEntity.class, new AABB( origin.x - maxDist, origin.y - maxDist, origin.z - maxDist, origin.x + maxDist, origin.y + maxDist, origin.z + maxDist)); List victims = new ArrayList<>(); @@ -276,7 +280,7 @@ private void hurtVictim(Entity e){ getLevel().setBlockAndUpdate(bp, Blocks.FIRE.defaultBlockState()); } if(playerOwner != null && !playerOwner.isEmpty()){ - for (PlayerEntity player : getLevel().players()) { + for (Player player : getLevel().players()) { if (playerOwner.equals(player.getName().getString())) { ((LivingEntity) e).setLastHurtByMob(player); break; @@ -286,40 +290,40 @@ private void hurtVictim(Entity e){ } } - private Vector3d calculateLaserTerminus(){ - Vector3d dir; - World w = getLevel(); + private Vec3 calculateLaserTerminus(){ + Vec3 dir; + Level w = getLevel(); Entity e = w.getEntity(targetID); if(e != null){ dir = e.position().add(0, 0.5*e.getBbHeight(), 0).subtract(this.getOpticPosition()).normalize(); } else { - dir = (new Vector3d(Math.cos(DEGREES_TO_RADIANS * rotYaw),Math.sin(rotPitch),Math.sin(rotYaw))).normalize(); + dir = (new Vec3(Math.cos(DEGREES_TO_RADIANS * rotYaw),Math.sin(rotPitch),Math.sin(rotYaw))).normalize(); } return followRayToSolidBlock(getOpticPosition(),dir,ATTACK_RANGE); } - private Vector3d followRayToSolidBlock(Vector3d origin, Vector3d dir, double maxRange){ - Vector3d max = origin.add(maxRange * dir.x, maxRange * dir.y, maxRange * dir.z); - BlockRayTraceResult impact = getLevel().clip(new RayTraceContext(origin, max, - RayTraceContext.BlockMode.COLLIDER, RayTraceContext.FluidMode.SOURCE_ONLY, null) { - @Override public VoxelShape getBlockShape(BlockState state, IBlockReader world, BlockPos pos) { + private Vec3 followRayToSolidBlock(Vec3 origin, Vec3 dir, double maxRange){ + Vec3 max = origin.add(maxRange * dir.x, maxRange * dir.y, maxRange * dir.z); + BlockHitResult impact = getLevel().clip(new ClipContext(origin, max, + ClipContext.Block.COLLIDER, ClipContext.Fluid.SOURCE_ONLY, null) { + @Override public VoxelShape getBlockShape(BlockState state, BlockGetter world, BlockPos pos) { // The optic is inside our collision post; ignore only this block, not nearby cover. - return pos.equals(LaserTurretTileEntity.this.getBlockPos()) ? VoxelShapes.empty() + return pos.equals(LaserTurretTileEntity.this.getBlockPos()) ? Shapes.empty() : super.getBlockShape(state, world, pos); } }); - if(impact.getType() == RayTraceResult.Type.BLOCK){ + if(impact.getType() == HitResult.Type.BLOCK){ return impact.getLocation(); } else { return max; } } - public static boolean rayIntersectsBoundingBox(Vector3d rayOrigin, Vector3d rayDirection, AxisAlignedBB box){ + public static boolean rayIntersectsBoundingBox(Vec3 rayOrigin, Vec3 rayDirection, AABB box){ if(box == null) { return false; } // algorithm from http://gamedev.stackexchange.com/questions/18436/most-efficient-aabb-vs-ray-collision-algorithms - Vector3d inverse = new Vector3d(1.0 / rayDirection.x, 1.0 / rayDirection.y, 1.0 / rayDirection.z); + Vec3 inverse = new Vec3(1.0 / rayDirection.x, 1.0 / rayDirection.y, 1.0 / rayDirection.z); double t1 = (box.minX - rayOrigin.x)*inverse.x; double t2 = (box.maxX- rayOrigin.x)*inverse.x; double t3 = (box.minY - rayOrigin.y)*inverse.y; @@ -346,8 +350,8 @@ public static boolean rayIntersectsBoundingBox(Vector3d rayOrigin, Vector3d rayD } - private static Vector3d mul(Vector3d a, double b){ - return new Vector3d(a.x * b, a.y * b, a.z * b); + private static Vec3 mul(Vec3 a, double b){ + return new Vec3(a.x * b, a.y * b, a.z * b); } private static double max(double a, double b){ return Math.max(a, b); @@ -359,7 +363,7 @@ private static double min(double a, double b){ private void drawLaserLine() { // client-side only - World w = getLevel(); + Level w = getLevel(); if(w.isClientSide){ this.laserBlastLength = getOpticPosition().distanceTo(calculateLaserTerminus()); } @@ -387,11 +391,11 @@ private void validateTarget() { public boolean canSeeEntity(Entity e){ if(e == null) return false; - Vector3d offsetOrigin = getOpticPosition().add(e.position().subtract(getOpticPosition()).normalize()); - BlockRayTraceResult collision = getLevel().clip(new RayTraceContext(offsetOrigin, - e.position().add(0, e.getBbHeight()*0.5, 0), RayTraceContext.BlockMode.COLLIDER, - RayTraceContext.FluidMode.SOURCE_ONLY, null)); - if(collision.getType() == RayTraceResult.Type.BLOCK){ + Vec3 offsetOrigin = getOpticPosition().add(e.position().subtract(getOpticPosition()).normalize()); + BlockHitResult collision = getLevel().clip(new ClipContext(offsetOrigin, + e.position().add(0, e.getBbHeight()*0.5, 0), ClipContext.Block.COLLIDER, + ClipContext.Fluid.SOURCE_ONLY, null)); + if(collision.getType() == HitResult.Type.BLOCK){ return false; } return true; @@ -412,16 +416,16 @@ public void setTarget(Entity e){ } private void lookAt(Entity e) { - Vector3d pos = e.position().add(0, e.getBbHeight()*0.5, 0); + Vec3 pos = e.position().add(0, e.getBbHeight()*0.5, 0); targetPosition(pos); } - private Vector3d getOpticPosition(){ + private Vec3 getOpticPosition(){ if(opticPosition == null)setOpticPosition(); return opticPosition; } - public void setOwner(PlayerEntity owner){ + public void setOwner(Player owner){ this.setTeam(owner.getTeam()); playerOwner = owner.getName().getString(); } @@ -434,18 +438,13 @@ public void setTeam(Team t){ } } - @Override - public void setPosition(BlockPos p){ - super.setPosition(p); - setOpticPosition(); - } public final void setOpticPosition(){ BlockPos p = getBlockPos(); - opticPosition = new Vector3d(p.getX()+0.5,p.getY()+0.75,p.getZ()+0.5); + opticPosition = new Vec3(p.getX()+0.5,p.getY()+0.75,p.getZ()+0.5); } - private void targetPosition(Vector3d coord) { - Vector3d pos = getOpticPosition(); + private void targetPosition(Vec3 coord) { + Vec3 pos = getOpticPosition(); double x = pos.x; double y = pos.y; double z = pos.z; @@ -496,33 +495,33 @@ private void storeOld(){ * Turns the data field NBT into a network packet */ @Override - public SUpdateTileEntityPacket getUpdatePacket(){ - CompoundNBT nbtTag = new CompoundNBT(); + public ClientboundBlockEntityDataPacket getUpdatePacket(){ + CompoundTag nbtTag = new CompoundTag(); writeRenderSync(nbtTag); - return new SUpdateTileEntityPacket(this.getBlockPos(), 0, nbtTag); + return new ClientboundBlockEntityDataPacket(this.getBlockPos(), 0, nbtTag); } @Override - public CompoundNBT getUpdateTag() { - CompoundNBT nbtTag = save(new CompoundNBT()); + public CompoundTag getUpdateTag() { + CompoundTag nbtTag = save(new CompoundTag()); writeRenderSync(nbtTag); return nbtTag; } @Override - public void handleUpdateTag(BlockState state, CompoundNBT tag) { - load(state, tag); + public void handleUpdateTag(CompoundTag tag) { + load(tag); readRenderSync(tag); } - private void writeRenderSync(CompoundNBT nbtTag) { + private void writeRenderSync(CompoundTag nbtTag) { nbtTag.putFloat("energy", getEnergy()); nbtTag.putBoolean("lock", targetLocked); if(targetLocked){ if(targetID != Integer.MIN_VALUE && getLevel().getEntity(targetID) != null){ Entity e = getLevel().getEntity(targetID); - Vector3d pos = e.position().add(0, e.getBbHeight()*0.5, 0); - CompoundNBT target = new CompoundNBT(); + Vec3 pos = e.position().add(0, e.getBbHeight()*0.5, 0); + CompoundTag target = new CompoundTag(); target.putInt("id", this.targetID); target.putFloat("yaw", rotTargetYaw); target.putFloat("pitch", rotTargetPitch); @@ -536,15 +535,15 @@ private void writeRenderSync(CompoundNBT nbtTag) { * Receives the network packet made by getDescriptionPacket() */ @Override - public void onDataPacket(NetworkManager net, SUpdateTileEntityPacket packet) { + public void onDataPacket(Connection net, ClientboundBlockEntityDataPacket packet) { readRenderSync(packet.getTag()); } - private void readRenderSync(CompoundNBT tag) { + private void readRenderSync(CompoundTag tag) { if(tag.contains("lock", 1)){ this.targetLocked = tag.getBoolean("lock"); if(tag.contains("target", 10)){ - CompoundNBT target = tag.getCompound("target"); + CompoundTag target = tag.getCompound("target"); this.targetID = target.getInt("id"); Entity e = getLevel().getEntity(targetID); if(e != null){ @@ -568,7 +567,7 @@ public float[] getProgress() { } @Override - protected void saveTo(CompoundNBT root) { + protected void saveTo(CompoundTag root) { root.putFloat("pitch", rotPitch); root.putFloat("yaw", rotYaw); root.putBoolean("lock", targetLocked); @@ -585,7 +584,7 @@ protected void saveTo(CompoundNBT root) { } @Override - protected void loadFrom(CompoundNBT root) { + protected void loadFrom(CompoundTag root) { if(root.contains("pitch", 99)){ this.rotPitch = root.getFloat("pitch"); this.rotOldPitch = rotPitch; @@ -651,8 +650,8 @@ public int getComparatorOutput(){ // Helps with laser rendering final private int renderRange = ATTACK_RANGE * 2; @OnlyIn(Dist.CLIENT) - public AxisAlignedBB getRenderBoundingBox() + public AABB getRenderBoundingBox() { - return new AxisAlignedBB(getBlockPos().offset(-renderRange, -renderRange, -renderRange), getBlockPos().offset(renderRange, renderRange, renderRange)); + return new AABB(getBlockPos().offset(-renderRange, -renderRange, -renderRange), getBlockPos().offset(renderRange, renderRange, renderRange)); } } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java index f656ae5..5ce0213 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java @@ -1,21 +1,21 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.block.SoundType; -import net.minecraft.block.material.Material; -import net.minecraft.block.BlockState; -import net.minecraft.world.World; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.Level; public class PhotovoltaicGeneratorBlock extends ElectricGeneratorBlock{ public PhotovoltaicGeneratorBlock(){ - super(net.minecraft.block.Block.Properties.of(Material.STONE) + super(net.minecraft.world.level.block.Block.Properties.of(Material.STONE) .strength(0.75F).sound(SoundType.GLASS).dynamicShape() .isRedstoneConductor((state, world, pos) -> true)); } @Override - public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new PhotovoltaicGeneratorTileEntity(); + public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new PhotovoltaicGeneratorTileEntity(pos, state); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java index fbcad36..3e75d28 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java @@ -1,11 +1,11 @@ package zone.moddev.mc.electricadvantage.machines; import zone.moddev.mc.electricadvantage.init.Power; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.MathHelper; -import net.minecraft.world.World; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.level.Level; public class PhotovoltaicGeneratorTileEntity extends ElectricGeneratorTileEntity { @@ -16,8 +16,8 @@ public class PhotovoltaicGeneratorTileEntity extends ElectricGeneratorTileEntity public static final float BLOCKLIGHT_FACTOR = 0.1f; // light from blocks less effective than sunlight private float powerOutput = 0; - public PhotovoltaicGeneratorTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.PHOTOVOLTAIC_GENERATOR, "tile.electricadvantage.photovoltaic_generator.name", 0); + public PhotovoltaicGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.PHOTOVOLTAIC_GENERATOR, pos, state, "tile.electricadvantage.photovoltaic_generator.name", 0); } @Override @@ -42,12 +42,12 @@ protected boolean isValidInputItem(ItemStack item) { } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { // do nothing } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { // do nothing } @@ -91,13 +91,13 @@ public void powerUpdate(){ super.powerUpdate(); } - public static float getLightIntensityAt(BlockPos pos, World w){ + public static float getLightIntensityAt(BlockPos pos, Level w){ // The panel is solid; sample incident light above its top surface, not inside it. BlockPos lightPos = pos.above(); float light; if(w.canSeeSky(lightPos) && w.dimensionType().hasSkyLight()){ // outdoor light imposes no penalty - light = MathHelper.sin((float)w.getDayTime() * 2.61799E-4f); // (worldTime * pi / 12000); + light = Mth.sin((float)w.getDayTime() * 2.61799E-4f); // (worldTime * pi / 12000); // handle weather if(w.isThundering()){ light *= 0.2f; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java index b6f6db2..bba003b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java @@ -8,8 +8,8 @@ public class PlasticRefineryBlock extends ElectricMachineBlock{ @Override - public ElectricMachineTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new PlasticRefineryTileEntity(); + public ElectricMachineTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new PlasticRefineryTileEntity(pos, state); } @Override diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java index 89ade28..4616539 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java @@ -10,17 +10,17 @@ import cyano.poweradvantage.api.fluid.FluidRequest; import zone.moddev.mc.poweradvantage.init.Fluids; import zone.moddev.mc.poweradvantage.util.FluidIdHelper; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.Direction; -import net.minecraft.fluid.Fluid; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.Direction; +import net.minecraft.world.level.material.Fluid; import cyano.poweradvantage.api.fluid.FluidStack; import cyano.poweradvantage.api.fluid.FluidTank; import cyano.poweradvantage.api.fluid.FluidTankInfo; import net.minecraft.tags.ItemTags; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.registry.Registry; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.core.Registry; import java.util.List; @@ -36,8 +36,8 @@ public class PlasticRefineryTileEntity extends ElectricMachineTileEntity impleme private final int[] dataSyncArray = new int[4]; - public PlasticRefineryTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.PLASTIC_REFINERY, "tile.electricadvantage.plastic_refinery.name", + public PlasticRefineryTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.PLASTIC_REFINERY, pos, state, "tile.electricadvantage.plastic_refinery.name", 0, 1, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,2000f}); tank = new FluidTank(FluidTank.BUCKET_VOLUME * 2); } @@ -103,20 +103,20 @@ public FluidTank getTank(){ } @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putShort("progress", fabTime); - CompoundNBT tankTag = new CompoundNBT(); + CompoundTag tankTag = new CompoundTag(); this.getTank().writeToNBT(tankTag); tagRoot.put("Tank", tankTag); } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { if(tagRoot.contains("progress", 99)){ this.fabTime = tagRoot.getShort("progress"); } if (tagRoot.contains("Tank", 10)) { - CompoundNBT tankTag = tagRoot.getCompound("Tank"); + CompoundTag tankTag = tagRoot.getCompound("Tank"); getTank().readFromNBT(tankTag); if(tankTag.contains("Empty", 1)){ // empty the tank if NBT says its empty (not default behavior of Tank.readFromNBT(...) ) @@ -144,7 +144,7 @@ public void prepareDataFieldsForSync() { dataSyncArray[2] = this.getTank().getFluidAmount(); dataSyncArray[3] = (getTank().getFluid() != null && getTank().getFluid().getFluid() != null ? FluidIdHelper.getFluidId(getTank().getFluid().getFluid()) - : FluidIdHelper.getFluidId(net.minecraft.fluid.Fluids.WATER)); + : FluidIdHelper.getFluidId(net.minecraft.world.level.material.Fluids.WATER)); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java index 1f13abd..ae8f2a4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java @@ -9,8 +9,8 @@ public class SteamPoweredElectricGeneratorBlock extends ElectricGeneratorBlock{ public static final ConduitType STEAM_POWER = new ConduitType("steam"); @Override - public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.world.IBlockReader world) { - return new SteamPoweredElectricGeneratorTileEntity(); + public ElectricGeneratorTileEntity newBlockEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + return new SteamPoweredElectricGeneratorTileEntity(pos, state); } @Override diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java index 0034d26..d7d2096 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java @@ -4,10 +4,10 @@ import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PowerRequest; -import net.minecraft.util.SoundEvents; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.Direction; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.item.ItemStack; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.Direction; import static zone.moddev.mc.electricadvantage.machines.SteamPoweredElectricGeneratorBlock.STEAM_POWER; @@ -24,8 +24,8 @@ public class SteamPoweredElectricGeneratorTileEntity extends ElectricGeneratorTi private final int[] dataArray = new int[3]; - public SteamPoweredElectricGeneratorTileEntity() { - super(zone.moddev.mc.electricadvantage.init.Entities.STEAM_POWERED_ELECTRIC_GENERATOR, "tile.electricadvantage.steam_powered_generator.name", 0, new ConduitType[]{Power.ELECTRIC_POWER,STEAM_POWER}, new float[]{1000f,32f}); + public SteamPoweredElectricGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { + super(zone.moddev.mc.electricadvantage.init.Entities.STEAM_POWERED_ELECTRIC_GENERATOR, pos, state, "tile.electricadvantage.steam_powered_generator.name", 0, new ConduitType[]{Power.ELECTRIC_POWER,STEAM_POWER}, new float[]{1000f,32f}); } @Override public void powerUpdate(){ @@ -171,12 +171,12 @@ public boolean canAcceptType(ConduitType type){ ///// end multi-type overrides ///// @Override - protected void saveTo(CompoundNBT tagRoot) { + protected void saveTo(CompoundTag tagRoot) { tagRoot.putFloat("steam", steam); } @Override - protected void loadFrom(CompoundNBT tagRoot) { + protected void loadFrom(CompoundTag tagRoot) { steam = tagRoot.getFloat("steam"); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java b/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java index 741e6f7..9263a4b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java @@ -2,10 +2,10 @@ import cyano.poweradvantage.api.migration.LegacyMigrationApi; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.Direction; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.core.Direction; import zone.moddev.mc.electricadvantage.ElectricAdvantage; import zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock; import zone.moddev.mc.electricadvantage.machines.ElectricGeneratorBlock; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java b/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java index 62a6f00..a04a006 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java @@ -2,8 +2,8 @@ import java.util.Locale; import com.google.gson.JsonObject; -import net.minecraft.util.JSONUtils; -import net.minecraft.util.ResourceLocation; +import net.minecraft.util.GsonHelper; +import net.minecraft.resources.ResourceLocation; import net.minecraftforge.common.crafting.CraftingHelper; import net.minecraftforge.common.crafting.conditions.ICondition; import net.minecraftforge.common.crafting.conditions.IConditionSerializer; @@ -55,7 +55,7 @@ static final class ModeSerializer implements IConditionSerializer @Override public ModeCondition read(JsonObject json) { return new ModeCondition(RecipeMode.valueOf( - JSONUtils.getAsString(json, "mode").toUpperCase(Locale.ROOT)), inverted); + GsonHelper.getAsString(json, "mode").toUpperCase(Locale.ROOT)), inverted); } @Override public ResourceLocation getID() { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java index f9d3354..69b7bfb 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java @@ -6,11 +6,11 @@ import java.util.Collections; import java.util.List; -import net.minecraft.block.Block; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; import net.minecraft.tags.ItemTags; -import net.minecraft.util.ResourceLocation; +import net.minecraft.resources.ResourceLocation; /** Matches a crafting ingredient using flattened items or Forge item tags. */ public final class ItemMatcher { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java index b8ec807..988523f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java @@ -1,6 +1,6 @@ package zone.moddev.mc.electricadvantage.util.crafting; -import net.minecraft.item.ItemStack; +import net.minecraft.world.item.ItemStack; /** Flattened-item key used by the fabricator's serialized inventory. */ public final class ItemRecord { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java index 126cd80..b76d0ab 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java @@ -8,10 +8,10 @@ import java.util.Map; import java.util.concurrent.atomic.AtomicReference; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.item.crafting.Ingredient; -import net.minecraft.world.World; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.crafting.Recipe; +import net.minecraft.world.item.crafting.Ingredient; +import net.minecraft.world.level.Level; import zone.moddev.mc.electricadvantage.ElectricAdvantage; /** Recursive crafting solver used by the Electric Fabricator. */ @@ -19,7 +19,7 @@ public final class RecipeDeconstructor { private static final RecipeDeconstructor INSTANCE = new RecipeDeconstructor(); public static int RECURSION_LIMIT = 5; - private final Map>> recipeCache = new HashMap<>(); + private final Map>> recipeCache = new HashMap<>(); private int cachedRecipeCount = -1; private RecipeDeconstructor() {} @@ -33,11 +33,11 @@ public void invalidateRecipeCache() { cachedRecipeCount = -1; } - private void initializeRecipeCache(World world) { - Collection> recipes = world.getRecipeManager().getRecipes(); + private void initializeRecipeCache(Level world) { + Collection> recipes = world.getRecipeManager().getRecipes(); if (cachedRecipeCount == recipes.size() && !recipeCache.isEmpty()) return; recipeCache.clear(); - for (IRecipe recipe : recipes) { + for (Recipe recipe : recipes) { ItemStack output = recipe.getResultItem(); if (output == null || output.isEmpty()) continue; recipeCache.computeIfAbsent(new ItemRecord(output), ignored -> new ArrayList<>()).add(recipe); @@ -45,19 +45,19 @@ private void initializeRecipeCache(World world) { cachedRecipeCount = recipes.size(); } - public SerializedInventory attemptToCraft(World world, ItemStack target, + public SerializedInventory attemptToCraft(Level world, ItemStack target, SerializedInventory inventory, AtomicReference output) { initializeRecipeCache(world); return attemptToCraft(world, target, inventory, output, 0); } - private SerializedInventory attemptToCraft(World world, ItemStack target, + private SerializedInventory attemptToCraft(Level world, ItemStack target, SerializedInventory inventory, AtomicReference output, int depth) { if (depth > RECURSION_LIMIT || target == null || target.isEmpty()) return null; - List> recipes = recipeCache.get(new ItemRecord(target)); + List> recipes = recipeCache.get(new ItemRecord(target)); if (recipes == null || recipes.isEmpty()) return null; - for (IRecipe recipe : recipes) { + for (Recipe recipe : recipes) { SerializedInventory candidate = inventory.copy(); boolean failed = false; for (Ingredient ingredient : recipe.getIngredients()) { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java index 5d5af18..9f146f5 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java @@ -7,7 +7,7 @@ import java.util.List; import java.util.Map; -import net.minecraft.item.ItemStack; +import net.minecraft.world.item.ItemStack; public class SerializedInventory extends HashMap{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java b/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java index 648d41e..6fc101d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java +++ b/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java @@ -1,18 +1,18 @@ package zone.moddev.mc.electricadvantage.util.farming; import zone.moddev.mc.electricadvantage.util.crafting.ItemRecord; -import net.minecraft.block.Block; -import net.minecraft.block.StemBlock; -import net.minecraft.state.Property; -import net.minecraft.state.IntegerProperty; -import net.minecraft.block.BlockState; -import net.minecraft.item.Items; -import net.minecraft.item.Item; -import net.minecraft.item.BlockItem; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.StemBlock; +import net.minecraft.world.level.block.state.properties.Property; +import net.minecraft.world.level.block.state.properties.IntegerProperty; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.Items; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.ItemStack; +import net.minecraft.core.NonNullList; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; import net.minecraftforge.common.IPlantable; import java.lang.reflect.Field; @@ -32,7 +32,7 @@ public static void removeCustomCrop(ItemStack seed){ customRecipes.remove(new ItemRecord(seed)); } - public static VirtualCrop createVirtualCrop(ItemStack stack, World w, BlockPos pos){ + public static VirtualCrop createVirtualCrop(ItemStack stack, Level w, BlockPos pos){ if(stack == null || stack.getItem() == null) return null; ItemRecord r = new ItemRecord(stack); ItemStack seed = stack.copy(); @@ -46,14 +46,14 @@ public static VirtualCrop createVirtualCrop(ItemStack stack, World w, BlockPos p } if(customRecipes.get(r) != null){ return customRecipes.get(r).copy(); - } else if(i == net.minecraft.block.Blocks.SUGAR_CANE.asItem() - || b instanceof net.minecraft.block.MushroomBlock - || b instanceof net.minecraft.block.CactusBlock - || (b instanceof net.minecraft.block.BushBlock - && !(b instanceof net.minecraft.block.CropsBlock) && !(b instanceof StemBlock)) - || b instanceof net.minecraft.block.GrassBlock - || b instanceof net.minecraft.block.VineBlock - || b instanceof net.minecraft.block.LilyPadBlock){ + } else if(i == net.minecraft.world.level.block.Blocks.SUGAR_CANE.asItem() + || b instanceof net.minecraft.world.level.block.MushroomBlock + || b instanceof net.minecraft.world.level.block.CactusBlock + || (b instanceof net.minecraft.world.level.block.BushBlock + && !(b instanceof net.minecraft.world.level.block.CropBlock) && !(b instanceof StemBlock)) + || b instanceof net.minecraft.world.level.block.GrassBlock + || b instanceof net.minecraft.world.level.block.VineBlock + || b instanceof net.minecraft.world.level.block.WaterlilyBlock){ // duplicate ItemStack product = seed.copy(); product.setCount(2); @@ -114,9 +114,9 @@ private static BlockState ageToMax(BlockState startingState) { return startingState; } - private static List getDrops(BlockState state, World world, BlockPos pos) { - if (!(world instanceof net.minecraft.world.server.ServerWorld)) return Collections.emptyList(); - return Block.getDrops(state, (net.minecraft.world.server.ServerWorld) world, pos, null); + private static List getDrops(BlockState state, Level world, BlockPos pos) { + if (!(world instanceof net.minecraft.server.level.ServerLevel)) return Collections.emptyList(); + return Block.getDrops(state, (net.minecraft.server.level.ServerLevel) world, pos, null); } private final byte numberOfStages; diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 719d542..7b80213 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -30,13 +30,13 @@ side="BOTH" [[dependencies.electricadvantage]] modId="poweradvantage" mandatory=true -versionRange="[2.4.7.116051,3.0.0)" +versionRange="[2.4.8.117011,3.0.0)" ordering="AFTER" side="BOTH" [[dependencies.electricadvantage]] modId="basemetals" mandatory=false -versionRange="[3.1.1.116051,4.0.0)" +versionRange="[3.1.0.117011,4.0.0)" ordering="AFTER" side="BOTH" diff --git a/src/main/resources/assets/electricadvantage/shaders/core/unshaded.json b/src/main/resources/assets/electricadvantage/shaders/core/unshaded.json new file mode 100644 index 0000000..19caee4 --- /dev/null +++ b/src/main/resources/assets/electricadvantage/shaders/core/unshaded.json @@ -0,0 +1,15 @@ +{ + "blend": { "func": "add", "srcrgb": "srcalpha", "dstrgb": "1-srcalpha" }, + "vertex": "electricadvantage:unshaded", + "fragment": "minecraft:rendertype_entity_translucent", + "attributes": ["Position", "Color", "UV0", "UV1", "UV2", "Normal"], + "samplers": [{"name": "Sampler0"}, {"name": "Sampler1"}, {"name": "Sampler2"}], + "uniforms": [ + {"name": "ModelViewMat", "type": "matrix4x4", "count": 16, "values": [1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}, + {"name": "ProjMat", "type": "matrix4x4", "count": 16, "values": [1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}, + {"name": "ColorModulator", "type": "float", "count": 4, "values": [1,1,1,1]}, + {"name": "FogStart", "type": "float", "count": 1, "values": [0]}, + {"name": "FogEnd", "type": "float", "count": 1, "values": [1]}, + {"name": "FogColor", "type": "float", "count": 4, "values": [0,0,0,0]} + ] +} diff --git a/src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh b/src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh new file mode 100644 index 0000000..2900132 --- /dev/null +++ b/src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh @@ -0,0 +1,31 @@ +#version 150 + +in vec3 Position; +in vec4 Color; +in vec2 UV0; +in ivec2 UV1; +in ivec2 UV2; +in vec3 Normal; + +uniform sampler2D Sampler1; +uniform sampler2D Sampler2; +uniform mat4 ModelViewMat; +uniform mat4 ProjMat; + +out float vertexDistance; +out vec4 vertexColor; +out vec4 lightMapColor; +out vec4 overlayColor; +out vec2 texCoord0; +out vec4 normal; + +void main() { + vec4 viewPosition = ModelViewMat * vec4(Position, 1.0); + gl_Position = ProjMat * viewPosition; + vertexDistance = length(viewPosition.xyz); + vertexColor = Color; + lightMapColor = texelFetch(Sampler2, UV2 / 16, 0); + overlayColor = texelFetch(Sampler1, UV1, 0); + texCoord0 = UV0; + normal = ProjMat * ModelViewMat * vec4(Normal, 0.0); +} diff --git a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json new file mode 100644 index 0000000..593c2df --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": ["electricadvantage:li_ore", "electricadvantage:sulfur_ore"] +} diff --git a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json new file mode 100644 index 0000000..796eb3c --- /dev/null +++ b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": ["electricadvantage:li_ore"] +} diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta index 636d0bd..e18b05b 100644 --- a/src/main/resources/pack.mcmeta +++ b/src/main/resources/pack.mcmeta @@ -1,6 +1,6 @@ { "pack":{ - "pack_format":6, + "pack_format":7, "description":"Electric Advantage" } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java index a5bb02d..f1dda51 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java @@ -3,17 +3,17 @@ import cyano.poweradvantage.api.ConduitBlock; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.simple.BlockSimplePowerConduit; -import net.minecraft.block.BlockState; -import net.minecraft.item.BlockItemUseContext; -import net.minecraft.pathfinding.PathType; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.shapes.ISelectionContext; -import net.minecraft.util.math.shapes.VoxelShapes; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.Explosion; -import net.minecraft.world.IWorld; -import net.minecraft.world.World; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.pathfinder.PathComputationType; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.Level; import org.junit.BeforeClass; import org.junit.Test; import zone.moddev.mc.electricadvantage.init.Power; @@ -23,17 +23,17 @@ import static org.junit.Assert.*; public class NativeBlockContractTest { - @BeforeClass public static void bootstrapNativeRegistries() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrapNativeRegistries() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void scaffoldRetainsNonSolidFullCollisionAndSharedStateProperties() { ElectricScaffoldBlock block = new ElectricScaffoldBlock(); BlockState state = block.defaultBlockState(); assertFalse(state.canOcclude()); - assertFalse(state.isRedstoneConductor(net.minecraft.world.EmptyBlockReader.INSTANCE, BlockPos.ZERO)); - assertEquals(VoxelShapes.block().bounds(), - block.getCollisionShape(state, null, BlockPos.ZERO, ISelectionContext.empty()).bounds()); - assertFalse(state.isSolidRender(net.minecraft.world.EmptyBlockReader.INSTANCE, BlockPos.ZERO)); - assertTrue(state.isCollisionShapeFullBlock(net.minecraft.world.EmptyBlockReader.INSTANCE, BlockPos.ZERO)); + assertFalse(state.isRedstoneConductor(net.minecraft.world.level.EmptyBlockGetter.INSTANCE, BlockPos.ZERO)); + assertEquals(Shapes.block().bounds(), + block.getCollisionShape(state, null, BlockPos.ZERO, CollisionContext.empty()).bounds()); + assertFalse(state.isSolidRender(net.minecraft.world.level.EmptyBlockGetter.INSTANCE, BlockPos.ZERO)); + assertTrue(state.isCollisionShapeFullBlock(net.minecraft.world.level.EmptyBlockGetter.INSTANCE, BlockPos.ZERO)); assertEquals(6, state.getProperties().size()); assertSame(BlockSimplePowerConduit.NORTH, ElectricScaffoldBlock.NORTH); assertSame(BlockSimplePowerConduit.SOUTH, ElectricScaffoldBlock.SOUTH); @@ -41,27 +41,27 @@ public class NativeBlockContractTest { assertSame(BlockSimplePowerConduit.WEST, ElectricScaffoldBlock.WEST); assertSame(BlockSimplePowerConduit.UP, ElectricScaffoldBlock.UP); assertSame(BlockSimplePowerConduit.DOWN, ElectricScaffoldBlock.DOWN); - for (PathType type : PathType.values()) assertFalse(block.isPathfindable(state, null, BlockPos.ZERO, type)); + for (PathComputationType type : PathComputationType.values()) assertFalse(block.isPathfindable(state, null, BlockPos.ZERO, type)); } @Test public void scaffoldInheritsSharedPlacementAndNetworkCallbacks() throws Exception { Class scaffold = ElectricScaffoldBlock.class; assertSame(BlockSimplePowerConduit.class, scaffold.getSuperclass()); assertSame(BlockSimplePowerConduit.class, - scaffold.getMethod("getStateForPlacement", BlockItemUseContext.class).getDeclaringClass()); + scaffold.getMethod("getStateForPlacement", BlockPlaceContext.class).getDeclaringClass()); assertSame(BlockSimplePowerConduit.class, scaffold.getMethod("updateShape", BlockState.class, Direction.class, BlockState.class, - IWorld.class, BlockPos.class, BlockPos.class).getDeclaringClass()); + LevelAccessor.class, BlockPos.class, BlockPos.class).getDeclaringClass()); assertSame(BlockSimplePowerConduit.class, scaffold.getMethod("canAcceptConnection", PowerConnectorContext.class).getDeclaringClass()); assertSame(ConduitBlock.class, - scaffold.getMethod("onPlace", BlockState.class, World.class, BlockPos.class, + scaffold.getMethod("onPlace", BlockState.class, Level.class, BlockPos.class, BlockState.class, boolean.class).getDeclaringClass()); assertSame(ConduitBlock.class, - scaffold.getMethod("onRemove", BlockState.class, World.class, BlockPos.class, + scaffold.getMethod("onRemove", BlockState.class, Level.class, BlockPos.class, BlockState.class, boolean.class).getDeclaringClass()); assertSame(ConduitBlock.class, - scaffold.getMethod("wasExploded", World.class, BlockPos.class, Explosion.class).getDeclaringClass()); + scaffold.getMethod("wasExploded", Level.class, BlockPos.class, Explosion.class).getDeclaringClass()); ElectricScaffoldBlock block = new ElectricScaffoldBlock(); assertEquals(1, block.getTypes().length); assertSame(Power.ELECTRIC_POWER, block.getTypes()[0]); @@ -79,6 +79,6 @@ public class NativeBlockContractTest { assertFalse(new PumpPipeBlock().defaultBlockState().canOcclude()); PhotovoltaicGeneratorBlock panel = new PhotovoltaicGeneratorBlock(); assertTrue("The 1.14 photovoltaic block explicitly overrides isSolid to true", panel.defaultBlockState().canOcclude()); - assertTrue(panel.defaultBlockState().isRedstoneConductor(net.minecraft.world.EmptyBlockReader.INSTANCE, BlockPos.ZERO)); + assertTrue(panel.defaultBlockState().isRedstoneConductor(net.minecraft.world.level.EmptyBlockGetter.INSTANCE, BlockPos.ZERO)); } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java index 309a58a..fccbf3f 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java @@ -2,29 +2,57 @@ import com.mojang.authlib.GameProfile; import java.lang.reflect.Field; -import net.minecraft.block.BlockState; -import net.minecraft.entity.player.PlayerEntity; -import net.minecraft.item.ItemStack; -import net.minecraft.item.Items; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.EmptyBlockReader; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; +import net.minecraft.core.BlockPos; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.EmptyBlockGetter; import net.minecraftforge.common.ForgeHooks; -import net.minecraftforge.common.ToolType; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.StaticTags; +import net.minecraft.tags.SerializationTags; +import net.minecraft.tags.Tag; +import net.minecraft.tags.TagCollection; +import net.minecraft.tags.TagContainer; +import net.minecraft.core.Registry; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.block.Block; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.*; public class OreHarvestContractTest { - @BeforeClass public static void bootstrapNativeRegistries() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrapNativeRegistries() throws Exception { + net.minecraft.SharedConstants.tryDetectVersion(); + net.minecraft.server.Bootstrap.bootStrap(); + StaticTags.resetAllToEmpty(); + SerializationTags.bind(TagContainer.EMPTY); + // A plain JVM does not run Forge's resource reload that orders vanilla tiers. + java.lang.reflect.Method sort = net.minecraftforge.common.TierSortingRegistry.class + .getDeclaredMethod("recalculateItemTiers"); + sort.setAccessible(true); + sort.invoke(null); + assertTrue(net.minecraftforge.common.TierSortingRegistry.getSortedTiers() + .contains(net.minecraft.world.item.Tiers.STONE)); + } + private TagContainer previousTags; + @org.junit.Before public void saveTags() { previousTags = SerializationTags.getInstance(); } + @org.junit.After public void restoreTags() { install(previousTags); } @Test public void lithiumRetainsStonePickaxeMinimumThroughNativeHarvestChecks() throws Exception { BlockState lithium = new Ore(1).defaultBlockState(); + bindHarvestTags(lithium.getBlock(), "electricadvantage:li_ore"); assertTrue(lithium.requiresCorrectToolForDrops()); - assertSame(ToolType.PICKAXE, lithium.getHarvestTool()); - assertEquals(1, lithium.getHarvestLevel()); + assertTrue(lithium.is(BlockTags.MINEABLE_WITH_PICKAXE)); + assertTrue(lithium.is(BlockTags.NEEDS_STONE_TOOL)); assertFalse(canHarvest(lithium, ItemStack.EMPTY)); assertFalse(canHarvest(lithium, new ItemStack(Items.WOODEN_PICKAXE))); + assertFalse(canHarvest(lithium, new ItemStack(Items.GOLDEN_PICKAXE))); assertFalse(canHarvest(lithium, new ItemStack(Items.STONE_AXE))); assertTrue(canHarvest(lithium, new ItemStack(Items.STONE_PICKAXE))); assertTrue(canHarvest(lithium, new ItemStack(Items.IRON_PICKAXE))); @@ -32,15 +60,44 @@ public class OreHarvestContractTest { @Test public void sulfurRetainsWoodenPickaxeMinimumThroughNativeHarvestChecks() throws Exception { BlockState sulfur = new Ore(new ItemStack(Items.GUNPOWDER), 0, 3).defaultBlockState(); + bindHarvestTags(sulfur.getBlock(), "electricadvantage:sulfur_ore"); assertTrue(sulfur.requiresCorrectToolForDrops()); - assertSame(ToolType.PICKAXE, sulfur.getHarvestTool()); - assertEquals(0, sulfur.getHarvestLevel()); + assertTrue(sulfur.is(BlockTags.MINEABLE_WITH_PICKAXE)); + assertFalse(sulfur.is(BlockTags.NEEDS_STONE_TOOL)); assertFalse(canHarvest(sulfur, ItemStack.EMPTY)); assertFalse(canHarvest(sulfur, new ItemStack(Items.WOODEN_AXE))); assertTrue(canHarvest(sulfur, new ItemStack(Items.WOODEN_PICKAXE))); assertTrue(canHarvest(sulfur, new ItemStack(Items.STONE_PICKAXE))); } + private static void bindHarvestTags(Block block, String id) throws Exception { + Map> tags = new HashMap<>(BlockTags.getAllTags().getAllTags()); + for (String name : new String[]{"mineable/pickaxe", "needs_stone_tool"}) { + java.nio.file.Path path = java.nio.file.Paths.get("src/main/resources/data/minecraft/tags/blocks", name + ".json"); + com.google.gson.JsonObject json = new com.google.gson.JsonParser().parse(java.nio.file.Files.readString(path)).getAsJsonObject(); + boolean present = false; + for (com.google.gson.JsonElement value : json.getAsJsonArray("values")) present |= id.equals(value.getAsString()); + tags.put(new ResourceLocation(name), Tag.fromSet(present ? Set.of(block) : Set.of())); + } + tags.putIfAbsent(new ResourceLocation("needs_iron_tool"), Tag.fromSet(Set.of())); + tags.putIfAbsent(new ResourceLocation("needs_diamond_tool"), Tag.fromSet(Set.of())); + for (Tag.Named other : java.util.List.of(BlockTags.MINEABLE_WITH_AXE, + BlockTags.MINEABLE_WITH_SHOVEL, BlockTags.MINEABLE_WITH_HOE)) { + tags.putIfAbsent(other.getName(), Tag.fromSet(Set.of())); + } + for (net.minecraft.world.item.Tier tier : net.minecraftforge.common.TierSortingRegistry.getSortedTiers()) { + if (tier.getTag() instanceof Tag.Named) { + tags.putIfAbsent(((Tag.Named) tier.getTag()).getName(), Tag.fromSet(Set.of())); + } + } + install(new TagContainer.Builder().add(Registry.BLOCK_REGISTRY, TagCollection.of(tags)).build()); + } + + private static void install(TagContainer tags) { + SerializationTags.bind(tags); + StaticTags.resetAll(tags); + } + private static boolean canHarvest(BlockState state, ItemStack held) throws Exception { Class allocator = Class.forName("sun.misc.Unsafe"); Field field = allocator.getDeclaredField("theUnsafe"); @@ -48,11 +105,11 @@ private static boolean canHarvest(BlockState state, ItemStack held) throws Excep HarvestPlayer player = (HarvestPlayer) allocator.getMethod("allocateInstance", Class.class) .invoke(field.get(null), HarvestPlayer.class); player.held = held; - return ForgeHooks.canHarvestBlock(state, player, EmptyBlockReader.INSTANCE, BlockPos.ZERO); + return state.canHarvestBlock(EmptyBlockGetter.INSTANCE, BlockPos.ZERO, player); } // Only omit world construction. Harvest eligibility still executes Forge's native hook. - private static final class HarvestPlayer extends PlayerEntity { + private static final class HarvestPlayer extends Player { private ItemStack held; private HarvestPlayer() { super(null, BlockPos.ZERO, 0, (GameProfile) null); } @Override public ItemStack getMainHandItem() { return held; } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java b/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java index d68016c..93c52d5 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java @@ -3,62 +3,62 @@ import java.lang.reflect.Field; import java.util.Collections; import java.util.Random; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityClassification; -import net.minecraft.entity.EntityType; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.nbt.DoubleNBT; -import net.minecraft.nbt.ListNBT; -import net.minecraft.network.IPacket; -import net.minecraft.util.math.vector.Vector3d; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.MobCategory; +import net.minecraft.world.entity.EntityType; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.DoubleTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.network.protocol.Packet; +import net.minecraft.world.phys.Vec3; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.*; public class ElectricOperationalHydroturbineAnchorTest { - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void nativeEntityLoadStillClampsOverspeedMotionAndPreservesItsBoundary() throws Exception { ControlEntity control = new ControlEntity(controlType(), world()); - CompoundNBT tag = control.saveWithoutId(new CompoundNBT()); + CompoundTag tag = control.saveWithoutId(new CompoundTag()); tag.put("Motion", motion(16.226, -10.001, 10)); control.load(tag); - assertEquals(new Vector3d(0, 0, 10), control.getDeltaMovement()); + assertEquals(new Vec3(0, 0, 10), control.getDeltaMovement()); assertTrue(control.isPushedByFluid()); } @Test public void turbineRejectsLinearWaterPushingWithoutChangingRotationRate() throws Exception { HydroturbineEntity turbine = new HydroturbineEntity(turbineType(), world()); assertFalse(turbine.isPushedByFluid()); - assertEquals(Vector3d.ZERO, turbine.getDeltaMovement()); + assertEquals(Vec3.ZERO, turbine.getDeltaMovement()); assertEquals(30, HydroturbineEntity.DEGREES_PER_TICK, 0); } @Test public void legacyMotionInsideTheNativeLimitIsNotArbitrarilyCleared() throws Exception { HydroturbineEntity turbine = new HydroturbineEntity(turbineType(), world()); - CompoundNBT saved = turbine.saveWithoutId(new CompoundNBT()); + CompoundTag saved = turbine.saveWithoutId(new CompoundTag()); saved.put("Motion", motion(5.5, -2, 0)); turbine.load(saved); - assertEquals(new Vector3d(5.5, -2, 0), turbine.getDeltaMovement()); + assertEquals(new Vec3(5.5, -2, 0), turbine.getDeltaMovement()); assertFalse(turbine.isPushedByFluid()); } @Test public void anchoredTurbineSurvivesNativeSaveLoadWithItsParentAndIdentity() throws Exception { EntityType type = turbineType(); - World world = world(); + Level world = world(); HydroturbineEntity original = new HydroturbineEntity(type, world); original.setPos(56856.5, 81, 50008.5); - CompoundNBT saved = original.saveWithoutId(new CompoundNBT()); + CompoundTag saved = original.saveWithoutId(new CompoundTag()); int[] parent = {56856, 82, 50008}; saved.putIntArray("parentPos", parent); for (int pass = 0; pass < 3; pass++) { HydroturbineEntity loaded = new HydroturbineEntity(type, world); loaded.load(saved); - CompoundNBT next = loaded.saveWithoutId(new CompoundNBT()); + CompoundTag next = loaded.saveWithoutId(new CompoundTag()); assertEquals(saved.getUUID("UUID"), next.getUUID("UUID")); assertEquals(saved.getList("Pos", 6), next.getList("Pos", 6)); assertEquals(motion(0, 0, 0), next.getList("Motion", 6)); @@ -68,45 +68,45 @@ public class ElectricOperationalHydroturbineAnchorTest { } } - private static ListNBT motion(double x, double y, double z) { - ListNBT list = new ListNBT(); - list.add(DoubleNBT.valueOf(x)); list.add(DoubleNBT.valueOf(y)); list.add(DoubleNBT.valueOf(z)); + private static ListTag motion(double x, double y, double z) { + ListTag list = new ListTag(); + list.add(DoubleTag.valueOf(x)); list.add(DoubleTag.valueOf(y)); list.add(DoubleTag.valueOf(z)); return list; } private static EntityType turbineType() { - return EntityType.Builder.of(HydroturbineEntity::new, EntityClassification.MISC) + return EntityType.Builder.of(HydroturbineEntity::new, MobCategory.MISC) .sized(1, 1).build("electricadvantage:test_anchored_turbine"); } private static EntityType controlType() { - return EntityType.Builder.of(ControlEntity::new, EntityClassification.MISC) + return EntityType.Builder.of(ControlEntity::new, MobCategory.MISC) .sized(1, 1).build("electricadvantage:test_native_motion_control"); } - private static World world() throws Exception { + private static Level world() throws Exception { Class allocator = Class.forName("sun.misc.Unsafe"); Field field = allocator.getDeclaredField("theUnsafe"); field.setAccessible(true); - World world = (World)allocator.getMethod("allocateInstance", Class.class) + Level world = (Level)allocator.getMethod("allocateInstance", Class.class) .invoke(field.get(null), NoTickWorld.class); - Field random = World.class.getField("random"); + Field random = Level.class.getField("random"); random.setAccessible(true); random.set(world, new Random(0)); return world; } - private static final class NoTickWorld extends ServerWorld { + private static final class NoTickWorld extends ServerLevel { private NoTickWorld() { super(null, null, null, null, null, null, null, null, false, 0L, Collections.emptyList(), false); } } private static final class ControlEntity extends Entity { - ControlEntity(EntityType type, World world) { super(type, world); } + ControlEntity(EntityType type, Level world) { super(type, world); } @Override protected void defineSynchedData() {} - @Override protected void readAdditionalSaveData(CompoundNBT tag) {} - @Override protected void addAdditionalSaveData(CompoundNBT tag) {} - @Override public IPacket getAddEntityPacket() { return null; } + @Override protected void readAdditionalSaveData(CompoundTag tag) {} + @Override protected void addAdditionalSaveData(CompoundTag tag) {} + @Override public Packet getAddEntityPacket() { return null; } } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java b/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java index c338fa2..23f5b6e 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java @@ -1,19 +1,20 @@ package zone.moddev.mc.electricadvantage.entities; import java.lang.reflect.Field; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.math.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.core.BlockPos; import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorTileEntity; import org.junit.Test; import static org.junit.Assert.*; public class HydroturbinePersistenceTest { + @org.junit.BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void generatorGuiOutputIsNormalizedWithoutChangingGenerationRate() { - HydroelectricGeneratorTileEntity active = new HydroelectricGeneratorTileEntity() { + HydroelectricGeneratorTileEntity active = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()) { @Override public boolean isActive() { return true; } }; - HydroelectricGeneratorTileEntity inactive = new HydroelectricGeneratorTileEntity() { + HydroelectricGeneratorTileEntity inactive = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()) { @Override public boolean isActive() { return false; } }; assertEquals(1F, active.getPowerOutput(), 0F); @@ -22,12 +23,12 @@ public class HydroturbinePersistenceTest { } @Test public void preservesPendingGeneratorAcrossRepeatedReadSaveWithoutTick() throws Exception { - CompoundNBT source = new CompoundNBT(); + CompoundTag source = new CompoundTag(); source.putIntArray("parentPos", new int[] {164, 81, 8}); for (int pass = 0; pass < 3; pass++) { HydroturbineEntity turbine = withoutWorld(); turbine.readAdditionalSaveData(source); - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); turbine.addAdditionalSaveData(saved); assertArrayEquals(new int[] {164, 81, 8}, saved.getIntArray("parentPos")); source = saved; @@ -36,31 +37,30 @@ public class HydroturbinePersistenceTest { @Test public void readingUnlinkedEntityClearsPendingLink() throws Exception { HydroturbineEntity turbine = withoutWorld(); - CompoundNBT source = new CompoundNBT(); + CompoundTag source = new CompoundTag(); source.putIntArray("parentPos", new int[] {164, 81, 8}); turbine.readAdditionalSaveData(source); - turbine.readAdditionalSaveData(new CompoundNBT()); - CompoundNBT saved = new CompoundNBT(); + turbine.readAdditionalSaveData(new CompoundTag()); + CompoundTag saved = new CompoundTag(); turbine.addAdditionalSaveData(saved); assertFalse(saved.contains("parentPos", 11)); } @Test public void savesAttachedGeneratorUsingTheSameLegacyCoordinateKey() throws Exception { HydroturbineEntity turbine = withoutWorld(); - HydroelectricGeneratorTileEntity generator = new HydroelectricGeneratorTileEntity(); - generator.setPosition(new BlockPos(31, 72, -18)); + HydroelectricGeneratorTileEntity generator = new HydroelectricGeneratorTileEntity(new BlockPos(31, 72, -18), new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()); turbine.parent = generator; - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); turbine.addAdditionalSaveData(saved); assertArrayEquals(new int[] {31, 72, -18}, saved.getIntArray("parentPos")); } @Test public void malformedLegacyCoordinatesDoNotCreateAPartialParentLink() throws Exception { HydroturbineEntity turbine = withoutWorld(); - CompoundNBT source = new CompoundNBT(); + CompoundTag source = new CompoundTag(); source.putIntArray("parentPos", new int[] {31, 72}); turbine.readAdditionalSaveData(source); - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); turbine.addAdditionalSaveData(saved); assertFalse(saved.contains("parentPos", 11)); } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java index aacd515..2ef2e63 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java @@ -1,16 +1,16 @@ package zone.moddev.mc.electricadvantage.graphics; -import com.mojang.blaze3d.matrix.MatrixStack; -import com.mojang.blaze3d.vertex.IVertexBuilder; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; -import net.minecraft.client.renderer.IRenderTypeBuffer; -import net.minecraft.util.math.vector.Matrix4f; +import net.minecraft.client.renderer.MultiBufferSource; +import com.mojang.math.Matrix4f; import net.minecraft.client.renderer.RenderType; -import net.minecraft.util.math.vector.Vector3f; -import net.minecraft.util.Direction; -import net.minecraft.util.registry.Bootstrap; +import com.mojang.math.Vector3f; +import net.minecraft.core.Direction; +import net.minecraft.server.Bootstrap; import org.junit.BeforeClass; import org.junit.Test; import zone.moddev.mc.electricadvantage.init.Power; @@ -25,11 +25,11 @@ public class RendererBufferContractTest { private static final int FULL_BRIGHT = 15 << 20 | 15 << 4; @BeforeClass public static void bootstrapNativeRegistries() { - Bootstrap.bootStrap(); + net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void quadNormalsUseWindingAndTheNativeNormalMatrix() { - MatrixStack matrices = new MatrixStack(); + PoseStack matrices = new PoseStack(); matrices.translate(3, 4, 5); matrices.mulPose(Vector3f.YP.rotationDegrees(90)); RecordingBuffer buffer = new RecordingBuffer(); @@ -51,14 +51,14 @@ public class RendererBufferContractTest { } @Test public void drillRetainsSixDirectionsSixteenVerticesAndLegacyUvs() throws Exception { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); set(ElectricDrillTileEntity.class, drill, "laserLength", 5); LaserDrillRenderer renderer = new LaserDrillRenderer(null); for (Direction direction : Direction.values()) { set(ElectricDrillTileEntity.class, drill, "facingCache", direction); - MatrixStack matrices = new MatrixStack(); + PoseStack matrices = new PoseStack(); matrices.translate(11, -5, 7); - MatrixStack.Entry before = matrices.last(); + PoseStack.Pose before = matrices.last(); Matrix4f matrix = before.pose().copy(); RecordingBuffer buffer = new RecordingBuffer(); renderer.render(drill, 0.5F, matrices, buffer, 0, 17); @@ -81,10 +81,10 @@ public class RendererBufferContractTest { } @Test public void idleDrillDoesNotTouchTheStackOrEmitVertices() { - MatrixStack matrices = new MatrixStack(); - MatrixStack.Entry before = matrices.last(); + PoseStack matrices = new PoseStack(); + PoseStack.Pose before = matrices.last(); RecordingBuffer buffer = new RecordingBuffer(); - new LaserDrillRenderer(null).render(new ElectricDrillTileEntity(), 0, matrices, buffer, 0, 0); + new LaserDrillRenderer(null).render(new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()), 0, matrices, buffer, 0, 0); assertSame(before, matrices.last()); assertTrue(matrices.clear()); assertTrue(buffer.vertices.isEmpty()); @@ -98,8 +98,8 @@ public class RendererBufferContractTest { turret.rotOldYaw = turret.rotYaw = -90; for (int charge : new int[] {0, 1, 10, 11}) { set(LaserTurretTileEntity.class, turret, "laserAttack", charge); - MatrixStack matrices = new MatrixStack(); - MatrixStack.Entry before = matrices.last(); + PoseStack matrices = new PoseStack(); + PoseStack.Pose before = matrices.last(); Matrix4f matrix = before.pose().copy(); RecordingBuffer buffer = new RecordingBuffer(); renderer.render(turret, 0.5F, matrices, buffer, 0x340012, 23); @@ -126,7 +126,7 @@ public class RendererBufferContractTest { } turret.setEnergy(1500, Power.ELECTRIC_POWER); RecordingBuffer active = new RecordingBuffer(); - renderer.render(turret, 0, new MatrixStack(), active, 0, 0); + renderer.render(turret, 0, new PoseStack(), active, 0, 0); assertArrayEquals(new float[] {0.5F, 0}, active.vertices.get(0).uv, 0F); assertArrayEquals(new float[] {1, 0.5F}, active.vertices.get(2).uv, 0F); } @@ -178,16 +178,22 @@ private static final class Vertex { int overlay; } - private static final class RecordingBuffer implements IVertexBuilder, IRenderTypeBuffer { + private static final class RecordingBuffer implements VertexConsumer, MultiBufferSource { + @Override public void defaultColor(int red, int green, int blue, int alpha) { + throw new AssertionError("Renderer must emit explicit per-vertex colors"); + } + @Override public void unsetDefaultColor() { + throw new AssertionError("Renderer must not mutate shared default-color state"); + } final List vertices = new ArrayList<>(); Vertex vertex = new Vertex(); - @Override public IVertexBuilder getBuffer(RenderType type) { return this; } - @Override public IVertexBuilder vertex(double x, double y, double z) { vertex.position = new float[] {(float) x, (float) y, (float) z}; return this; } - @Override public IVertexBuilder color(int r, int g, int b, int a) { vertex.color = new int[] {r, g, b, a}; return this; } - @Override public IVertexBuilder uv(float u, float v) { vertex.uv = new float[] {u, v}; return this; } - @Override public IVertexBuilder overlayCoords(int u, int v) { vertex.overlay = u | v << 16; return this; } - @Override public IVertexBuilder uv2(int u, int v) { vertex.light = u | v << 16; return this; } - @Override public IVertexBuilder normal(float x, float y, float z) { vertex.normal = new float[] {x, y, z}; return this; } + @Override public VertexConsumer getBuffer(RenderType type) { return this; } + @Override public VertexConsumer vertex(double x, double y, double z) { vertex.position = new float[] {(float) x, (float) y, (float) z}; return this; } + @Override public VertexConsumer color(int r, int g, int b, int a) { vertex.color = new int[] {r, g, b, a}; return this; } + @Override public VertexConsumer uv(float u, float v) { vertex.uv = new float[] {u, v}; return this; } + @Override public VertexConsumer overlayCoords(int u, int v) { vertex.overlay = u | v << 16; return this; } + @Override public VertexConsumer uv2(int u, int v) { vertex.light = u | v << 16; return this; } + @Override public VertexConsumer normal(float x, float y, float z) { vertex.normal = new float[] {x, y, z}; return this; } @Override public void endVertex() { vertices.add(vertex); vertex = new Vertex(); } } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java b/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java index 491bbb2..796027f 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java @@ -1,16 +1,16 @@ package zone.moddev.mc.electricadvantage.init; import java.util.Random; -import net.minecraft.item.MerchantOffer; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.util.registry.Bootstrap; +import net.minecraft.world.item.trading.MerchantOffer; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.Bootstrap; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.*; public class VillagesTest { @BeforeClass public static void bootstrapVanillaItems() { - Bootstrap.bootStrap(); + net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void nativeNegativePricesKeepBulkGoodsForOneEmerald() { @@ -31,9 +31,9 @@ private static void assertOffer(int minimum, int maximum, boolean upper, int eme Random random = new Random(0L) { @Override public int nextInt(int bound) { return upper ? bound - 1 : 0; } }; - MerchantOffer offer = Villages.sell(net.minecraft.item.Items.APPLE, minimum, maximum) + MerchantOffer offer = Villages.sell(net.minecraft.world.item.Items.APPLE, minimum, maximum) .getOffer(null, random); - CompoundNBT nbt = offer.createTag(); + CompoundTag nbt = offer.createTag(); assertEquals("minecraft:emerald", nbt.getCompound("buy").getString("id")); assertEquals(emeralds, nbt.getCompound("buy").getByte("Count")); assertEquals("minecraft:apple", nbt.getCompound("sell").getString("id")); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java index f9996cd..fa0a4aa 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java @@ -1,10 +1,10 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.nbt.ListNBT; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.registry.Bootstrap; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.server.Bootstrap; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.HashSet; @@ -15,34 +15,34 @@ import static org.junit.Assert.assertEquals; public class ElectricDrillPersistenceTest { - @BeforeClass public static void bootstrapNativeRegistries() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrapNativeRegistries() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void retainsLegacyProgressUntilWorldIsAttached() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); - drill.load(new ElectricDrillBlock().defaultBlockState(), target(94)); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + drill.load(target(94)); drill.prepareDataFieldsForSync(); assertEquals(94, drill.getDataFieldArray()[1]); } @Test public void clearsPreviousProgressOnReadingAnUntargetedTile() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); - drill.load(new ElectricDrillBlock().defaultBlockState(), target(94)); - drill.load(new ElectricDrillBlock().defaultBlockState(), new CompoundNBT()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + drill.load(target(94)); + drill.load(new CompoundTag()); drill.prepareDataFieldsForSync(); assertEquals(0, drill.getDataFieldArray()[1]); } @Test public void preservesPendingTargetSnapshotAcrossRepeatedReadSave() { - CompoundNBT source = target(94); - CompoundNBT state = new CompoundNBT(); + CompoundTag source = target(94); + CompoundTag state = new CompoundTag(); state.putString("Name", "minecraft:stone"); - ListNBT states = new ListNBT(); + ListTag states = new ListTag(); for (int i = 0; i < 9; i++) states.add(state.copy()); source.put("TargetStates", states); for (int pass = 0; pass < 3; pass++) { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); drill.loadFrom(source); - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); drill.saveTo(saved); assertEquals(source, saved); source = saved; @@ -50,7 +50,7 @@ public class ElectricDrillPersistenceTest { } @Test public void targetPlaneRemainsNineUniqueBlocksForEveryDrillDirection() throws Exception { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); Field facing = ElectricDrillTileEntity.class.getDeclaredField("facingCache"); facing.setAccessible(true); Method area = ElectricDrillTileEntity.class.getDeclaredMethod("getArea", BlockPos.class); @@ -72,8 +72,8 @@ public class ElectricDrillPersistenceTest { } @Test public void nativeDataFieldsRetainEnergyAndMiningProgress() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(); - drill.load(new ElectricDrillBlock().defaultBlockState(), target(94)); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + drill.load(target(94)); drill.setEnergy(416.0F, drill.getEnergyType()); drill.prepareDataFieldsForSync(); assertEquals(416.0F, Float.intBitsToFloat(drill.getDataFieldArray()[0]), 0.0F); @@ -83,8 +83,8 @@ public class ElectricDrillPersistenceTest { assertEquals(6, drill.numberOfOutputSlots()); } - private static CompoundNBT target(int progress) { - CompoundNBT tag = new CompoundNBT(); + private static CompoundTag target(int progress) { + CompoundTag tag = new CompoundTag(); tag.putShort("progress", (short) progress); tag.putInt("targetX", 2048); tag.putInt("targetY", 80); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java index d3f3f9a..61dac35 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java @@ -4,16 +4,16 @@ import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.Collections; -import net.minecraft.block.Blocks; -import net.minecraft.fluid.Fluids; -import net.minecraft.util.Direction; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.BlockRayTraceResult; -import net.minecraft.util.math.RayTraceContext; -import net.minecraft.util.math.vector.Vector3d; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.core.Direction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.phys.Vec3; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; import zone.moddev.mc.electricadvantage.init.Power; @@ -22,7 +22,7 @@ /** Focused regressions for retained independent native operating failures. */ public class ElectricOperationalNativeDefectsTest { - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void controllerCannotRequestMoreThanItsHundredUnitElectricalBuffer() throws Exception { GrowthChamberControllerTileEntity controller = controller(); @@ -77,20 +77,19 @@ public class ElectricOperationalNativeDefectsTest { @Test public void beamIgnoresOnlyItsOwnCollisionPostAndStopsAtTheDeclaredRange() throws Exception { BeamWorld world = withoutConstructor(BeamWorld.class); world.turret = new BlockPos(101, 82, -27); - StubTurret turret = withoutConstructor(StubTurret.class); + StubTurret turret = new StubTurret(world.turret); turret.testWorld = world; - turret.setPosition(world.turret); - Vector3d origin = new Vector3d(101.5, 82.75, -26.5); + Vec3 origin = new Vec3(101.5, 82.75, -26.5); Method trace = LaserTurretTileEntity.class.getDeclaredMethod("followRayToSolidBlock", - Vector3d.class, Vector3d.class, double.class); + Vec3.class, Vec3.class, double.class); trace.setAccessible(true); - Vector3d end = (Vector3d)trace.invoke(turret, origin, new Vector3d(1, 0, 0), 32.0); + Vec3 end = (Vec3)trace.invoke(turret, origin, new Vec3(1, 0, 0), 32.0); assertEquals(1, world.traces); assertEquals(32, origin.distanceTo(end), 0.000001); } private static GrowthChamberControllerTileEntity controller() throws Exception { - GrowthChamberControllerTileEntity controller = new GrowthChamberControllerTileEntity(); + GrowthChamberControllerTileEntity controller = new GrowthChamberControllerTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerBlock().defaultBlockState()); controller.setSoil(1000); controller.getTank().setFluid(new FluidStack(Fluids.WATER, 1800)); Field redstone = GrowthChamberControllerTileEntity.class.getDeclaredField("redstone"); @@ -106,7 +105,7 @@ private static T withoutConstructor(Class type) throws Exception { return type.cast(allocator.getMethod("allocateInstance", Class.class).invoke(field.get(null), type)); } - private static final class LightWorld extends ServerWorld { + private static final class LightWorld extends ServerLevel { BlockPos surface; int brightness, skyReads, lightReads; private LightWorld() { @@ -124,24 +123,25 @@ private LightWorld() { } } - private static final class BeamWorld extends ServerWorld { + private static final class BeamWorld extends ServerLevel { BlockPos turret; int traces; private BeamWorld() { super(null, null, null, null, null, null, null, null, false, 0L, Collections.emptyList(), false); } - @Override public BlockRayTraceResult clip(RayTraceContext context) { + @Override public BlockHitResult clip(ClipContext context) { traces++; assertTrue("Owning turret post must not stop its own beam", context.getBlockShape(new LaserTurretBlock(false).defaultBlockState(), this, turret).isEmpty()); assertFalse("An immediately adjacent solid block must still stop the beam", context.getBlockShape(Blocks.STONE.defaultBlockState(), this, turret.east()).isEmpty()); - return BlockRayTraceResult.miss(context.getTo(), Direction.EAST, new BlockPos(context.getTo())); + return BlockHitResult.miss(context.getTo(), Direction.EAST, new BlockPos(context.getTo())); } } private static final class StubTurret extends LaserTurretTileEntity { - World testWorld; - @Override public World getLevel() { return testWorld; } + StubTurret(BlockPos pos) { super(pos, new LaserTurretBlock(false).defaultBlockState()); } + Level testWorld; + @Override public Level getLevel() { return testWorld; } } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java index 4a6fee0..6e4a034 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java @@ -5,29 +5,29 @@ import java.util.Collections; import java.util.HashMap; import java.util.Map; -import net.minecraft.block.Block; -import net.minecraft.block.BlockState; -import net.minecraft.block.Blocks; -import net.minecraft.block.FlowingFluidBlock; -import net.minecraft.block.IBucketPickupHandler; -import net.minecraft.block.SlabBlock; -import net.minecraft.block.StairsBlock; -import net.minecraft.block.material.Material; -import net.minecraft.fluid.Fluid; -import net.minecraft.fluid.FluidState; -import net.minecraft.fluid.Fluids; -import net.minecraft.nbt.CompoundNBT; -import net.minecraft.state.properties.BlockStateProperties; -import net.minecraft.state.properties.Half; -import net.minecraft.state.properties.SlabType; -import net.minecraft.state.properties.StairsShape; -import net.minecraft.util.Direction; -import net.minecraft.util.SoundEvent; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.IWorld; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.LiquidBlock; +import net.minecraft.world.level.block.BucketPickup; +import net.minecraft.world.level.block.SlabBlock; +import net.minecraft.world.level.block.StairBlock; +import net.minecraft.world.level.material.Material; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.block.state.properties.Half; +import net.minecraft.world.level.block.state.properties.SlabType; +import net.minecraft.world.level.block.state.properties.StairsShape; +import net.minecraft.core.Direction; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.core.BlockPos; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; import zone.moddev.mc.electricadvantage.init.Power; @@ -41,7 +41,7 @@ public class ElectricOperationalPumpPickupTest { private static final float RESERVE = 8000; private static final float PICKUP_COST = 1000 + 32; - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void waterloggedSlabKeepsItsBlockAndSlabType() throws Exception { BlockState wet = Blocks.OAK_SLAB.defaultBlockState() @@ -56,9 +56,9 @@ public class ElectricOperationalPumpPickupTest { @Test public void waterloggedStairsKeepFacingHalfAndShape() throws Exception { BlockState wet = Blocks.OAK_STAIRS.defaultBlockState() - .setValue(StairsBlock.FACING, Direction.SOUTH) - .setValue(StairsBlock.HALF, Half.TOP) - .setValue(StairsBlock.SHAPE, StairsShape.OUTER_LEFT) + .setValue(StairBlock.FACING, Direction.SOUTH) + .setValue(StairBlock.HALF, Half.TOP) + .setValue(StairBlock.SHAPE, StairsShape.OUTER_LEFT) .setValue(BlockStateProperties.WATERLOGGED, true); StubPump pump = fixture(wet); pump.tickUpdate(true); @@ -80,7 +80,7 @@ public class ElectricOperationalPumpPickupTest { @Test public void sourceWaterInsideNonPickupSeagrassIsNotDestroyed() throws Exception { StubPump pump = fixture(Blocks.SEAGRASS.defaultBlockState()); assertTrue(pump.testWorld.getFluidState(SOURCE).isSource()); - assertFalse(pump.testWorld.getBlockState(SOURCE).getBlock() instanceof IBucketPickupHandler); + assertFalse(pump.testWorld.getBlockState(SOURCE).getBlock() instanceof BucketPickup); pump.tickUpdate(true); assertUntouched(pump, Blocks.SEAGRASS.defaultBlockState(), RESERVE, 0); } @@ -116,7 +116,7 @@ public class ElectricOperationalPumpPickupTest { @Test public void flowingWaterAndDrySlabsCannotBePickedUpAsSources() throws Exception { for (BlockState state : new BlockState[]{ - Blocks.WATER.defaultBlockState().setValue(FlowingFluidBlock.LEVEL, 1), + Blocks.WATER.defaultBlockState().setValue(LiquidBlock.LEVEL, 1), Blocks.OAK_SLAB.defaultBlockState()}) { StubPump pump = fixture(state); pump.tickUpdate(true); @@ -130,9 +130,8 @@ private static StubPump fixture(BlockState source) throws Exception { world.blocks.put(SOURCE, source); StubPump pump = new StubPump(); pump.testWorld = world; - pump.setPosition(PUMP); pump.setEnergy(RESERVE, Power.ELECTRIC_POWER); - CompoundNBT patch = new CompoundNBT(); + CompoundTag patch = new CompoundTag(); patch.putByte("NextPump", (byte)0); pump.loadFrom(patch); return pump; @@ -161,16 +160,17 @@ private static T withoutConstructor(Class type) throws Exception { } private static final class StubPump extends ElectricPumpTileEntity { + StubPump() { super(PUMP, new ElectricPumpBlock().defaultBlockState()); } PumpWorld testWorld; int sounds; - @Override public World getLevel() { return testWorld; } + @Override public Level getLevel() { return testWorld; } @Override protected boolean hasRedstoneSignal() { return false; } @Override protected void playSoundEffect(double x, double y, double z, SoundEvent sound, float volume, float pitch) { sounds++; } } - private static final class PumpWorld extends ServerWorld { + private static final class PumpWorld extends ServerLevel { Map blocks; int writes; private PumpWorld() { @@ -189,7 +189,7 @@ private PumpWorld() { } } - private static final class RefusingSource extends Block implements IBucketPickupHandler { + private static final class RefusingSource extends Block implements BucketPickup { final boolean returnNull; int calls; RefusingSource(boolean returnNull) { @@ -197,9 +197,10 @@ private static final class RefusingSource extends Block implements IBucketPickup this.returnNull = returnNull; } @Override public FluidState getFluidState(BlockState state) { return Fluids.WATER.getSource(false); } - @Override public Fluid takeLiquid(IWorld world, BlockPos pos, BlockState state) { + @Override public net.minecraft.world.item.ItemStack pickupBlock(LevelAccessor world, BlockPos pos, BlockState state) { calls++; - return returnNull ? null : Fluids.EMPTY; + return returnNull ? null : net.minecraft.world.item.ItemStack.EMPTY; } + @Override public java.util.Optional getPickupSound() { return java.util.Optional.empty(); } } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java index 1257255..2ab560a 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java @@ -6,10 +6,10 @@ import java.util.Arrays; import java.util.Collections; import java.util.List; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.core.BlockPos; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; @@ -20,7 +20,7 @@ public class ElectricOperationalRedstoneCacheTest { private static final BlockPos EVEN = new BlockPos(8, 80, 8); private static final BlockPos ODD = new BlockPos(9, 81, 9); - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void signalledFirstUseDoesNotWaitForPowerUpdate() throws Exception { ProbeMachine machine = fixture(EVEN, true); @@ -41,8 +41,7 @@ public class ElectricOperationalRedstoneCacheTest { } @Test public void unattachedReadDoesNotInitializeTheWorldCache() throws Exception { - ProbeMachine machine = new ProbeMachine(); - machine.setPosition(EVEN); + ProbeMachine machine = new ProbeMachine(EVEN); assertFalse(machine.signal()); machine.testWorld = world(EVEN, true); assertTrue(machine.signal()); @@ -52,7 +51,7 @@ public class ElectricOperationalRedstoneCacheTest { @Test public void clientReadsNeitherQueryRedstoneNorInitializeTheCache() throws Exception { ProbeMachine machine = fixture(EVEN, true); SignalWorld client = machine.testWorld; - Field clientSide = World.class.getDeclaredField("isClientSide"); + Field clientSide = Level.class.getDeclaredField("isClientSide"); clientSide.setAccessible(true); clientSide.setBoolean(client, true); assertTrue(client.isClientSide); @@ -100,8 +99,7 @@ public class ElectricOperationalRedstoneCacheTest { } private static ProbeMachine fixture(BlockPos position, boolean signalled) throws Exception { - ProbeMachine machine = new ProbeMachine(); - machine.setPosition(position); + ProbeMachine machine = new ProbeMachine(position); machine.testWorld = world(position, signalled); // Isolate conduit discovery, not PoweredEntity's real power-update cadence. Field delay = PoweredEntity.class.getDeclaredField("conduitRefreshDelay"); @@ -123,11 +121,12 @@ private static SignalWorld world(BlockPos position, boolean signalled) throws Ex } private static final class ProbeMachine extends ElectricOvenTileEntity { + ProbeMachine(BlockPos pos) { super(pos, new ElectricOvenBlock().defaultBlockState()); } SignalWorld testWorld; boolean observed; int powerUpdates; boolean signal() { return hasRedstoneSignal(); } - @Override public World getLevel() { return testWorld; } + @Override public Level getLevel() { return testWorld; } @Override public void tickUpdate(boolean server) { observed = hasRedstoneSignal(); } @Override public void powerUpdate() { powerUpdates++; @@ -156,7 +155,6 @@ private static final class ProbeMachine extends ElectricOvenTileEntity { @Test public void unattachedGeneratorReadDoesNotInitializeItsCache() throws Exception { ProbeGenerator generator = new ProbeGenerator(); - generator.setPosition(EVEN); assertFalse(generator.signal()); generator.testWorld = world(EVEN, true); assertTrue(generator.signal()); @@ -165,7 +163,7 @@ private static final class ProbeMachine extends ElectricOvenTileEntity { @Test public void clientGeneratorReadCannotInitializeTheServerCache() throws Exception { ProbeGenerator generator = generatorFixture(true); - Field clientSide = World.class.getDeclaredField("isClientSide"); + Field clientSide = Level.class.getDeclaredField("isClientSide"); clientSide.setAccessible(true); clientSide.setBoolean(generator.testWorld, true); assertFalse(generator.signal()); @@ -186,18 +184,18 @@ private static final class ProbeMachine extends ElectricOvenTileEntity { private static ProbeGenerator generatorFixture(boolean signalled) throws Exception { ProbeGenerator generator = new ProbeGenerator(); - generator.setPosition(EVEN); generator.testWorld = world(EVEN, signalled); return generator; } private static final class ProbeGenerator extends PhotovoltaicGeneratorTileEntity { + ProbeGenerator() { super(EVEN, new PhotovoltaicGeneratorBlock().defaultBlockState()); } SignalWorld testWorld; boolean signal() { return hasRedstoneSignal(); } - @Override public World getLevel() { return testWorld; } + @Override public Level getLevel() { return testWorld; } } - private static final class SignalWorld extends ServerWorld { + private static final class SignalWorld extends ServerLevel { @Override public boolean canSeeSky(BlockPos position) { throw new AssertionError("An inhibited panel must not enter light sampling"); } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java index 1c0ae73..3657f60 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java @@ -5,16 +5,16 @@ import java.util.Collections; import java.util.List; import java.util.function.Predicate; -import net.minecraft.entity.Entity; -import net.minecraft.entity.player.ServerPlayerEntity; -import net.minecraft.network.IPacket; -import net.minecraft.network.play.ServerPlayNetHandler; -import net.minecraft.network.play.server.SPlaySoundPacket; -import net.minecraft.util.SoundEvents; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.registry.Bootstrap; -import net.minecraft.world.World; -import net.minecraft.world.server.ServerWorld; +import net.minecraft.world.entity.Entity; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.network.protocol.Packet; +import net.minecraft.server.network.ServerGamePacketListenerImpl; +import net.minecraft.network.protocol.game.ClientboundCustomSoundPacket; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.world.phys.AABB; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.Level; +import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; @@ -22,12 +22,12 @@ /** Real broadcast methods with an explicit player list and forbidden chunk-backed entity queries. */ public class ElectricOperationalSoundBroadcastTest { - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void machineBroadcastUsesOnlyExistingIntersectingConnectedPlayers() throws Exception { QueryRejectingWorld world = fixture(); - ElectricOvenTileEntity machine = new ElectricOvenTileEntity() { - @Override public World getLevel() { return world; } + ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricOvenBlock().defaultBlockState()) { + @Override public Level getLevel() { return world; } }; machine.playSoundEffect(100, 80, -20, SoundEvents.ANVIL_LAND, 0.25f, 0.75f); assertRecipients(world); @@ -35,8 +35,8 @@ public class ElectricOperationalSoundBroadcastTest { @Test public void generatorBroadcastUsesOnlyExistingIntersectingConnectedPlayers() throws Exception { QueryRejectingWorld world = fixture(); - PhotovoltaicGeneratorTileEntity generator = new PhotovoltaicGeneratorTileEntity() { - @Override public World getLevel() { return world; } + PhotovoltaicGeneratorTileEntity generator = new PhotovoltaicGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.PhotovoltaicGeneratorBlock().defaultBlockState()) { + @Override public Level getLevel() { return world; } }; generator.playSoundEffect(100, 80, -20, SoundEvents.ANVIL_LAND, 0.25f, 0.75f); assertRecipients(world); @@ -45,8 +45,8 @@ public class ElectricOperationalSoundBroadcastTest { @Test public void emptyPlayerListNeverQueriesChunks() throws Exception { QueryRejectingWorld world = withoutConstructor(QueryRejectingWorld.class); world.existingPlayers = Collections.emptyList(); - ElectricOvenTileEntity machine = new ElectricOvenTileEntity() { - @Override public World getLevel() { return world; } + ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricOvenBlock().defaultBlockState()) { + @Override public Level getLevel() { return world; } }; machine.playSoundEffect(50000, 82, 50000, SoundEvents.ANVIL_LAND, 1, 1); assertEquals(1, world.playerListReads); @@ -55,20 +55,20 @@ public class ElectricOperationalSoundBroadcastTest { private static QueryRejectingWorld fixture() throws Exception { QueryRejectingWorld world = withoutConstructor(QueryRejectingWorld.class); world.existingPlayers = new ArrayList<>(); - world.existingPlayers.add(player(new AxisAlignedBB(99.7, 80, -20.3, 100.3, 81.8, -19.7), false, true)); + world.existingPlayers.add(player(new AABB(99.7, 80, -20.3, 100.3, 81.8, -19.7), false, true)); // Player center can be outside 16 blocks while its box still intersects the original cube. - world.existingPlayers.add(player(new AxisAlignedBB(115.9, 80, -20.3, 116.5, 81.8, -19.7), false, true)); + world.existingPlayers.add(player(new AABB(115.9, 80, -20.3, 116.5, 81.8, -19.7), false, true)); // Cube corner is outside a spherical range but was included by the original AABB query. - world.existingPlayers.add(player(new AxisAlignedBB(115, 80, -5, 115.6, 81.8, -4.4), false, true)); - world.existingPlayers.add(player(new AxisAlignedBB(116, 80, -20.3, 116.6, 81.8, -19.7), false, true)); - world.existingPlayers.add(player(new AxisAlignedBB(99.7, 96, -20.3, 100.3, 97.8, -19.7), false, true)); - world.existingPlayers.add(player(new AxisAlignedBB(99.7, 62.2, -20.3, 100.3, 64, -19.7), false, true)); - world.existingPlayers.add(player(new AxisAlignedBB(99.7, 80, -20.3, 100.3, 81.8, -19.7), true, true)); - world.existingPlayers.add(player(new AxisAlignedBB(99.7, 80, -20.3, 100.3, 81.8, -19.7), false, false)); + world.existingPlayers.add(player(new AABB(115, 80, -5, 115.6, 81.8, -4.4), false, true)); + world.existingPlayers.add(player(new AABB(116, 80, -20.3, 116.6, 81.8, -19.7), false, true)); + world.existingPlayers.add(player(new AABB(99.7, 96, -20.3, 100.3, 97.8, -19.7), false, true)); + world.existingPlayers.add(player(new AABB(99.7, 62.2, -20.3, 100.3, 64, -19.7), false, true)); + world.existingPlayers.add(player(new AABB(99.7, 80, -20.3, 100.3, 81.8, -19.7), true, true)); + world.existingPlayers.add(player(new AABB(99.7, 80, -20.3, 100.3, 81.8, -19.7), false, false)); return world; } - private static StubPlayer player(AxisAlignedBB bounds, boolean spectator, boolean connected) throws Exception { + private static StubPlayer player(AABB bounds, boolean spectator, boolean connected) throws Exception { StubPlayer player = withoutConstructor(StubPlayer.class); player.setBoundingBox(bounds); player.spectator = spectator; @@ -79,11 +79,11 @@ private static StubPlayer player(AxisAlignedBB bounds, boolean spectator, boolea private static void assertRecipients(QueryRejectingWorld world) { assertEquals("Broadcast reads the existing player list once", 1, world.playerListReads); for (int i = 0; i < world.existingPlayers.size(); i++) { - ServerPlayerEntity player = world.existingPlayers.get(i); + ServerPlayer player = world.existingPlayers.get(i); if (player.connection == null) continue; RecordingConnection connection = (RecordingConnection)player.connection; assertEquals("Player " + i, i < 3 ? 1 : 0, connection.sent); - if (i < 3) assertTrue(connection.last instanceof SPlaySoundPacket); + if (i < 3) assertTrue(connection.last instanceof ClientboundCustomSoundPacket); } } @@ -94,35 +94,35 @@ private static T withoutConstructor(Class type) throws Exception { return type.cast(allocator.getMethod("allocateInstance", Class.class).invoke(field.get(null), type)); } - private static final class QueryRejectingWorld extends ServerWorld { - List existingPlayers; + private static final class QueryRejectingWorld extends ServerLevel { + List existingPlayers; int playerListReads; private QueryRejectingWorld() { super(null, null, null, null, null, null, null, null, false, 0L, Collections.emptyList(), false); } - @Override public List players() { + @Override public List players() { playerListReads++; return existingPlayers; } - @Override public List getEntitiesOfClass(Class type, - AxisAlignedBB bounds, Predicate predicate) { + @Override public List getEntitiesOfClass(Class type, + AABB bounds, Predicate predicate) { throw new AssertionError("Sound broadcast must not use chunk-backed entity queries"); } } - private static final class StubPlayer extends ServerPlayerEntity { + private static final class StubPlayer extends ServerPlayer { boolean spectator; - private StubPlayer() { super(null, null, null, null); } + private StubPlayer() { super(null, null, null); } @Override public boolean isSpectator() { return spectator; } } - private static final class RecordingConnection extends ServerPlayNetHandler { + private static final class RecordingConnection extends ServerGamePacketListenerImpl { int sent; - IPacket last; + Packet last; private RecordingConnection() { super(null, null, null); } - @Override public void send(IPacket packet) { sent++; last = packet; } + @Override public void send(Packet packet) { sent++; last = packet; } } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java index cc09173..fb0bfcc 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java @@ -2,8 +2,8 @@ import cyano.poweradvantage.api.fluid.FluidStack; import java.lang.reflect.Method; -import net.minecraft.fluid.Fluids; -import net.minecraft.util.registry.Bootstrap; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.server.Bootstrap; import org.junit.BeforeClass; import org.junit.Test; import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipe; @@ -13,7 +13,7 @@ /** Capacity preflight tests; the shared rig separately tests natural machine ticks. */ public class ElectricOperationalStillCapacityTest { - @BeforeClass public static void bootstrap() { Bootstrap.bootStrap(); } + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void aFullTankCannotConsumeInput() throws Exception { ElectricStillTileEntity still = fixture(1000); @@ -52,7 +52,7 @@ public class ElectricOperationalStillCapacityTest { } private static ElectricStillTileEntity fixture(int output) { - ElectricStillTileEntity still = new ElectricStillTileEntity(); + ElectricStillTileEntity still = new ElectricStillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricStillBlock().defaultBlockState()); still.getInputTank().setFluid(new FluidStack(Fluids.WATER, 4)); if (output > 0) still.getOutputTank().setFluid(new FluidStack(Fluids.LAVA, output)); return still; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java index 759f079..3a2dde7 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java @@ -1,18 +1,19 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.nbt.CompoundNBT; +import net.minecraft.nbt.CompoundTag; import org.junit.Test; import static org.junit.Assert.*; public class GrowthChamberPersistenceTest { + @org.junit.BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void legacyGrowthAndProgressSurviveReadSaveBeforeWorldAttachment() { - CompoundNBT source = new CompoundNBT(); + CompoundTag source = new CompoundTag(); source.putByteArray("growth", new byte[] {2, 4, 6}); source.putIntArray("prog", new int[] {245, 468, 627}); for (int pass = 0; pass < 3; pass++) { - GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(); + GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberBlock().defaultBlockState()); chamber.loadFrom(source); - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); chamber.saveTo(saved); assertArrayEquals(new byte[] {2, 4, 6}, saved.getByteArray("growth")); assertArrayEquals(new int[] {245, 468, 627}, saved.getIntArray("prog")); @@ -21,16 +22,16 @@ public class GrowthChamberPersistenceTest { } @Test public void shortArraysArePaddedAndNewNbtClearsOldPendingWork() { - GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(); - CompoundNBT source = new CompoundNBT(); + GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberBlock().defaultBlockState()); + CompoundTag source = new CompoundTag(); source.putByteArray("growth", new byte[] {2}); source.putIntArray("prog", new int[] {245}); chamber.loadFrom(source); - CompoundNBT saved = new CompoundNBT(); + CompoundTag saved = new CompoundTag(); chamber.saveTo(saved); assertArrayEquals(new byte[] {2, 0, 0}, saved.getByteArray("growth")); assertArrayEquals(new int[] {245, 0, 0}, saved.getIntArray("prog")); - chamber.loadFrom(new CompoundNBT()); + chamber.loadFrom(new CompoundTag()); chamber.saveTo(saved); assertArrayEquals(new byte[] {0, 0, 0}, saved.getByteArray("growth")); assertArrayEquals(new int[] {0, 0, 0}, saved.getIntArray("prog")); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java index e1def17..062dbc0 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java @@ -1,18 +1,18 @@ package zone.moddev.mc.electricadvantage.machines; -import net.minecraft.util.Direction; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.vector.Vector3d; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; import org.junit.Test; import static org.junit.Assert.*; public class LaserTurretGeometryTest { @Test public void nativeRayGeometryKeepsHitsInAllSixDirections() { - Vector3d origin = new Vector3d(0.5D, 0.5D, 0.5D); + Vec3 origin = new Vec3(0.5D, 0.5D, 0.5D); for (Direction facing : Direction.values()) { - Vector3d direction = new Vector3d(facing.getStepX(), facing.getStepY(), facing.getStepZ()); - Vector3d center = origin.add(direction.scale(5.0D)); - AxisAlignedBB target = new AxisAlignedBB(center.x - 0.25D, center.y - 0.25D, center.z - 0.25D, + Vec3 direction = new Vec3(facing.getStepX(), facing.getStepY(), facing.getStepZ()); + Vec3 center = origin.add(direction.scale(5.0D)); + AABB target = new AABB(center.x - 0.25D, center.y - 0.25D, center.z - 0.25D, center.x + 0.25D, center.y + 0.25D, center.z + 0.25D); assertTrue(facing.toString(), LaserTurretTileEntity.rayIntersectsBoundingBox(origin, direction, target)); assertFalse(facing.toString(), LaserTurretTileEntity.rayIntersectsBoundingBox(origin, direction.scale(-1.0D), target)); @@ -20,10 +20,10 @@ public class LaserTurretGeometryTest { } @Test public void anOffsetTargetIsNotHitAndMissingBoundsAreIgnored() { - Vector3d origin = new Vector3d(0.5D, 0.5D, 0.5D); - Vector3d direction = new Vector3d(1.0D, 0.0D, 0.0D); + Vec3 origin = new Vec3(0.5D, 0.5D, 0.5D); + Vec3 direction = new Vec3(1.0D, 0.0D, 0.0D); assertFalse(LaserTurretTileEntity.rayIntersectsBoundingBox(origin, direction, - new AxisAlignedBB(5.0D, 4.0D, 4.0D, 6.0D, 5.0D, 5.0D))); + new AABB(5.0D, 4.0D, 4.0D, 6.0D, 5.0D, 5.0D))); assertFalse(LaserTurretTileEntity.rayIntersectsBoundingBox(origin, direction, null)); } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java b/src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java new file mode 100644 index 0000000..7349495 --- /dev/null +++ b/src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java @@ -0,0 +1,63 @@ +package zone.moddev.mc.electricadvantage.machines; + +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.Bootstrap; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.EntityBlock; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.junit.BeforeClass; +import org.junit.Test; +import static org.junit.Assert.*; + +public class Native117ConstructionTest { + @BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } + + @Test public void everyFactoryPreservesItsNativePositionAndState() { + BlockPos pos = new BlockPos(-117, 83, 4917); + for (Block block : blocks()) { + BlockState state = block.defaultBlockState(); + BlockEntity tile = ((EntityBlock) block).newBlockEntity(pos, state); + assertNotNull(block.getClass().getName(), tile); + assertEquals(pos, tile.getBlockPos()); + assertSame(state, tile.getBlockState()); + CompoundTag saved = new CompoundTag(); + saved.putInt("x", 0); saved.putInt("y", 1); saved.putInt("z", 2); + tile.load(saved); + assertEquals("NBT coordinates cannot move a native block entity", pos, tile.getBlockPos()); + assertSame(state, tile.getBlockState()); + } + } + + @Test public void turretPacketUsesConstructorCoordinatesBeforeWorldAttachment() { + BlockPos pos = new BlockPos(1531, 91, -475); + LaserTurretTileEntity turret = new LaserTurretTileEntity(pos, new LaserTurretBlock(false).defaultBlockState()); + assertEquals(pos, turret.getUpdatePacket().getPos()); + turret.setOpticPosition(); + assertEquals(pos, turret.getBlockPos()); + } + + @Test public void ledOnlyOffersItsOwnNativeTicker() { + LEDBlock block = new LEDBlock(); + BlockEntityType type = BlockEntityType.Builder.of(LEDTileEntity::new, block).build(null); + BlockEntityType previous = zone.moddev.mc.electricadvantage.init.Entities.LED; + try { + zone.moddev.mc.electricadvantage.init.Entities.LED = type; + assertNotNull(block.getTicker(null, block.defaultBlockState(), type)); + assertNull(block.getTicker(null, block.defaultBlockState(), BlockEntityType.CHEST)); + } finally { + zone.moddev.mc.electricadvantage.init.Entities.LED = previous; + } + } + + private static Block[] blocks() { + return new Block[]{new ElectricFurnaceBlock(), new ElectricCrusherBlock(), new ElectricDrillBlock(), + new ElectricFabricatorBlock(), new GrowthChamberBlock(), new GrowthChamberControllerBlock(), + new ElectricOvenBlock(), new LaserTurretBlock(false), new LaserTurretBlock(true), new LEDBlock(), + new HydroelectricGeneratorBlock(), new PhotovoltaicGeneratorBlock(), + new SteamPoweredElectricGeneratorBlock(), new ElectricBatteryArrayBlock(), + new ElectricPumpBlock(), new ElectricStillBlock(), new PlasticRefineryBlock()}; + } +} diff --git a/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java b/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java index de29e94..c7257e3 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java @@ -3,7 +3,7 @@ import static org.junit.Assert.assertEquals; import cyano.poweradvantage.api.migration.LegacyMigrationApi; -import net.minecraft.util.Direction; +import net.minecraft.core.Direction; import org.junit.Test; public class ElectricLegacyMigrationsTest { diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java new file mode 100644 index 0000000..985fcdd --- /dev/null +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java @@ -0,0 +1,29 @@ +package zone.moddev.mc.electricadvantage.resources; + +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; +import org.junit.Test; +import static org.junit.Assert.*; + +/** Audits real dependency recipe bytes, not a replacement recipe or a runtime job. */ +public class BaseMetalsRawRecipeContractTest { + @Test public void publishedOneSeventeenRecipesKeepRawAndOreOutputsDistinct() throws Exception { + for (String metal : new String[]{"copper", "iron", "gold"}) { + for (String input : new String[]{"ore", "raw"}) { + String path = "/data/basemetals/recipes/" + metal + "_" + input + "_crushing.json"; + try (InputStream stream = getClass().getResourceAsStream(path)) { + assertNotNull(path, stream); + JsonObject recipe = new JsonParser().parse(new InputStreamReader(stream, StandardCharsets.UTF_8)).getAsJsonObject(); + assertEquals("basemetals:crushing", recipe.get("type").getAsString()); + assertEquals("forge:" + (input.equals("ore") ? "ores/" : "raw_materials/") + metal, + recipe.getAsJsonObject("ingredient").get("tag").getAsString()); + assertEquals("basemetals:" + metal + "_powder", recipe.getAsJsonObject("result").get("item").getAsString()); + assertEquals(input.equals("ore") ? 2 : 1, recipe.getAsJsonObject("result").get("count").getAsInt()); + } + } + } + } +} diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java index 728dd1b..dcdbfa2 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java @@ -33,8 +33,8 @@ public class BlockLootResourceTest { assertFalse(Files.exists(root.resolve("pump_pipe_electric.json"))); } - @Test public void resourcePackDeclaresTheNativeOneSixteenFormat() throws Exception { - assertEquals(6, read(Paths.get("src/main/resources/pack.mcmeta")) + @Test public void resourcePackDeclaresTheNativeOneSeventeenFormat() throws Exception { + assertEquals(7, read(Paths.get("src/main/resources/pack.mcmeta")) .getAsJsonObject("pack").get("pack_format").getAsInt()); } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java index ca10fab..07e43ca 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java @@ -11,11 +11,11 @@ public class BuildWorkflowContractTest { for (String workflow : new String[] {"ci.yml", "codeql-analysis.yml"}) { String source = new String(Files.readAllBytes(Paths.get(".github/workflows", workflow)), StandardCharsets.UTF_8); int setup = source.indexOf("- name: Set up Gradle"); - for (String version : new String[] {"25.0.3+9.0.LTS", "8.0.502+7", "17.0.1+12"}) { + for (String version : new String[] {"25.0.3+9.0.LTS", "16.0.2+7", "8.0.502+7", "17.0.1+12"}) { int pin = source.indexOf("java-version: '" + version + "'"); assertTrue(workflow + " missing pinned JDK " + version, pin >= 0 && pin < setup); } - assertTrue(source.contains("-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64")); + assertTrue(source.contains("-Porg.gradle.java.installations.paths=$JAVA_HOME,$JAVA_HOME_16_X64,$JAVA_HOME_8_X64,$JAVA_HOME_25_X64")); assertTrue(source.contains("-Porg.gradle.java.installations.auto-detect=false")); assertTrue(source.contains("-Porg.gradle.java.installations.auto-download=false")); assertFalse(source.contains("-Dorg.gradle.java.installations.")); @@ -32,8 +32,9 @@ public class BuildWorkflowContractTest { @Test public void dependencyPolicyPrecedesEveryPinnedCheckout() throws Exception { for (String helper : new String[] {"tools/verify-native-port.js", "tools/verification/Verify-ElectricEcj.ps1"}) { String source = new String(Files.readAllBytes(Paths.get(helper)), StandardCharsets.UTF_8); - assertTrue(helper, source.contains("bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7")); - assertTrue(helper, source.contains("2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386")); + assertTrue(helper, source.contains("API_PIN_PROVISIONAL")); + assertTrue(helper, source.contains("28247f936ac99e7a417da1bc1c89bc8394773a26")); + assertTrue(helper, source.contains("7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D")); assertFalse(helper, source.contains("2116a35a40dd150d79e7dfdcdc891637793178b7")); assertFalse(helper, source.contains("F58B93DAF03CF303F32B18CCCA140E55E886A2BA82732A3F286ADF3E31194B6A")); } @@ -44,17 +45,19 @@ public class BuildWorkflowContractTest { assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/OreSpawn")); assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/BaseMetals")); assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/PowerAdvantage")); - assertTrue(source.contains("ref: a113e5d767169189f0e35ade1e173a12d550b00e")); - assertTrue(source.contains("ref: 995f6cc4dd2d5eecc628a42e5c43fa5390c24bca")); - assertTrue(source.contains("BaseMetals-3.1.1.116051-deobf.jar")); - assertTrue(source.contains("ref: bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7")); - assertTrue(source.contains("2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386")); + assertTrue(source.contains("ref: b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf")); + assertTrue(source.contains("ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d")); + assertTrue(source.contains("BaseMetals-3.1.0.117011-deobf.jar")); + assertTrue(source.contains("ref: ${{ steps.pins.outputs.power_ref }}")); + assertTrue(source.contains("API_PIN_PROVISIONAL")); + assertTrue(source.contains("28247f936ac99e7a417da1bc1c89bc8394773a26")); + assertTrue(source.contains("7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D")); assertFalse(source.contains("098d4625abc8a849bd1a11dcf697b3fee0cade7b")); assertFalse(source.contains("78E58DD2AB04E2B9F3267E5735C64AAE7E93EAC97571CB04485038862C853ED3")); assertFalse(source.contains("ce90c24c302d0ff3565db2db0c6c94a3b5f21f83")); assertFalse(source.contains("8BBB03DD7E4AF08A7390A161ED5AA94E292BEE56EF60E550B5512E967E0E9174")); assertTrue(source.indexOf("- name: Require final PowerAdvantage pin") < source.indexOf("- name: Check out pinned OreSpawn")); - assertTrue(source.contains("branches: [master-1.16.5")); + assertTrue(source.contains("branches: [master-1.17.1")); assertFalse(source.contains("master-1.14.4")); } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java new file mode 100644 index 0000000..12025e7 --- /dev/null +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java @@ -0,0 +1,34 @@ +package zone.moddev.mc.electricadvantage.resources; + +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.Arrays; +import java.util.stream.Collectors; +import org.junit.Test; +import static org.junit.Assert.*; + +/** Resource contracts do not prove GPU shader compilation or visual acceptance. */ +public class ShaderResourceContractTest { + private static final Path ROOT = Path.of("src/main/resources/assets/electricadvantage/shaders/core"); + + @Test public void nativeShaderRetainsTheEntityVertexLayoutAndVanillaFogFragment() throws Exception { + JsonObject json = new JsonParser().parse(Files.readString(ROOT.resolve("unshaded.json"))).getAsJsonObject(); + assertEquals("electricadvantage:unshaded", json.get("vertex").getAsString()); + assertEquals("minecraft:rendertype_entity_translucent", json.get("fragment").getAsString()); + assertEquals(Arrays.asList("Position", "Color", "UV0", "UV1", "UV2", "Normal"), + java.util.stream.StreamSupport.stream(json.getAsJsonArray("attributes").spliterator(), false) + .map(value -> value.getAsString()).collect(Collectors.toList())); + assertNotNull(getClass().getResource("/assets/minecraft/shaders/core/rendertype_entity_translucent.fsh")); + } + + @Test public void noDiffuseLightingDoesNotRemoveLightmapOrOverlaySampling() throws Exception { + String vertex = Files.readString(ROOT.resolve("unshaded.vsh")); + assertTrue(vertex.contains("vertexColor = Color;")); + assertTrue(vertex.contains("lightMapColor = texelFetch(Sampler2, UV2 / 16, 0);")); + assertTrue(vertex.contains("overlayColor = texelFetch(Sampler1, UV1, 0);")); + assertFalse(vertex.contains("minecraft_mix_light")); + assertTrue(vertex.contains("vertexDistance = length(viewPosition.xyz);")); + } +} diff --git a/tools/verification/AuditedJUnit.java b/tools/verification/AuditedJUnit.java index a544297..8279849 100644 --- a/tools/verification/AuditedJUnit.java +++ b/tools/verification/AuditedJUnit.java @@ -30,7 +30,7 @@ public static void main(String[] args) throws Exception { XMLStreamWriter xml = XMLOutputFactory.newFactory().createXMLStreamWriter(output, "UTF-8"); xml.writeStartDocument("UTF-8", "1.0"); xml.writeStartElement("testsuite"); - xml.writeAttribute("name", "ElectricAdvantage-1.16.5-ECJ"); + xml.writeAttribute("name", "ElectricAdvantage-1.17.1-ECJ"); xml.writeAttribute("tests", Integer.toString(result.getRunCount())); xml.writeAttribute("failures", Integer.toString(result.getFailureCount())); xml.writeAttribute("ignored", Integer.toString(result.getIgnoreCount())); diff --git a/tools/verification/ForgeNativeTestBootstrap.java b/tools/verification/ForgeNativeTestBootstrap.java new file mode 100644 index 0000000..09c9744 --- /dev/null +++ b/tools/verification/ForgeNativeTestBootstrap.java @@ -0,0 +1,43 @@ +package zone.moddev.mc.electricadvantage.verification; + +import java.lang.instrument.ClassFileTransformer; +import java.lang.instrument.Instrumentation; +import java.security.ProtectionDomain; + +/** Applies Forge's real event-bus plugin for native tier/harvest tests on a plain JVM. */ +public final class ForgeNativeTestBootstrap { + private ForgeNativeTestBootstrap() {} + + public static void premain(String options, Instrumentation instrumentation) { + zone.moddev.mc.advantageworks.unit.ForgeCapabilityBootstrap.premain(options, instrumentation); + instrumentation.addTransformer(new ClassFileTransformer() { + @Override public byte[] transform(ClassLoader loader, String name, Class type, + ProtectionDomain domain, byte[] bytes) { + if (loader == null || name == null || !(name.equals("net/minecraftforge/fmllegacy/network/NetworkEvent") + || name.startsWith("net/minecraftforge/fmllegacy/network/NetworkEvent$"))) return null; + try { + Class readerType = Class.forName("org.objectweb.asm.ClassReader", true, loader); + Object reader = readerType.getConstructor(byte[].class).newInstance((Object) bytes); + Class nodeType = Class.forName("org.objectweb.asm.tree.ClassNode", true, loader); + Object node = nodeType.getConstructor().newInstance(); + Class visitorType = Class.forName("org.objectweb.asm.ClassVisitor", true, loader); + readerType.getMethod("accept", visitorType, int.class).invoke(reader, node, 0); + Class asmType = Class.forName("org.objectweb.asm.Type", true, loader); + Object classType = asmType.getMethod("getObjectType", String.class).invoke(null, name); + Class phaseType = Class.forName("cpw.mods.modlauncher.serviceapi.ILaunchPluginService$Phase", true, loader); + Object phase = phaseType.getField("AFTER").get(null); + Class pluginType = Class.forName("net.minecraftforge.eventbus.service.ModLauncherService", true, loader); + int flags = (Integer) pluginType.getMethod("processClassWithFlags", phaseType, nodeType, asmType, String.class) + .invoke(pluginType.getConstructor().newInstance(), phase, node, classType, "classloading"); + if (flags == 0) throw new IllegalStateException("Native event-bus plugin did not transform " + name); + Class writerType = Class.forName("org.objectweb.asm.ClassWriter", true, loader); + Object writer = writerType.getConstructor(int.class).newInstance(flags & 3); + nodeType.getMethod("accept", visitorType).invoke(node, writer); + return (byte[]) writerType.getMethod("toByteArray").invoke(writer); + } catch (ReflectiveOperationException failure) { + throw new IllegalStateException("Cannot run Forge's native event-bus transform for " + name, failure); + } + } + }); + } +} diff --git a/tools/verification/Verify-ElectricEcj.ps1 b/tools/verification/Verify-ElectricEcj.ps1 index f941090..179f435 100644 --- a/tools/verification/Verify-ElectricEcj.ps1 +++ b/tools/verification/Verify-ElectricEcj.ps1 @@ -3,7 +3,7 @@ param( [Parameter(Mandatory = $true)][string]$Evidence, [string]$Compiler = 'C:/Users/johnb/.p2/pool/plugins/org.eclipse.jdt.core.compiler.batch_3.46.0.v20260528-0407.jar', [string]$Java17Home = 'C:/Users/johnb/.jdks/temurin-17.0.1+12/jdk-17.0.1+12', - [string]$Java8Home = 'C:/Users/johnb/.jdks/temurin-8.0.502+7/jdk8u502-b07' + [string]$Java16Home = 'C:/Users/johnb/.gradle/jdks/eclipse_foundation-16-amd64-windows.2' ) $ErrorActionPreference = 'Stop' Set-StrictMode -Version Latest @@ -31,7 +31,7 @@ function Test-ClassFiles([string]$Directory) { if ($bytes.Length -lt 8 -or $bytes[0] -ne 0xCA -or $bytes[1] -ne 0xFE -or $bytes[2] -ne 0xBA -or $bytes[3] -ne 0xBE) { throw "Invalid class file: $($file.FullName)" } - if (($bytes[6] * 256 + $bytes[7]) -ne 52) { throw "Non-Java-8 ECJ output: $($file.FullName)" } + if (($bytes[6] * 256 + $bytes[7]) -ne 60) { throw "Non-Java-16 ECJ output: $($file.FullName)" } } return $files.Count } @@ -39,12 +39,9 @@ function Invoke-Ecj([string]$Name, [string[]]$Sources, [string[]]$Libraries) { $output = Join-Path $Evidence $Name $null = New-Item -ItemType Directory -Path $output $xmlLog = Join-Path $Evidence "$Name.xml" - # Match Eclipse's Java 8 JRE access restrictions, not just its compiler version. - $restrictedBoot = @($bootLibraries.path | ForEach-Object { - $_.Replace('\', '/') + '[-sun/**;-com/sun/**;-jdk/internal/**]' - }) - $arguments = @('-1.8', '-proc:none', '-encoding', 'UTF-8', '-err:+forbidden,discouraged', '-bootclasspath', - ('"' + ($restrictedBoot -join ';') + '"'), '-classpath', + # Java 16 uses the JDK module image; keep forbidden/discouraged accesses fatal. + $arguments = @('-16', '-proc:none', '-encoding', 'UTF-8', '-err:+forbidden,discouraged', '--system', + ('"' + $Java16Home.Replace('\', '/') + '"'), '-classpath', ('"' + (($Libraries -replace '\\', '/') -join ';') + '"'), '-d', ('"' + $output.Replace('\', '/') + '"'), '-log', ('"' + $xmlLog.Replace('\', '/') + '"')) $arguments += @($Sources | ForEach-Object { '"' + $_.Replace('\', '/') + '"' }) @@ -65,24 +62,40 @@ function Invoke-Ecj([string]$Name, [string[]]$Sources, [string[]]$Libraries) { } $report = [ordered]@{ status = 'RUNNING'; project = $ProjectRoot; evidence = $Evidence - scope = 'Pinned Electric 1.16.5 candidate; fresh ECJ main/test/helper outputs and worldless Java 8 JUnit; no Gradle or Minecraft launch' + scope = 'Pinned Electric 1.17.1 candidate; fresh ECJ main/test/helper outputs and worldless Java 16 JUnit; no Gradle or Minecraft launch' compiler = $null; toolchains = $null; libraries = @(); sources = @(); gradleInventory = @() - compilations = [ordered]@{}; junit = $null } + compilations = [ordered]@{}; junit = $null; negativeControl = $null; apiPinState = $null; capabilityBootstrap = $null } try { $properties = ConvertFrom-StringData -StringData (Get-Content -LiteralPath (Join-Path $ProjectRoot 'gradle.properties') -Raw) - if ($properties.mod_id -ne 'electricadvantage' -or $properties.mod_version -ne '2.2.8.116051' -or - $properties.poweradvantage_source_ref -ne 'bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7' -or - $properties.poweradvantage_deobf_sha256 -ne '2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386') { - throw 'This verifier requires the pinned Electric 1.16.5 candidate' + $report.apiPinState = $properties.poweradvantage_pin_state + $provisional = $properties.poweradvantage_pin_state -eq 'API_PIN_PROVISIONAL' + if ($properties.mod_id -ne 'electricadvantage' -or $properties.mod_version -ne '2.2.9.117011' -or + (!$provisional -and $properties.poweradvantage_source_ref -ne '28247f936ac99e7a417da1bc1c89bc8394773a26') -or + $properties.poweradvantage_deobf_sha256 -ne '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D') { + throw 'This verifier requires the pinned Electric 1.17.1 candidate' } $report.compiler = Get-Pin $Compiler if ($report.compiler.sha256 -ne 'D0D43F8E2D7003E5EFED612E2CBB5F01870043397D8F1BBE536FD9128F4FCBF7') { throw 'ECJ compiler pin mismatch' } $java17 = Join-Path $Java17Home 'bin/java.exe' - $java8 = Join-Path $Java8Home 'bin/java.exe' - $bootLibraries = @(Get-ChildItem -LiteralPath (Join-Path $Java8Home 'jre/lib') -File -Filter '*.jar' | Sort-Object Name | ForEach-Object { Get-Pin $_.FullName }) - if (!(($bootLibraries.path | Split-Path -Leaf) -contains 'rt.jar')) { throw 'Missing Java 8 boot runtime' } - $report.toolchains = [ordered]@{ compilerJava = (Get-Pin $java17); runtimeJava = (Get-Pin $java8) - java17Release = (Get-Pin (Join-Path $Java17Home 'release')); java8Release = (Get-Pin (Join-Path $Java8Home 'release')); bootLibraries = $bootLibraries } + $java16 = Join-Path $Java16Home 'bin/java.exe' + $capabilityBootstrap = Join-Path $ProjectRoot 'build/unit-bootstrap/forge-native-unit-bootstrap.jar' + $report.capabilityBootstrap = Get-Pin $capabilityBootstrap + $report.toolchains = [ordered]@{ compilerJava = (Get-Pin $java17); runtimeJava = (Get-Pin $java16) + java17Release = (Get-Pin (Join-Path $Java17Home 'release')); java16Release = (Get-Pin (Join-Path $Java16Home 'release')) + systemModules = (Get-Pin (Join-Path $Java16Home 'lib/modules')) } + if ((Get-Content -LiteralPath (Join-Path $Java16Home 'release') -Raw) -notmatch 'JAVA_VERSION="16.0.2"') { + throw 'ECJ production system image must be Java 16.0.2' + } + $negativeSource = Join-Path $PSScriptRoot 'negative/RestrictedJdkReference.java' + $negativeLog = Join-Path $Evidence 'restricted-jdk-negative.log' + & $java17 -jar $Compiler -16 -proc:none '-err:+forbidden,discouraged' --system $Java16Home ` + -d (Join-Path $Evidence 'negative') $negativeSource *> $negativeLog + $negativeExit = $LASTEXITCODE + $report.negativeControl = [ordered]@{ source = (Get-Pin $negativeSource); exitCode = $negativeExit + log = 'restricted-jdk-negative.log'; expected = 'sun.security.x509.X500Name is not accessible' } + if ($negativeExit -eq 0 -or (Get-Content -LiteralPath $negativeLog -Raw) -notmatch 'X500Name is not accessible') { + throw 'Restricted-JDK negative control did not fail for the expected native module-access reason' + } [xml]$classpath = Get-Content -LiteralPath (Join-Path $ProjectRoot '.classpath') -Raw $report.classpath = Get-Pin (Join-Path $ProjectRoot '.classpath') $mainLibraries = @() @@ -118,7 +131,7 @@ try { $expected += [int]$inventory.testsuite.tests $report.gradleInventory += Get-Pin $xml.FullName } - if ($classes.Count -ne 18 -or $expected -ne 51 -or $sources.test.Count -ne 18 -or $sources.main.Count -ne 85) { throw 'Unexpected Electric 1.16.5 source/test inventory' } + if ($classes.Count -ne 27 -or $expected -ne 95 -or $sources.test.Count -ne 27 -or $sources.main.Count -ne 85) { throw 'Unexpected Electric 1.17.1 source/test inventory' } $main = Invoke-Ecj 'main' $sources.main $mainLibraries $test = Invoke-Ecj 'test' $sources.test (@($main) + $testLibraries) $helperSource = Join-Path $PSScriptRoot 'AuditedJUnit.java' @@ -129,7 +142,7 @@ try { $report.runtime = $runtime Push-Location $ProjectRoot try { - & $java8 -Xmx2G -cp ($runtime -join ';') zone.moddev.mc.electricadvantage.verification.AuditedJUnit $junitXml $expected @classes *> (Join-Path $Evidence 'junit.log') + & $java16 "-javaagent:$capabilityBootstrap" -Xmx2G -cp ($runtime -join ';') zone.moddev.mc.electricadvantage.verification.AuditedJUnit $junitXml $expected @classes *> (Join-Path $Evidence 'junit.log') $junitExit = $LASTEXITCODE } finally { Pop-Location } $report.junit = [ordered]@{ exitCode = $junitExit; expected = $expected; suites = $classes; log = 'junit.log'; xml = 'junit.xml' } @@ -137,7 +150,7 @@ try { [xml]$junit = Get-Content -LiteralPath $junitXml -Raw if ($junit.testsuite.passed -ne 'true' -or [int]$junit.testsuite.tests -ne $expected -or [int]$junit.testsuite.failures -or [int]$junit.testsuite.ignored -or [int]$junit.testsuite.assumptions) { throw 'Strict ECJ test counts failed' } - foreach ($pin in @($report.sources) + @($report.libraries) + @($report.helper)) { + foreach ($pin in @($report.sources) + @($report.libraries) + @($report.helper) + @($report.negativeControl.source) + @($report.capabilityBootstrap)) { if ((Get-FileHash -LiteralPath $pin.path -Algorithm SHA256).Hash -ne $pin.sha256) { throw "Input changed during ECJ qualification: $($pin.path)" } } $report.status = 'PASS' @@ -147,4 +160,4 @@ try { throw } finally { Save-Report } Get-Content -LiteralPath (Join-Path $Evidence 'junit.log') -Tail 8 -Write-Output "ECJ PASS: $($sources.main.Count) main, $($sources.test.Count) test sources; $expected tests; Java 8 class files" +Write-Output "ECJ PASS: $($sources.main.Count) main, $($sources.test.Count) test sources; $expected tests; Java 16 class files" diff --git a/tools/verification/negative/RestrictedJdkReference.java b/tools/verification/negative/RestrictedJdkReference.java new file mode 100644 index 0000000..df0f2be --- /dev/null +++ b/tools/verification/negative/RestrictedJdkReference.java @@ -0,0 +1,4 @@ +// This source must fail ECJ compilation under the production JDK module restrictions. +final class RestrictedJdkReference { + sun.security.x509.X500Name forbidden; +} diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index 08ad1ba..a89eb8d 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -2,114 +2,168 @@ const assert = require('node:assert/strict'); const fs = require('node:fs'); const path = require('node:path'); const { execFileSync } = require('node:child_process'); +const { createHash } = require('node:crypto'); const root = path.resolve(__dirname, '..'); -const baseline = '74aa1cee1ddec821ebcd12b9f8b0515b7aec61d9'; +const baseline = 'c5c8c9ea1d6f2010b8cff61e4bfae86f4c96c978'; const javaRoot = 'src/main/java/zone/moddev/mc/electricadvantage/'; const read = name => fs.readFileSync(path.join(root, name), 'utf8'); const git = (...args) => execFileSync('git', args, { cwd: root }); const tracked = git('ls-tree', '-r', '--name-only', baseline).toString().trim().split('\n'); const results = []; +const properties = Object.fromEntries(read('gradle.properties').split(/\r?\n/) + .filter(line => line && !line.startsWith('#')).map(line => { + const i = line.indexOf('='); return [line.slice(0, i), line.slice(i + 1)]; + })); function check(name, run) { try { run(); results.push({ name, passed: true }); } catch (error) { results.push({ name, passed: false, error: error.message }); } } -function strings(source) { - const tokens = source.match(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\/\/[^\n]*|\/\*[\s\S]*?\*\//g) || []; - return tokens.filter(token => token.startsWith('"')) - .filter(token => token !== '"2.2.7.115021"' && token !== '"2.2.8.116051"').sort(); -} -function numbers(source) { - const tokens = source.match(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\/\/[^\n]*|\/\*[\s\S]*?\*\/|[A-Za-z_$][A-Za-z0-9_$]*|(?:0[xX][\da-fA-F_]+|(?:\d[\d_]*\.?[\d_]*|\.\d[\d_]*)(?:[eE][+-]?[\d_]+)?)[dDfFlL]?/g) || []; - return tokens.filter(token => /^\d|^\.\d/.test(token)); +function tokens(source) { + return source.match(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\/\/[^\n]*|\/\*[\s\S]*?\*\/|[A-Za-z_$][A-Za-z0-9_$]*|(?:0[xX][\da-fA-F_]+|(?:\d[\d_]*\.?[\d_]*|\.\d[\d_]*)(?:[eE][+-]?[\d_]+)?)[dDfFlL]?/g) || []; } +const strings = source => tokens(source).filter(t => t.startsWith('"') + && !['"2.2.8.116051"', '"2.2.9.117011"'].includes(t)).sort(); +const numbers = source => tokens(source).filter(t => /^\d|^\.\d/.test(t)); +const production = tracked.filter(n => n.startsWith(javaRoot) && n.endsWith('.java')); -check('Exact native target metadata', () => { - const properties = read('gradle.properties'); - for (const pair of ['minecraft_version=1.16.5', 'forge_version=36.2.34', - 'mapping_channel=official', 'mapping_version=1.16.5', 'mcp_version=20210115.111550', - 'mod_version=2.2.8.116051', 'poweradvantage_version=2.4.7.116051', - 'poweradvantage_source_ref=bcb75bfa91c14751ebf1e31865e1ec0ffa82c0b7', - 'poweradvantage_deobf_sha256=2FB923944A456B4F26AB2F9212C646469CE3F49BFD4DAE894C15559B48908386', - 'basemetals_version=3.1.1.116051', 'orespawn_version=4.1.0.116051', - 'java_version=8', 'gradle_java_version=17']) { - assert(properties.split(/\r?\n/).includes(pair), pair); +check('Exact native 1.17.1 build target', () => { + for (const [key, value] of Object.entries({minecraft_version:'1.17.1', forge_version:'37.1.1', + mapping_channel:'official', mapping_version:'1.17.1', mcp_version:'20210706.113038', + mod_version:'2.2.9.117011', mod_group:'zone.moddev.mc.electricadvantage', + java_version:'16', java_toolchain_version:'16.0.2+7', gradle_java_version:'17', + basemetals_version:'3.1.0.117011', orespawn_version:'4.1.0.117011'})) { + assert.equal(properties[key], value, key); } - assert.equal(JSON.parse(read('src/main/resources/pack.mcmeta')).pack.pack_format, 6); + assert.equal(JSON.parse(read('src/main/resources/pack.mcmeta')).pack.pack_format, 7); + assert(read('build.gradle').includes('major != 60')); }); -check('115 assets, recipes, tags, loot, and unlock bytes are unchanged', () => { - for (const name of tracked.filter(name => name.startsWith('src/main/resources/') - && !['src/main/resources/pack.mcmeta', 'src/main/resources/META-INF/mods.toml'].includes(name))) { - assert.deepEqual(fs.readFileSync(path.join(root, name)), git('show', `${baseline}:${name}`), name); +check('Approved 1.17 API source and artifact pins', () => { + assert.equal(properties.poweradvantage_deobf_sha256, '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D'); + assert.equal(properties.poweradvantage_source_ref, '28247f936ac99e7a417da1bc1c89bc8394773a26'); + assert.notEqual(properties.poweradvantage_pin_state, 'API_PIN_PROVISIONAL', 'Power API remains provisional; source freeze pending'); + assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/, 'Power source pin pending parent'); + assert.match(properties.poweradvantage_deobf_sha256, /^[A-F0-9]{64}$/, 'Power development jar pin pending parent'); + assert.match(properties.poweradvantage_version, /^\d+\.\d+\.\d+\.117011$/); + for (const [key, value] of Object.entries({ + basemetals_source_commit:'dacfaa3af2e3310d5cb6b081da79f09260ae103d', + basemetals_deobf_sha256:'4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA', + basemetals_runtime_sha256:'9276FA7E8A1E5BD6B9E336CF83CFEE9B178167DA09CE2B231C8DFF733F351B0C', + orespawn_source_commit:'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf', + orespawn_deobf_sha256:'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39', + orespawn_runtime_sha256:'1BDEDCBB179CB5A3B169E5C8A6B301E3888AE15B94108B0AEC627D705CFAD833'})) { + assert.equal(properties[key], value, key); } }); -check('Production string identities and NBT keys match the accepted 115 source', () => { - for (const name of tracked.filter(name => name.startsWith(javaRoot) && name.endsWith('.java'))) { - assert.deepEqual(strings(read(name)), strings(git('show', `${baseline}:${name}`).toString()), name); +check('All 1.16 assets, recipes, loot, translations and unlock bytes retained', () => { + for (const name of tracked.filter(n => n.startsWith('src/main/resources/') + && !['src/main/resources/pack.mcmeta', 'src/main/resources/META-INF/mods.toml'].includes(n))) { + assert.deepEqual(fs.readFileSync(path.join(root, name)), git('show', `${baseline}:${name}`), name); } }); -check('Production numeric constants and rendering test tolerances match 115', () => { - const rendererTest = 'src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java'; - for (const name of tracked.filter(name => name.startsWith(javaRoot) && name.endsWith('.java') || name === rendererTest)) { - assert.deepEqual(numbers(read(name)), numbers(git('show', `${baseline}:${name}`).toString()), name); +check('Registry, asset, provider and NBT string identities retained', () => { + for (const name of production) { + const actual = strings(read(name)); + if (name.endsWith('/ElectricRenderTypes.java')) { + assert.equal(actual.splice(actual.indexOf('"unshaded"'), 1)[0], '"unshaded"'); + } + assert.deepEqual(actual, strings(git('show', `${baseline}:${name}`).toString()), name); } }); -check('Tag entries use native values rather than a legacy optional array', () => { - for (const name of tracked.filter(name => name.includes('/tags/') && name.endsWith('.json'))) { - const tag = JSON.parse(read(name)); - assert(!Object.hasOwn(tag, 'optional'), name); - assert(Array.isArray(tag.values), name); - for (const value of tag.values) { - assert(typeof value === 'string' || value && typeof value.id === 'string' - && (!Object.hasOwn(value, 'required') || typeof value.required === 'boolean'), name); +check('Machine balance and renderer test tolerances retained', () => { + const renderer = 'src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java'; + for (const name of [...production, renderer]) { + const expected = numbers(git('show', `${baseline}:${name}`).toString()); + if (name.endsWith('/ElectricRenderTypes.java')) { + assert.equal(expected.splice(expected.indexOf('7'), 1)[0], '7'); // Native enum replaces GL_QUADS. } + assert.deepEqual(numbers(read(name)), expected, name); } }); -check('World-only conduit callbacks and native solar dimension type', () => { - const drill = read(javaRoot + 'machines/ElectricDrillBlock.java'); - const tile = read(javaRoot + 'machines/ElectricDrillTileEntity.java'); - assert(!/dimension\.getType|\.getId\(\)/.test(drill + tile)); - assert.match(drill, /conduitBlockPlacedEvent\(\s*world, pos, Power\.ELECTRIC_POWER\)/); - assert.match(tile, /conduitBlockRemovedEvent\(getLevel\(\), getBlockPos\(\), getEnergyType\(\)\)/); - assert(read(javaRoot + 'machines/PhotovoltaicGeneratorTileEntity.java').includes('dimensionType().hasSkyLight()')); +check('Inherited regression tests remain present with no skip or assume bypass', () => { + let count = 0; + for (const name of tracked.filter(n => n.startsWith('src/test/') && n.endsWith('.java'))) { + const before = git('show', `${baseline}:${name}`).toString(); + const after = read(name); + const methods = s => [...s.matchAll(/@Test\s+public void (\w+)\(/g)].map(m => m[1]); + const expected = methods(before).map(n => n.replace('resourcePackDeclaresTheNativeOneSixteenFormat', + 'resourcePackDeclaresTheNativeOneSeventeenFormat')); + assert.deepEqual(methods(after), expected, name); + assert(!/@Ignore|Assume\.|assumeTrue\(|assumeFalse\(/.test(after), name); + count += expected.length; + } + assert.equal(count, 89); }); -check('Native persistence overrides and state-aware turret updates', () => { - for (const name of ['ElectricMachineTileEntity', 'ElectricGeneratorTileEntity', 'GrowthChamberControllerTileEntity']) { - const source = read(javaRoot + `machines/${name}.java`); - assert.match(source, /void load\((?:net\.minecraft\.block\.)?BlockState state, (?:final )?CompoundNBT tagRoot\)/); - assert(source.includes('super.load(state, tagRoot)')); - assert.match(source, /CompoundNBT save\(/); - assert(source.includes('super.save(tagRoot)')); +check('Native constructors, factories and tag-only persistence', () => { + const directory = path.join(root, javaRoot, 'machines'); + for (const name of fs.readdirSync(directory).filter(n => n.endsWith('TileEntity.java'))) { + const source = fs.readFileSync(path.join(directory, name), 'utf8'); + assert(!/public \w+TileEntity\(\s*\)/.test(source), name); + assert(!/void load\(BlockState|super\.load\(state,|setPosition\(/.test(source), name); + assert.match(source, /super\([^;]*pos, state,/, name); } - assert.match(read(javaRoot + 'machines/LaserTurretTileEntity.java'), /handleUpdateTag\(BlockState state, CompoundNBT tag\)/); + const entities = read(javaRoot + 'init/Entities.java'); + assert(entities.includes('BlockEntityType.BlockEntitySupplier')); + assert(entities.includes('.setTrackingRange(64).setUpdateInterval(1).setShouldReceiveVelocityUpdates(true)')); + const move = read(javaRoot + 'machines/ElectricDrillTileEntity.java'); + assert(move.includes('te.load(dataTransfer)')); + assert(move.includes('te.subtractEnergy(ENERGY_COST_MOVE, getEnergyType())')); + assert(read(javaRoot + 'machines/LaserTurretTileEntity.java').includes('handleUpdateTag(CompoundTag tag)')); }); -check('Native mining prerequisite and serialized recipe registration', () => { +check('Native helper ticker, bucket pickup, renderer context and shader', () => { + assert(read(javaRoot + 'machines/LEDBlock.java').includes('BlockEntityTicker getTicker')); + assert(read(javaRoot + 'machines/ElectricPumpTileEntity.java').includes('.pickupBlock(w, fluidSource, blockstate)')); + for (const name of ['LaserDrillRenderer', 'LaserTurretRenderer']) { + const source = read(javaRoot + `graphics/${name}.java`); + assert(source.includes('implements BlockEntityRenderer<')); + assert(source.includes('BlockEntityRendererProvider.Context')); + } + const render = read(javaRoot + 'graphics/ElectricRenderTypes.java'); + assert(render.includes('DefaultVertexFormat.NEW_ENTITY')); + assert(render.includes('VertexFormat.Mode.QUADS')); + assert(render.includes('new ShaderStateShard(() -> unshadedShader)')); + const shader = read('src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh'); + assert(shader.includes('vertexColor = Color;')); + assert(shader.includes('lightMapColor = texelFetch(Sampler2, UV2 / 16, 0);')); + assert(shader.includes('overlayColor = texelFetch(Sampler1, UV1, 0);')); + const registration = read(javaRoot + 'graphics/ClientRegistration.java'); + assert(registration.includes('EntityRenderersEvent.RegisterRenderers')); +}); +check('Native harvest tags preserve lithium and sulfur tool tiers', () => { + const tag = name => JSON.parse(read(`src/main/resources/data/minecraft/tags/blocks/${name}.json`)); + assert.deepEqual(tag('mineable/pickaxe'), {replace:false, values:['electricadvantage:li_ore','electricadvantage:sulfur_ore']}); + assert.deepEqual(tag('needs_stone_tool'), {replace:false, values:['electricadvantage:li_ore']}); assert.equal((read(javaRoot + 'blocks/Ore.java').match(/requiresCorrectToolForDrops\(\)/g) || []).length, 2); - assert(read(javaRoot + 'ElectricAdvantage.java').includes('event.enqueueWork(RecipeConditions::register)')); - assert(!read(javaRoot + 'ElectricAdvantage.java').includes('DeferredWorkQueue.runLater')); }); -check('Custom fluid API and parent inventory names are preserved', () => { +check('Shared capabilities, legacy cyano API and first-tick interlocks retained', () => { assert(read(javaRoot + 'util/LegacyFluidHandler.java').includes('extends IAdvantageFluidHandler')); - assert(read(javaRoot + 'machines/ElectricPumpTileEntity.java').includes('getTank().getFluid().getFluid()')); - assert(read(javaRoot + 'machines/ElectricMachineTileEntity.java').includes('ItemStack[] getInventory()')); - assert(!tracked.filter(name => name.startsWith(javaRoot) && name.endsWith('.java')) - .some(name => /invalidateCaps\(|reviveCaps\(|LazyOptional/.test(read(name)))); -}); -check('Native renderer format and inherited tracking settings', () => { - const render = read(javaRoot + 'graphics/ElectricRenderTypes.java'); - assert(render.includes('DefaultVertexFormats.NEW_ENTITY')); - assert(render.includes('NO_DIFFUSE_LIGHTING')); - const entities = read(javaRoot + 'init/Entities.java'); - assert(entities.includes('.setTrackingRange(64).setUpdateInterval(1).setShouldReceiveVelocityUpdates(true)')); + for (const name of ['ElectricMachineTileEntity', 'ElectricGeneratorTileEntity']) { + const source = read(javaRoot + `machines/${name}.java`); + assert(source.includes('!redstoneInitialized && getLevel() != null && !getLevel().isClientSide')); + } + assert(!production.some(n => /invalidateCaps\(|reviveCaps\(|LazyOptional/.test(read(n)))); + assert(read(javaRoot + 'ElectricAdvantage.java').includes('event.enqueueWork(RecipeConditions::register)')); + assert(read(javaRoot + 'machines/PhotovoltaicGeneratorTileEntity.java').includes('BlockPos lightPos = pos.above()')); }); -const report = { baseline, scope: 'Static source/resource contracts only; no compilation or Minecraft runtime', results }; +const changedFiles = [...new Set([ + ...git('diff', '--name-only', baseline).toString().trim().split('\n'), + ...git('ls-files', '--others', '--exclude-standard').toString().trim().split('\n') +])].filter(Boolean).sort(); +const testFiles = [...tracked, ...changedFiles].filter((n, i, all) => all.indexOf(n) === i + && n.startsWith('src/test/java/') && n.endsWith('.java')); +const report = {baseline, scope:'Static source/resource contracts only; not compilation, runtime or manual acceptance', + inventory: {productionFiles:production.length, testFiles:testFiles.length, + tests:testFiles.reduce((n, file) => n + (read(file).match(/@Test\b/g) || []).length, 0)}, + changedFiles:changedFiles.map(file => ({file, sha256:createHash('sha256').update(fs.readFileSync(path.join(root, file))).digest('hex')})), + results}; const reportFlag = process.argv.indexOf('--report'); if (reportFlag !== -1) { const output = path.resolve(root, process.argv[reportFlag + 1]); assert(output.startsWith(root + path.sep), 'Report must remain inside this checkout'); - fs.mkdirSync(path.dirname(output), { recursive: true }); + assert(!fs.existsSync(output), 'Refusing to overwrite source evidence'); + fs.mkdirSync(path.dirname(output), {recursive:true}); fs.writeFileSync(output, JSON.stringify(report, null, 2) + '\n'); } -for (const result of results) console.log(`${result.passed ? 'PASS' : 'FAIL'} ${result.name}${result.error ? ': ' + result.error : ''}`); -process.exitCode = results.every(result => result.passed) ? 0 : 1; +for (const r of results) console.log(`${r.passed ? 'PASS' : 'FAIL'} ${r.name}${r.error ? ': ' + r.error : ''}`); +process.exitCode = results.every(r => r.passed) ? 0 : 1; From 1f942acddd4d9581ce65c79463419e0745115350 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 31 Oct 2026 05:54:40 +0000 Subject: [PATCH 02/10] Keep recipe discoveries ingredient-specific on 1.17 Use native item-array advancement predicates and pin the tested Power Advantage persistence build. Keep existing recipes, harvest levels, drop quantities and machine behavior unchanged. Check all 96 tests with Gradle and independent ECJ, plus release and Eclipse audits. Real survival harvest checks pass before and after a full restart; broader combined qualification and manual acceptance remain separate. --- .github/workflows/ci.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- CHANGELOG.txt | 10 ++- README.md | 8 +-- build.gradle | 8 +-- docs/NATIVE117.md | 47 +++++++++++-- gradle.properties | 4 +- .../recipes/alkaline_battery.json | 4 +- .../advancements/recipes/control_circuit.json | 4 +- .../recipes/electric_battery_array.json | 4 +- .../recipes/electric_fabricator.json | 4 +- .../recipes/electric_furnace.json | 4 +- .../advancements/recipes/electric_pump.json | 8 ++- .../advancements/recipes/electric_still.json | 4 +- .../advancements/recipes/electric_switch.json | 4 +- .../advancements/recipes/electric_track.json | 8 ++- .../advancements/recipes/growth_chamber.json | 4 +- .../recipes/growth_chamber_controller.json | 4 +- .../lead_acid_battery_dust_sulfur.json | 4 +- .../recipes/lead_acid_battery_sulfur.json | 4 +- .../recipes/lithium_ingot_from_ore.json | 4 +- .../recipes/lithium_ingot_from_powder.json | 4 +- .../recipes/nickel_hydride_battery.json | 4 +- .../recipes/plastic_refinery.json | 4 +- .../recipes/silicon_ingot_from_blend.json | 4 +- .../recipes/solder_from_blend.json | 4 +- .../resources/BuildWorkflowContractTest.java | 8 +-- .../resources/RecipeUnlockContractTest.java | 55 +++++++++++++-- tools/generate-recipe-unlocks.js | 3 +- tools/verification/Verify-ElectricEcj.ps1 | 6 +- tools/verify-native-port.js | 67 +++++++++++++++++-- 31 files changed, 247 insertions(+), 57 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c121c20..2e9a686 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,7 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "28247f936ac99e7a417da1bc1c89bc8394773a26" || "$power_sha" != "7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D" ]]; then + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "fc4c47f2ed8cfebbaa010e6a0e807137a3329f95" || "$power_sha" != "BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767" ]]; then echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 981cb57..fa9774d 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -32,7 +32,7 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "28247f936ac99e7a417da1bc1c89bc8394773a26" || "$power_sha" != "7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D" ]]; then + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "fc4c47f2ed8cfebbaa010e6a0e807137a3329f95" || "$power_sha" != "BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767" ]]; then echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 6f3dd5c..068f426 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,12 +1,16 @@ -Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 port candidate (local, unqualified) +Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 local port candidate - Target Forge 37.1.1, official mappings, Java 16 production bytecode and FG7. - Carry native machine position/state through factories, persistence and drill movement. - Port native helper ticking, hydroturbine removal/link restoration and renderer registration. - Retain laser geometry, NBT identities, recipes, machine constants and 1.16 regression tests. - Use native ore harvest tags and bucket pickup, including waterlogged sources. -- Pass 95 Gradle/JUnit and 95 independent ECJ/JUnit tests plus local artifact/Eclipse audits against the pinned Power checkpoint. -- Combined packaged runtime, migration and manual acceptance remain pending; no Electric commit has been approved yet. +- Use the 1.17 ingredient-predicate format so unrelated items do not unlock recipes. +- Require the matching Power Advantage build so machine progress and stored energy remain saved after automatic saves. +- Check recipe discoveries with Minecraft's native parser, including unrelated-item negative controls. +- Pass 96 Gradle/JUnit and 96 independent ECJ/JUnit tests plus local artifact/Eclipse audits against the pinned Power checkpoint. +- Verify the original ore tool levels and real survival drops, including silk touch, across a full restart. +- Combined packaged runtime, migration and manual acceptance are recorded separately from the build checks. - No port-code push, pull request, merge, tag or release before manual testing. Electric Advantage 2.2.8.116051 (local port candidate) diff --git a/README.md b/README.md index 489d712..4105887 100644 --- a/README.md +++ b/README.md @@ -32,12 +32,12 @@ passed on Java 16, with no ignored tests or assumptions; its restricted-JDK negative control failed for the expected access error. These results use the parent's local checkpoint, not a final combined release: -Power Advantage `2.4.8.117011`, source `28247f936ac99e7a417da1bc1c89bc8394773a26`, -API SHA-256 `7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D`. +Power Advantage `2.4.8.117011`, source `fc4c47f2ed8cfebbaa010e6a0e807137a3329f95`, +API SHA-256 `BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767`. The metadata records `LOCAL_CHECKPOINT`; any coordinated re-pin needs fresh proof. Earlier `API_PIN_PROVISIONAL` results are retained separately. A 1.16.5 Power jar -is never accepted. Combined packaged runtime, migration and manual gameplay -acceptance remain pending, as does approval for an Electric local commit. +is never accepted. Combined packaged runtime and migration are verified +separately; manual gameplay acceptance remains required before remote delivery. Prepared CI has not been run on a hosted service. See [the native port notes](docs/NATIVE117.md) for the API audit and remaining gates. diff --git a/build.gradle b/build.gradle index da7f495..10c2393 100644 --- a/build.gradle +++ b/build.gradle @@ -93,8 +93,8 @@ tasks.named('test', Test) { vendor = JvmVendorSpec.ADOPTIUM } afterSuite { descriptor, result -> - if (!descriptor.parent && (result.testCount != 95 || result.skippedTestCount != 0)) { - throw new GradleException("Expected 95 tests with no skips, got ${result.testCount} tests and ${result.skippedTestCount} skips") + if (!descriptor.parent && (result.testCount != 96 || result.skippedTestCount != 0)) { + throw new GradleException("Expected 96 tests with no skips, got ${result.testCount} tests and ${result.skippedTestCount} skips") } } } @@ -427,8 +427,8 @@ tasks.register('verifyReleaseConfiguration') { } if (project.poweradvantage_version != '2.4.8.117011' || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/PowerAdvantage' - || project.poweradvantage_source_ref != '28247f936ac99e7a417da1bc1c89bc8394773a26' - || project.poweradvantage_deobf_sha256 != '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D') { + || project.poweradvantage_source_ref != 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95' + || project.poweradvantage_deobf_sha256 != 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767') { throw new GradleException('Unexpected PowerAdvantage compile dependency identity') } if (project.basemetals_version != '3.1.0.117011' diff --git a/docs/NATIVE117.md b/docs/NATIVE117.md index 32a0073..61bef6b 100644 --- a/docs/NATIVE117.md +++ b/docs/NATIVE117.md @@ -1,9 +1,14 @@ # Electric Advantage 1.17.1 Port -Status: locally verified against Power source/API checkpoint -`28247f936ac99e7a417da1bc1c89bc8394773a26` / `7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D`. +Current Power source/API pin: +`fc4c47f2ed8cfebbaa010e6a0e807137a3329f95` / `BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767`. +This dependency retains native recipe unlocks and adds dirty-state persistence +without comparator updates on each machine tick. The new Electric build and +independent ECJ check each pass all 96 tests with no skips or assumptions, +including the full release/Eclipse audits. Its release and development archive +hashes remain identical to the prior advancement candidate. Combined packaged runtime, migration and manual acceptance remain pending. -No commit or remote delivery has been made for this port. +The production/API checkpoint is committed locally; no 1.17 port code has been pushed. ## Native API Audit @@ -83,9 +88,43 @@ Both hashes were unchanged by the two full forced rebuilds H and I; H retained a failed old-format Eclipse audit, while I passed the native bootstrap audit. This is a local checkpoint, not final qualification or manual acceptance. +An additional native advancement-parser regression is now prepared. It proves +that `items: [id]` rejects unrelated items, while the old singular `item` key is +silently ignored by Minecraft 1.17. The resource contract now distinguishes +advancement predicates from ordinary recipe ingredients and rejects the legacy +trigger shape. The suite now requires 96 tests with no skips; the earlier +95-test results above remain historical checkpoint evidence. The coordinated +resource fix and replacement Power pin are now present for requalification. + +The replacement build is recorded by `electric-advancement-release-a.log` and +`electric-advancement-ecj-a.log` in the campaign evidence. The static audit now +allows only the exact 21 item-predicate conversions in 19 advancement files; +unrelated resource bytes, recipe values and machine code remain unchanged. +Negative controls reject the old trigger, additional ingredients, changed +rewards and changed requirements. All 50 recipe unlocks pass their generator +check. Frozen artifacts and their input/test hashes are recorded separately in +`electric-advancement-qualification/candidate-a/candidate-receipt.json`. + +The replacement release SHA-256 is +`E1B4A7C65E09B6EE218F52328F0CD569A61B37E8646A46AC6D17EB3948D60EE4`; +the development jar SHA-256 is +`BEAA8CD23DBBC0C7E956B0304EAEE65251341908E69B60B2C9E4D24F08C31547`. +The earlier artifact hashes above are historical evidence, not the current pin. +The owner-credit and hydro observations require harness readiness/freeze repairs, +not a production change; the prewarmed combined rerun is still a separate gate. + +The current pin's evidence is `electric-dirty-api-release-a.log` and +`electric-dirty-api-ecj-a.log`. Harvest H passes 271 real survival, wrong-tool, +silk-touch and geometry checks on each of two complete JVM boots. Native chunk +readiness is measured before mining. The earlier zero-capture report retained +264 real dropped entities in saved entity storage, proving an unready query +fixture rather than missing production drops. No ore, tool tier, quantity or +machine behavior was changed for that diagnosis. Interop and the broader +operating/migration campaign remain separate recorded gates. + 1. Keep the exact current Power local source/API checkpoint and published API checksums pinned. Any coordinated source/API replacement requires new proof. -2. Use the campaign lease helper for fresh compile, all 95 JUnit tests, strict +2. Use the campaign lease helper for fresh compile, all 96 JUnit tests, strict dependency/resource/release audits, Javadocs and Eclipse generation/audit. 3. Run independent ECJ compilation and strict JUnit on Java 16, preserving access restrictions, failed diagnostics and exact input hashes. Verify class major 60. diff --git a/gradle.properties b/gradle.properties index 010d3fa..a03732a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -40,8 +40,8 @@ poweradvantage_pin_state=LOCAL_CHECKPOINT poweradvantage_source_repository=MinecraftModDevelopmentMods/PowerAdvantage # Exact local-only Power source and immutable development artifact; publish source before hosted builds. # Local checkpoint only; combined runtime qualification and manual acceptance remain pending. -poweradvantage_source_ref=28247f936ac99e7a417da1bc1c89bc8394773a26 -poweradvantage_deobf_sha256=7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D +poweradvantage_source_ref=fc4c47f2ed8cfebbaa010e6a0e807137a3329f95 +poweradvantage_deobf_sha256=BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767 poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 basemetals_version=3.1.0.117011 diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json b/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json index 262ad40..284c2a3 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json @@ -16,7 +16,9 @@ "conditions": { "items": [ { - "item": "minecraft:gunpowder" + "items": [ + "minecraft:gunpowder" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json b/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json index ac2170b..9ded7cc 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:blank_circuit_board" + "items": [ + "electricadvantage:blank_circuit_board" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json index aab8cf7..139ac87 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:chest" + "items": [ + "minecraft:chest" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json index e811829..5b435a5 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:crafting_table" + "items": [ + "minecraft:crafting_table" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json index e85ea1e..0e49a68 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:bricks" + "items": [ + "minecraft:bricks" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json index 53acf4d..7254cec 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:piston" + "items": [ + "minecraft:piston" + ] } ] } @@ -16,7 +18,9 @@ "conditions": { "items": [ { - "item": "minecraft:bucket" + "items": [ + "minecraft:bucket" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json index 91639e9..13963fe 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:bucket" + "items": [ + "minecraft:bucket" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json index 4aac598..13bccab 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:lever" + "items": [ + "minecraft:lever" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json b/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json index 0d1995d..f78b7aa 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:electric_conduit" + "items": [ + "electricadvantage:electric_conduit" + ] } ] } @@ -16,7 +18,9 @@ "conditions": { "items": [ { - "item": "poweradvantage:steel_frame" + "items": [ + "poweradvantage:steel_frame" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json b/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json index b5617b1..2737c07 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:flower_pot" + "items": [ + "minecraft:flower_pot" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json b/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json index c3f9817..816cd38 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:flower_pot" + "items": [ + "minecraft:flower_pot" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json b/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json index fc09e75..3a288d7 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json @@ -26,7 +26,9 @@ "conditions": { "items": [ { - "item": "minecraft:water_bucket" + "items": [ + "minecraft:water_bucket" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json b/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json index 36ee8b3..e0f0a70 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json @@ -26,7 +26,9 @@ "conditions": { "items": [ { - "item": "minecraft:water_bucket" + "items": [ + "minecraft:water_bucket" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json b/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json index 08d14d9..73f52a0 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:li_ore" + "items": [ + "electricadvantage:li_ore" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json b/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json index 466343f..9154379 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:li_powder" + "items": [ + "electricadvantage:li_powder" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json b/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json index f7f51c4..52062bf 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json @@ -26,7 +26,9 @@ "conditions": { "items": [ { - "item": "minecraft:water_bucket" + "items": [ + "minecraft:water_bucket" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json b/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json index 5b2934e..73525bd 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "minecraft:piston" + "items": [ + "minecraft:piston" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json b/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json index 5d49df2..1a75987 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:silicon_mix" + "items": [ + "electricadvantage:silicon_mix" + ] } ] } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json b/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json index 9981a8b..5095402 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json +++ b/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json @@ -6,7 +6,9 @@ "conditions": { "items": [ { - "item": "electricadvantage:solder_mix" + "items": [ + "electricadvantage:solder_mix" + ] } ] } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java index 07e43ca..669dd69 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java @@ -33,8 +33,8 @@ public class BuildWorkflowContractTest { for (String helper : new String[] {"tools/verify-native-port.js", "tools/verification/Verify-ElectricEcj.ps1"}) { String source = new String(Files.readAllBytes(Paths.get(helper)), StandardCharsets.UTF_8); assertTrue(helper, source.contains("API_PIN_PROVISIONAL")); - assertTrue(helper, source.contains("28247f936ac99e7a417da1bc1c89bc8394773a26")); - assertTrue(helper, source.contains("7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D")); + assertTrue(helper, source.contains("fc4c47f2ed8cfebbaa010e6a0e807137a3329f95")); + assertTrue(helper, source.contains("BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767")); assertFalse(helper, source.contains("2116a35a40dd150d79e7dfdcdc891637793178b7")); assertFalse(helper, source.contains("F58B93DAF03CF303F32B18CCCA140E55E886A2BA82732A3F286ADF3E31194B6A")); } @@ -50,8 +50,8 @@ public class BuildWorkflowContractTest { assertTrue(source.contains("BaseMetals-3.1.0.117011-deobf.jar")); assertTrue(source.contains("ref: ${{ steps.pins.outputs.power_ref }}")); assertTrue(source.contains("API_PIN_PROVISIONAL")); - assertTrue(source.contains("28247f936ac99e7a417da1bc1c89bc8394773a26")); - assertTrue(source.contains("7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D")); + assertTrue(source.contains("fc4c47f2ed8cfebbaa010e6a0e807137a3329f95")); + assertTrue(source.contains("BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767")); assertFalse(source.contains("098d4625abc8a849bd1a11dcf697b3fee0cade7b")); assertFalse(source.contains("78E58DD2AB04E2B9F3267E5735C64AAE7E93EAC97571CB04485038862C853ED3")); assertFalse(source.contains("ce90c24c302d0ff3565db2db0c6c94a3b5f21f83")); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java index 5866cd8..24d9cb6 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java @@ -17,6 +17,9 @@ import java.util.Set; import java.util.stream.Collectors; import java.util.stream.Stream; +import net.minecraft.advancements.critereon.ItemPredicate; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.item.Items; import org.junit.Test; import static org.junit.Assert.*; @@ -54,16 +57,16 @@ public class RecipeUnlockContractTest { assertEquals("Finding ONE ingredient must be enough: " + file, 1, items.size()); JsonObject predicate = items.get(0).getAsJsonObject(); assertEquals("Only an item or tag predicate is expected", 1, predicate.size()); - actual.add(predicateKey(predicate)); + actual.add(unlockPredicateKey(predicate)); } List choices = new ArrayList<>(); if (recipe.has("key")) { for (Map.Entry entry : recipe.getAsJsonObject("key").entrySet()) collect(entry.getValue(), choices); } else collect(recipe.has("ingredients") ? recipe.get("ingredients") : recipe.get("ingredient"), choices); - Set expected = choices.stream().map(RecipeUnlockContractTest::predicateKey) + Set expected = choices.stream().map(RecipeUnlockContractTest::ingredientKey) .filter(key -> !IGNORED.contains(key)).collect(Collectors.toCollection(LinkedHashSet::new)); - if (expected.isEmpty()) for (JsonObject choice : choices) expected.add(predicateKey(choice)); + if (expected.isEmpty()) for (JsonObject choice : choices) expected.add(ingredientKey(choice)); assertEquals("Trigger must correspond to a relevant recipe ingredient: " + file, expected, actual); JsonArray requirements = unlock.getAsJsonArray("requirements"); assertEquals("All criteria must form one OR group", 1, requirements.size()); @@ -73,6 +76,33 @@ public class RecipeUnlockContractTest { } } + @Test public void nativeParserRestrictsItemArraysButSilentlyIgnoresTheLegacySingularKey() { + net.minecraft.SharedConstants.tryDetectVersion(); + net.minecraft.server.Bootstrap.bootStrap(); + JsonObject nativeShape = new JsonParser().parse("{\"items\":[\"minecraft:apple\"]}").getAsJsonObject(); + ItemPredicate nativePredicate = ItemPredicate.fromJson(nativeShape); + assertTrue(nativePredicate.matches(new ItemStack(Items.APPLE))); + assertFalse("An unrelated item must not unlock an apple recipe", + nativePredicate.matches(new ItemStack(Items.DIRT))); + assertEquals("item:minecraft:apple", unlockPredicateKey(nativeShape)); + + JsonObject legacyShape = new JsonParser().parse("{\"item\":\"minecraft:apple\"}").getAsJsonObject(); + assertEquals("The old singular spelling remains valid for recipe ingredients", + "item:minecraft:apple", ingredientKey(legacyShape)); + ItemPredicate legacyPredicate = ItemPredicate.fromJson(legacyShape); + assertTrue("Negative control: the native parser silently loses this item's restriction", + legacyPredicate.matches(new ItemStack(Items.DIRT))); + assertThrows("The resource contract must reject that silently unrestricted trigger", + AssertionError.class, () -> unlockPredicateKey(legacyShape)); + for (String malformed : new String[] { + "{\"items\":[]}", "{\"items\":[\"minecraft:apple\",\"minecraft:dirt\"]}", + "{\"items\":\"minecraft:apple\"}", "{\"items\":[1]}", + "{\"items\":[\"minecraft:apple\"],\"item\":\"minecraft:dirt\"}"}) { + JsonObject predicate = new JsonParser().parse(malformed).getAsJsonObject(); + assertThrows(malformed, AssertionError.class, () -> unlockPredicateKey(predicate)); + } + } + @Test public void rewardAndRecipeCommandCriterionReferToTheExactVariant() throws IOException { for (Path file : files(DATA.resolve("advancements/recipes"))) { String id = MOD + ":" + file.getFileName().toString().replace(".json", ""); @@ -106,11 +136,28 @@ private static boolean crafting(JsonObject recipe) { || type.equals("minecraft:smelting"); } - private static String predicateKey(JsonObject predicate) { + private static String ingredientKey(JsonObject predicate) { String type = predicate.has("tag") ? "tag" : "item"; return type + ":" + predicate.get(type).getAsString(); } + private static String unlockPredicateKey(JsonObject predicate) { + assertEquals("Unlock predicates must constrain exactly one item or tag", 1, predicate.size()); + assertFalse("Native 1.17 ignores the singular item key in advancement predicates", predicate.has("item")); + if (predicate.has("tag")) { + assertTrue("A tag predicate must be a string", predicate.get("tag").isJsonPrimitive() + && predicate.getAsJsonPrimitive("tag").isString()); + return "tag:" + predicate.get("tag").getAsString(); + } + assertTrue("A native item predicate requires the items array", predicate.has("items") + && predicate.get("items").isJsonArray()); + JsonArray items = predicate.getAsJsonArray("items"); + assertEquals("Each unlock alternative must name one ingredient", 1, items.size()); + assertTrue("Item IDs must be strings", items.get(0).isJsonPrimitive() + && items.get(0).getAsJsonPrimitive().isString()); + return "item:" + items.get(0).getAsString(); + } + private static void collect(JsonElement element, List result) { if (element.isJsonArray()) for (JsonElement child : element.getAsJsonArray()) collect(child, result); else result.add(element.getAsJsonObject()); diff --git a/tools/generate-recipe-unlocks.js b/tools/generate-recipe-unlocks.js index 2714622..4c3e37c 100644 --- a/tools/generate-recipe-unlocks.js +++ b/tools/generate-recipe-unlocks.js @@ -30,7 +30,8 @@ for (const file of fs.readdirSync(recipes).filter(name => name.endsWith('.json') const criteria = {}; unique.forEach((ingredient, index) => { criteria[`has_ingredient_${index + 1}`] = { - trigger: 'minecraft:inventory_changed', conditions: {items: [ingredient]} + trigger: 'minecraft:inventory_changed', + conditions: {items: [ingredient.item ? {items: [ingredient.item]} : ingredient]} }; }); criteria.has_recipe = {trigger: 'minecraft:recipe_unlocked', conditions: {recipe: id}}; diff --git a/tools/verification/Verify-ElectricEcj.ps1 b/tools/verification/Verify-ElectricEcj.ps1 index 179f435..b4de3e8 100644 --- a/tools/verification/Verify-ElectricEcj.ps1 +++ b/tools/verification/Verify-ElectricEcj.ps1 @@ -70,8 +70,8 @@ try { $report.apiPinState = $properties.poweradvantage_pin_state $provisional = $properties.poweradvantage_pin_state -eq 'API_PIN_PROVISIONAL' if ($properties.mod_id -ne 'electricadvantage' -or $properties.mod_version -ne '2.2.9.117011' -or - (!$provisional -and $properties.poweradvantage_source_ref -ne '28247f936ac99e7a417da1bc1c89bc8394773a26') -or - $properties.poweradvantage_deobf_sha256 -ne '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D') { + (!$provisional -and $properties.poweradvantage_source_ref -ne 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95') -or + $properties.poweradvantage_deobf_sha256 -ne 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767') { throw 'This verifier requires the pinned Electric 1.17.1 candidate' } $report.compiler = Get-Pin $Compiler @@ -131,7 +131,7 @@ try { $expected += [int]$inventory.testsuite.tests $report.gradleInventory += Get-Pin $xml.FullName } - if ($classes.Count -ne 27 -or $expected -ne 95 -or $sources.test.Count -ne 27 -or $sources.main.Count -ne 85) { throw 'Unexpected Electric 1.17.1 source/test inventory' } + if ($classes.Count -ne 27 -or $expected -ne 96 -or $sources.test.Count -ne 27 -or $sources.main.Count -ne 85) { throw 'Unexpected Electric 1.17.1 source/test inventory' } $main = Invoke-Ecj 'main' $sources.main $mainLibraries $test = Invoke-Ecj 'test' $sources.test (@($main) + $testLibraries) $helperSource = Join-Path $PSScriptRoot 'AuditedJUnit.java' diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index a89eb8d..38bfbd4 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -27,6 +27,30 @@ const strings = source => tokens(source).filter(t => t.startsWith('"') const numbers = source => tokens(source).filter(t => /^\d|^\.\d/.test(t)); const production = tracked.filter(n => n.startsWith(javaRoot) && n.endsWith('.java')); +function nativeUnlockFromLegacy(source) { + const document = JSON.parse(source); + let converted = 0; + for (const criterion of Object.values(document.criteria || {})) { + if (criterion.trigger !== 'minecraft:inventory_changed') continue; + for (const predicate of criterion.conditions?.items || []) { + if (!Object.hasOwn(predicate, 'item')) continue; + assert.deepEqual(Object.keys(predicate), ['item']); + assert.equal(typeof predicate.item, 'string'); + const id = predicate.item; + delete predicate.item; + predicate.items = [id]; + converted++; + } + } + return {document, converted}; +} + +function assertNativeUnlock(source, actual) { + const expected = nativeUnlockFromLegacy(source); + assert.deepEqual(JSON.parse(actual), expected.document); + return expected.converted; +} + check('Exact native 1.17.1 build target', () => { for (const [key, value] of Object.entries({minecraft_version:'1.17.1', forge_version:'37.1.1', mapping_channel:'official', mapping_version:'1.17.1', mcp_version:'20210706.113038', @@ -39,8 +63,8 @@ check('Exact native 1.17.1 build target', () => { assert(read('build.gradle').includes('major != 60')); }); check('Approved 1.17 API source and artifact pins', () => { - assert.equal(properties.poweradvantage_deobf_sha256, '7B2B2676CDB9A0B933DA04CC743787803C68E1466FD44E2EFBAEFB3ED47ABB3D'); - assert.equal(properties.poweradvantage_source_ref, '28247f936ac99e7a417da1bc1c89bc8394773a26'); + assert.equal(properties.poweradvantage_deobf_sha256, 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767'); + assert.equal(properties.poweradvantage_source_ref, 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95'); assert.notEqual(properties.poweradvantage_pin_state, 'API_PIN_PROVISIONAL', 'Power API remains provisional; source freeze pending'); assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/, 'Power source pin pending parent'); assert.match(properties.poweradvantage_deobf_sha256, /^[A-F0-9]{64}$/, 'Power development jar pin pending parent'); @@ -55,10 +79,40 @@ check('Approved 1.17 API source and artifact pins', () => { assert.equal(properties[key], value, key); } }); -check('All 1.16 assets, recipes, loot, translations and unlock bytes retained', () => { +check('Resource bytes retained except exact native advancement predicate conversion', () => { + let changedFiles = 0, changedPredicates = 0; for (const name of tracked.filter(n => n.startsWith('src/main/resources/') && !['src/main/resources/pack.mcmeta', 'src/main/resources/META-INF/mods.toml'].includes(n))) { - assert.deepEqual(fs.readFileSync(path.join(root, name)), git('show', `${baseline}:${name}`), name); + const before = git('show', `${baseline}:${name}`); + if (name.startsWith('src/main/resources/data/electricadvantage/advancements/recipes/')) { + const converted = nativeUnlockFromLegacy(before.toString()).converted; + if (converted) { + assert.equal(assertNativeUnlock(before.toString(), read(name)), converted, name); + changedFiles++; + changedPredicates += converted; + continue; + } + } + assert.deepEqual(fs.readFileSync(path.join(root, name)), before, name); + } + assert.equal(changedFiles, 19); + assert.equal(changedPredicates, 21); +}); +check('Advancement compatibility allowance rejects unrelated changes and old triggers', () => { + const before = JSON.stringify({criteria:{has_input:{trigger:'minecraft:inventory_changed', + conditions:{items:[{item:'minecraft:apple'}]}}}, rewards:{recipes:['electricadvantage:example']}, + requirements:[['has_input']]}); + const native = nativeUnlockFromLegacy(before).document; + assert.equal(assertNativeUnlock(before, JSON.stringify(native)), 1); + assert.throws(() => assertNativeUnlock(before, before)); + for (const mutate of [ + document => document.criteria.has_input.conditions.items[0].items.push('minecraft:dirt'), + document => document.rewards.recipes.push('electricadvantage:another'), + document => document.requirements.push(['has_input']) + ]) { + const altered = JSON.parse(JSON.stringify(native)); + mutate(altered); + assert.throws(() => assertNativeUnlock(before, JSON.stringify(altered))); } }); check('Registry, asset, provider and NBT string identities retained', () => { @@ -88,9 +142,12 @@ check('Inherited regression tests remain present with no skip or assume bypass', const methods = s => [...s.matchAll(/@Test\s+public void (\w+)\(/g)].map(m => m[1]); const expected = methods(before).map(n => n.replace('resourcePackDeclaresTheNativeOneSixteenFormat', 'resourcePackDeclaresTheNativeOneSeventeenFormat')); + count += expected.length; + if (name.endsWith('/RecipeUnlockContractTest.java')) { + expected.splice(2, 0, 'nativeParserRestrictsItemArraysButSilentlyIgnoresTheLegacySingularKey'); + } assert.deepEqual(methods(after), expected, name); assert(!/@Ignore|Assume\.|assumeTrue\(|assumeFalse\(/.test(after), name); - count += expected.length; } assert.equal(count, 89); }); From 325e90e02ee950e18da8d35d7e01030ea44f8a6e Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 31 Oct 2026 06:22:10 +0000 Subject: [PATCH 03/10] Pin the final shared Power checkpoint for 1.17 --- .github/workflows/ci.yml | 2 +- .github/workflows/codeql-analysis.yml | 2 +- README.md | 12 +++---- build.gradle | 4 +-- docs/NATIVE117.md | 34 ++++++++++++++++--- gradle.properties | 4 +-- .../resources/BuildWorkflowContractTest.java | 8 ++--- tools/verification/Verify-ElectricEcj.ps1 | 4 +-- tools/verify-native-port.js | 4 +-- 9 files changed, 49 insertions(+), 25 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2e9a686..13e949a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,7 +32,7 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "fc4c47f2ed8cfebbaa010e6a0e807137a3329f95" || "$power_sha" != "BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767" ]]; then + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "5b9abe578b053d2ef59b1962cf9e04f6880c91b9" || "$power_sha" != "799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8" ]]; then echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index fa9774d..cdb79dd 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -32,7 +32,7 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "fc4c47f2ed8cfebbaa010e6a0e807137a3329f95" || "$power_sha" != "BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767" ]]; then + if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "5b9abe578b053d2ef59b1962cf9e04f6880c91b9" || "$power_sha" != "799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8" ]]; then echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 exit 1 fi diff --git a/README.md b/README.md index 4105887..9d20966 100644 --- a/README.md +++ b/README.md @@ -22,18 +22,18 @@ Power, Base Metals and OreSpawn are separate dependencies, never embedded. ## Current State The source and resource migration is prepared. The source inventory is 85 production -files and 27 test files containing 95 tests: all 89 inherited tests plus six native -construction, shader and dependency-recipe checks. +files and 27 test files containing 96 tests: all 89 inherited tests plus seven native +construction, shader, dependency-recipe and advancement-parser checks. -On 31 October 2026 the complete local deterministic build passed all 95 JUnit +On 31 October 2026 the complete local deterministic build passed all 96 JUnit tests, Javadocs, dependency/resource/artifact audits, checksums and Eclipse -production isolation checks. Independent ECJ compilation and all 95 tests also +production isolation checks. Independent ECJ compilation and all 96 tests also passed on Java 16, with no ignored tests or assumptions; its restricted-JDK negative control failed for the expected access error. These results use the parent's local checkpoint, not a final combined release: -Power Advantage `2.4.8.117011`, source `fc4c47f2ed8cfebbaa010e6a0e807137a3329f95`, -API SHA-256 `BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767`. +Power Advantage `2.4.8.117011`, source `5b9abe578b053d2ef59b1962cf9e04f6880c91b9`, +API SHA-256 `799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8`. The metadata records `LOCAL_CHECKPOINT`; any coordinated re-pin needs fresh proof. Earlier `API_PIN_PROVISIONAL` results are retained separately. A 1.16.5 Power jar is never accepted. Combined packaged runtime and migration are verified diff --git a/build.gradle b/build.gradle index 10c2393..f1db58e 100644 --- a/build.gradle +++ b/build.gradle @@ -427,8 +427,8 @@ tasks.register('verifyReleaseConfiguration') { } if (project.poweradvantage_version != '2.4.8.117011' || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/PowerAdvantage' - || project.poweradvantage_source_ref != 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95' - || project.poweradvantage_deobf_sha256 != 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767') { + || project.poweradvantage_source_ref != '5b9abe578b053d2ef59b1962cf9e04f6880c91b9' + || project.poweradvantage_deobf_sha256 != '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8') { throw new GradleException('Unexpected PowerAdvantage compile dependency identity') } if (project.basemetals_version != '3.1.0.117011' diff --git a/docs/NATIVE117.md b/docs/NATIVE117.md index 61bef6b..ca7ab82 100644 --- a/docs/NATIVE117.md +++ b/docs/NATIVE117.md @@ -1,7 +1,7 @@ # Electric Advantage 1.17.1 Port Current Power source/API pin: -`fc4c47f2ed8cfebbaa010e6a0e807137a3329f95` / `BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767`. +`5b9abe578b053d2ef59b1962cf9e04f6880c91b9` / `799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8`. This dependency retains native recipe unlocks and adds dirty-state persistence without comparator updates on each machine tick. The new Electric build and independent ECJ check each pass all 96 tests with no skips or assumptions, @@ -54,8 +54,9 @@ native ray geometry, first-tick redstone caching, solar brightness above the panel, controller input capacity, still output preflight, waterlogged pickup, sound recipient bounds, turbine save/load/anchoring and normalized hydro GUI output. New tests check native factories, tag-only load positions, turret packet -coordinates, the LED ticker type and shader resources. All 95 tests pass on the -current checkpoint with both Gradle/JUnit and independent ECJ/JUnit. +coordinates, the LED ticker type and shader resources. The initial checkpoint +passed 95 tests with both Gradle/JUnit and independent ECJ/JUnit; the current +96-test inventory also includes the native advancement-parser regression below. The plain-JVM harvest fixture initializes Forge's real tier ordering and native tag bindings. The build-only agent calls Forge's own capability and event-bus @@ -71,7 +72,7 @@ no fabricated conversion or silent balance adjustment is included here. ## Qualification Gates -Current local evidence: `electric-checkpoint-i.log` in the shared campaign records +Initial local evidence: `electric-checkpoint-i.log` in the shared campaign records 35 tasks executed successfully with `--no-build-cache --rerun-tasks`, including all 95 tests and every deterministic release/Eclipse audit. Independent evidence is `evidence-117-20261031/ecj-checkpoint-a/ecj-results.json`: fresh compilation of @@ -113,7 +114,7 @@ The earlier artifact hashes above are historical evidence, not the current pin. The owner-credit and hydro observations require harness readiness/freeze repairs, not a production change; the prewarmed combined rerun is still a separate gate. -The current pin's evidence is `electric-dirty-api-release-a.log` and +The preceding dirty-state pin's evidence is `electric-dirty-api-release-a.log` and `electric-dirty-api-ecj-a.log`. Harvest H passes 271 real survival, wrong-tool, silk-touch and geometry checks on each of two complete JVM boots. Native chunk readiness is measured before mining. The earlier zero-capture report retained @@ -122,6 +123,29 @@ fixture rather than missing production drops. No ore, tool tier, quantity or machine behavior was changed for that diagnosis. Interop and the broader operating/migration campaign remain separate recorded gates. +## Final Local API Pin + +The final Power checkpoint above passes the complete 36-task release suite in +`electric-final-api-release-a.log`, including all 96 tests with no skips. +`electric-final-api-ecj-a.log` independently recompiles 85 production and 27 test +sources and passes the same 96 tests on Java 16, with no ignored tests or +assumptions. The restricted-JDK negative control still fails as expected. +All 11 static contracts and all 50 recipe unlocks also pass. All four Electric +archive hashes are unchanged from the advancement candidate; this repin changes +no Electric machine code, ore drops, tool tiers or balance. + +Independent source exports and initially empty-cache builds are recorded in +the campaign's `electric-final-api-qualification` directory. Their receipts must +bind the exact committed source and compare release, development, sources and +Javadoc archives. These are module and reproducibility gates, not evidence that +the final combined runtime or manual gameplay has passed. + +Harvest H retains its 271 unchanged drop checks on each of two full JVM boots. +Interop H stopped before exercising a machine because its runner omitted the +test-world marker required to register the readiness command. That setup failure +is retained; the corrected K runtime belongs to the combined campaign. Neither +observation calls for an Electric production repair. + 1. Keep the exact current Power local source/API checkpoint and published API checksums pinned. Any coordinated source/API replacement requires new proof. 2. Use the campaign lease helper for fresh compile, all 96 JUnit tests, strict diff --git a/gradle.properties b/gradle.properties index a03732a..bb3327b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -40,8 +40,8 @@ poweradvantage_pin_state=LOCAL_CHECKPOINT poweradvantage_source_repository=MinecraftModDevelopmentMods/PowerAdvantage # Exact local-only Power source and immutable development artifact; publish source before hosted builds. # Local checkpoint only; combined runtime qualification and manual acceptance remain pending. -poweradvantage_source_ref=fc4c47f2ed8cfebbaa010e6a0e807137a3329f95 -poweradvantage_deobf_sha256=BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767 +poweradvantage_source_ref=5b9abe578b053d2ef59b1962cf9e04f6880c91b9 +poweradvantage_deobf_sha256=799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8 poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 basemetals_version=3.1.0.117011 diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java index 669dd69..d24b3e1 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java +++ b/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java @@ -33,8 +33,8 @@ public class BuildWorkflowContractTest { for (String helper : new String[] {"tools/verify-native-port.js", "tools/verification/Verify-ElectricEcj.ps1"}) { String source = new String(Files.readAllBytes(Paths.get(helper)), StandardCharsets.UTF_8); assertTrue(helper, source.contains("API_PIN_PROVISIONAL")); - assertTrue(helper, source.contains("fc4c47f2ed8cfebbaa010e6a0e807137a3329f95")); - assertTrue(helper, source.contains("BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767")); + assertTrue(helper, source.contains("5b9abe578b053d2ef59b1962cf9e04f6880c91b9")); + assertTrue(helper, source.contains("799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8")); assertFalse(helper, source.contains("2116a35a40dd150d79e7dfdcdc891637793178b7")); assertFalse(helper, source.contains("F58B93DAF03CF303F32B18CCCA140E55E886A2BA82732A3F286ADF3E31194B6A")); } @@ -50,8 +50,8 @@ public class BuildWorkflowContractTest { assertTrue(source.contains("BaseMetals-3.1.0.117011-deobf.jar")); assertTrue(source.contains("ref: ${{ steps.pins.outputs.power_ref }}")); assertTrue(source.contains("API_PIN_PROVISIONAL")); - assertTrue(source.contains("fc4c47f2ed8cfebbaa010e6a0e807137a3329f95")); - assertTrue(source.contains("BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767")); + assertTrue(source.contains("5b9abe578b053d2ef59b1962cf9e04f6880c91b9")); + assertTrue(source.contains("799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8")); assertFalse(source.contains("098d4625abc8a849bd1a11dcf697b3fee0cade7b")); assertFalse(source.contains("78E58DD2AB04E2B9F3267E5735C64AAE7E93EAC97571CB04485038862C853ED3")); assertFalse(source.contains("ce90c24c302d0ff3565db2db0c6c94a3b5f21f83")); diff --git a/tools/verification/Verify-ElectricEcj.ps1 b/tools/verification/Verify-ElectricEcj.ps1 index b4de3e8..69af88f 100644 --- a/tools/verification/Verify-ElectricEcj.ps1 +++ b/tools/verification/Verify-ElectricEcj.ps1 @@ -70,8 +70,8 @@ try { $report.apiPinState = $properties.poweradvantage_pin_state $provisional = $properties.poweradvantage_pin_state -eq 'API_PIN_PROVISIONAL' if ($properties.mod_id -ne 'electricadvantage' -or $properties.mod_version -ne '2.2.9.117011' -or - (!$provisional -and $properties.poweradvantage_source_ref -ne 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95') -or - $properties.poweradvantage_deobf_sha256 -ne 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767') { + (!$provisional -and $properties.poweradvantage_source_ref -ne '5b9abe578b053d2ef59b1962cf9e04f6880c91b9') -or + $properties.poweradvantage_deobf_sha256 -ne '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8') { throw 'This verifier requires the pinned Electric 1.17.1 candidate' } $report.compiler = Get-Pin $Compiler diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index 38bfbd4..94590cf 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -63,8 +63,8 @@ check('Exact native 1.17.1 build target', () => { assert(read('build.gradle').includes('major != 60')); }); check('Approved 1.17 API source and artifact pins', () => { - assert.equal(properties.poweradvantage_deobf_sha256, 'BDF486E16C1FE3B4CE2FE1ED78670AABA594063BCD2D4251265124B17FA9E767'); - assert.equal(properties.poweradvantage_source_ref, 'fc4c47f2ed8cfebbaa010e6a0e807137a3329f95'); + assert.equal(properties.poweradvantage_deobf_sha256, '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8'); + assert.equal(properties.poweradvantage_source_ref, '5b9abe578b053d2ef59b1962cf9e04f6880c91b9'); assert.notEqual(properties.poweradvantage_pin_state, 'API_PIN_PROVISIONAL', 'Power API remains provisional; source freeze pending'); assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/, 'Power source pin pending parent'); assert.match(properties.poweradvantage_deobf_sha256, /^[A-F0-9]{64}$/, 'Power development jar pin pending parent'); From 9e6be35d86ac77721a6ca52e9a3990664f04849f Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 31 Oct 2026 06:45:13 +0000 Subject: [PATCH 04/10] Clarify the 1.17 build and Eclipse requirements --- CHANGELOG.txt | 3 ++- README.md | 7 +++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 068f426..9c28f45 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -3,7 +3,7 @@ Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 local port candidate - Target Forge 37.1.1, official mappings, Java 16 production bytecode and FG7. - Carry native machine position/state through factories, persistence and drill movement. - Port native helper ticking, hydroturbine removal/link restoration and renderer registration. -- Retain laser geometry, NBT identities, recipes, machine constants and 1.16 regression tests. +- Retain laser geometry, NBT identities, recipes, machine constants and the inherited regression tests. - Use native ore harvest tags and bucket pickup, including waterlogged sources. - Use the 1.17 ingredient-predicate format so unrelated items do not unlock recipes. - Require the matching Power Advantage build so machine progress and stored energy remain saved after automatic saves. @@ -11,6 +11,7 @@ Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 local port candidate - Pass 96 Gradle/JUnit and 96 independent ECJ/JUnit tests plus local artifact/Eclipse audits against the pinned Power checkpoint. - Verify the original ore tool levels and real survival drops, including silk touch, across a full restart. - Combined packaged runtime, migration and manual acceptance are recorded separately from the build checks. +- Use Java 16 for generated Eclipse client and server launches, Java 17 for Gradle, and Java 25 for Mavenizer. - No port-code push, pull request, merge, tag or release before manual testing. Electric Advantage 2.2.8.116051 (local port candidate) diff --git a/README.md b/README.md index 9d20966..b8aa15f 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,8 @@ production isolation checks. Independent ECJ compilation and all 96 tests also passed on Java 16, with no ignored tests or assumptions; its restricted-JDK negative control failed for the expected access error. -These results use the parent's local checkpoint, not a final combined release: +These are local module results against the shared Power Advantage checkpoint, +not a final combined release: Power Advantage `2.4.8.117011`, source `5b9abe578b053d2ef59b1962cf9e04f6880c91b9`, API SHA-256 `799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8`. The metadata records `LOCAL_CHECKPOINT`; any coordinated re-pin needs fresh proof. @@ -68,7 +69,7 @@ clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts write Pass the exact immutable paths with `-PpowerAdvantageDeobfJar`, `-PbaseMetalsDeobfJar` and `-PoreSpawnDeobfJar` through the helper's `Extra` argument. -Tests use the parent's hash-checked, build-only Forge capability bootstrap source +Tests use Power Advantage's hash-checked, build-only Forge capability bootstrap source through `-PpowerAdvantageUnitBootstrapSource`. Electric's build-only wrapper also runs Forge's event-bus plugin for the native tier/harvest checks. Neither replaces capability tokens or events, and neither is included in production jars. @@ -102,6 +103,8 @@ no replacement raw-metal conversion or balance change is introduced. Eclipse imports use the Gradle wrapper, processed resources and production-only launches. Generate metadata through `verifyEclipseProductionClasspath`; do not hand-edit generated classpaths or disable restricted-reference tests. +Use Java `16.0.2+7` for the generated client and server launches, not Java 8. +Java 17 is for Gradle and Buildship; Java 25 is for Mavenizer. Test only disposable copies of worlds. Preserve originals, backups, failed receipts and version-specific checkouts. Manual GUI interaction and captions, From ce6b075f1d0e417e46e1742b9a2ca856b24dc67f Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 31 Oct 2026 11:08:57 +0000 Subject: [PATCH 05/10] Keep the 1.17 build instructions portable --- README.md | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index b8aa15f..abe2897 100644 --- a/README.md +++ b/README.md @@ -55,22 +55,33 @@ Exact API and public-runtime SHA-256 values are recorded separately in `gradle.properties`. Published runtime jars, not unpublished dependency builds, must be used for packaged qualification. -For this local coordinated campaign, every Gradle invocation must go through -`D:/PowerAdvantage/_verification/advantage-117-port-20261031/Invoke-Gradle117.ps1`. -It holds the exclusive `gradle-shared.lease` and uses -`D:/GradleCaches/advantage-117-20261031`. Do not bypass the helper, delete caches, -overwrite evidence, or build against another module's mutable output. +Build the pinned dependency sources first, then run from this repository: -The required local deterministic tasks are: +```text +./gradlew clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath +``` + +On Windows, use `gradlew.bat` instead of `./gradlew`. Set `JAVA_HOME` to Java 17 +for Gradle and install the Java 16 production toolchain and Java 25 Mavenizer +runtime listed above. The older dependency build utilities also need Java 8. + +The default dependency paths follow the sibling checkout layout. For an isolated +checkout, append these Gradle arguments with your actual paths: ```text -clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath +-PpowerAdvantageDeobfJar="/path/to/PowerAdvantage-2.4.8.117011-deobf.jar" +-PbaseMetalsDeobfJar="/path/to/BaseMetals-3.1.0.117011-deobf.jar" +-PoreSpawnDeobfJar="/path/to/OreSpawn-4.1.0.117011-deobf.jar" +-PpowerAdvantageUnitBootstrapSource="/path/to/PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java" ``` -Pass the exact immutable paths with `-PpowerAdvantageDeobfJar`, -`-PbaseMetalsDeobfJar` and `-PoreSpawnDeobfJar` through the helper's `Extra` argument. +The build checks these inputs against the pinned hashes; do not substitute jars +from another Minecraft version. If Gradle cannot find the installed JDKs, pass +`-Porg.gradle.java.installations.paths=,,,`. +No machine-specific helper or shared Gradle cache is required. + Tests use Power Advantage's hash-checked, build-only Forge capability bootstrap source -through `-PpowerAdvantageUnitBootstrapSource`. Electric's build-only wrapper also +from `-PpowerAdvantageUnitBootstrapSource`. Electric's build-only wrapper also runs Forge's event-bus plugin for the native tier/harvest checks. Neither replaces capability tokens or events, and neither is included in production jars. Independent ECJ verification uses `tools/verification/Verify-ElectricEcj.ps1` From a2a71ecd043292255d7c52f6123d3c7a7b1a73c7 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 7 Nov 2026 23:00:18 +0000 Subject: [PATCH 06/10] Bring baseElectric to Minecraft 1.17.1 --- .github/workflows/ci.yml | 42 +-- .github/workflows/codeql-analysis.yml | 30 +- .github/workflows/release-on-tag.yml | 4 +- CHANGELOG.txt | 6 + README.md | 86 +++--- build.gradle | 259 ++++++++++-------- docs/NATIVE117.md | 24 +- gradle.properties | 38 +-- settings.gradle | 2 +- .../Data.java | 6 +- .../ElectricAdvantage.java | 43 +-- .../blocks/ElectricConduitBlock.java | 4 +- .../blocks/ElectricScaffoldBlock.java | 4 +- .../blocks/Ore.java | 2 +- .../blocks/PumpPipeBlock.java | 2 +- .../common/IRechargeableItem.java | 2 +- .../compat/BaseMetalsCompat.java | 2 +- .../config/ElectricAdvantageConfig.java | 8 +- .../entities/HydroturbineEntity.java | 8 +- .../graphics/BufferedQuads.java | 2 +- .../graphics/ClientRegistration.java | 8 +- .../graphics/ElectricRenderTypes.java | 8 +- .../graphics/HydroturbineRenderer.java | 6 +- .../graphics/LaserDrillRenderer.java | 6 +- .../graphics/LaserTurretRenderer.java | 6 +- .../gui/ArcFurnaceGUI.java | 8 +- .../gui/BatteryArrayGUI.java | 8 +- .../gui/ElectricDrillGUI.java | 8 +- .../gui/ElectricPumpGUI.java | 8 +- .../gui/ElectricStillGUI.java | 8 +- .../gui/FabricatorGUI.java | 8 +- .../gui/GUIHelper.java | 4 +- .../gui/GenericMachineGUI.java | 8 +- .../gui/GrowthChamberControllerGUI.java | 8 +- .../gui/GrowthChamberGUI.java | 8 +- .../gui/OvenGUI.java | 8 +- .../gui/PlasticRefineryGUI.java | 8 +- .../gui/PowerGeneratorGUI.java | 8 +- .../gui/RockCrusherGUI.java | 8 +- .../init/Blocks.java | 48 ++-- .../init/Enchantments.java | 4 +- .../init/Entities.java | 38 +-- .../init/GUI.java | 8 +- .../init/Items.java | 8 +- .../init/OreSpawnWorldGen.java | 8 +- .../init/Power.java | 2 +- .../init/Recipes.java | 2 +- .../init/TreasureChests.java | 22 +- .../init/Villages.java | 2 +- .../items/BatteryItem.java | 6 +- .../machines/ElectricBatteryArrayBlock.java | 2 +- .../ElectricBatteryArrayTileEntity.java | 8 +- .../machines/ElectricCrusherBlock.java | 2 +- .../machines/ElectricCrusherTileEntity.java | 8 +- .../machines/ElectricDrillBlock.java | 6 +- .../machines/ElectricDrillTileEntity.java | 14 +- .../machines/ElectricFabricatorBlock.java | 2 +- .../ElectricFabricatorTileEntity.java | 8 +- .../machines/ElectricFurnaceBlock.java | 2 +- .../machines/ElectricFurnaceTileEntity.java | 6 +- .../machines/ElectricGeneratorBlock.java | 4 +- .../machines/ElectricGeneratorTileEntity.java | 6 +- .../machines/ElectricMachineBlock.java | 4 +- .../machines/ElectricMachineTileEntity.java | 6 +- .../machines/ElectricOvenBlock.java | 2 +- .../machines/ElectricOvenTileEntity.java | 6 +- .../machines/ElectricPumpBlock.java | 10 +- .../machines/ElectricPumpTileEntity.java | 20 +- .../machines/ElectricStillBlock.java | 6 +- .../machines/ElectricStillTileEntity.java | 20 +- .../machines/GrowthChamberBlock.java | 4 +- .../GrowthChamberControllerBlock.java | 6 +- .../GrowthChamberControllerTileEntity.java | 10 +- .../machines/GrowthChamberTileEntity.java | 10 +- .../machines/HydroelectricGeneratorBlock.java | 2 +- .../HydroelectricGeneratorTileEntity.java | 6 +- .../machines/LEDBlock.java | 6 +- .../machines/LEDTileEntity.java | 6 +- .../machines/LaserTurretBlock.java | 2 +- .../machines/LaserTurretTileEntity.java | 8 +- .../machines/PhotovoltaicGeneratorBlock.java | 2 +- .../PhotovoltaicGeneratorTileEntity.java | 6 +- .../machines/PlasticRefineryBlock.java | 6 +- .../machines/PlasticRefineryTileEntity.java | 16 +- .../SteamPoweredElectricGeneratorBlock.java | 4 +- ...eamPoweredElectricGeneratorTileEntity.java | 8 +- .../migration/ElectricLegacyMigrations.java | 49 ++-- .../recipe/RecipeConditions.java | 8 +- .../util/LegacyFluidHandler.java | 2 +- .../util/crafting/ItemMatcher.java | 2 +- .../util/crafting/ItemRecord.java | 2 +- .../util/crafting/RecipeDeconstructor.java | 4 +- .../util/crafting/SerializedInventory.java | 2 +- .../util/farming/VirtualCrop.java | 4 +- src/main/resources/META-INF/mods.toml | 24 +- .../blockstates/electric_battery_array.json | 12 + .../blockstates/electric_conduit.json | 70 +++++ .../blockstates/electric_crusher.json | 20 ++ .../blockstates/electric_drill.json | 16 ++ .../blockstates/electric_fabricator.json | 20 ++ .../blockstates/electric_furnace.json | 20 ++ .../blockstates/electric_oven.json | 20 ++ .../blockstates/electric_pcb_printer.json | 20 ++ .../blockstates/electric_pump.json | 20 ++ .../blockstates/electric_still.json | 20 ++ .../blockstates/electric_switch.json | 6 + .../blockstates/electric_track.json | 70 +++++ .../blockstates/geothermal_generator.json | 12 + .../blockstates/growth_chamber.json | 20 ++ .../growth_chamber_controller.json | 8 + .../blockstates/hydroelectric_generator.json | 12 + .../blockstates/laser_turret.json | 20 ++ .../blockstates/laser_turret_evil.json | 20 ++ .../baseelectric/blockstates/led_bar.json | 134 +++++++++ .../baseelectric/blockstates/li_ore.json | 5 + .../blockstates/photovoltaic_generator.json | 12 + .../blockstates/plastic_refinery.json | 20 ++ .../blockstates/pump_pipe_electric.json | 5 + .../blockstates/steam_powered_generator.json | 12 + .../baseelectric/blockstates/sulfur_ore.json | 5 + .../assets/baseelectric/lang/de_de.json | 92 +++++++ .../assets/baseelectric/lang/en_au.json | 92 +++++++ .../assets/baseelectric/lang/en_ca.json | 92 +++++++ .../assets/baseelectric/lang/en_en.json | 92 +++++++ .../assets/baseelectric/lang/en_gb.json | 92 +++++++ .../assets/baseelectric/lang/en_pt.json | 92 +++++++ .../assets/baseelectric/lang/en_us.json | 92 +++++++ .../assets/baseelectric/lang/es_es.json | 92 +++++++ .../assets/baseelectric/lang/es_mx.json | 92 +++++++ .../assets/baseelectric/lang/it_it.json | 92 +++++++ .../assets/baseelectric/lang/ja_jp.json | 92 +++++++ .../assets/baseelectric/lang/ko_ko.json | 91 ++++++ .../assets/baseelectric/lang/pt_br.json | 92 +++++++ .../assets/baseelectric/lang/zh_cn.json | 92 +++++++ .../models/block/electric_battery_array.json | 10 + .../models/block/electric_conduit_0.json | 7 + .../models/block/electric_conduit_densuw.json | 7 + .../models/block/electric_conduit_desuw.json | 7 + .../models/block/electric_conduit_dnu.json | 7 + .../models/block/electric_conduit_ensw.json | 7 + .../models/block/electric_conduit_n.json | 7 + .../models/block/electric_conduit_ns.json | 7 + .../models/block/electric_conduit_nsuw.json | 7 + .../models/block/electric_conduit_nsw.json | 7 + .../models/block/electric_conduit_nuw.json | 7 + .../models/block/electric_conduit_nw.json | 7 + .../models/block/electric_crusher_off.json | 10 + .../models/block/electric_crusher_on.json | 10 + .../block/electric_crusher_powered.json | 10 + .../models/block/electric_drill_base.json | 6 +- .../models/block/electric_drill_off.json | 7 + .../models/block/electric_drill_on.json | 7 + .../models/block/electric_fabricator_off.json | 10 + .../models/block/electric_fabricator_on.json | 10 + .../block/electric_fabricator_powered.json | 10 + .../models/block/electric_furnace_off.json | 10 + .../models/block/electric_furnace_on.json | 10 + .../block/electric_furnace_powered.json | 10 + .../models/block/electric_machine_base.json | 2 +- .../models/block/electric_oven_off.json | 10 + .../models/block/electric_oven_on.json | 10 + .../models/block/electric_oven_powered.json | 10 + .../block/electric_pcb_printer_off.json | 10 + .../models/block/electric_pcb_printer_on.json | 10 + .../block/electric_pcb_printer_powered.json | 10 + .../models/block/electric_pump_off.json | 10 + .../models/block/electric_pump_on.json | 10 + .../models/block/electric_pump_powered.json | 10 + .../models/block/electric_still_off.json | 10 + .../models/block/electric_still_on.json | 10 + .../models/block/electric_still_powered.json | 10 + .../models/block/electric_switch_off.json | 7 + .../models/block/electric_switch_on.json | 7 + .../models/block/electric_track_0.json | 8 +- .../models/block/electric_track_densuw.json | 8 +- .../models/block/electric_track_desuw.json | 8 +- .../models/block/electric_track_dnu.json | 8 +- .../models/block/electric_track_ensw.json | 8 +- .../models/block/electric_track_n.json | 8 +- .../models/block/electric_track_ns.json | 8 +- .../models/block/electric_track_nsuw.json | 8 +- .../models/block/electric_track_nsw.json | 8 +- .../models/block/electric_track_nuw.json | 8 +- .../models/block/electric_track_nw.json | 8 +- .../models/block/geothermal_generator.json | 10 + .../block/growth_chamber_controller.json | 10 + .../models/block/growth_chamber_off.json | 10 + .../models/block/growth_chamber_on.json | 10 + .../models/block/growth_chamber_powered.json | 10 + .../block/hydroelectric_generator_off.json | 10 + .../block/hydroelectric_generator_on.json | 10 + .../models/block/laser_turret.json | 10 +- .../models/block/led_bar_off_densuw.json | 7 + .../models/block/led_bar_off_desuw.json | 7 + .../models/block/led_bar_off_dnu.json | 7 + .../models/block/led_bar_off_ensw.json | 7 + .../models/block/led_bar_off_n.json | 7 + .../models/block/led_bar_off_ns.json | 7 + .../models/block/led_bar_off_nsuw.json | 7 + .../models/block/led_bar_off_nsw.json | 7 + .../models/block/led_bar_off_nuw.json | 7 + .../models/block/led_bar_off_nw.json | 7 + .../models/block/led_bar_on_densuw.json | 7 + .../models/block/led_bar_on_desuw.json | 7 + .../models/block/led_bar_on_dnu.json | 7 + .../models/block/led_bar_on_ensw.json | 7 + .../models/block/led_bar_on_n.json | 7 + .../models/block/led_bar_on_ns.json | 7 + .../models/block/led_bar_on_nsuw.json | 7 + .../models/block/led_bar_on_nsw.json | 7 + .../models/block/led_bar_on_nuw.json | 7 + .../models/block/led_bar_on_nw.json | 7 + .../models/block/li_ore.json | 12 +- .../models/block/photovoltaic_generator.json | 2 +- .../models/block/plastic_refinery_off.json | 10 + .../models/block/plastic_refinery_on.json | 10 + .../block/plastic_refinery_powered.json | 10 + .../block/steam_powered_generator_off.json | 10 + .../block/steam_powered_generator_on.json | 10 + .../models/block/sulfur_ore.json | 2 +- .../models/item/alkaline_battery.json | 6 + .../models/item/battery_base.json | 2 +- .../models/item/blank_circuit_board.json | 6 + .../models/item/control_circuit.json | 6 + .../models/item/electric_battery_array.json | 4 + .../models/item/electric_conduit.json | 4 + .../models/item/electric_crusher.json | 4 + .../models/item/electric_drill.json | 4 + .../models/item/electric_fabricator.json | 4 + .../models/item/electric_furnace.json | 4 + .../models/item/electric_oven.json | 4 + .../models/item/electric_pcb_printer.json | 4 + .../models/item/electric_pump.json | 4 + .../models/item/electric_still.json | 4 + .../models/item/electric_switch.json | 3 + .../models/item/electric_track.json | 4 + .../models/item/generic_item.json | 6 + .../models/item/geothermal_generator.json | 4 + .../models/item/growth_chamber.json | 4 + .../item/growth_chamber_controller.json | 4 + .../models/item/hydroelectric_generator.json | 4 + .../models/item/integrated_circuit.json | 6 + .../models/item/laser_turret.json | 12 +- .../models/item/laser_turret_evil.json | 12 +- .../models/item/lead_acid_battery.json | 6 + .../baseelectric/models/item/led_bar.json | 4 + .../baseelectric/models/item/li_ingot.json | 6 + .../baseelectric/models/item/li_nugget.json | 6 + .../baseelectric/models/item/li_ore.json | 3 + .../baseelectric/models/item/li_powder.json | 6 + .../models/item/lithium_battery.json | 6 + .../models/item/nickel_hydride_battery.json | 6 + .../models/item/petrolplastic_ingot.json | 6 + .../models/item/photovoltaic_generator.json | 4 + .../models/item/plastic_refinery.json | 4 + .../assets/baseelectric/models/item/psu.json | 6 + .../models/item/pump_pipe_electric.json | 4 + .../models/item/silicon_ingot.json | 6 + .../baseelectric/models/item/silicon_mix.json | 6 + .../baseelectric/models/item/solder.json | 6 + .../baseelectric/models/item/solder_mix.json | 6 + .../models/item/steam_powered_generator.json | 4 + .../baseelectric/models/item/sulfur_ore.json | 3 + .../models/item/sulfur_powder.json | 6 + .../shaders/core/unshaded.json | 2 +- .../shaders/core/unshaded.vsh | 0 .../blocks/electric_battery_array.png | Bin .../textures/blocks/electric_conduit.png | Bin .../textures/blocks/electric_crusher_off.png | Bin .../textures/blocks/electric_crusher_on.png | Bin .../blocks/electric_crusher_on.png.mcmeta | 6 +- .../blocks/electric_crusher_powered.png | Bin .../textures/blocks/electric_drill_off.png | Bin .../textures/blocks/electric_drill_on.png | Bin .../blocks/electric_drill_powered.png | Bin .../blocks/electric_fabricator_off.png | Bin .../blocks/electric_fabricator_on.png | Bin .../blocks/electric_fabricator_on.png.mcmeta | 32 +-- .../blocks/electric_fabricator_powered.png | Bin .../textures/blocks/electric_furnace_off.png | Bin .../textures/blocks/electric_furnace_on.png | Bin .../blocks/electric_furnace_powered.png | Bin .../textures/blocks/electric_oven_off.png | Bin .../textures/blocks/electric_oven_on.png | Bin .../textures/blocks/electric_oven_powered.png | Bin .../blocks/electric_pcb_printer_off.png | Bin .../blocks/electric_pcb_printer_on.png | Bin .../blocks/electric_pcb_printer_powered.png | Bin .../textures/blocks/electric_pump_off.png | Bin .../textures/blocks/electric_pump_on.png | Bin .../textures/blocks/electric_still_off.png | Bin .../textures/blocks/electric_still_on.png | Bin .../blocks/electric_still_on.png.mcmeta | 6 +- .../blocks/electric_still_powered.png | Bin .../textures/blocks/electric_switch_off.png | Bin .../textures/blocks/electric_switch_on.png | Bin .../blocks/growth_chamber_controller.png | Bin .../textures/blocks/growth_chamber_off.png | Bin .../textures/blocks/growth_chamber_on.png | Bin .../blocks/growth_chamber_powered.png | Bin .../blocks/hydroelectric_generator_off.png | Bin .../blocks/hydroelectric_generator_on.png | Bin .../hydroelectric_generator_on.png.mcmeta | 6 +- .../textures/blocks/laser_drill_optic.png | Bin .../textures/blocks/laser_drill_optic_on.png | Bin .../textures/blocks/laser_turret_base.png | Bin .../textures/blocks/led_bar_off.png | Bin .../textures/blocks/led_bar_on.png | Bin .../textures/blocks/lithium_ore.png | Bin .../textures/blocks/machine_back.png | Bin .../textures/blocks/machine_side.png | Bin .../textures/blocks/machine_top.png | Bin .../textures/blocks/photovoltaic_cell.png | Bin .../textures/blocks/plastic_refinery_off.png | Bin .../textures/blocks/plastic_refinery_on.png | Bin .../blocks/steam_powered_generator_off.png | Bin .../blocks/steam_powered_generator_on.png | Bin .../steam_powered_generator_on.png.mcmeta | 6 +- .../textures/blocks/sulfur_ore.png | Bin .../textures/entity/hydroturbine.png | Bin .../textures/entity/laser_turret.png | Bin .../textures/entity/windturbine.png | Bin .../container/electric_battery_array_gui.png | Bin .../gui/container/electric_crusher_gui.png | Bin .../gui/container/electric_drill_gui.png | Bin .../gui/container/electric_fabricator_gui.png | Bin .../gui/container/electric_furnace_gui.png | Bin .../gui/container/electric_generator_gui.png | Bin .../gui/container/electric_machine_gui.png | Bin .../gui/container/electric_oven_gui.png | Bin .../gui/container/electric_pump_gui.png | Bin .../gui/container/electric_still_gui.png | Bin .../container/geothermal_generator_gui.png | Bin .../growth_chamber_controller_gui.png | Bin .../gui/container/growth_chamber_gui.png | Bin .../gui/container/pcb_printer_gui.png | Bin .../gui/container/plastic_refinery_gui.png | Bin .../textures/items/alkaline_battery.png | Bin .../textures/items/blank_circuit_board.png | Bin .../textures/items/control_circuit.png | Bin .../textures/items/integrated_circuit.png | Bin .../textures/items/lead_acid_battery.png | Bin .../textures/items/li_ingot.png | Bin .../textures/items/li_nugget.png | Bin .../textures/items/li_powder.png | Bin .../textures/items/lithium_battery.png | Bin .../textures/items/nickel_hydride_battery.png | Bin .../textures/items/petrolplastic_ingot.png | Bin .../textures/items/psu.png | Bin .../textures/items/silicon_ingot.png | Bin .../textures/items/silicon_mix.png | Bin .../textures/items/solder.png | Bin .../textures/items/solder_mix.png | Bin .../textures/items/sulfur_powder.png | Bin .../textures/materials/laser_beam.png | Bin .../textures/materials/machine_case.png | Bin .../blockstates/electric_battery_array.json | 12 - .../blockstates/electric_conduit.json | 70 ----- .../blockstates/electric_crusher.json | 20 -- .../blockstates/electric_drill.json | 16 -- .../blockstates/electric_fabricator.json | 20 -- .../blockstates/electric_furnace.json | 20 -- .../blockstates/electric_oven.json | 20 -- .../blockstates/electric_pcb_printer.json | 20 -- .../blockstates/electric_pump.json | 20 -- .../blockstates/electric_still.json | 20 -- .../blockstates/electric_switch.json | 6 - .../blockstates/electric_track.json | 70 ----- .../blockstates/geothermal_generator.json | 12 - .../blockstates/growth_chamber.json | 20 -- .../growth_chamber_controller.json | 8 - .../blockstates/hydroelectric_generator.json | 12 - .../blockstates/laser_turret.json | 20 -- .../blockstates/laser_turret_evil.json | 20 -- .../blockstates/led_bar.json | 134 --------- .../electricadvantage/blockstates/li_ore.json | 5 - .../blockstates/photovoltaic_generator.json | 12 - .../blockstates/plastic_refinery.json | 20 -- .../blockstates/pump_pipe_electric.json | 5 - .../blockstates/steam_powered_generator.json | 12 - .../blockstates/sulfur_ore.json | 5 - .../assets/electricadvantage/lang/de_de.json | 92 ------- .../assets/electricadvantage/lang/en_au.json | 92 ------- .../assets/electricadvantage/lang/en_ca.json | 92 ------- .../assets/electricadvantage/lang/en_en.json | 92 ------- .../assets/electricadvantage/lang/en_gb.json | 92 ------- .../assets/electricadvantage/lang/en_pt.json | 92 ------- .../assets/electricadvantage/lang/en_us.json | 92 ------- .../assets/electricadvantage/lang/es_es.json | 92 ------- .../assets/electricadvantage/lang/es_mx.json | 92 ------- .../assets/electricadvantage/lang/it_it.json | 92 ------- .../assets/electricadvantage/lang/ja_jp.json | 92 ------- .../assets/electricadvantage/lang/ko_ko.json | 91 ------ .../assets/electricadvantage/lang/pt_br.json | 92 ------- .../assets/electricadvantage/lang/zh_cn.json | 92 ------- .../models/block/electric_battery_array.json | 10 - .../models/block/electric_conduit_0.json | 7 - .../models/block/electric_conduit_densuw.json | 7 - .../models/block/electric_conduit_desuw.json | 7 - .../models/block/electric_conduit_dnu.json | 7 - .../models/block/electric_conduit_ensw.json | 7 - .../models/block/electric_conduit_n.json | 7 - .../models/block/electric_conduit_ns.json | 7 - .../models/block/electric_conduit_nsuw.json | 7 - .../models/block/electric_conduit_nsw.json | 7 - .../models/block/electric_conduit_nuw.json | 7 - .../models/block/electric_conduit_nw.json | 7 - .../models/block/electric_crusher_off.json | 10 - .../models/block/electric_crusher_on.json | 10 - .../block/electric_crusher_powered.json | 10 - .../models/block/electric_drill_off.json | 7 - .../models/block/electric_drill_on.json | 7 - .../models/block/electric_fabricator_off.json | 10 - .../models/block/electric_fabricator_on.json | 10 - .../block/electric_fabricator_powered.json | 10 - .../models/block/electric_furnace_off.json | 10 - .../models/block/electric_furnace_on.json | 10 - .../block/electric_furnace_powered.json | 10 - .../models/block/electric_oven_off.json | 10 - .../models/block/electric_oven_on.json | 10 - .../models/block/electric_oven_powered.json | 10 - .../block/electric_pcb_printer_off.json | 10 - .../models/block/electric_pcb_printer_on.json | 10 - .../block/electric_pcb_printer_powered.json | 10 - .../models/block/electric_pump_off.json | 10 - .../models/block/electric_pump_on.json | 10 - .../models/block/electric_pump_powered.json | 10 - .../models/block/electric_still_off.json | 10 - .../models/block/electric_still_on.json | 10 - .../models/block/electric_still_powered.json | 10 - .../models/block/electric_switch_off.json | 7 - .../models/block/electric_switch_on.json | 7 - .../models/block/geothermal_generator.json | 10 - .../block/growth_chamber_controller.json | 10 - .../models/block/growth_chamber_off.json | 10 - .../models/block/growth_chamber_on.json | 10 - .../models/block/growth_chamber_powered.json | 10 - .../block/hydroelectric_generator_off.json | 10 - .../block/hydroelectric_generator_on.json | 10 - .../models/block/led_bar_off_densuw.json | 7 - .../models/block/led_bar_off_desuw.json | 7 - .../models/block/led_bar_off_dnu.json | 7 - .../models/block/led_bar_off_ensw.json | 7 - .../models/block/led_bar_off_n.json | 7 - .../models/block/led_bar_off_ns.json | 7 - .../models/block/led_bar_off_nsuw.json | 7 - .../models/block/led_bar_off_nsw.json | 7 - .../models/block/led_bar_off_nuw.json | 7 - .../models/block/led_bar_off_nw.json | 7 - .../models/block/led_bar_on_densuw.json | 7 - .../models/block/led_bar_on_desuw.json | 7 - .../models/block/led_bar_on_dnu.json | 7 - .../models/block/led_bar_on_ensw.json | 7 - .../models/block/led_bar_on_n.json | 7 - .../models/block/led_bar_on_ns.json | 7 - .../models/block/led_bar_on_nsuw.json | 7 - .../models/block/led_bar_on_nsw.json | 7 - .../models/block/led_bar_on_nuw.json | 7 - .../models/block/led_bar_on_nw.json | 7 - .../models/block/plastic_refinery_off.json | 10 - .../models/block/plastic_refinery_on.json | 10 - .../block/plastic_refinery_powered.json | 10 - .../block/steam_powered_generator_off.json | 10 - .../block/steam_powered_generator_on.json | 10 - .../models/item/alkaline_battery.json | 6 - .../models/item/blank_circuit_board.json | 6 - .../models/item/control_circuit.json | 6 - .../models/item/electric_battery_array.json | 4 - .../models/item/electric_conduit.json | 4 - .../models/item/electric_crusher.json | 4 - .../models/item/electric_drill.json | 4 - .../models/item/electric_fabricator.json | 4 - .../models/item/electric_furnace.json | 4 - .../models/item/electric_oven.json | 4 - .../models/item/electric_pcb_printer.json | 4 - .../models/item/electric_pump.json | 4 - .../models/item/electric_still.json | 4 - .../models/item/electric_switch.json | 3 - .../models/item/electric_track.json | 4 - .../models/item/generic_item.json | 6 - .../models/item/geothermal_generator.json | 4 - .../models/item/growth_chamber.json | 4 - .../item/growth_chamber_controller.json | 4 - .../models/item/hydroelectric_generator.json | 4 - .../models/item/integrated_circuit.json | 6 - .../models/item/lead_acid_battery.json | 6 - .../models/item/led_bar.json | 4 - .../models/item/li_ingot.json | 6 - .../models/item/li_nugget.json | 6 - .../electricadvantage/models/item/li_ore.json | 3 - .../models/item/li_powder.json | 6 - .../models/item/lithium_battery.json | 6 - .../models/item/nickel_hydride_battery.json | 6 - .../models/item/petrolplastic_ingot.json | 6 - .../models/item/photovoltaic_generator.json | 4 - .../models/item/plastic_refinery.json | 4 - .../electricadvantage/models/item/psu.json | 6 - .../models/item/pump_pipe_electric.json | 4 - .../models/item/silicon_ingot.json | 6 - .../models/item/silicon_mix.json | 6 - .../electricadvantage/models/item/solder.json | 6 - .../models/item/solder_mix.json | 6 - .../models/item/steam_powered_generator.json | 4 - .../models/item/sulfur_ore.json | 3 - .../models/item/sulfur_powder.json | 6 - .../recipes/alkaline_battery.json | 4 +- .../blank_circuit_board_ingot_normal.json | 4 +- .../recipes/blank_circuit_board_plate.json | 4 +- .../advancements/recipes/control_circuit.json | 6 +- .../recipes/electric_battery_array.json | 4 +- .../electric_conduit_plastic_ingot.json | 4 +- .../recipes/electric_conduit_plastic_rod.json | 4 +- .../electric_conduit_rubber_ingot.json | 4 +- .../recipes/electric_conduit_rubber_rod.json | 4 +- .../recipes/electric_crusher.json | 4 +- .../advancements/recipes/electric_drill.json | 4 +- .../recipes/electric_fabricator.json | 4 +- .../recipes/electric_furnace.json | 4 +- .../advancements/recipes/electric_oven.json | 4 +- .../advancements/recipes/electric_pump.json | 4 +- .../advancements/recipes/electric_still.json | 4 +- .../advancements/recipes/electric_switch.json | 4 +- .../advancements/recipes/electric_track.json | 8 +- .../advancements/recipes/growth_chamber.json | 4 +- .../recipes/growth_chamber_controller.json | 4 +- .../recipes/hydroelectric_generator.json | 4 +- .../integrated_circuit_copper_normal.json | 4 +- .../integrated_circuit_copper_tech.json | 4 +- .../integrated_circuit_gold_normal.json | 4 +- .../recipes/integrated_circuit_gold_tech.json | 4 +- .../integrated_circuit_tin_normal.json | 4 +- .../recipes/integrated_circuit_tin_tech.json | 4 +- .../recipes/laser_turret_diamond_emerald.json | 4 +- .../recipes/laser_turret_emerald_diamond.json | 4 +- .../lead_acid_battery_dust_sulfur.json | 4 +- .../recipes/lead_acid_battery_sulfur.json | 4 +- .../advancements/recipes/led_bar.json | 4 +- .../advancements/recipes/lithium_battery.json | 4 +- .../recipes/lithium_ingot_from_nuggets.json | 4 +- .../recipes/lithium_ingot_from_ore.json | 6 +- .../recipes/lithium_ingot_from_powder.json | 6 +- .../advancements/recipes/lithium_nuggets.json | 4 +- .../recipes/nickel_hydride_battery.json | 4 +- .../recipes/photovoltaic_generator.json | 4 +- .../recipes/plastic_refinery.json | 4 +- .../power_supply_unit_iron_normal.json | 4 +- ...r_supply_unit_plate_steel_apocalyptic.json | 4 +- .../power_supply_unit_plate_steel_tech.json | 4 +- .../power_supply_unit_steel_normal.json | 4 +- .../advancements/recipes/silicon_blend.json | 4 +- .../recipes/silicon_ingot_from_blend.json | 6 +- .../recipes/solder_blend_tin_lead.json | 4 +- .../recipes/solder_blend_tin_silver.json | 4 +- .../recipes/solder_from_blend.json | 6 +- .../recipes/steam_powered_generator.json | 4 +- .../blocks/electric_battery_array.json} | 2 +- .../loot_tables/blocks/electric_conduit.json | 19 ++ .../loot_tables/blocks/electric_crusher.json | 19 ++ .../loot_tables/blocks/electric_drill.json | 19 ++ .../blocks/electric_fabricator.json} | 2 +- .../loot_tables/blocks/electric_furnace.json | 19 ++ .../loot_tables/blocks/electric_oven.json | 2 +- .../loot_tables/blocks/electric_pump.json | 2 +- .../loot_tables/blocks/electric_still.json | 19 ++ .../loot_tables/blocks/electric_switch.json | 19 ++ .../loot_tables/blocks/electric_track.json | 19 ++ .../loot_tables/blocks/growth_chamber.json | 19 ++ .../blocks/growth_chamber_controller.json} | 2 +- .../blocks/hydroelectric_generator.json} | 2 +- .../loot_tables/blocks/laser_turret.json | 2 +- .../loot_tables/blocks/laser_turret_evil.json | 19 ++ .../loot_tables/blocks/led_bar.json | 2 +- .../blocks/photovoltaic_generator.json} | 2 +- .../loot_tables/blocks/plastic_refinery.json | 19 ++ .../blocks/steam_powered_generator.json} | 2 +- .../loot_tables/chests/advantage_parts.json | 20 +- .../recipes/alkaline_battery.json | 10 +- .../blank_circuit_board_ingot_normal.json | 10 +- .../recipes/blank_circuit_board_plate.json | 8 +- .../recipes/control_circuit.json | 10 +- .../recipes/crushing_control_circuit.json | 20 ++ .../recipes/crushing_electric_furnace.json | 6 +- .../recipes/crushing_lithium_ingot.json | 4 +- .../recipes/crushing_lithium_ore.json | 4 +- .../crushing_photovoltaic_generator.json | 6 +- .../recipes/crushing_psu.json | 6 +- .../crushing_steam_powered_generator.json | 6 +- .../recipes/crushing_sulfur_ore.json | 4 +- .../recipes/electric_battery_array.json | 10 +- .../electric_conduit_plastic_ingot.json | 8 +- .../recipes/electric_conduit_plastic_rod.json | 8 +- .../electric_conduit_rubber_ingot.json | 8 +- .../recipes/electric_conduit_rubber_rod.json | 8 +- .../recipes/electric_crusher.json | 14 +- .../recipes/electric_drill.json | 12 +- .../recipes/electric_fabricator.json | 10 +- .../recipes/electric_furnace.json | 6 +- .../recipes/electric_oven.json | 12 +- .../recipes/electric_pump.json | 10 +- .../recipes/electric_still.json | 10 +- .../recipes/electric_switch.json | 8 +- .../baseelectric/recipes/electric_track.json | 15 + .../recipes/growth_chamber.json | 12 +- .../recipes/growth_chamber_controller.json | 12 +- .../recipes/hydroelectric_generator.json | 12 +- .../integrated_circuit_copper_normal.json | 10 +- .../integrated_circuit_copper_tech.json | 14 +- .../integrated_circuit_gold_normal.json | 10 +- .../recipes/integrated_circuit_gold_tech.json | 14 +- .../integrated_circuit_tin_normal.json | 10 +- .../recipes/integrated_circuit_tin_tech.json | 14 +- .../recipes/laser_turret_diamond_emerald.json | 14 +- .../recipes/laser_turret_emerald_diamond.json | 14 +- .../lead_acid_battery_dust_sulfur.json | 10 +- .../recipes/lead_acid_battery_sulfur.json | 10 +- .../recipes/led_bar.json | 10 +- .../recipes/lithium_battery.json | 12 +- .../recipes/lithium_ingot_from_nuggets.json | 6 +- .../recipes/lithium_ingot_from_ore.json | 6 +- .../recipes/lithium_ingot_from_powder.json | 11 + .../recipes/lithium_nuggets.json | 6 +- .../recipes/nickel_hydride_battery.json | 10 +- .../recipes/photovoltaic_generator.json | 14 +- .../recipes/plastic_refinery.json | 12 +- .../power_supply_unit_iron_normal.json | 12 +- ...r_supply_unit_plate_steel_apocalyptic.json | 12 +- .../power_supply_unit_plate_steel_tech.json | 12 +- .../power_supply_unit_steel_normal.json | 12 +- .../recipes/silicon_blend.json | 8 +- .../recipes/silicon_ingot_from_blend.json | 11 + .../recipes/solder_blend_tin_lead.json | 8 +- .../recipes/solder_blend_tin_silver.json | 8 +- .../recipes/solder_from_blend.json | 6 +- .../recipes/steam_powered_generator.json | 14 +- .../blocks/electric_battery_array.json | 19 -- .../loot_tables/blocks/electric_switch.json | 19 -- .../loot_tables/blocks/electric_track.json | 19 -- .../loot_tables/blocks/growth_chamber.json | 19 -- .../blocks/growth_chamber_controller.json | 19 -- .../blocks/hydroelectric_generator.json | 19 -- .../loot_tables/blocks/laser_turret_evil.json | 19 -- .../blocks/photovoltaic_generator.json | 19 -- .../loot_tables/blocks/plastic_refinery.json | 19 -- .../blocks/steam_powered_generator.json | 19 -- .../recipes/crushing_control_circuit.json | 20 -- .../recipes/electric_track.json | 15 - .../recipes/lithium_ingot_from_powder.json | 11 - .../recipes/silicon_ingot_from_blend.json | 11 - .../data/forge/tags/blocks/ores/lithium.json | 2 +- .../data/forge/tags/blocks/ores/sulfur.json | 2 +- .../data/forge/tags/items/circuit_boards.json | 2 +- .../data/forge/tags/items/dusts/lithium.json | 2 +- .../data/forge/tags/items/dusts/sulfur.json | 2 +- .../data/forge/tags/items/ingots/lithium.json | 2 +- .../data/forge/tags/items/ingots/plastic.json | 2 +- .../data/forge/tags/items/ingots/silicon.json | 2 +- .../data/forge/tags/items/microchips.json | 2 +- .../forge/tags/items/nuggets/lithium.json | 2 +- .../data/forge/tags/items/ores/lithium.json | 2 +- .../data/forge/tags/items/ores/sulfur.json | 2 +- .../data/forge/tags/items/plastic.json | 2 +- .../forge/tags/items/power_supply_units.json | 2 +- .../data/forge/tags/items/solder.json | 2 +- .../data/forge/tags/items/sulfur.json | 2 +- .../data/forge/tags/items/wires.json | 2 +- .../tags/blocks/mineable/pickaxe.json | 2 +- .../tags/blocks/needs_stone_tool.json | 2 +- src/main/resources/pack.mcmeta | 2 +- .../blocks/NativeBlockContractTest.java | 10 +- .../blocks/OreHarvestContractTest.java | 6 +- ...tricOperationalHydroturbineAnchorTest.java | 6 +- .../entities/HydroturbinePersistenceTest.java | 10 +- .../graphics/RendererBufferContractTest.java | 12 +- .../gui/GUIHelperTest.java | 2 +- .../init/OreSpawnWorldGenTest.java | 6 +- .../init/VillagesTest.java | 2 +- .../ElectricDrillPersistenceTest.java | 12 +- .../ElectricOperationalNativeDefectsTest.java | 6 +- .../ElectricOperationalPumpPickupTest.java | 4 +- .../ElectricOperationalRedstoneCacheTest.java | 2 +- ...ElectricOperationalSoundBroadcastTest.java | 8 +- .../ElectricOperationalStillCapacityTest.java | 8 +- .../GrowthChamberPersistenceTest.java | 6 +- .../machines/LaserTurretGeometryTest.java | 2 +- .../machines/Native117ConstructionTest.java | 8 +- .../ElectricLegacyMigrationsTest.java | 35 +++ .../recipe/RecipeConditionsTest.java | 6 +- .../BaseMetalsRawRecipeContractTest.java | 2 +- .../resources/BlockLootResourceTest.java | 8 +- .../resources/BuildWorkflowContractTest.java | 38 +-- .../resources/ClientResourceContractTest.java | 8 +- .../RecipeRegistrationThreadTest.java | 6 +- .../resources/RecipeResourceTest.java | 6 +- .../resources/RecipeUnlockContractTest.java | 4 +- .../resources/ShaderResourceContractTest.java | 6 +- .../ElectricLegacyMigrationsTest.java | 29 -- tools/verification/AuditedJUnit.java | 4 +- .../ForgeNativeTestBootstrap.java | 2 +- tools/verification/Verify-ElectricEcj.ps1 | 25 +- tools/verify-native-port.js | 143 +++++++--- 700 files changed, 4314 insertions(+), 4175 deletions(-) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/Data.java (79%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/ElectricAdvantage.java (76%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/ElectricConduitBlock.java (71%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/ElectricScaffoldBlock.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/Ore.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/PumpPipeBlock.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/common/IRechargeableItem.java (92%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/compat/BaseMetalsCompat.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/config/ElectricAdvantageConfig.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/entities/HydroturbineEntity.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/BufferedQuads.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/ClientRegistration.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/ElectricRenderTypes.java (82%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/HydroturbineRenderer.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/LaserDrillRenderer.java (95%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/LaserTurretRenderer.java (96%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/ArcFurnaceGUI.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/BatteryArrayGUI.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/ElectricDrillGUI.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/ElectricPumpGUI.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/ElectricStillGUI.java (90%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/FabricatorGUI.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/GUIHelper.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/GenericMachineGUI.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/GrowthChamberControllerGUI.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/GrowthChamberGUI.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/OvenGUI.java (90%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/PlasticRefineryGUI.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/PowerGeneratorGUI.java (87%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/RockCrusherGUI.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Blocks.java (75%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Enchantments.java (61%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Entities.java (78%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/GUI.java (90%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Items.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/OreSpawnWorldGen.java (96%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Power.java (95%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Recipes.java (88%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/TreasureChests.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/Villages.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/items/BatteryItem.java (95%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricBatteryArrayBlock.java (90%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricBatteryArrayTileEntity.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricCrusherBlock.java (90%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricCrusherTileEntity.java (92%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricDrillBlock.java (96%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricDrillTileEntity.java (96%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricFabricatorBlock.java (86%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricFabricatorTileEntity.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricFurnaceBlock.java (87%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricFurnaceTileEntity.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricGeneratorBlock.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricGeneratorTileEntity.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricMachineBlock.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricMachineTileEntity.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOvenBlock.java (87%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOvenTileEntity.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricPumpBlock.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricPumpTileEntity.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricStillBlock.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricStillTileEntity.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/GrowthChamberBlock.java (81%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/GrowthChamberControllerBlock.java (92%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/GrowthChamberControllerTileEntity.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/GrowthChamberTileEntity.java (94%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/HydroelectricGeneratorBlock.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/HydroelectricGeneratorTileEntity.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/LEDBlock.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/LEDTileEntity.java (89%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/LaserTurretBlock.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/LaserTurretTileEntity.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/PhotovoltaicGeneratorBlock.java (93%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/PhotovoltaicGeneratorTileEntity.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/PlasticRefineryBlock.java (85%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/PlasticRefineryTileEntity.java (95%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/SteamPoweredElectricGeneratorBlock.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/SteamPoweredElectricGeneratorTileEntity.java (92%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/migration/ElectricLegacyMigrations.java (66%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/recipe/RecipeConditions.java (91%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/LegacyFluidHandler.java (82%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/crafting/ItemMatcher.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/crafting/ItemRecord.java (92%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/crafting/RecipeDeconstructor.java (97%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/crafting/SerializedInventory.java (98%) rename src/main/java/zone/moddev/mc/{electricadvantage => baseelectric}/util/farming/VirtualCrop.java (98%) create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_battery_array.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_conduit.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_crusher.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_drill.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_fabricator.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_furnace.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_oven.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_pcb_printer.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_pump.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_still.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_switch.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/electric_track.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/geothermal_generator.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/growth_chamber.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/growth_chamber_controller.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/hydroelectric_generator.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/laser_turret.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/laser_turret_evil.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/led_bar.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/li_ore.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/photovoltaic_generator.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/plastic_refinery.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/pump_pipe_electric.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/steam_powered_generator.json create mode 100644 src/main/resources/assets/baseelectric/blockstates/sulfur_ore.json create mode 100644 src/main/resources/assets/baseelectric/lang/de_de.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_au.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_ca.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_en.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_gb.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_pt.json create mode 100644 src/main/resources/assets/baseelectric/lang/en_us.json create mode 100644 src/main/resources/assets/baseelectric/lang/es_es.json create mode 100644 src/main/resources/assets/baseelectric/lang/es_mx.json create mode 100644 src/main/resources/assets/baseelectric/lang/it_it.json create mode 100644 src/main/resources/assets/baseelectric/lang/ja_jp.json create mode 100644 src/main/resources/assets/baseelectric/lang/ko_ko.json create mode 100644 src/main/resources/assets/baseelectric/lang/pt_br.json create mode 100644 src/main/resources/assets/baseelectric/lang/zh_cn.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_battery_array.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_0.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_densuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_desuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_dnu.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_ensw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_n.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_ns.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_nsuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_nsw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_nuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_conduit_nw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_crusher_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_crusher_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_crusher_powered.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_drill_base.json (93%) create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_drill_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_drill_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_fabricator_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_fabricator_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_fabricator_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_furnace_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_furnace_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_furnace_powered.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_machine_base.json (90%) create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_oven_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_oven_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_oven_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pump_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pump_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_pump_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_still_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_still_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_still_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_switch_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/electric_switch_on.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_0.json (90%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_densuw.json (95%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_desuw.json (95%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_dnu.json (94%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_ensw.json (94%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_n.json (93%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_ns.json (94%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_nsuw.json (94%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_nsw.json (93%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_nuw.json (93%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/electric_track_nw.json (92%) create mode 100644 src/main/resources/assets/baseelectric/models/block/geothermal_generator.json create mode 100644 src/main/resources/assets/baseelectric/models/block/growth_chamber_controller.json create mode 100644 src/main/resources/assets/baseelectric/models/block/growth_chamber_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/growth_chamber_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/growth_chamber_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_on.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/laser_turret.json (77%) create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_densuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_desuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_dnu.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_ensw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_n.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_ns.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_nsuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_nsw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_nuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_off_nw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_densuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_desuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_dnu.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_ensw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_n.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_ns.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_nsuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_nsw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_nuw.json create mode 100644 src/main/resources/assets/baseelectric/models/block/led_bar_on_nw.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/li_ore.json (50%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/photovoltaic_generator.json (50%) create mode 100644 src/main/resources/assets/baseelectric/models/block/plastic_refinery_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/plastic_refinery_on.json create mode 100644 src/main/resources/assets/baseelectric/models/block/plastic_refinery_powered.json create mode 100644 src/main/resources/assets/baseelectric/models/block/steam_powered_generator_off.json create mode 100644 src/main/resources/assets/baseelectric/models/block/steam_powered_generator_on.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/block/sulfur_ore.json (52%) create mode 100644 src/main/resources/assets/baseelectric/models/item/alkaline_battery.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/item/battery_base.json (91%) create mode 100644 src/main/resources/assets/baseelectric/models/item/blank_circuit_board.json create mode 100644 src/main/resources/assets/baseelectric/models/item/control_circuit.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_battery_array.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_conduit.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_crusher.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_drill.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_fabricator.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_furnace.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_oven.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_pcb_printer.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_pump.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_still.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_switch.json create mode 100644 src/main/resources/assets/baseelectric/models/item/electric_track.json create mode 100644 src/main/resources/assets/baseelectric/models/item/generic_item.json create mode 100644 src/main/resources/assets/baseelectric/models/item/geothermal_generator.json create mode 100644 src/main/resources/assets/baseelectric/models/item/growth_chamber.json create mode 100644 src/main/resources/assets/baseelectric/models/item/growth_chamber_controller.json create mode 100644 src/main/resources/assets/baseelectric/models/item/hydroelectric_generator.json create mode 100644 src/main/resources/assets/baseelectric/models/item/integrated_circuit.json rename src/main/resources/assets/{electricadvantage => baseelectric}/models/item/laser_turret.json (81%) rename src/main/resources/assets/{electricadvantage => baseelectric}/models/item/laser_turret_evil.json (81%) create mode 100644 src/main/resources/assets/baseelectric/models/item/lead_acid_battery.json create mode 100644 src/main/resources/assets/baseelectric/models/item/led_bar.json create mode 100644 src/main/resources/assets/baseelectric/models/item/li_ingot.json create mode 100644 src/main/resources/assets/baseelectric/models/item/li_nugget.json create mode 100644 src/main/resources/assets/baseelectric/models/item/li_ore.json create mode 100644 src/main/resources/assets/baseelectric/models/item/li_powder.json create mode 100644 src/main/resources/assets/baseelectric/models/item/lithium_battery.json create mode 100644 src/main/resources/assets/baseelectric/models/item/nickel_hydride_battery.json create mode 100644 src/main/resources/assets/baseelectric/models/item/petrolplastic_ingot.json create mode 100644 src/main/resources/assets/baseelectric/models/item/photovoltaic_generator.json create mode 100644 src/main/resources/assets/baseelectric/models/item/plastic_refinery.json create mode 100644 src/main/resources/assets/baseelectric/models/item/psu.json create mode 100644 src/main/resources/assets/baseelectric/models/item/pump_pipe_electric.json create mode 100644 src/main/resources/assets/baseelectric/models/item/silicon_ingot.json create mode 100644 src/main/resources/assets/baseelectric/models/item/silicon_mix.json create mode 100644 src/main/resources/assets/baseelectric/models/item/solder.json create mode 100644 src/main/resources/assets/baseelectric/models/item/solder_mix.json create mode 100644 src/main/resources/assets/baseelectric/models/item/steam_powered_generator.json create mode 100644 src/main/resources/assets/baseelectric/models/item/sulfur_ore.json create mode 100644 src/main/resources/assets/baseelectric/models/item/sulfur_powder.json rename src/main/resources/assets/{electricadvantage => baseelectric}/shaders/core/unshaded.json (95%) rename src/main/resources/assets/{electricadvantage => baseelectric}/shaders/core/unshaded.vsh (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_battery_array.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_conduit.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_crusher_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_crusher_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_crusher_on.png.mcmeta (88%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_crusher_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_drill_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_drill_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_drill_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_fabricator_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_fabricator_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_fabricator_on.png.mcmeta (91%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_fabricator_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_furnace_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_furnace_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_furnace_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_oven_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_oven_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_oven_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_pcb_printer_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_pcb_printer_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_pcb_printer_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_pump_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_pump_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_still_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_still_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_still_on.png.mcmeta (88%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_still_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_switch_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/electric_switch_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/growth_chamber_controller.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/growth_chamber_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/growth_chamber_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/growth_chamber_powered.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/hydroelectric_generator_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/hydroelectric_generator_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/hydroelectric_generator_on.png.mcmeta (88%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/laser_drill_optic.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/laser_drill_optic_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/laser_turret_base.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/led_bar_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/led_bar_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/lithium_ore.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/machine_back.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/machine_side.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/machine_top.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/photovoltaic_cell.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/plastic_refinery_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/plastic_refinery_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/steam_powered_generator_off.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/steam_powered_generator_on.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/steam_powered_generator_on.png.mcmeta (88%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/blocks/sulfur_ore.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/entity/hydroturbine.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/entity/laser_turret.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/entity/windturbine.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_battery_array_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_crusher_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_drill_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_fabricator_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_furnace_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_generator_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_machine_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_oven_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_pump_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/electric_still_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/geothermal_generator_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/growth_chamber_controller_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/growth_chamber_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/pcb_printer_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/gui/container/plastic_refinery_gui.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/alkaline_battery.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/blank_circuit_board.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/control_circuit.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/integrated_circuit.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/lead_acid_battery.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/li_ingot.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/li_nugget.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/li_powder.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/lithium_battery.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/nickel_hydride_battery.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/petrolplastic_ingot.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/psu.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/silicon_ingot.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/silicon_mix.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/solder.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/solder_mix.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/items/sulfur_powder.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/materials/laser_beam.png (100%) rename src/main/resources/assets/{electricadvantage => baseelectric}/textures/materials/machine_case.png (100%) delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_battery_array.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_conduit.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_crusher.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_drill.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_fabricator.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_furnace.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_oven.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_pcb_printer.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_pump.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_still.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_switch.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/electric_track.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/geothermal_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/growth_chamber.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/growth_chamber_controller.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/hydroelectric_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/laser_turret.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/laser_turret_evil.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/led_bar.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/li_ore.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/photovoltaic_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/plastic_refinery.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/pump_pipe_electric.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/steam_powered_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/blockstates/sulfur_ore.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/de_de.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_au.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_ca.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_en.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_gb.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_pt.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/en_us.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/es_es.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/es_mx.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/it_it.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/ja_jp.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/ko_ko.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/pt_br.json delete mode 100644 src/main/resources/assets/electricadvantage/lang/zh_cn.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_battery_array.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_0.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_densuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_desuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_dnu.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_ensw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_n.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_ns.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_nuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_conduit_nw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_crusher_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_crusher_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_crusher_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_drill_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_drill_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_fabricator_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_fabricator_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_fabricator_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_furnace_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_furnace_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_furnace_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_oven_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_oven_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_oven_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pump_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pump_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_pump_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_still_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_still_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_still_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_switch_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/electric_switch_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/geothermal_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/growth_chamber_controller.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/growth_chamber_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/growth_chamber_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/growth_chamber_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_densuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_desuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_dnu.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_ensw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_n.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_ns.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_nuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_off_nw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_densuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_desuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_dnu.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_ensw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_n.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_ns.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_nuw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/led_bar_on_nw.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/plastic_refinery_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/plastic_refinery_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/plastic_refinery_powered.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_off.json delete mode 100644 src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_on.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/alkaline_battery.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/blank_circuit_board.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/control_circuit.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_battery_array.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_conduit.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_crusher.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_drill.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_fabricator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_furnace.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_oven.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_pcb_printer.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_pump.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_still.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_switch.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/electric_track.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/generic_item.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/geothermal_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/growth_chamber.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/growth_chamber_controller.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/hydroelectric_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/integrated_circuit.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/lead_acid_battery.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/led_bar.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/li_ingot.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/li_nugget.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/li_ore.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/li_powder.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/lithium_battery.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/nickel_hydride_battery.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/petrolplastic_ingot.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/photovoltaic_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/plastic_refinery.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/psu.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/pump_pipe_electric.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/silicon_ingot.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/silicon_mix.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/solder.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/solder_mix.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/steam_powered_generator.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/sulfur_ore.json delete mode 100644 src/main/resources/assets/electricadvantage/models/item/sulfur_powder.json rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/alkaline_battery.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/blank_circuit_board_ingot_normal.json (84%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/blank_circuit_board_plate.json (86%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/control_circuit.json (86%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_battery_array.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_conduit_plastic_ingot.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_conduit_plastic_rod.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_conduit_rubber_ingot.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_conduit_rubber_rod.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_crusher.json (93%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_drill.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_fabricator.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_furnace.json (88%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_oven.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_pump.json (94%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_still.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_switch.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/electric_track.json (79%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/growth_chamber.json (93%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/growth_chamber_controller.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/hydroelectric_generator.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_copper_normal.json (84%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_copper_tech.json (90%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_gold_normal.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_gold_tech.json (90%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_tin_normal.json (85%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/integrated_circuit_tin_tech.json (90%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/laser_turret_diamond_emerald.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/laser_turret_emerald_diamond.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lead_acid_battery_dust_sulfur.json (90%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lead_acid_battery_sulfur.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/led_bar.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lithium_battery.json (92%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lithium_ingot_from_nuggets.json (80%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lithium_ingot_from_ore.json (76%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lithium_ingot_from_powder.json (75%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/lithium_nuggets.json (83%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/nickel_hydride_battery.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/photovoltaic_generator.json (91%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/plastic_refinery.json (93%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/power_supply_unit_iron_normal.json (88%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json (86%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/power_supply_unit_plate_steel_tech.json (87%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/power_supply_unit_steel_normal.json (88%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/silicon_blend.json (88%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/silicon_ingot_from_blend.json (75%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/solder_blend_tin_lead.json (86%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/solder_blend_tin_silver.json (86%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/solder_from_blend.json (77%) rename src/main/resources/data/{electricadvantage => baseelectric}/advancements/recipes/steam_powered_generator.json (92%) rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_furnace.json => baseelectric/loot_tables/blocks/electric_battery_array.json} (82%) create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_conduit.json create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_crusher.json create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_drill.json rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_still.json => baseelectric/loot_tables/blocks/electric_fabricator.json} (83%) create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_furnace.json rename src/main/resources/data/{electricadvantage => baseelectric}/loot_tables/blocks/electric_oven.json (83%) rename src/main/resources/data/{electricadvantage => baseelectric}/loot_tables/blocks/electric_pump.json (83%) create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_still.json create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_switch.json create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/electric_track.json create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber.json rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_fabricator.json => baseelectric/loot_tables/blocks/growth_chamber_controller.json} (81%) rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_crusher.json => baseelectric/loot_tables/blocks/hydroelectric_generator.json} (82%) rename src/main/resources/data/{electricadvantage => baseelectric}/loot_tables/blocks/laser_turret.json (84%) create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret_evil.json rename src/main/resources/data/{electricadvantage => baseelectric}/loot_tables/blocks/led_bar.json (85%) rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_conduit.json => baseelectric/loot_tables/blocks/photovoltaic_generator.json} (82%) create mode 100644 src/main/resources/data/baseelectric/loot_tables/blocks/plastic_refinery.json rename src/main/resources/data/{electricadvantage/loot_tables/blocks/electric_drill.json => baseelectric/loot_tables/blocks/steam_powered_generator.json} (82%) rename src/main/resources/data/{electricadvantage => baseelectric}/loot_tables/chests/advantage_parts.json (83%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/alkaline_battery.json (67%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/blank_circuit_board_ingot_normal.json (58%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/blank_circuit_board_plate.json (60%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/control_circuit.json (54%) create mode 100644 src/main/resources/data/baseelectric/recipes/crushing_control_circuit.json rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_electric_furnace.json (63%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_lithium_ingot.json (75%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_lithium_ore.json (75%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_photovoltaic_generator.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_psu.json (63%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_steam_powered_generator.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/crushing_sulfur_ore.json (74%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_battery_array.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_conduit_plastic_ingot.json (65%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_conduit_plastic_rod.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_conduit_rubber_ingot.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_conduit_rubber_rod.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_crusher.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_drill.json (67%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_fabricator.json (67%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_furnace.json (68%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_oven.json (68%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_pump.json (70%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_still.json (70%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/electric_switch.json (66%) create mode 100644 src/main/resources/data/baseelectric/recipes/electric_track.json rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/growth_chamber.json (68%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/growth_chamber_controller.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/hydroelectric_generator.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_copper_normal.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_copper_tech.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_gold_normal.json (61%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_gold_tech.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_tin_normal.json (61%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/integrated_circuit_tin_tech.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/laser_turret_diamond_emerald.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/laser_turret_emerald_diamond.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lead_acid_battery_dust_sulfur.json (67%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lead_acid_battery_sulfur.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/led_bar.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lithium_battery.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lithium_ingot_from_nuggets.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lithium_ingot_from_ore.json (50%) create mode 100644 src/main/resources/data/baseelectric/recipes/lithium_ingot_from_powder.json rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/lithium_nuggets.json (62%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/nickel_hydride_battery.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/photovoltaic_generator.json (63%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/plastic_refinery.json (67%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/power_supply_unit_iron_normal.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/power_supply_unit_plate_steel_apocalyptic.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/power_supply_unit_plate_steel_tech.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/power_supply_unit_steel_normal.json (64%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/silicon_blend.json (60%) create mode 100644 src/main/resources/data/baseelectric/recipes/silicon_ingot_from_blend.json rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/solder_blend_tin_lead.json (65%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/solder_blend_tin_silver.json (66%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/solder_from_blend.json (50%) rename src/main/resources/data/{electricadvantage => baseelectric}/recipes/steam_powered_generator.json (65%) delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/electric_battery_array.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/electric_switch.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/electric_track.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber_controller.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/hydroelectric_generator.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret_evil.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/photovoltaic_generator.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/plastic_refinery.json delete mode 100644 src/main/resources/data/electricadvantage/loot_tables/blocks/steam_powered_generator.json delete mode 100644 src/main/resources/data/electricadvantage/recipes/crushing_control_circuit.json delete mode 100644 src/main/resources/data/electricadvantage/recipes/electric_track.json delete mode 100644 src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_powder.json delete mode 100644 src/main/resources/data/electricadvantage/recipes/silicon_ingot_from_blend.json rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/NativeBlockContractTest.java (94%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/blocks/OreHarvestContractTest.java (96%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/entities/ElectricOperationalHydroturbineAnchorTest.java (95%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/entities/HydroturbinePersistenceTest.java (89%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/graphics/RendererBufferContractTest.java (94%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/gui/GUIHelperTest.java (95%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/OreSpawnWorldGenTest.java (81%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/init/VillagesTest.java (97%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricDrillPersistenceTest.java (85%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOperationalNativeDefectsTest.java (97%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOperationalPumpPickupTest.java (98%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOperationalRedstoneCacheTest.java (99%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOperationalSoundBroadcastTest.java (94%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/ElectricOperationalStillCapacityTest.java (89%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/GrowthChamberPersistenceTest.java (85%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/LaserTurretGeometryTest.java (96%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/machines/Native117ConstructionTest.java (92%) create mode 100644 src/test/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrationsTest.java rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/recipe/RecipeConditionsTest.java (92%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/BaseMetalsRawRecipeContractTest.java (96%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/BlockLootResourceTest.java (87%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/BuildWorkflowContractTest.java (63%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/ClientResourceContractTest.java (92%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/RecipeRegistrationThreadTest.java (91%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/RecipeResourceTest.java (91%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/RecipeUnlockContractTest.java (98%) rename src/test/java/zone/moddev/mc/{electricadvantage => baseelectric}/resources/ShaderResourceContractTest.java (90%) delete mode 100644 src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 13e949a..9cb14e1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -name: Electric Advantage 1.17 CI +name: baseElectric 1.17 CI on: push: @@ -10,7 +10,7 @@ permissions: contents: read concurrency: - group: electricadvantage-1.17-${{ github.workflow }}-${{ github.ref }} + group: baseelectric-1.17-${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: @@ -19,12 +19,12 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 105 steps: - - name: Check out ElectricAdvantage + - name: Check out baseElectric uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - name: Use canonical LF dependency inputs # Apply before every dependency checkout, including OreSpawn. run: git config --global core.autocrlf false - - name: Require final PowerAdvantage pin + - name: Require coordinated 1.17.1 dependency pins id: pins shell: bash run: | @@ -32,11 +32,16 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "5b9abe578b053d2ef59b1962cf9e04f6880c91b9" || "$power_sha" != "799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8" ]]; then - echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 + bm_ref="$(sed -n 's/^basemetals_source_commit=//p' gradle.properties | tr -d '\r')" + bm_sha="$(sed -n 's/^basemetals_deobf_sha256=//p' gradle.properties | tr -d '\r')" + bootstrap_sha="$(sed -n 's/^poweradvantage_unit_bootstrap_sha256=//p' gradle.properties | tr -d '\r')" + if [[ "$pin_state" != "LOCAL_CHECKPOINT" || ! "$power_ref" =~ ^[a-f0-9]{40}$ || ! "$bm_ref" =~ ^[a-f0-9]{40}$ || + ! "$power_sha" =~ ^[A-F0-9]{64}$ || ! "$bm_sha" =~ ^[A-F0-9]{64}$ || ! "$bootstrap_sha" =~ ^[A-F0-9]{64}$ ]]; then + echo "The coordinated basePower and Base Metals 1.17.1 pins are pending" >&2 exit 1 fi echo "power_ref=$power_ref" >> "$GITHUB_OUTPUT" + echo "basemetals_ref=$bm_ref" >> "$GITHUB_OUTPUT" - name: Check out pinned OreSpawn uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: @@ -47,12 +52,13 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/BaseMetals - ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d + # Local-only startup fix; hosted checkout must wait for authorized source availability. + ref: ${{ steps.pins.outputs.basemetals_ref }} path: .ci-dependencies/BaseMetals - - name: Check out PowerAdvantage 1.17.1 + - name: Check out basePower 1.17.1 uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: - repository: MinecraftModDevelopmentMods/PowerAdvantage + repository: MinecraftModDevelopmentMods/basePower # Local-only Power source; publish upstream before hosted builds. ref: ${{ steps.pins.outputs.power_ref }} path: .ci-dependencies/PowerAdvantage @@ -93,47 +99,47 @@ jobs: orespawn="$GITHUB_WORKSPACE/.ci-dependencies/OreSpawn" basemetals="$GITHUB_WORKSPACE/.ci-dependencies/BaseMetals" power="$GITHUB_WORKSPACE/.ci-dependencies/PowerAdvantage" + test "$(git -C "$power" rev-parse HEAD)" = "${{ steps.pins.outputs.power_ref }}" + test "$(git -C "$basemetals" rev-parse HEAD)" = "${{ steps.pins.outputs.basemetals_ref }}" chmod +x "$orespawn/gradlew" "$basemetals/gradlew" "$power/gradlew" (cd "$orespawn" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) (cd "$basemetals" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.117011-deobf.jar" - bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.0.117011-deobf.jar" + bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.1.117011-deobf.jar" (cd "$power" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar verifyReleaseDependencies \ -PbaseMetalsDeobfJar="$bmjar" -PoreSpawnDeobfJar="$osjar" \ --no-daemon --stacktrace) - powerjar="$power/build/libs-dev/PowerAdvantage-2.4.8.117011-deobf.jar" + powerjar="$power/build/libs-dev/basePower-2.4.9.117011-deobf.jar" test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" echo "power=$powerjar" >> "$GITHUB_OUTPUT" - echo "power_ref=$(git -C "$power" rev-parse HEAD)" >> "$GITHUB_OUTPUT" - name: Build and audit release artifacts run: >- ./gradlew $MMD_GRADLE_TOOLCHAINS clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath -PpowerAdvantageDeobfJar=${{ steps.dependencies.outputs.power }} -PpowerAdvantageUnitBootstrapSource=${{ github.workspace }}/.ci-dependencies/PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java - -Ppoweradvantage_source_ref=${{ steps.dependencies.outputs.power_ref }} -PbaseMetalsDeobfJar=${{ steps.dependencies.outputs.basemetals }} -PoreSpawnDeobfJar=${{ steps.dependencies.outputs.orespawn }} --no-daemon --stacktrace - name: Upload audited release candidate uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: ElectricAdvantage-1.17.1-${{ github.sha }} + name: baseElectric-1.17.1-${{ github.sha }} if-no-files-found: error retention-days: 30 path: | - build/libs/ElectricAdvantage-2.2.9.117011.jar - build/libs/ElectricAdvantage-2.2.9.117011-sources.jar - build/libs/ElectricAdvantage-2.2.9.117011-javadoc.jar + build/libs/baseElectric-2.2.10.117011.jar + build/libs/baseElectric-2.2.10.117011-sources.jar + build/libs/baseElectric-2.2.10.117011-javadoc.jar build/release/SHA256SUMS CHANGELOG.txt - name: Upload diagnostics on failure if: failure() uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7 with: - name: ElectricAdvantage-1.17.1-diagnostics-${{ github.sha }} + name: baseElectric-1.17.1-diagnostics-${{ github.sha }} if-no-files-found: ignore retention-days: 14 path: | diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index cdb79dd..24a0fcb 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -19,12 +19,12 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 90 steps: - - name: Check out ElectricAdvantage + - name: Check out baseElectric uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - name: Use canonical LF dependency inputs # Apply before every dependency checkout, including OreSpawn. run: git config --global core.autocrlf false - - name: Require final PowerAdvantage pin + - name: Require coordinated 1.17.1 dependency pins id: pins shell: bash run: | @@ -32,11 +32,16 @@ jobs: power_ref="$(sed -n 's/^poweradvantage_source_ref=//p' gradle.properties | tr -d '\r')" power_sha="$(sed -n 's/^poweradvantage_deobf_sha256=//p' gradle.properties | tr -d '\r')" pin_state="$(sed -n 's/^poweradvantage_pin_state=//p' gradle.properties | tr -d '\r')" - if [[ "$pin_state" == "API_PIN_PROVISIONAL" || "$power_ref" != "5b9abe578b053d2ef59b1962cf9e04f6880c91b9" || "$power_sha" != "799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8" ]]; then - echo "PowerAdvantage 1.17.1 source/deobf pin differs from the audited candidate" >&2 + bm_ref="$(sed -n 's/^basemetals_source_commit=//p' gradle.properties | tr -d '\r')" + bm_sha="$(sed -n 's/^basemetals_deobf_sha256=//p' gradle.properties | tr -d '\r')" + bootstrap_sha="$(sed -n 's/^poweradvantage_unit_bootstrap_sha256=//p' gradle.properties | tr -d '\r')" + if [[ "$pin_state" != "LOCAL_CHECKPOINT" || ! "$power_ref" =~ ^[a-f0-9]{40}$ || ! "$bm_ref" =~ ^[a-f0-9]{40}$ || + ! "$power_sha" =~ ^[A-F0-9]{64}$ || ! "$bm_sha" =~ ^[A-F0-9]{64}$ || ! "$bootstrap_sha" =~ ^[A-F0-9]{64}$ ]]; then + echo "The coordinated basePower and Base Metals 1.17.1 pins are pending" >&2 exit 1 fi echo "power_ref=$power_ref" >> "$GITHUB_OUTPUT" + echo "basemetals_ref=$bm_ref" >> "$GITHUB_OUTPUT" - name: Check out pinned OreSpawn uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: @@ -47,12 +52,13 @@ jobs: uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: repository: MinecraftModDevelopmentMods/BaseMetals - ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d + # Local-only startup fix; hosted checkout must wait for authorized source availability. + ref: ${{ steps.pins.outputs.basemetals_ref }} path: .ci-dependencies/BaseMetals - - name: Check out PowerAdvantage 1.17.1 + - name: Check out basePower 1.17.1 uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 with: - repository: MinecraftModDevelopmentMods/PowerAdvantage + repository: MinecraftModDevelopmentMods/basePower # Local-only Power source; publish upstream before hosted builds. ref: ${{ steps.pins.outputs.power_ref }} path: .ci-dependencies/PowerAdvantage @@ -93,31 +99,31 @@ jobs: orespawn="$GITHUB_WORKSPACE/.ci-dependencies/OreSpawn" basemetals="$GITHUB_WORKSPACE/.ci-dependencies/BaseMetals" power="$GITHUB_WORKSPACE/.ci-dependencies/PowerAdvantage" + test "$(git -C "$power" rev-parse HEAD)" = "${{ steps.pins.outputs.power_ref }}" + test "$(git -C "$basemetals" rev-parse HEAD)" = "${{ steps.pins.outputs.basemetals_ref }}" chmod +x "$orespawn/gradlew" "$basemetals/gradlew" "$power/gradlew" (cd "$orespawn" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) (cd "$basemetals" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar --no-daemon --stacktrace) osjar="$orespawn/build/libs-dev/OreSpawn-4.1.0.117011-deobf.jar" - bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.0.117011-deobf.jar" + bmjar="$basemetals/build/libs-dev/BaseMetals-3.1.1.117011-deobf.jar" (cd "$power" && ./gradlew $MMD_GRADLE_TOOLCHAINS jar verifyReleaseDependencies \ -PbaseMetalsDeobfJar="$bmjar" -PoreSpawnDeobfJar="$osjar" \ --no-daemon --stacktrace) - powerjar="$power/build/libs-dev/PowerAdvantage-2.4.8.117011-deobf.jar" + powerjar="$power/build/libs-dev/basePower-2.4.9.117011-deobf.jar" test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" echo "power=$powerjar" >> "$GITHUB_OUTPUT" - echo "power_ref=$(git -C "$power" rev-parse HEAD)" >> "$GITHUB_OUTPUT" - name: Initialize CodeQL uses: github/codeql-action/init@db488ddef3bf6cb639b32c2e9a7c0a7ea8271d28 # v4 with: languages: java-kotlin build-mode: manual - - name: Compile ElectricAdvantage production code + - name: Compile baseElectric production code run: | chmod +x ./gradlew ./gradlew $MMD_GRADLE_TOOLCHAINS clean classes --rerun-tasks --no-build-cache --no-daemon --stacktrace \ -PpowerAdvantageDeobfJar=${{ steps.dependencies.outputs.power }} \ - -Ppoweradvantage_source_ref=${{ steps.dependencies.outputs.power_ref }} \ -PbaseMetalsDeobfJar=${{ steps.dependencies.outputs.basemetals }} \ -PoreSpawnDeobfJar=${{ steps.dependencies.outputs.orespawn }} - name: Analyze diff --git a/.github/workflows/release-on-tag.yml b/.github/workflows/release-on-tag.yml index e545334..f6bc03a 100644 --- a/.github/workflows/release-on-tag.yml +++ b/.github/workflows/release-on-tag.yml @@ -10,13 +10,13 @@ permissions: contents: read concurrency: - group: electricadvantage-release-tag-${{ github.ref_name }} + group: baseelectric-release-tag-${{ github.ref_name }} cancel-in-progress: false jobs: validate-release-tag: name: Validate tag for manual release confirmation - if: github.repository == 'MinecraftModDevelopmentMods/ElectricAdvantage' + if: github.repository == 'MinecraftModDevelopmentMods/baseElectric' runs-on: ubuntu-latest timeout-minutes: 10 diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 9c28f45..ba796bc 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -1,3 +1,9 @@ +baseElectric 2.2.10.117011 (Minecraft 1.17.1) + +- Continue Electric Advantage as baseElectric, with its blocks and items in the shared basePower creative tab. +- Recognize older Electric Advantage blocks, items, machines and hydroturbines when upgrading. +- Keep the native 1.17.1 machine controls, drops and recipe discoveries. + Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 local port candidate - Target Forge 37.1.1, official mappings, Java 16 production bytecode and FG7. diff --git a/README.md b/README.md index abe2897..aaf215e 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,12 @@ -# Electric Advantage +# baseElectric -Electric machines, generation, storage, automation and defence for Power Advantage. +baseElectric continues DrCyano's Electric Advantage. It adds electric machines, +generation, storage, automation and defence to basePower, and its blocks and items +appear in the shared basePower creative tab. -This is the independent **Minecraft 1.17.1 port candidate, 2.2.9.117011**. -It is local work, not a published release. Manual acceptance is pending. -No port-code push, pull request, merge, tag or release is approved before manual testing. +This is the local **Minecraft 1.17.1 candidate, 2.2.10.117011**, not a published +release. Back up your world before upgrading. The port retains the mappings for +older Electric Advantage saves, as well as saves that already use baseElectric IDs. ## Target @@ -12,34 +14,20 @@ No port-code push, pull request, merge, tag or release is approved before manual - ForgeGradle `7.0.34`, Renamer `1.1.5`, Gradle `9.6.1`. - Java 17 runs Gradle; Java 25 runs Mavenizer. Production and tests use Java `16.0.2+7`, class major `60`. Java 8 is only for old dependency build utilities. -- Production artifact: `build/libs/ElectricAdvantage-2.2.9.117011.jar`. +- Production artifact: `build/libs/baseElectric-2.2.10.117011.jar`. The separate deobfuscated API artifact stays under `build/libs-dev`. -Power Advantage is required. Base Metals remains optional in Forge metadata; +basePower is required. Base Metals remains optional in Forge metadata; the existing required CurseForge installation relationship and ordering are unchanged. -Power, Base Metals and OreSpawn are separate dependencies, never embedded. +basePower, Base Metals and OreSpawn are separate dependencies, never embedded. ## Current State -The source and resource migration is prepared. The source inventory is 85 production -files and 27 test files containing 96 tests: all 89 inherited tests plus seven native -construction, shader, dependency-recipe and advancement-parser checks. - -On 31 October 2026 the complete local deterministic build passed all 96 JUnit -tests, Javadocs, dependency/resource/artifact audits, checksums and Eclipse -production isolation checks. Independent ECJ compilation and all 96 tests also -passed on Java 16, with no ignored tests or assumptions; its restricted-JDK -negative control failed for the expected access error. - -These are local module results against the shared Power Advantage checkpoint, -not a final combined release: -Power Advantage `2.4.8.117011`, source `5b9abe578b053d2ef59b1962cf9e04f6880c91b9`, -API SHA-256 `799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8`. -The metadata records `LOCAL_CHECKPOINT`; any coordinated re-pin needs fresh proof. -Earlier `API_PIN_PROVISIONAL` results are retained separately. A 1.16.5 Power jar -is never accepted. Combined packaged runtime and migration are verified -separately; manual gameplay acceptance remains required before remote delivery. -Prepared CI has not been run on a hosted service. +The identity port keeps the native 1.17.1 models, shader, GUI, loot and recipe +book behavior. The 96-test suite is retained, with additional legacy ID cases in +the existing migration test. The prior Electric Advantage build and ECJ results +are historical; they do not qualify this candidate. Compilation, packaged world +migration and manual gameplay checks are still pending. See [the native port notes](docs/NATIVE117.md) for the API audit and remaining gates. The retained [1.16 notes](docs/NATIVE116.md) describe the previous target, not proof @@ -47,15 +35,18 @@ that this one passes. ## Dependencies -Base Metals `3.1.0.117011` is built for the development API from public source -`dacfaa3af2e3310d5cb6b081da79f09260ae103d`. +The coordinated basePower `2.4.9.117011` source and artifact pins are pending +in `gradle.properties`. Builds deliberately stop until those inputs are recorded. +Base Metals `3.1.1.117011` is pinned to the local startup fix +`0deeeeecdbbc1fbcdecf910c59477de8efe164d7` and its verified deobf SHA-256 in +`gradle.properties`. That source is unpushed; hosted builds cannot fetch it. OreSpawn `4.1.0.117011` uses public source `b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf`. -Exact API and public-runtime SHA-256 values are recorded separately in -`gradle.properties`. Published runtime jars, not unpublished dependency builds, -must be used for packaged qualification. +Record the runtime SHA-256 values separately from the development jar hashes. +Local runtime qualification must use the exact coordinated jars; it does not +establish public availability or release readiness. -Build the pinned dependency sources first, then run from this repository: +Once the pins are set, run from this repository with the arguments below: ```text ./gradlew clean check build javadoc verifyReleaseDependencies verifyReleaseArtifacts writeReleaseChecksums verifyEclipseProductionClasspath @@ -65,14 +56,14 @@ On Windows, use `gradlew.bat` instead of `./gradlew`. Set `JAVA_HOME` to Java 17 for Gradle and install the Java 16 production toolchain and Java 25 Mavenizer runtime listed above. The older dependency build utilities also need Java 8. -The default dependency paths follow the sibling checkout layout. For an isolated -checkout, append these Gradle arguments with your actual paths: +Append these arguments using immutable local inputs. In particular, the build +does not discover a basePower jar or bootstrap source in a sibling checkout: ```text --PpowerAdvantageDeobfJar="/path/to/PowerAdvantage-2.4.8.117011-deobf.jar" --PbaseMetalsDeobfJar="/path/to/BaseMetals-3.1.0.117011-deobf.jar" +-PpowerAdvantageDeobfJar="/path/to/basePower-2.4.9.117011-deobf.jar" +-PbaseMetalsDeobfJar="/path/to/BaseMetals-3.1.1.117011-deobf.jar" -PoreSpawnDeobfJar="/path/to/OreSpawn-4.1.0.117011-deobf.jar" --PpowerAdvantageUnitBootstrapSource="/path/to/PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java" +-PpowerAdvantageUnitBootstrapSource="/path/to/ForgeCapabilityBootstrap.java" ``` The build checks these inputs against the pinned hashes; do not substitute jars @@ -80,7 +71,7 @@ from another Minecraft version. If Gradle cannot find the installed JDKs, pass `-Porg.gradle.java.installations.paths=,,,`. No machine-specific helper or shared Gradle cache is required. -Tests use Power Advantage's hash-checked, build-only Forge capability bootstrap source +Tests use basePower's hash-checked, build-only Forge capability bootstrap source from `-PpowerAdvantageUnitBootstrapSource`. Electric's build-only wrapper also runs Forge's event-bus plugin for the native tier/harvest checks. Neither replaces capability tokens or events, and neither is included in production jars. @@ -90,19 +81,20 @@ after Gradle has produced a fresh classpath, unit bootstrap jar and complete tes Static checks need no Gradle or game launch: ```text -node tools/verify-native-port.js --report build/native117-static-unique.json +node tools/verify-native-port.js --report build/baseelectric-117-static-unique.json node tools/generate-recipe-unlocks.js --check ``` -Use a new report name on each run. The static comparison is against the merged -1.16.5 baseline `c5c8c9ea1d6f2010b8cff61e4bfae86f4c96c978`. It does not prove -compilation, native ticking, shader compilation or migration safety. +Use a new report name on each run. The audit checks the merged 1.16.5 and +pre-rename native 1.17.1 baselines. It does not prove compilation, native ticking, +shader compilation or migration safety. ## Compatibility -The implementation namespace remains `zone.moddev.mc.electricadvantage` and the -legacy `cyano.poweradvantage.api` integration is retained. Mod ID, asset paths, -registries, aliases, entity IDs, NBT keys and OreSpawn provider IDs stay stable. +The mod ID is now `baseelectric` and the implementation package is +`zone.moddev.mc.baseelectric`. The old namespace maps to the new one through +basePower's migration API. Registry paths after the namespace, machine NBT keys, +and the legacy `cyano.poweradvantage.api` integration are retained. Native constructors carry each machine's real position and block state, including moving drills. Numeric machine constants and existing recipes are unchanged. @@ -114,6 +106,8 @@ no replacement raw-metal conversion or balance change is introduced. Eclipse imports use the Gradle wrapper, processed resources and production-only launches. Generate metadata through `verifyEclipseProductionClasspath`; do not hand-edit generated classpaths or disable restricted-reference tests. +Repeated refreshes replace stale runtime entries while keeping the native Forge +launcher and excluding compile-only libraries from production launches. Use Java `16.0.2+7` for the generated client and server launches, not Java 8. Java 17 is for Gradle and Buildship; Java 25 is for Mavenizer. diff --git a/build.gradle b/build.gradle index f1db58e..aa6690c 100644 --- a/build.gradle +++ b/build.gradle @@ -16,7 +16,7 @@ plugins { group = project.mod_group version = project.mod_version -base.archivesName = 'ElectricAdvantage' +base.archivesName = 'baseElectric' def versionParts = project.mod_version.toString().tokenize('.') if (versionParts.size() != 4 || !versionParts.every { it ==~ /\d+/ }) { @@ -62,9 +62,12 @@ tasks.withType(JavaCompile).configureEach { options.compilerArgs.addAll(['-Xmaxerrs', '1000']) } -def unitBootstrapSource = file(providers.gradleProperty('powerAdvantageUnitBootstrapSource') - .getOrElse('../../PowerAdvantage/test-rig/unit-bootstrap/ForgeCapabilityBootstrap.java')) +def unitBootstrapSourcePath = providers.gradleProperty('powerAdvantageUnitBootstrapSource') def compileUnitBootstrap = tasks.register('compileUnitBootstrap', JavaCompile) { + if (!unitBootstrapSourcePath.isPresent()) { + throw new GradleException('Pass the pinned basePower source with -PpowerAdvantageUnitBootstrapSource=.') + } + File unitBootstrapSource = file(unitBootstrapSourcePath.get()) source unitBootstrapSource, file('tools/verification/ForgeNativeTestBootstrap.java') classpath = files() destinationDirectory = layout.buildDirectory.dir('unit-bootstrap/classes') @@ -82,7 +85,7 @@ def unitBootstrapJar = tasks.register('unitBootstrapJar', Jar) { archiveFileName = 'forge-native-unit-bootstrap.jar' destinationDirectory = layout.buildDirectory.dir('unit-bootstrap') from compileUnitBootstrap.flatMap { it.destinationDirectory } - manifest.attributes('Premain-Class': 'zone.moddev.mc.electricadvantage.verification.ForgeNativeTestBootstrap') + manifest.attributes('Premain-Class': 'zone.moddev.mc.baseelectric.verification.ForgeNativeTestBootstrap') } tasks.named('test', Test) { @@ -137,7 +140,7 @@ minecraft { jvmArgs '--add-opens', 'java.base/java.lang.invoke=ALL-UNNAMED' systemProperty 'forge.logging.markers', 'REGISTRIES' systemProperty 'forge.logging.console.level', 'info' - mods { electricadvantage { source sourceSets.main } } + mods { baseelectric { source sourceSets.main } } environment 'MOD_CLASSES', mainModClasses } register('client') @@ -191,32 +194,30 @@ repositories { } } -// ElectricAdvantage needs the full PowerAdvantage implementation in development, -// but the retired MMD Maven cannot provide a dependable deobfuscated artifact. -// Local builds use the sibling FG7 output; CI supplies the same pinned jar via -// -PpowerAdvantageDeobfJar after building the audited upstream commit. - -if (!project.poweradvantage_version || (!project.poweradvantage_source_ref - && project.poweradvantage_pin_state != 'API_PIN_PROVISIONAL') - || !project.poweradvantage_deobf_sha256 || !project.basemetals_deobf_sha256 - || !project.orespawn_deobf_sha256) { - throw new GradleException('The parent has not yet pinned the coordinated 1.17.1 development APIs') +// Require the coordinated artifacts before resolving or reading any development jar. +def requireDevelopmentPins = { + if (project.poweradvantage_pin_state != 'LOCAL_CHECKPOINT' + || !(project.poweradvantage_source_ref ==~ /[a-f0-9]{40}/) + || !(project.basemetals_source_commit ==~ /[a-f0-9]{40}/) + || ![project.poweradvantage_deobf_sha256, project.poweradvantage_unit_bootstrap_sha256, + project.basemetals_deobf_sha256, project.orespawn_deobf_sha256].every { it ==~ /[A-F0-9]{64}/ }) { + throw new GradleException('The coordinated basePower and Base Metals 1.17.1 source and API pins are pending') + } +} +requireDevelopmentPins() +def powerAdvantageDeobfJarPath = providers.gradleProperty('powerAdvantageDeobfJar') +if (!powerAdvantageDeobfJarPath.isPresent()) { + throw new GradleException('Pass an immutable basePower API jar with -PpowerAdvantageDeobfJar=.') } -def defaultPowerAdvantageDeobfJar = file("../../PowerAdvantage/build/libs-dev/" \ - + "PowerAdvantage-${project.poweradvantage_version}-deobf.jar") -def powerAdvantageDeobfJar = providers.gradleProperty('powerAdvantageDeobfJar') - .map { file(it) } - .getOrElse(defaultPowerAdvantageDeobfJar) +def powerAdvantageDeobfJar = file(powerAdvantageDeobfJarPath.get()) if (!powerAdvantageDeobfJar.isFile()) { - throw new GradleException("Missing PowerAdvantage deobf jar at ${powerAdvantageDeobfJar}. " - + "Run gradlew.bat deobfJar in ../../PowerAdvantage first, or pass " - + "-PpowerAdvantageDeobfJar=.") + throw new GradleException("Missing basePower deobf jar at ${powerAdvantageDeobfJar}.") } // These defaults follow the sibling MMD checkout layout. They are constants // here so another developer can override them without editing the script. def baseMetalsDeobfJar = file(providers.gradleProperty('baseMetalsDeobfJar') .getOrElse('../../../../BaseMetals/BaseMetals 117/BaseMetals/build/libs-dev/' - + 'BaseMetals-3.1.0.117011-deobf.jar')) + + "BaseMetals-${project.basemetals_version}-deobf.jar")) if (!baseMetalsDeobfJar.isFile()) { throw new GradleException("Missing Base Metals deobf jar at ${baseMetalsDeobfJar}. " + "Pass the coordinated 1.17.1 API with -PbaseMetalsDeobfJar=.") @@ -240,7 +241,7 @@ if (!oreSpawnDeobfJar.isFile()) { dependencies { implementation minecraft.dependency( "net.minecraftforge:forge:${project.minecraft_version}-${project.forge_version}") - // PowerAdvantage is required at runtime but remains a separate mod jar. + // basePower is required at runtime but remains a separate mod jar. compileOnly files(powerAdvantageDeobfJar) runtimeOnly files(powerAdvantageDeobfJar) compileOnly files(baseMetalsDeobfJar) @@ -388,14 +389,12 @@ tasks.register('verifyReleaseConfiguration') { group = 'verification' description = 'Validates release identity, target metadata, and dependency policy.' doLast { - if (project.poweradvantage_pin_state == 'API_PIN_PROVISIONAL') { - throw new GradleException('API_PIN_PROVISIONAL: source freeze and release qualification are pending') - } + requireDevelopmentPins() if (new JsonSlurper().parse(file('src/main/resources/pack.mcmeta')).pack.pack_format != 7) { throw new GradleException('Minecraft 1.17.1 resources must use pack format 7') } - if (project.mod_version != '2.2.9.117011') { - throw new GradleException("Unexpected ElectricAdvantage release version: ${project.mod_version}") + if (project.mod_version != '2.2.10.117011') { + throw new GradleException("Unexpected baseElectric release version: ${project.mod_version}") } if (project.minecraft_version != '1.17.1' || project.forge_version != '37.1.1' @@ -410,45 +409,41 @@ tasks.register('verifyReleaseConfiguration') { || project.gradle_java_version != '17') { throw new GradleException('Unexpected release dispatcher target metadata') } - if (project.mod_id != 'electricadvantage' - || project.group.toString() != 'zone.moddev.mc.electricadvantage' - || base.archivesName.get() != 'ElectricAdvantage' + if (project.mod_id != 'baseelectric' + || project.group.toString() != 'zone.moddev.mc.baseelectric' + || project.mod_name != 'baseElectric' + || base.archivesName.get() != 'baseElectric' || project.mod_license != 'GPL-3.0-only' - || project.curseforge_project_id != '240985') { + || project.curseforge_project_id != '1783006') { throw new GradleException('Unexpected Forge, Maven, archive, or CurseForge identity') } - if (project.cf_requirements != 'power-advantage,base-metals' + if (project.cf_requirements != 'basepower,base-metals' || project.cf_optionals != '' || project.cf_versions != '1.17.1') { throw new GradleException('Unexpected CurseForge dependency or game-version metadata') } - if (!project.poweradvantage_source_ref || !project.poweradvantage_deobf_sha256) { - throw new GradleException('PowerAdvantage 1.17.1 final source and deobf SHA-256 pins are pending') - } - if (project.poweradvantage_version != '2.4.8.117011' - || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/PowerAdvantage' - || project.poweradvantage_source_ref != '5b9abe578b053d2ef59b1962cf9e04f6880c91b9' - || project.poweradvantage_deobf_sha256 != '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8') { - throw new GradleException('Unexpected PowerAdvantage compile dependency identity') + if (project.poweradvantage_version != '2.4.9.117011' + || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/basePower') { + throw new GradleException('Unexpected basePower compile dependency identity') } - if (project.basemetals_version != '3.1.0.117011' + if (project.basemetals_version != '3.1.1.117011' || project.orespawn_version != '4.1.0.117011' - || project.basemetals_source_commit != 'dacfaa3af2e3310d5cb6b081da79f09260ae103d' + || project.basemetals_source_commit != '0deeeeecdbbc1fbcdecf910c59477de8efe164d7' + || project.basemetals_deobf_sha256 != '83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1' || project.orespawn_source_commit != 'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf' - || project.basemetals_deobf_sha256 != '4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA' || project.orespawn_deobf_sha256 != 'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39' || project.forge_installer_sha256 != '31F2319B1B9CA491AACCC020887240F8524A4FF2A8E0F8B795E17E889CBC043B') { throw new GradleException('Unexpected native dependency pins') } String mainSource = file( - 'src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java').getText('UTF-8') - if (!mainSource.contains('MODID = "electricadvantage"') - || !mainSource.contains('VERSION = "2.2.9.117011"')) { - throw new GradleException('ElectricAdvantage source identity changed') + 'src/main/java/zone/moddev/mc/baseelectric/ElectricAdvantage.java').getText('UTF-8') + if (!mainSource.contains('MODID = "baseelectric"') + || !mainSource.contains('VERSION = "2.2.10.117011"')) { + throw new GradleException('baseElectric source identity changed') } String metadata = file('src/main/resources/META-INF/mods.toml').getText('UTF-8').replace('\r\n', '\n') - ['modId="electricadvantage"', 'modId="poweradvantage"', 'modId="basemetals"', - 'versionRange="[2.4.8.117011,3.0.0)"'].each { marker -> + ['modId="baseelectric"', 'displayName="baseElectric"', 'modId="basepower"', 'modId="basemetals"', + 'versionRange="[2.4.9.117011,3.0.0)"', 'versionRange="[3.1.1.117011,4.0.0)"'].each { marker -> if (!metadata.contains(marker)) { throw new GradleException("Source mods.toml is missing ${marker}") } @@ -461,29 +456,30 @@ tasks.register('verifyReleaseConfiguration') { tasks.register('verifyReleaseDependencies') { group = 'verification' - description = 'Resolves Forge and audits the exact required PowerAdvantage development jar.' + description = 'Resolves Forge and audits the exact required basePower development jar.' dependsOn tasks.named('verifyReleaseConfiguration') doLast { String actualHash = MessageDigest.getInstance('SHA-256') .digest(powerAdvantageDeobfJar.bytes).encodeHex().toString().toUpperCase() if (actualHash != project.poweradvantage_deobf_sha256) { - throw new GradleException("PowerAdvantage SHA-256 is ${actualHash}, expected " + throw new GradleException("basePower SHA-256 is ${actualHash}, expected " + project.poweradvantage_deobf_sha256) } new ZipFile(powerAdvantageDeobfJar).withCloseable { zip -> ['cyano/poweradvantage/api/PoweredEntity.class', 'cyano/poweradvantage/api/GUIBlock.class', 'cyano/poweradvantage/api/FluidCategoryRegistry.class', - 'zone/moddev/mc/poweradvantage/conduitnetwork/ConduitRegistry.class', - 'zone/moddev/mc/poweradvantage/init/Fluids.class'].each { required -> + 'cyano/poweradvantage/api/migration/LegacyMigrationApi.class', + 'zone/moddev/mc/basepower/conduitnetwork/ConduitRegistry.class', + 'zone/moddev/mc/basepower/init/Fluids.class'].each { required -> if (zip.getEntry(required) == null) { - throw new GradleException("PowerAdvantage dependency is missing ${required}") + throw new GradleException("basePower dependency is missing ${required}") } } def manifest = new Manifest(zip.getInputStream(zip.getEntry('META-INF/MANIFEST.MF'))).mainAttributes if (manifest.getValue('Implementation-Version') != project.poweradvantage_version || manifest.getValue('Built-On') != '1.17.1-37.1.1') { - throw new GradleException('PowerAdvantage dependency manifest has the wrong version') + throw new GradleException('basePower dependency manifest has the wrong version') } } String actualBaseMetalsHash = MessageDigest.getInstance('SHA-256') @@ -501,11 +497,11 @@ tasks.register('verifyReleaseDependencies') { Set compileFiles = configurations.compileClasspath.files.collect { it.canonicalFile } as Set if (!compileFiles.contains(powerAdvantageDeobfJar.canonicalFile)) { - throw new GradleException('PowerAdvantage is missing from compileClasspath') + throw new GradleException('basePower is missing from compileClasspath') } Set runtimeFiles = configurations.runtimeClasspath.files.collect { it.canonicalFile } as Set if (!runtimeFiles.contains(powerAdvantageDeobfJar.canonicalFile)) { - throw new GradleException('PowerAdvantage is missing from runtimeClasspath') + throw new GradleException('basePower is missing from runtimeClasspath') } if (!runtimeFiles.contains(baseMetalsDeobfJar.canonicalFile)) { throw new GradleException('Base Metals is missing from runtimeClasspath') @@ -563,19 +559,19 @@ tasks.register('verifyReleaseArtifacts') { new ZipFile(mainJar).withCloseable { zip -> List names = zip.entries().collect { it.name } ['META-INF/mods.toml', 'pack.mcmeta', - 'zone/moddev/mc/electricadvantage/ElectricAdvantage.class', - 'zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.class', - 'zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.class', - 'zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.class', - 'zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.class', - 'zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.class', - 'zone/moddev/mc/electricadvantage/init/Villages.class', - 'zone/moddev/mc/electricadvantage/recipe/RecipeConditions$ModeSerializer.class', - 'assets/electricadvantage/lang/en_us.json', - 'data/electricadvantage/loot_tables/blocks/electric_drill.json', - 'data/electricadvantage/loot_tables/blocks/electric_conduit.json', - 'data/electricadvantage/recipes/electric_conduit_plastic_ingot.json', - 'data/electricadvantage/advancements/recipes/integrated_circuit_copper_normal.json', + 'zone/moddev/mc/baseelectric/ElectricAdvantage.class', + 'zone/moddev/mc/baseelectric/machines/ElectricDrillTileEntity.class', + 'zone/moddev/mc/baseelectric/machines/ElectricPumpTileEntity.class', + 'zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorTileEntity.class', + 'zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrations.class', + 'zone/moddev/mc/baseelectric/init/OreSpawnWorldGen.class', + 'zone/moddev/mc/baseelectric/init/Villages.class', + 'zone/moddev/mc/baseelectric/recipe/RecipeConditions$ModeSerializer.class', + 'assets/baseelectric/lang/en_us.json', + 'data/baseelectric/loot_tables/blocks/electric_drill.json', + 'data/baseelectric/loot_tables/blocks/electric_conduit.json', + 'data/baseelectric/recipes/electric_conduit_plastic_ingot.json', + 'data/baseelectric/advancements/recipes/integrated_circuit_copper_normal.json', 'data/forge/tags/items/ores/lithium.json'].each { required -> if (!names.contains(required)) { throw new GradleException("Release jar is missing ${required}") @@ -583,7 +579,9 @@ tasks.register('verifyReleaseArtifacts') { } ['agent-notes/', '.codex/', 'src/test/', 'fernflower_abstract_parameter_names.txt', 'cyano/poweradvantage/', - 'zone/moddev/mc/poweradvantage/', 'zone/moddev/mc/basemetals/', 'cyano/basemetals/', 'com/mcmoddev/lib/', + 'zone/moddev/mc/basepower/', 'zone/moddev/mc/poweradvantage/', 'zone/moddev/mc/electricadvantage/', + 'assets/electricadvantage/', 'data/electricadvantage/', + 'zone/moddev/mc/basemetals/', 'cyano/basemetals/', 'com/mcmoddev/lib/', 'cyano/orespawn/', 'com/mcmoddev/orespawn/', 'cofh/api/', 'reborncore/', 'net/minecraft/', 'net/minecraftforge/'].each { forbidden -> if (names.any { it.contains(forbidden) }) { @@ -592,7 +590,7 @@ tasks.register('verifyReleaseArtifacts') { } String metadata = zip.getInputStream(zip.getEntry('META-INF/mods.toml')) .getText(StandardCharsets.UTF_8.name()) - if (!metadata.contains('modId="electricadvantage"') + if (!metadata.contains('modId="baseelectric"') || !metadata.contains("version=\"${project.mod_version}\"")) { throw new GradleException('Packaged mods.toml identity or version is incorrect') } @@ -618,9 +616,9 @@ tasks.register('verifyReleaseArtifacts') { } new ZipFile(new File(libs, expectedReleaseFiles.get()[1])).withCloseable { sourceZip -> - if (sourceZip.getEntry('zone/moddev/mc/electricadvantage/ElectricAdvantage.java') == null - || sourceZip.getEntry('zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java') == null) { - throw new GradleException('Sources jar is missing required ElectricAdvantage sources') + if (sourceZip.getEntry('zone/moddev/mc/baseelectric/ElectricAdvantage.java') == null + || sourceZip.getEntry('zone/moddev/mc/baseelectric/machines/ElectricDrillTileEntity.java') == null) { + throw new GradleException('Sources jar is missing required baseElectric sources') } } new ZipFile(new File(libs, expectedReleaseFiles.get()[2])).withCloseable { javadocZip -> @@ -717,9 +715,9 @@ publishing { artifact(tasks.named('javadocJar')) } pom { - name = 'Electric Advantage' + name = project.mod_name description = project.mod_description - url = 'https://github.com/MinecraftModDevelopmentMods/ElectricAdvantage' + url = 'https://github.com/MinecraftModDevelopmentMods/baseElectric' licenses { license { name = 'GNU General Public License, Version 3' @@ -727,9 +725,9 @@ publishing { } } scm { - connection = 'scm:git:https://github.com/MinecraftModDevelopmentMods/ElectricAdvantage.git' - developerConnection = 'scm:git:ssh://git@github.com/MinecraftModDevelopmentMods/ElectricAdvantage.git' - url = 'https://github.com/MinecraftModDevelopmentMods/ElectricAdvantage' + connection = 'scm:git:https://github.com/MinecraftModDevelopmentMods/baseElectric.git' + developerConnection = 'scm:git:ssh://git@github.com/MinecraftModDevelopmentMods/baseElectric.git' + url = 'https://github.com/MinecraftModDevelopmentMods/baseElectric' } } } @@ -857,10 +855,11 @@ tasks.register('isolateEclipseProductionRuns') { "key=\"MC_VERSION\" value=\"${project.minecraft_version}\"") if (launch.name in ['runClient.launch', 'runServer.launch', 'runData.launch']) { // Eclipse compiles into bin/main, not Gradle's merged run output. - def launchXml = new groovy.xml.XmlSlurper().parseText(contents) + def parser = new groovy.xml.XmlParser() + def launchXml = parser.parseText(contents) def modClasses = launchXml.mapAttribute.find { - it.@key.text() == 'org.eclipse.debug.core.environmentVariables' - }.mapEntry.findAll { it.@key.text() == 'MOD_CLASSES' } + it.@key == 'org.eclipse.debug.core.environmentVariables' + }.mapEntry.findAll { it.@key == 'MOD_CLASSES' } if (modClasses.size() != 1) { throw new GradleException("${launch.name} must define one MOD_CLASSES entry") } @@ -868,6 +867,18 @@ tasks.register('isolateEclipseProductionRuns') { String eclipseModClasses = "${project.mod_id}%%${mainOutput}" + "${File.pathSeparator}${project.mod_id}%%${mainOutput}" modClasses[0].@value = eclipseModClasses + // A launch reused across the rename may still point at the old Eclipse project. + launchXml.stringAttribute.findAll { it.@key == 'org.eclipse.jdt.launching.PROJECT_ATTR' }.each { + it.@value = project.name + } + launchXml.listAttribute.find { it.@key == 'org.eclipse.jdt.launching.CLASSPATH' } + ?.listEntry?.each { entry -> + def runtime = parser.parseText(entry.@value) + if (runtime.@projectName == 'ElectricAdvantage') { + runtime.@projectName = project.name + entry.@value = groovy.xml.XmlUtil.serialize(runtime) + } + } contents = groovy.xml.XmlUtil.serialize(launchXml) } launch.setText(contents.replace('\r\n', '\n'), 'UTF-8') @@ -887,7 +898,7 @@ tasks.register('isolateEclipseProductionRuns') { // Buildship exposes compileOnly dependencies through its project // container. Replace that container in production launches with - // Gradle's runtime classpath while retaining required PowerAdvantage. + // Gradle's runtime classpath while retaining required basePower. Set mainOutputs = sourceSets.main.output.files.collect { it.canonicalFile } as Set @@ -896,26 +907,31 @@ tasks.register('isolateEclipseProductionRuns') { }.findAll { File runtimeFile -> !mainOutputs.contains(runtimeFile) } - List launchLines = contents.readLines() - int buildshipContainerLine = launchLines.findIndexOf { - it.contains('org.eclipse.buildship.core.gradleclasspathcontainer') + def parser = new groovy.xml.XmlParser() + def launchXml = parser.parseText(contents) + def classpath = launchXml.listAttribute.find { it.@key == 'org.eclipse.jdt.launching.CLASSPATH' } + if (classpath == null) { + throw new GradleException("${name} is missing its explicit classpath") + } + // Refresh can reuse an isolated launch; replace stale runtime archives but keep Slime Launcher. + def previousRuntime = classpath.listEntry.findAll { entry -> + def runtime = parser.parseText(entry.@value) + String archive = runtime.@externalArchive + runtime.@containerPath == 'org.eclipse.buildship.core.gradleclasspathcontainer' + || (archive && !file(archive).name.startsWith('slime-launcher-')) } - if (buildshipContainerLine < 0) { - throw new GradleException("${name} is missing the Buildship classpath container") + if (previousRuntime.isEmpty()) { + throw new GradleException("${name} is missing its production runtime entries") } - List runtimeEntries = productionRuntime.collect { File runtimeFile -> - String escapedPath = runtimeFile.canonicalPath - .replace('&', '&amp;') - .replace('<', '&lt;') - .replace('>', '&gt;') - (' ') + int runtimeIndex = classpath.children().indexOf(previousRuntime.first()) + previousRuntime.each { classpath.remove(it) } + def runtimeEntries = productionRuntime.collect { File runtimeFile -> + def archive = new Node(null, 'runtimeClasspathEntry', + [externalArchive: runtimeFile.path, type: '2', path: '5']) + new Node(null, 'listEntry', [value: groovy.xml.XmlUtil.serialize(archive)]) } - launchLines.remove(buildshipContainerLine) - launchLines.addAll(buildshipContainerLine, runtimeEntries) - contents = launchLines.join('\n') + '\n' + classpath.children().addAll(runtimeIndex, runtimeEntries) + contents = groovy.xml.XmlUtil.serialize(launchXml) ['--cache', '--metadata', '--to-srg', '--to-obf'].each { option -> String prefix = option + ' ' @@ -1009,35 +1025,42 @@ tasks.register('verifyEclipseProductionClasspath') { } if (launch.stringAttribute.find { it.@key.text() == 'org.eclipse.jdt.launching.PROJECT_ATTR' - }.@value.text() != 'ElectricAdvantage') { + }.@value.text() != project.name) { throw new GradleException("${name} targets the wrong Eclipse project") } - if (contents.contains('org.eclipse.buildship.core.gradleclasspathcontainer')) { + def runtimeEntries = launch.listAttribute.find { + it.@key.text() == 'org.eclipse.jdt.launching.CLASSPATH' + }.listEntry.collect { new groovy.xml.XmlSlurper().parseText(it.@value.text()) } + if (runtimeEntries.any { it.@containerPath.text() == 'org.eclipse.buildship.core.gradleclasspathcontainer' }) { throw new GradleException("${name} exposes compileOnly dependencies at runtime") } + if (!runtimeEntries.any { it.@projectName.text() == project.name } + || runtimeEntries.any { it.@projectName.text() == 'ElectricAdvantage' }) { + throw new GradleException("${name} has an incorrect Eclipse project classpath entry") + } + List runtimeArchives = runtimeEntries.findAll { it.@externalArchive.text() }.collect { + file(it.@externalArchive.text()).canonicalFile + } ['RF-API.jar', 'RebornCore-1.12.2'].each { forbiddenDependency -> if (contents.toLowerCase(Locale.ROOT).contains(forbiddenDependency.toLowerCase(Locale.ROOT))) { throw new GradleException( "${name} includes forbidden runtime dependency ${forbiddenDependency}") } } - if (!contents.contains(powerAdvantageDeobfJar.canonicalPath.replace('\\', '/'))) { - throw new GradleException("${name} is missing the required PowerAdvantage runtime") + if (!runtimeArchives.contains(powerAdvantageDeobfJar.canonicalFile)) { + throw new GradleException("${name} is missing the required basePower runtime") } - if (!contents.contains(baseMetalsDeobfJar.canonicalPath.replace('\\', '/')) - || !contents.contains(oreSpawnDeobfJar.canonicalPath.replace('\\', '/'))) { + if (!runtimeArchives.contains(baseMetalsDeobfJar.canonicalFile) + || !runtimeArchives.contains(oreSpawnDeobfJar.canonicalFile)) { throw new GradleException("${name} is missing the required Base Metals or OreSpawn runtime") } - if (!contents.contains("forge-${project.minecraft_version}-${project.forge_version}")) { - throw new GradleException("${name} is missing the Forge development runtime") - } List bootstrapArtifacts = [ "forge-${project.minecraft_version}-${project.forge_version}", "client-extra-${project.minecraft_version}", "mappings_${project.mapping_channel}-${project.minecraft_version}" ] List bootstrapPositions = bootstrapArtifacts.collect { artifact -> - contents.indexOf(artifact) + runtimeArchives.findIndexOf { it.name.contains(artifact) } } if (bootstrapPositions.any { it < 0 } || bootstrapPositions != bootstrapPositions.sort(false)) { @@ -1064,7 +1087,7 @@ tasks.register('verifyEclipseProductionClasspath') { tasks.register('verifyModelAssets') { group = 'verification' - description = 'Verifies ElectricAdvantage JSON and model references against packaged assets.' + description = 'Verifies baseElectric JSON and model references against packaged assets.' dependsOn tasks.named('verifyReleaseDependencies') File resourceRoot = file('src/main/resources') File assetRoot = new File(resourceRoot, "assets/${project.mod_id}") @@ -1090,7 +1113,7 @@ tasks.register('verifyModelAssets') { int separator = reference.indexOf(':') String namespace = separator >= 0 ? reference.substring(0, separator) : 'minecraft' String path = separator >= 0 ? reference.substring(separator + 1) : reference - if (namespace != project.mod_id && namespace != 'poweradvantage') return + if (namespace != project.mod_id && namespace != 'basepower') return String suffix = assetType == 'textures' ? '.png' : '.json' String targetPath = "assets/${namespace}/${assetType}/${path}${suffix}" @@ -1209,9 +1232,9 @@ tasks.register('verifyRecipeTagGuards') { throw new GradleException("${recipeFile.path} contains a non-object recipe condition") } Set guards = conditions - .findAll { it instanceof Map && it.type == 'poweradvantage:tag_not_empty' } + .findAll { it instanceof Map && it.type == 'basepower:tag_not_empty' } .collect { it.tag as String } as Set - Set emptyGuards = conditions.findAll { it.type == 'poweradvantage:tag_empty' } + Set emptyGuards = conditions.findAll { it.type == 'basepower:tag_empty' } .collect { it.tag as String } as Set if (!(emptyGuards.intersect(guards)).isEmpty()) { throw new GradleException("${recipeFile.path} requires the same tag to be empty and nonempty") diff --git a/docs/NATIVE117.md b/docs/NATIVE117.md index ca7ab82..227c613 100644 --- a/docs/NATIVE117.md +++ b/docs/NATIVE117.md @@ -1,6 +1,24 @@ -# Electric Advantage 1.17.1 Port +# baseElectric 1.17.1 Port -Current Power source/API pin: +## Local Identity Candidate + +`2.2.10.117011` starts at the native Electric Advantage 1.17.1 branch tip +`ce6b075f1d0e417e46e1742b9a2ca856b24dc67f`. Its static audit checks that +source, registry paths, machine state and resources are preserved across the +namespace changes, with specific checks for the retained old IDs and the +shared basePower creative tab. The Eclipse refresh fix replaces stale +runtime archives without changing the Forge bootstrap order or the launch runtime. + +The basePower `2.4.9.117011` pins are pending. Base Metals `3.1.1.117011` is +pinned for local development to the unpushed startup fix; hosted qualification +requires authorized source availability. Its runtime SHA-256 remains pending. +Run fresh deterministic and ECJ checks, a repeated Eclipse refresh, and packaged +migration on disposable worlds after the coordinated inputs arrive. The results +below belong to the pre-rename port and do not qualify this candidate. + +## Historical Electric Advantage Checkpoint + +Power source/API pin used for the prior checkpoint: `5b9abe578b053d2ef59b1962cf9e04f6880c91b9` / `799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8`. This dependency retains native recipe unlocks and adds dirty-state persistence without comparator updates on each machine tick. The new Electric build and @@ -123,7 +141,7 @@ fixture rather than missing production drops. No ore, tool tier, quantity or machine behavior was changed for that diagnosis. Interop and the broader operating/migration campaign remain separate recorded gates. -## Final Local API Pin +## Final Pre-Rename API Pin The final Power checkpoint above passes the complete 36-task release suite in `electric-final-api-release-a.log`, including all 96 tests with no skips. diff --git a/gradle.properties b/gradle.properties index bb3327b..238e49b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -21,33 +21,33 @@ java_version=16 java_toolchain_version=16.0.2+7 java_setup_version=16.0.2+7 gradle_java_version=17 -curseforge_project_id=240985 +curseforge_project_id=1783006 -mod_id=electricadvantage -mod_name=Electric Advantage +mod_id=baseelectric +mod_name=baseElectric mod_license=GPL-3.0-only -mod_version=2.2.9.117011 -mod_group=zone.moddev.mc.electricadvantage +mod_version=2.2.10.117011 +mod_group=zone.moddev.mc.baseelectric mod_authors=DrCyano -mod_description=Electric-powered machines and infrastructure for the Power Advantage platform. +mod_description=Electric-powered machines and infrastructure for basePower. -cf_requirements=power-advantage,base-metals +cf_requirements=basepower,base-metals cf_optionals= cf_versions=1.17.1 -poweradvantage_version=2.4.8.117011 -poweradvantage_pin_state=LOCAL_CHECKPOINT -poweradvantage_source_repository=MinecraftModDevelopmentMods/PowerAdvantage -# Exact local-only Power source and immutable development artifact; publish source before hosted builds. -# Local checkpoint only; combined runtime qualification and manual acceptance remain pending. -poweradvantage_source_ref=5b9abe578b053d2ef59b1962cf9e04f6880c91b9 -poweradvantage_deobf_sha256=799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8 -poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 +poweradvantage_version=2.4.9.117011 +poweradvantage_pin_state=PENDING +poweradvantage_source_repository=MinecraftModDevelopmentMods/basePower +# Fill from the coordinated, immutable 1.17.1 inputs before building. +poweradvantage_source_ref= +poweradvantage_deobf_sha256= +poweradvantage_unit_bootstrap_sha256= -basemetals_version=3.1.0.117011 -basemetals_source_commit=dacfaa3af2e3310d5cb6b081da79f09260ae103d -basemetals_deobf_sha256=4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA -basemetals_runtime_sha256=9276FA7E8A1E5BD6B9E336CF83CFEE9B178167DA09CE2B231C8DFF733F351B0C +basemetals_version=3.1.1.117011 +# Local startup fix; exact source is not available to hosted builds. +basemetals_source_commit=0deeeeecdbbc1fbcdecf910c59477de8efe164d7 +basemetals_deobf_sha256=83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1 +basemetals_runtime_sha256= orespawn_version=4.1.0.117011 orespawn_source_commit=b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf diff --git a/settings.gradle b/settings.gradle index 23ff1c3..cea1b34 100644 --- a/settings.gradle +++ b/settings.gradle @@ -2,4 +2,4 @@ plugins { id('org.gradle.toolchains.foojay-resolver-convention') version '1.0.0' } -rootProject.name = 'ElectricAdvantage' +rootProject.name = 'baseElectric' diff --git a/src/main/java/zone/moddev/mc/electricadvantage/Data.java b/src/main/java/zone/moddev/mc/baseelectric/Data.java similarity index 79% rename from src/main/java/zone/moddev/mc/electricadvantage/Data.java rename to src/main/java/zone/moddev/mc/baseelectric/Data.java index 618ea0c..8fcdb9f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/Data.java +++ b/src/main/java/zone/moddev/mc/baseelectric/Data.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage; +package zone.moddev.mc.baseelectric; public abstract class Data { @@ -8,7 +8,7 @@ public abstract class Data { + " \"dimension\":\"+\",\n" + " \"ores\":[\n" + " {\n" -+ " \"blockID\":\"electricadvantage:li_ore\",\n" ++ " \"blockID\":\"baseelectric:li_ore\",\n" + " \"size\":8,\n" + " \"variation\":2,\n" + " \"frequency\":0.125,\n" @@ -16,7 +16,7 @@ public abstract class Data { + " \"maxHeight\":32,\n" + " \"biomes\":[]\n" + " },{\n" -+ " \"blockID\":\"electricadvantage:sulfur_ore\",\n" ++ " \"blockID\":\"baseelectric:sulfur_ore\",\n" + " \"size\":16,\n" + " \"variation\":8,\n" + " \"frequency\":1,\n" diff --git a/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java b/src/main/java/zone/moddev/mc/baseelectric/ElectricAdvantage.java similarity index 76% rename from src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java rename to src/main/java/zone/moddev/mc/baseelectric/ElectricAdvantage.java index 3651176..e2451f9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/ElectricAdvantage.java +++ b/src/main/java/zone/moddev/mc/baseelectric/ElectricAdvantage.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage; +package zone.moddev.mc.baseelectric; import java.util.HashSet; import java.util.Set; @@ -20,25 +20,26 @@ import cyano.poweradvantage.api.migration.LegacyConfigMigration.Mapping; import cyano.poweradvantage.api.migration.LegacyConfigMigration.ValueType; import cyano.poweradvantage.api.migration.LegacyOreSpawnConfigBridge; -import zone.moddev.mc.electricadvantage.config.ElectricAdvantageConfig; -import zone.moddev.mc.electricadvantage.init.Blocks; -import zone.moddev.mc.electricadvantage.init.Enchantments; -import zone.moddev.mc.electricadvantage.init.Entities; -import zone.moddev.mc.electricadvantage.init.GUI; -import zone.moddev.mc.electricadvantage.init.Items; -import zone.moddev.mc.electricadvantage.init.OreSpawnWorldGen; -import zone.moddev.mc.electricadvantage.init.Recipes; -import zone.moddev.mc.electricadvantage.init.TreasureChests; -import zone.moddev.mc.electricadvantage.init.Villages; -import zone.moddev.mc.electricadvantage.recipe.RecipeConditions; -import zone.moddev.mc.electricadvantage.migration.ElectricLegacyMigrations; +import zone.moddev.mc.baseelectric.config.ElectricAdvantageConfig; +import zone.moddev.mc.baseelectric.init.Blocks; +import zone.moddev.mc.baseelectric.init.Enchantments; +import zone.moddev.mc.baseelectric.init.Entities; +import zone.moddev.mc.baseelectric.init.GUI; +import zone.moddev.mc.baseelectric.init.Items; +import zone.moddev.mc.baseelectric.init.OreSpawnWorldGen; +import zone.moddev.mc.baseelectric.init.Recipes; +import zone.moddev.mc.baseelectric.init.TreasureChests; +import zone.moddev.mc.baseelectric.init.Villages; +import zone.moddev.mc.baseelectric.recipe.RecipeConditions; +import zone.moddev.mc.baseelectric.migration.ElectricLegacyMigrations; -/** Forge 1.17.1 entry point for Electric Advantage. */ +/** Forge 1.17.1 entry point for baseElectric. */ @Mod(ElectricAdvantage.MODID) public final class ElectricAdvantage { - public static final String MODID = "electricadvantage"; - public static final String NAME = "Electric Advantage"; - public static final String VERSION = "2.2.9.117011"; + public static final String MODID = "baseelectric"; + public static final String LEGACY_MODID = "electricadvantage"; + public static final String NAME = "baseElectric"; + public static final String VERSION = "2.2.10.117011"; public static final Logger LOGGER = LogManager.getLogger(MODID); public static ElectricAdvantage INSTANCE; @@ -63,13 +64,13 @@ public ElectricAdvantage() { DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> FMLJavaModLoadingContext.get().getModEventBus().addListener( - zone.moddev.mc.electricadvantage.graphics.ClientRegistration::onClientSetup)); + zone.moddev.mc.baseelectric.graphics.ClientRegistration::onClientSetup)); } private static void migrateLegacyOreSpawnConfiguration() { try { LegacyOreSpawnConfigBridge.Result result = - LegacyOreSpawnConfigBridge.migrate(FMLPaths.CONFIGDIR.get(), MODID); + LegacyOreSpawnConfigBridge.migrate(FMLPaths.CONFIGDIR.get(), MODID, LEGACY_MODID); if (result.wasMigrated()) { LOGGER.info("Imported {} legacy Electric Advantage OreSpawn rule(s) from '{}' into '{}'", result.getRuleCount(), result.getSource(), result.getTarget()); @@ -81,7 +82,7 @@ private static void migrateLegacyOreSpawnConfiguration() { private static void migrateLegacyConfiguration() { try { - LegacyConfigMigration.Result result = LegacyConfigMigration.migrate(FMLPaths.CONFIGDIR.get(), MODID, + LegacyConfigMigration.Result result = LegacyConfigMigration.migrate(FMLPaths.CONFIGDIR.get(), MODID, LEGACY_MODID, Mapping.of("fabricator", "recursion_limit", "fabricator", "recursionLimit", ValueType.INTEGER), Mapping.of("options", "laser_sound", "options", "laserSound", ValueType.STRING), Mapping.of("options", "petrolplastic_fluids", "options", "petrolplasticFluids", ValueType.STRING)); @@ -101,7 +102,7 @@ private void commonSetup(FMLCommonSetupEvent event) { Recipes.init(); TreasureChests.init(FMLPaths.CONFIGDIR.get()); Villages.init(); - LOGGER.info("Electric Advantage {} common setup complete", VERSION); + LOGGER.info("{} {} common setup complete", NAME, VERSION); } private void enqueueInterModCommunication(InterModEnqueueEvent event) { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java b/src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricConduitBlock.java similarity index 71% rename from src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricConduitBlock.java index d3a3a17..563ac5f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricConduitBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricConduitBlock.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.world.level.material.Material; public class ElectricConduitBlock extends cyano.poweradvantage.api.simple.BlockSimplePowerConduit{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java b/src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricScaffoldBlock.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricScaffoldBlock.java index 9701907..724437a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/ElectricScaffoldBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/blocks/ElectricScaffoldBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; import cyano.poweradvantage.api.simple.BlockSimplePowerConduit; import net.minecraft.world.level.material.Material; @@ -8,7 +8,7 @@ import net.minecraft.world.phys.shapes.Shapes; import net.minecraft.world.phys.shapes.CollisionContext; import net.minecraft.world.level.BlockGetter; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; /** Full-block electric track/scaffold with conduit behavior. */ public class ElectricScaffoldBlock extends BlockSimplePowerConduit { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java b/src/main/java/zone/moddev/mc/baseelectric/blocks/Ore.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java rename to src/main/java/zone/moddev/mc/baseelectric/blocks/Ore.java index de0d3d4..1e97776 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/Ore.java +++ b/src/main/java/zone/moddev/mc/baseelectric/blocks/Ore.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; import java.util.Random; import java.util.Collections; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java b/src/main/java/zone/moddev/mc/baseelectric/blocks/PumpPipeBlock.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/blocks/PumpPipeBlock.java index 1178c28..50b0862 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/blocks/PumpPipeBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/blocks/PumpPipeBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.material.Material; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java b/src/main/java/zone/moddev/mc/baseelectric/common/IRechargeableItem.java similarity index 92% rename from src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java rename to src/main/java/zone/moddev/mc/baseelectric/common/IRechargeableItem.java index bf4b50e..d6d085a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/common/IRechargeableItem.java +++ b/src/main/java/zone/moddev/mc/baseelectric/common/IRechargeableItem.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.common; +package zone.moddev.mc.baseelectric.common; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java b/src/main/java/zone/moddev/mc/baseelectric/compat/BaseMetalsCompat.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java rename to src/main/java/zone/moddev/mc/baseelectric/compat/BaseMetalsCompat.java index e24bde1..eee7871 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/compat/BaseMetalsCompat.java +++ b/src/main/java/zone/moddev/mc/baseelectric/compat/BaseMetalsCompat.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.compat; +package zone.moddev.mc.baseelectric.compat; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java b/src/main/java/zone/moddev/mc/baseelectric/config/ElectricAdvantageConfig.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java rename to src/main/java/zone/moddev/mc/baseelectric/config/ElectricAdvantageConfig.java index a684fa3..306cd7b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/config/ElectricAdvantageConfig.java +++ b/src/main/java/zone/moddev/mc/baseelectric/config/ElectricAdvantageConfig.java @@ -1,11 +1,11 @@ -package zone.moddev.mc.electricadvantage.config; +package zone.moddev.mc.baseelectric.config; import java.util.Arrays; import net.minecraftforge.common.ForgeConfigSpec; import net.minecraftforge.fml.event.config.ModConfigEvent; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.util.crafting.RecipeDeconstructor; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.util.crafting.RecipeDeconstructor; /** Common configuration retaining the legacy gameplay defaults. */ public final class ElectricAdvantageConfig { @@ -24,7 +24,7 @@ public final class ElectricAdvantageConfig { builder.push("options"); LASER_SOUND = builder.define("laserSound", "minecraft:block.note_block.bass"); PLASTIC_FLUIDS = builder.comment("Semi-colon delimited fluid registry names usable by the plastic refinery.") - .define("petrolplasticFluids", "refined_oil;poweradvantage:refined_oil;oil"); + .define("petrolplasticFluids", "refined_oil;basepower:refined_oil;oil"); builder.pop(); SPEC = builder.build(); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java b/src/main/java/zone/moddev/mc/baseelectric/entities/HydroturbineEntity.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/entities/HydroturbineEntity.java index 2daaaaa..97ac43a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/entities/HydroturbineEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/entities/HydroturbineEntity.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.entities; +package zone.moddev.mc.baseelectric.entities; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorTileEntity; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorTileEntity; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.EntityType; @@ -38,7 +38,7 @@ public HydroturbineEntity(Level w, BlockPos parentTileEntity) { } public HydroturbineEntity(Level w, BlockEntity parentTileEntity) { - this(zone.moddev.mc.electricadvantage.init.Entities.HYDROTURBINE, w); + this(zone.moddev.mc.baseelectric.init.Entities.HYDROTURBINE, w); this.parent = parentTileEntity; BlockPos p = parentTileEntity.getBlockPos(); this.parentCoord = p; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/BufferedQuads.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/BufferedQuads.java index fe25d56..892bf69 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/BufferedQuads.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/BufferedQuads.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/ClientRegistration.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/ClientRegistration.java index 51d37dd..9f819ae 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ClientRegistration.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/ClientRegistration.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.client.event.EntityRenderersEvent; @@ -8,12 +8,12 @@ import java.io.IOException; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.ItemBlockRenderTypes; -import zone.moddev.mc.electricadvantage.init.Blocks; -import zone.moddev.mc.electricadvantage.init.Entities; +import zone.moddev.mc.baseelectric.init.Blocks; +import zone.moddev.mc.baseelectric.init.Entities; /** Client-only renderer registration. */ @Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD, value = Dist.CLIENT) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/ElectricRenderTypes.java similarity index 82% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/ElectricRenderTypes.java index 8455eec..dd85dd3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/ElectricRenderTypes.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/ElectricRenderTypes.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; import net.minecraft.client.renderer.RenderStateShard; import net.minecraft.client.renderer.RenderType; @@ -10,10 +10,10 @@ /** Scoped render state replaces the old global lighting/blending mutations. */ final class ElectricRenderTypes extends RenderStateShard { static final ResourceLocation UNSHADED = new ResourceLocation( - zone.moddev.mc.electricadvantage.ElectricAdvantage.MODID, "unshaded"); + zone.moddev.mc.baseelectric.ElectricAdvantage.MODID, "unshaded"); private static ShaderInstance unshadedShader; private ElectricRenderTypes() { - super("electricadvantage", () -> {}, () -> {}); + super("baseelectric", () -> {}, () -> {}); } static void setUnshadedShader(ShaderInstance shader) { @@ -21,7 +21,7 @@ static void setUnshadedShader(ShaderInstance shader) { } static RenderType unshaded(ResourceLocation texture, boolean translucent) { - return RenderType.create("electricadvantage_unshaded", DefaultVertexFormat.NEW_ENTITY, + return RenderType.create("baseelectric_unshaded", DefaultVertexFormat.NEW_ENTITY, VertexFormat.Mode.QUADS, 256, false, translucent, RenderType.CompositeState.builder() .setTextureState(new TextureStateShard(texture, false, false)) .setTransparencyState(translucent ? TRANSLUCENT_TRANSPARENCY : NO_TRANSPARENCY) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/HydroturbineRenderer.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/HydroturbineRenderer.java index b5278e7..4be0abc 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/HydroturbineRenderer.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/HydroturbineRenderer.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.entities.HydroturbineEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.entities.HydroturbineEntity; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/LaserDrillRenderer.java similarity index 95% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/LaserDrillRenderer.java index 01a4090..6aae6af 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserDrillRenderer.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/LaserDrillRenderer.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricDrillTileEntity; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java b/src/main/java/zone/moddev/mc/baseelectric/graphics/LaserTurretRenderer.java similarity index 96% rename from src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java rename to src/main/java/zone/moddev/mc/baseelectric/graphics/LaserTurretRenderer.java index c1d0732..bffb31b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/graphics/LaserTurretRenderer.java +++ b/src/main/java/zone/moddev/mc/baseelectric/graphics/LaserTurretRenderer.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.LaserTurretTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.LaserTurretTileEntity; import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/ArcFurnaceGUI.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/ArcFurnaceGUI.java index 3039aab..9719e02 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ArcFurnaceGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/ArcFurnaceGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/BatteryArrayGUI.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/BatteryArrayGUI.java index 3c97942..024f4d3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/BatteryArrayGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/BatteryArrayGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricBatteryArrayTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricBatteryArrayTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class BatteryArrayGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricDrillGUI.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/ElectricDrillGUI.java index 3142317..79d0eca 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricDrillGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricDrillGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class ElectricDrillGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricPumpGUI.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/ElectricPumpGUI.java index a76ce3a..ed5a9b3 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricPumpGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricPumpGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricPumpTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricPumpTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricStillGUI.java similarity index 90% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/ElectricStillGUI.java index 4835f4d..62bf2e1 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/ElectricStillGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/ElectricStillGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricStillTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricStillTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/FabricatorGUI.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/FabricatorGUI.java index 07f10be..31111c2 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/FabricatorGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/FabricatorGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java b/src/main/java/zone/moddev/mc/baseelectric/gui/GUIHelper.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/GUIHelper.java index 876b7a9..1ae594a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GUIHelper.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/GUIHelper.java @@ -1,8 +1,8 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; import cyano.poweradvantage.api.simple.SimpleMachineGUI.GUIContainer; -import zone.moddev.mc.poweradvantage.gui.FluidTankGUI; +import zone.moddev.mc.basepower.gui.FluidTankGUI; import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/GenericMachineGUI.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/GenericMachineGUI.java index fe4b50c..12eb0c0 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GenericMachineGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/GenericMachineGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class GenericMachineGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberControllerGUI.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberControllerGUI.java index ac9cd6e..91245d4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberControllerGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberControllerGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.GrowthChamberControllerTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class GrowthChamberControllerGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberGUI.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberGUI.java index b1defd3..50be1fe 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/GrowthChamberGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/GrowthChamberGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class GrowthChamberGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/OvenGUI.java similarity index 90% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/OvenGUI.java index bc319a3..76cf1b4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/OvenGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/OvenGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.Slot; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/PlasticRefineryGUI.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/PlasticRefineryGUI.java index 062d7e5..02f82ed 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/PlasticRefineryGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/PlasticRefineryGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.PlasticRefineryTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.PlasticRefineryTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; import cyano.poweradvantage.api.fluid.FluidStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/PowerGeneratorGUI.java similarity index 87% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/PowerGeneratorGUI.java index 82c01db..36301d8 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/PowerGeneratorGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/PowerGeneratorGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricGeneratorTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricGeneratorTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class PowerGeneratorGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java b/src/main/java/zone/moddev/mc/baseelectric/gui/RockCrusherGUI.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java rename to src/main/java/zone/moddev/mc/baseelectric/gui/RockCrusherGUI.java index bce6299..4af31d6 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/gui/RockCrusherGUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/gui/RockCrusherGUI.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricMachineTileEntity; import cyano.poweradvantage.api.simple.SimpleMachineGUI; -import zone.moddev.mc.poweradvantage.math.Integer2D; +import zone.moddev.mc.basepower.math.Integer2D; import net.minecraft.resources.ResourceLocation; public class RockCrusherGUI extends SimpleMachineGUI{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java b/src/main/java/zone/moddev/mc/baseelectric/init/Blocks.java similarity index 75% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Blocks.java index 4180101..bc3cb86 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Blocks.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Blocks.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import java.util.LinkedHashMap; import java.util.Map; @@ -11,29 +11,29 @@ import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.blocks.ElectricConduitBlock; -import zone.moddev.mc.electricadvantage.blocks.ElectricScaffoldBlock; -import zone.moddev.mc.electricadvantage.blocks.Ore; -import zone.moddev.mc.electricadvantage.blocks.PumpPipeBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricBatteryArrayBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricCrusherBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricFabricatorBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricFurnaceBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricOvenBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricPumpBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricStillBlock; -import zone.moddev.mc.electricadvantage.machines.GrowthChamberBlock; -import zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerBlock; -import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock; -import zone.moddev.mc.electricadvantage.machines.LEDBlock; -import zone.moddev.mc.electricadvantage.machines.LaserTurretBlock; -import zone.moddev.mc.electricadvantage.machines.PhotovoltaicGeneratorBlock; -import zone.moddev.mc.electricadvantage.machines.PlasticRefineryBlock; -import zone.moddev.mc.electricadvantage.machines.SteamPoweredElectricGeneratorBlock; -import zone.moddev.mc.poweradvantage.blocks.BlockPowerSwitch; -import zone.moddev.mc.poweradvantage.init.ItemGroups; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.blocks.ElectricConduitBlock; +import zone.moddev.mc.baseelectric.blocks.ElectricScaffoldBlock; +import zone.moddev.mc.baseelectric.blocks.Ore; +import zone.moddev.mc.baseelectric.blocks.PumpPipeBlock; +import zone.moddev.mc.baseelectric.machines.ElectricBatteryArrayBlock; +import zone.moddev.mc.baseelectric.machines.ElectricCrusherBlock; +import zone.moddev.mc.baseelectric.machines.ElectricDrillBlock; +import zone.moddev.mc.baseelectric.machines.ElectricFabricatorBlock; +import zone.moddev.mc.baseelectric.machines.ElectricFurnaceBlock; +import zone.moddev.mc.baseelectric.machines.ElectricOvenBlock; +import zone.moddev.mc.baseelectric.machines.ElectricPumpBlock; +import zone.moddev.mc.baseelectric.machines.ElectricStillBlock; +import zone.moddev.mc.baseelectric.machines.GrowthChamberBlock; +import zone.moddev.mc.baseelectric.machines.GrowthChamberControllerBlock; +import zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorBlock; +import zone.moddev.mc.baseelectric.machines.LEDBlock; +import zone.moddev.mc.baseelectric.machines.LaserTurretBlock; +import zone.moddev.mc.baseelectric.machines.PhotovoltaicGeneratorBlock; +import zone.moddev.mc.baseelectric.machines.PlasticRefineryBlock; +import zone.moddev.mc.baseelectric.machines.SteamPoweredElectricGeneratorBlock; +import zone.moddev.mc.basepower.blocks.BlockPowerSwitch; +import zone.moddev.mc.basepower.init.ItemGroups; /** Stable block registry for ElectricAdvantage 1.13. */ @Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Enchantments.java b/src/main/java/zone/moddev/mc/baseelectric/init/Enchantments.java similarity index 61% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Enchantments.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Enchantments.java index 29f3719..b5e4d35 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Enchantments.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Enchantments.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; -//import zone.moddev.mc.electricadvantage.enchanments.*; +//import zone.moddev.mc.baseelectric.enchanments.*; public abstract class Enchantments { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java b/src/main/java/zone/moddev/mc/baseelectric/init/Entities.java similarity index 78% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Entities.java index 5432fb2..d017eef 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Entities.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Entities.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import net.minecraft.world.entity.EntityType; @@ -8,24 +8,24 @@ import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.entities.HydroturbineEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricBatteryArrayTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricCrusherTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricFabricatorTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricFurnaceTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricOvenTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricPumpTileEntity; -import zone.moddev.mc.electricadvantage.machines.ElectricStillTileEntity; -import zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerTileEntity; -import zone.moddev.mc.electricadvantage.machines.GrowthChamberTileEntity; -import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorTileEntity; -import zone.moddev.mc.electricadvantage.machines.LEDTileEntity; -import zone.moddev.mc.electricadvantage.machines.LaserTurretTileEntity; -import zone.moddev.mc.electricadvantage.machines.PhotovoltaicGeneratorTileEntity; -import zone.moddev.mc.electricadvantage.machines.PlasticRefineryTileEntity; -import zone.moddev.mc.electricadvantage.machines.SteamPoweredElectricGeneratorTileEntity; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.entities.HydroturbineEntity; +import zone.moddev.mc.baseelectric.machines.ElectricBatteryArrayTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricCrusherTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricDrillTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricFabricatorTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricFurnaceTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricOvenTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricPumpTileEntity; +import zone.moddev.mc.baseelectric.machines.ElectricStillTileEntity; +import zone.moddev.mc.baseelectric.machines.GrowthChamberControllerTileEntity; +import zone.moddev.mc.baseelectric.machines.GrowthChamberTileEntity; +import zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorTileEntity; +import zone.moddev.mc.baseelectric.machines.LEDTileEntity; +import zone.moddev.mc.baseelectric.machines.LaserTurretTileEntity; +import zone.moddev.mc.baseelectric.machines.PhotovoltaicGeneratorTileEntity; +import zone.moddev.mc.baseelectric.machines.PlasticRefineryTileEntity; +import zone.moddev.mc.baseelectric.machines.SteamPoweredElectricGeneratorTileEntity; /** Stable tile/entity registrations; IDs are unchanged from 1.12. */ @Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/GUI.java b/src/main/java/zone/moddev/mc/baseelectric/init/GUI.java similarity index 90% rename from src/main/java/zone/moddev/mc/electricadvantage/init/GUI.java rename to src/main/java/zone/moddev/mc/baseelectric/init/GUI.java index 9c0e04c..aabc089 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/GUI.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/GUI.java @@ -1,8 +1,8 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; -import zone.moddev.mc.poweradvantage.PowerAdvantage; -import zone.moddev.mc.poweradvantage.registry.MachineGUIRegistry; -import zone.moddev.mc.electricadvantage.gui.*; +import zone.moddev.mc.basepower.PowerAdvantage; +import zone.moddev.mc.basepower.registry.MachineGUIRegistry; +import zone.moddev.mc.baseelectric.gui.*; public abstract class GUI { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java b/src/main/java/zone/moddev/mc/baseelectric/init/Items.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Items.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Items.java index d75100e..83a1dcc 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Items.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Items.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import java.util.LinkedHashMap; import java.util.Map; @@ -8,9 +8,9 @@ import net.minecraftforge.event.RegistryEvent; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.items.BatteryItem; -import zone.moddev.mc.poweradvantage.init.ItemGroups; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.items.BatteryItem; +import zone.moddev.mc.basepower.init.ItemGroups; /** Stable item registry for ElectricAdvantage 1.13. */ @Mod.EventBusSubscriber(modid = ElectricAdvantage.MODID, bus = Mod.EventBusSubscriber.Bus.MOD) diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java b/src/main/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGen.java similarity index 96% rename from src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java rename to src/main/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGen.java index e28ef8a..98814e6 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGen.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGen.java @@ -1,11 +1,11 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import java.nio.file.Files; import java.nio.file.Path; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.fml.ModList; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; import zone.moddev.mc.orespawn.api.GeologyFamily; import zone.moddev.mc.orespawn.api.OrePattern; import zone.moddev.mc.orespawn.api.OreSpawnApi; @@ -32,8 +32,8 @@ public static void register(Path configDirectory) { : baseMineralsLoaded ? "baseminerals" : ElectricAdvantage.MODID; String lithiumOwner = baseMineralsLoaded ? "baseminerals" : ElectricAdvantage.MODID; ElectricAdvantage.LOGGER.info( - "OreSpawn sulfur candidates=[mineralogy, baseminerals, electricadvantage], " - + "selected fresh-world owner={}; lithium candidates=[baseminerals, electricadvantage], " + "OreSpawn sulfur candidates=[mineralogy, baseminerals, baseelectric], " + + "selected fresh-world owner={}; lithium candidates=[baseminerals, baseelectric], " + "selected fresh-world owner={}; explicit override={}", sulfurOwner, lithiumOwner, describeOverride(configDirectory)); if (!accepted) { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java b/src/main/java/zone/moddev/mc/baseelectric/init/Power.java similarity index 95% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Power.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Power.java index 408a0fe..fbf6952 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Power.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Power.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import net.minecraft.world.damagesource.DamageSource; import cyano.poweradvantage.api.ConduitType; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Recipes.java b/src/main/java/zone/moddev/mc/baseelectric/init/Recipes.java similarity index 88% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Recipes.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Recipes.java index 1a22083..6b3be26 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Recipes.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Recipes.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; /** * Electric Advantage 1.13 recipes are data driven. This hook remains so the diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/TreasureChests.java b/src/main/java/zone/moddev/mc/baseelectric/init/TreasureChests.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/init/TreasureChests.java rename to src/main/java/zone/moddev/mc/baseelectric/init/TreasureChests.java index 556f4b2..55b1062 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/TreasureChests.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/TreasureChests.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; import java.io.IOException; import java.nio.charset.Charset; @@ -48,7 +48,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:psu\",\n" + + " \"name\": \"baseelectric:psu\",\n" + " \"weight\": 6,\n" + " \"functions\": [\n" + " {\n" + @@ -62,7 +62,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:electric_conduit\",\n" + + " \"name\": \"baseelectric:electric_conduit\",\n" + " \"weight\": 12,\n" + " \"functions\": [\n" + " {\n" + @@ -76,7 +76,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:led_bar\",\n" + + " \"name\": \"baseelectric:led_bar\",\n" + " \"weight\": 6,\n" + " \"functions\": [\n" + " {\n" + @@ -90,7 +90,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:solder\",\n" + + " \"name\": \"baseelectric:solder\",\n" + " \"weight\": 6,\n" + " \"functions\": [\n" + " {\n" + @@ -104,7 +104,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:integrated_circuit\",\n" + + " \"name\": \"baseelectric:integrated_circuit\",\n" + " \"weight\": 3,\n" + " \"functions\": [\n" + " {\n" + @@ -118,7 +118,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:lead_acid_battery\",\n" + + " \"name\": \"baseelectric:lead_acid_battery\",\n" + " \"weight\": 8,\n" + " \"functions\": [\n" + " {\n" + @@ -132,7 +132,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:nickel_hydride_battery\",\n" + + " \"name\": \"baseelectric:nickel_hydride_battery\",\n" + " \"weight\": 4,\n" + " \"functions\": [\n" + " {\n" + @@ -146,7 +146,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:alkaline_battery\",\n" + + " \"name\": \"baseelectric:alkaline_battery\",\n" + " \"weight\": 2,\n" + " \"functions\": [\n" + " {\n" + @@ -160,7 +160,7 @@ private static void writeLootFile(Path file, String content){ " },\n" + " {\n" + " \"type\": \"item\",\n" + - " \"name\": \"electricadvantage:lithium_battery\",\n" + + " \"name\": \"baseelectric:lithium_battery\",\n" + " \"weight\": 1,\n" + " \"functions\": [\n" + " {\n" + diff --git a/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java b/src/main/java/zone/moddev/mc/baseelectric/init/Villages.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java rename to src/main/java/zone/moddev/mc/baseelectric/init/Villages.java index a641b48..8017f94 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/init/Villages.java +++ b/src/main/java/zone/moddev/mc/baseelectric/init/Villages.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import java.util.List; import net.minecraft.world.entity.npc.VillagerProfession; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java b/src/main/java/zone/moddev/mc/baseelectric/items/BatteryItem.java similarity index 95% rename from src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java rename to src/main/java/zone/moddev/mc/baseelectric/items/BatteryItem.java index 0a82fe4..a33776d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/items/BatteryItem.java +++ b/src/main/java/zone/moddev/mc/baseelectric/items/BatteryItem.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.items; +package zone.moddev.mc.baseelectric.items; -import zone.moddev.mc.electricadvantage.common.IRechargeableItem; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.common.IRechargeableItem; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.item.TooltipFlag; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayBlock.java similarity index 90% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayBlock.java index 7f9f951..64e277d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayTileEntity.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayTileEntity.java index 0654208..ee7348e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricBatteryArrayTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricBatteryArrayTileEntity.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.common.IRechargeableItem; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.common.IRechargeableItem; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; import net.minecraft.world.item.Item; @@ -11,7 +11,7 @@ public class ElectricBatteryArrayTileEntity extends ElectricGeneratorTileEntity{ public ElectricBatteryArrayTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state){ - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_BATTERY_ARRAY, pos, state, "tile.electricadvantage.electric_battery_array.name",8); + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_BATTERY_ARRAY, pos, state, "tile.baseelectric.electric_battery_array.name",8); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherBlock.java similarity index 90% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherBlock.java index 48af95d..893429f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherTileEntity.java similarity index 92% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherTileEntity.java index 59c56de..4dae2d8 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricCrusherTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricCrusherTileEntity.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.compat.BaseMetalsCompat; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.compat.BaseMetalsCompat; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; @@ -22,7 +22,7 @@ public class ElectricCrusherTileEntity extends ElectricMachineTileEntity{ public ElectricCrusherTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_CRUSHER, pos, state, "tile.electricadvantage.electric_crusher.name", + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_CRUSHER, pos, state, "tile.baseelectric.electric_crusher.name", 3, 6, 0); Arrays.fill(smashTime, (short)0); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillBlock.java similarity index 96% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillBlock.java index b37fedc..788b1ab 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.GUIBlock; @@ -23,8 +23,8 @@ import net.minecraft.world.level.Explosion; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.basepower.conduitnetwork.ConduitRegistry; public class ElectricDrillBlock extends GUIBlock implements ITypedConduit { public static final DirectionProperty FACING = BlockStateProperties.FACING; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillTileEntity.java similarity index 96% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillTileEntity.java index c76a5cb..50d273d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricDrillTileEntity.java @@ -1,8 +1,8 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Blocks; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.poweradvantage.util.InventoryWrapper; +import zone.moddev.mc.baseelectric.init.Blocks; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.basepower.util.InventoryWrapper; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.entity.Entity; @@ -50,7 +50,7 @@ public class ElectricDrillTileEntity extends ElectricMachineTileEntity{ private boolean deferred = false; public ElectricDrillTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_DRILL, pos, state, "tile.electricadvantage.electric_drill.name", + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_DRILL, pos, state, "tile.baseelectric.electric_drill.name", 0, 6, 0); } @@ -161,7 +161,7 @@ private boolean followTrack(){ Arrays.fill(this.getInventory(), null); // replace this block with steam pipe - w.setBlockAndUpdate(getBlockPos().relative(getFacing()), zone.moddev.mc.poweradvantage.init.Blocks.steel_frame.defaultBlockState()); + w.setBlockAndUpdate(getBlockPos().relative(getFacing()), zone.moddev.mc.basepower.init.Blocks.steel_frame.defaultBlockState()); w.setBlock(getBlockPos(), Blocks.electric_conduit.defaultBlockState(), 2); @@ -246,7 +246,7 @@ public void onDataFieldUpdate() { if(hitEnd){ boolean moved = followTrack(); if(moved){ - zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry.getInstance() + zone.moddev.mc.basepower.conduitnetwork.ConduitRegistry.getInstance() .conduitBlockRemovedEvent(getLevel(), getBlockPos(), getEnergyType()); return; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorBlock.java similarity index 86% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorBlock.java index 28f6a3f..891ba1a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorTileEntity.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorTileEntity.java index fc21eb0..846dbae 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFabricatorTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFabricatorTileEntity.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.util.crafting.RecipeDeconstructor; -import zone.moddev.mc.electricadvantage.util.crafting.SerializedInventory; +import zone.moddev.mc.baseelectric.util.crafting.RecipeDeconstructor; +import zone.moddev.mc.baseelectric.util.crafting.SerializedInventory; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; @@ -19,7 +19,7 @@ public class ElectricFabricatorTileEntity extends ElectricMachineTileEntity { private final int progressGoal = 200; public ElectricFabricatorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FABRICATOR, pos, state, "tile.electricadvantage.electric_fabricator.name", 12, 2, 1); + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_FABRICATOR, pos, state, "tile.baseelectric.electric_fabricator.name", 12, 2, 1); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceBlock.java similarity index 87% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceBlock.java index d9ec45b..aca7dbe 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceTileEntity.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceTileEntity.java index e3dbf6c..5214a5b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricFurnaceTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricFurnaceTileEntity.java @@ -1,8 +1,8 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import java.util.Arrays; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; @@ -20,7 +20,7 @@ public class ElectricFurnaceTileEntity extends ElectricMachineTileEntity{ public ElectricFurnaceTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_FURNACE, pos, state, "tile.electricadvantage.electric_furnace.name", + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_FURNACE, pos, state, "tile.baseelectric.electric_furnace.name", 4, 6, 0); Arrays.fill(burnTime, (short)0); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorBlock.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorBlock.java index dbe3c07..78c65cc 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; @@ -14,7 +14,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; public abstract class ElectricGeneratorBlock extends BlockSimplePowerMachine { public static final BooleanProperty ACTIVE = BooleanProperty.create("active"); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorTileEntity.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorTileEntity.java index 1bc9331..1c6797c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricGeneratorTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.entity.player.Player; @@ -16,7 +16,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.Level; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; import java.util.Arrays; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineBlock.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineBlock.java index 81503a6..f8b8f6d 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; @@ -14,7 +14,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.world.level.BlockGetter; import net.minecraft.world.level.Level; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; public abstract class ElectricMachineBlock extends BlockSimplePowerMachine { public static final BooleanProperty ACTIVE = BooleanProperty.create("active"); diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineTileEntity.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineTileEntity.java index 028ec2b..c4c68f9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricMachineTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricMachineTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.entity.player.Player; @@ -20,7 +20,7 @@ import net.minecraft.network.chat.TextComponent; import net.minecraft.world.level.Level; import net.minecraft.world.item.crafting.RecipeType; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; import java.util.Arrays; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenBlock.java similarity index 87% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenBlock.java index 8992a93..a0c4ed4 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenTileEntity.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenTileEntity.java index 1c1c743..439f403 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricOvenTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricOvenTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; @@ -14,7 +14,7 @@ public class ElectricOvenTileEntity extends ElectricMachineTileEntity{ private short progress = 0; public ElectricOvenTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_OVEN, pos, state, "tile.electricadvantage.electric_oven.name", 1, 1, 0); + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_OVEN, pos, state, "tile.baseelectric.electric_oven.name", 1, 1, 0); } @Override diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpBlock.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpBlock.java index 649a0d1..9030fdb 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpBlock.java @@ -1,11 +1,11 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Blocks; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Blocks; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; -import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; -import zone.moddev.mc.poweradvantage.init.Fluids; +import zone.moddev.mc.basepower.conduitnetwork.ConduitRegistry; +import zone.moddev.mc.basepower.init.Fluids; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.core.BlockPos; import net.minecraft.world.level.Explosion; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpTileEntity.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpTileEntity.java index d814b4e..066961b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricPumpTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricPumpTileEntity.java @@ -1,13 +1,13 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.util.LegacyFluidHandler; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.util.LegacyFluidHandler; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PowerRequest; -import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; -import zone.moddev.mc.poweradvantage.init.Fluids; -import zone.moddev.mc.poweradvantage.util.FluidIdHelper; +import zone.moddev.mc.basepower.conduitnetwork.ConduitRegistry; +import zone.moddev.mc.basepower.init.Fluids; +import zone.moddev.mc.basepower.util.FluidIdHelper; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.BucketPickup; import net.minecraft.sounds.SoundEvents; @@ -44,7 +44,7 @@ public class ElectricPumpTileEntity extends ElectricMachineTileEntity implements public ElectricPumpTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_PUMP, pos, state, "tile.electricadvantage.electric_pump.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{ENERGY_COST_PUMP + 256 * ENERGY_COST_VERTICAL,1000f}); + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_PUMP, pos, state, "tile.baseelectric.electric_pump.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{ENERGY_COST_PUMP + 256 * ENERGY_COST_VERTICAL,1000f}); tank = new FluidTank(FluidTank.BUCKET_VOLUME); } @@ -61,12 +61,12 @@ public void tickUpdate(boolean isServerWorld) { Level w = getLevel(); boolean success = false; BlockPos target = this.getBlockPos().below(); - while(target.getY() > 0 && w.getBlockState(target).getBlock() == zone.moddev.mc.electricadvantage.init.Blocks.pump_pipe_electric){ + while(target.getY() > 0 && w.getBlockState(target).getBlock() == zone.moddev.mc.baseelectric.init.Blocks.pump_pipe_electric){ target = target.below(); } if(target.getY() > 0 && w.isEmptyBlock(target) && getEnergy() >= ENERGY_COST_PIPE){ // place pipe - w.setBlockAndUpdate(target, zone.moddev.mc.electricadvantage.init.Blocks.pump_pipe_electric.defaultBlockState()); + w.setBlockAndUpdate(target, zone.moddev.mc.baseelectric.init.Blocks.pump_pipe_electric.defaultBlockState()); this.subtractEnergy(ENERGY_COST_PIPE, Power.ELECTRIC_POWER); timeUntilNextPump = PIPE_INTERVAL; playSoundEffect(target.getX()+0.5, target.getY()+0.5, target.getZ()+0.5, SoundEvents.STONE_STEP, 0.3f, 1f); @@ -181,7 +181,7 @@ public void powerUpdate(){ if(this.getTank().getFluidAmount() > 0){ ConduitType type = Fluids.fluidToConduitType(getTank().getFluid().getFluid()); float availableAmount = getTank().getFluidAmount(); - float delta = ConduitRegistry.transmitPowerToConsumers(availableAmount, zone.moddev.mc.poweradvantage.init.Fluids.fluidConduit_general, type, + float delta = ConduitRegistry.transmitPowerToConsumers(availableAmount, zone.moddev.mc.basepower.init.Fluids.fluidConduit_general, type, PowerRequest.LAST_PRIORITY, getLevel(), getBlockPos(), this); if(delta > 0){ getTank().drain(Math.max((int)delta,1),true); // no free energy! diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillBlock.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillBlock.java index a57c726..4488856 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillBlock.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; -import zone.moddev.mc.poweradvantage.init.Fluids; +import zone.moddev.mc.basepower.init.Fluids; import net.minecraft.world.level.Level; public class ElectricStillBlock extends ElectricMachineBlock{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillTileEntity.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillTileEntity.java index 37a789f..c07fe16 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/ElectricStillTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/ElectricStillTileEntity.java @@ -1,15 +1,15 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.util.LegacyFluidHandler; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.util.LegacyFluidHandler; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.fluid.FluidRequest; -import zone.moddev.mc.poweradvantage.conduitnetwork.ConduitRegistry; -import zone.moddev.mc.poweradvantage.init.Fluids; -import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipe; -import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipeRegistry; -import zone.moddev.mc.poweradvantage.util.FluidIdHelper; +import zone.moddev.mc.basepower.conduitnetwork.ConduitRegistry; +import zone.moddev.mc.basepower.init.Fluids; +import zone.moddev.mc.basepower.registry.still.recipe.DistillationRecipe; +import zone.moddev.mc.basepower.registry.still.recipe.DistillationRecipeRegistry; +import zone.moddev.mc.basepower.util.FluidIdHelper; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; @@ -33,7 +33,7 @@ public class ElectricStillTileEntity extends ElectricMachineTileEntity implement private final int[] dataSyncArray = new int[5]; public ElectricStillTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.ELECTRIC_STILL, pos, state, "tile.electricadvantage.electric_still.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,1000f}); + super(zone.moddev.mc.baseelectric.init.Entities.ELECTRIC_STILL, pos, state, "tile.baseelectric.electric_still.name", 0, 0, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,1000f}); outputTank = new FluidTank(FluidTank.BUCKET_VOLUME ); inputTank = new FluidTank(FluidTank.BUCKET_VOLUME); } @@ -232,7 +232,7 @@ public void powerUpdate(){ if(this.getOutputTank().getFluidAmount() > 0){ ConduitType type = Fluids.fluidToConduitType(getOutputTank().getFluid().getFluid()); float availableAmount = getOutputTank().getFluidAmount(); - float delta = ConduitRegistry.transmitPowerToConsumers(availableAmount, zone.moddev.mc.poweradvantage.init.Fluids.fluidConduit_general, type, + float delta = ConduitRegistry.transmitPowerToConsumers(availableAmount, zone.moddev.mc.basepower.init.Fluids.fluidConduit_general, type, PowerRequest.LAST_PRIORITY, getLevel(), getBlockPos(), this); if(delta > 0){ getOutputTank().drain(Math.max((int)delta,1),true); // no free energy! diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberBlock.java similarity index 81% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberBlock.java index cf66eef..751a379 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberBlock.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.world.level.material.Material; import net.minecraft.world.level.Level; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerBlock.java similarity index 92% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerBlock.java index a40b17e..d0951ee 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerBlock.java @@ -1,10 +1,10 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PoweredEntity; -import zone.moddev.mc.poweradvantage.init.Fluids; +import zone.moddev.mc.basepower.init.Fluids; import net.minecraft.world.level.material.Material; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.core.BlockPos; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerTileEntity.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerTileEntity.java index 8cc6e55..7327e10 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberControllerTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberControllerTileEntity.java @@ -1,14 +1,14 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.block.state.BlockState; -import zone.moddev.mc.electricadvantage.util.LegacyFluidHandler; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.util.LegacyFluidHandler; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.fluid.FluidRequest; -import zone.moddev.mc.poweradvantage.init.Fluids; +import zone.moddev.mc.basepower.init.Fluids; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.core.Direction; @@ -41,7 +41,7 @@ public class GrowthChamberControllerTileEntity extends cyano.poweradvantage.api. private final int[] dataSyncArray = new int[4]; public GrowthChamberControllerTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER_CONTROLLER, pos, state, types, capacities, "tile.electricadvantage.growth_chamber_controller.name"); + super(zone.moddev.mc.baseelectric.init.Entities.GROWTH_CHAMBER_CONTROLLER, pos, state, types, capacities, "tile.baseelectric.growth_chamber_controller.name"); tank = new FluidTank((int)capacities[2]); inventory = new ItemStack[1]; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberTileEntity.java similarity index 94% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberTileEntity.java index 867ef63..0ea93d9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/GrowthChamberTileEntity.java @@ -1,8 +1,8 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.electricadvantage.util.farming.VirtualCrop; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.baseelectric.util.farming.VirtualCrop; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; import net.minecraft.world.entity.item.ItemEntity; @@ -24,7 +24,7 @@ public class GrowthChamberTileEntity extends ElectricMachineTileEntity { private byte[] pendingGrowth; public GrowthChamberTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.GROWTH_CHAMBER, pos, state, "tile.electricadvantage.growth_chamber.name",Power.GROWTHCHAMBER_POWER, ENERGY_PER_TICK*64, GROWTH_AREA, 6, 0); + super(zone.moddev.mc.baseelectric.init.Entities.GROWTH_CHAMBER, pos, state, "tile.baseelectric.growth_chamber.name",Power.GROWTHCHAMBER_POWER, ENERGY_PER_TICK*64, GROWTH_AREA, 6, 0); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorBlock.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorBlock.java index b5477b7..723e50c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.core.BlockPos; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorTileEntity.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorTileEntity.java index 9cfece6..6cba25c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/HydroelectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/HydroelectricGeneratorTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.entities.HydroturbineEntity; +import zone.moddev.mc.baseelectric.entities.HydroturbineEntity; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.world.phys.AABB; @@ -20,7 +20,7 @@ public class HydroelectricGeneratorTileEntity extends ElectricGeneratorTileEntit private boolean isInitialized; public HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.HYDROELECTRIC_GENERATOR, pos, state, "tile.electricadvantage.hydroelectric_generator.name", 0); + super(zone.moddev.mc.baseelectric.init.Entities.HYDROELECTRIC_GENERATOR, pos, state, "tile.baseelectric.hydroelectric_generator.name", 0); isInitialized = false; } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/LEDBlock.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/LEDBlock.java index 836ee6f..b8c2b2a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/LEDBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.ConduitType; import net.minecraft.world.level.block.Block; @@ -12,8 +12,8 @@ import net.minecraft.world.level.Level; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.entity.BlockEntityTicker; -import zone.moddev.mc.electricadvantage.init.Entities; -import zone.moddev.mc.electricadvantage.blocks.ElectricConduitBlock; +import zone.moddev.mc.baseelectric.init.Entities; +import zone.moddev.mc.baseelectric.blocks.ElectricConduitBlock; /** Electric conduit that consumes a small amount of power to emit light. */ public class LEDBlock extends ElectricConduitBlock implements EntityBlock { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/LEDTileEntity.java similarity index 89% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/LEDTileEntity.java index 156c6a9..00d51b8 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LEDTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/LEDTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.simple.TileEntitySimplePowerMachine; @@ -14,7 +14,7 @@ public class LEDTileEntity extends TileEntitySimplePowerMachine { private static final float ENERGY_COST = 0.125f; public LEDTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.LED, pos, state, Power.ELECTRIC_POWER, ENERGY_COST * 4, "tile.electricadvantage.led_bar.name"); + super(zone.moddev.mc.baseelectric.init.Entities.LED, pos, state, Power.ELECTRIC_POWER, ENERGY_COST * 4, "tile.baseelectric.led_bar.name"); } private final ItemStack[] none = new ItemStack[0]; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretBlock.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretBlock.java index bab9d29..fcf8d08 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.material.Material; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretTileEntity.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretTileEntity.java index 8938fca..9df170a 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/LaserTurretTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/LaserTurretTileEntity.java @@ -1,7 +1,7 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.entity.Entity; @@ -85,7 +85,7 @@ public class LaserTurretTileEntity extends ElectricMachineTileEntity{ public LaserTurretTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state){ - super(zone.moddev.mc.electricadvantage.init.Entities.LASER_TURRET, pos, state, "tile.electricadvantage.laser_turret.name",MAX_BUFFER,0,0,0); + super(zone.moddev.mc.baseelectric.init.Entities.LASER_TURRET, pos, state, "tile.baseelectric.laser_turret.name",MAX_BUFFER,0,0,0); SoundEvent soundEvent = ElectricAdvantage.INSTANCE == null ? SoundEvents.NOTE_BLOCK_BASS : ForgeRegistries.SOUND_EVENTS.getValue(new ResourceLocation(ElectricAdvantage.INSTANCE.LASER_SOUND)); if(soundEvent == null){ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorBlock.java similarity index 93% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorBlock.java index 5ce0213..d99f095 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorBlock.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.world.level.block.SoundType; import net.minecraft.world.level.material.Material; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorTileEntity.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorTileEntity.java index 3e75d28..179b5b9 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PhotovoltaicGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/PhotovoltaicGeneratorTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; import net.minecraft.core.BlockPos; @@ -17,7 +17,7 @@ public class PhotovoltaicGeneratorTileEntity extends ElectricGeneratorTileEntity private float powerOutput = 0; public PhotovoltaicGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.PHOTOVOLTAIC_GENERATOR, pos, state, "tile.electricadvantage.photovoltaic_generator.name", 0); + super(zone.moddev.mc.baseelectric.init.Entities.PHOTOVOLTAIC_GENERATOR, pos, state, "tile.baseelectric.photovoltaic_generator.name", 0); } @Override diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryBlock.java similarity index 85% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryBlock.java index bba003b..97e2d7e 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryBlock.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; -import zone.moddev.mc.poweradvantage.init.Fluids; +import zone.moddev.mc.basepower.init.Fluids; public class PlasticRefineryBlock extends ElectricMachineBlock{ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryTileEntity.java similarity index 95% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryTileEntity.java index 4616539..98461bc 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/PlasticRefineryTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/PlasticRefineryTileEntity.java @@ -1,15 +1,15 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.util.LegacyFluidHandler; -import zone.moddev.mc.electricadvantage.init.Items; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.util.LegacyFluidHandler; +import zone.moddev.mc.baseelectric.init.Items; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PowerRequest; import cyano.poweradvantage.api.fluid.FluidRequest; -import zone.moddev.mc.poweradvantage.init.Fluids; -import zone.moddev.mc.poweradvantage.util.FluidIdHelper; +import zone.moddev.mc.basepower.init.Fluids; +import zone.moddev.mc.basepower.util.FluidIdHelper; import net.minecraft.sounds.SoundEvents; import net.minecraft.world.item.ItemStack; import net.minecraft.nbt.CompoundTag; @@ -37,7 +37,7 @@ public class PlasticRefineryTileEntity extends ElectricMachineTileEntity impleme private final int[] dataSyncArray = new int[4]; public PlasticRefineryTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.PLASTIC_REFINERY, pos, state, "tile.electricadvantage.plastic_refinery.name", + super(zone.moddev.mc.baseelectric.init.Entities.PLASTIC_REFINERY, pos, state, "tile.baseelectric.plastic_refinery.name", 0, 1, 0, new ConduitType[]{Power.ELECTRIC_POWER, Fluids.fluidConduit_general},new float[]{500f,2000f}); tank = new FluidTank(FluidTank.BUCKET_VOLUME * 2); } diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java b/src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorBlock.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorBlock.java index ae8f2a4..8a78510 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorBlock.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorBlock.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java b/src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorTileEntity.java similarity index 92% rename from src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java rename to src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorTileEntity.java index d7d2096..2db2a9b 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/machines/SteamPoweredElectricGeneratorTileEntity.java +++ b/src/main/java/zone/moddev/mc/baseelectric/machines/SteamPoweredElectricGeneratorTileEntity.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.PowerConnectorContext; import cyano.poweradvantage.api.PowerRequest; @@ -9,7 +9,7 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.core.Direction; -import static zone.moddev.mc.electricadvantage.machines.SteamPoweredElectricGeneratorBlock.STEAM_POWER; +import static zone.moddev.mc.baseelectric.machines.SteamPoweredElectricGeneratorBlock.STEAM_POWER; public class SteamPoweredElectricGeneratorTileEntity extends ElectricGeneratorTileEntity{ @@ -25,7 +25,7 @@ public class SteamPoweredElectricGeneratorTileEntity extends ElectricGeneratorTi private final int[] dataArray = new int[3]; public SteamPoweredElectricGeneratorTileEntity(net.minecraft.core.BlockPos pos, net.minecraft.world.level.block.state.BlockState state) { - super(zone.moddev.mc.electricadvantage.init.Entities.STEAM_POWERED_ELECTRIC_GENERATOR, pos, state, "tile.electricadvantage.steam_powered_generator.name", 0, new ConduitType[]{Power.ELECTRIC_POWER,STEAM_POWER}, new float[]{1000f,32f}); + super(zone.moddev.mc.baseelectric.init.Entities.STEAM_POWERED_ELECTRIC_GENERATOR, pos, state, "tile.baseelectric.steam_powered_generator.name", 0, new ConduitType[]{Power.ELECTRIC_POWER,STEAM_POWER}, new float[]{1000f,32f}); } @Override public void powerUpdate(){ diff --git a/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java b/src/main/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrations.java similarity index 66% rename from src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java rename to src/main/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrations.java index 9263a4b..41475ba 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrations.java +++ b/src/main/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrations.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.migration; +package zone.moddev.mc.baseelectric.migration; import cyano.poweradvantage.api.migration.LegacyMigrationApi; import cyano.poweradvantage.api.simple.BlockSimplePowerMachine; @@ -6,14 +6,14 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.resources.ResourceLocation; import net.minecraft.core.Direction; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricGeneratorBlock; -import zone.moddev.mc.electricadvantage.machines.ElectricMachineBlock; -import zone.moddev.mc.electricadvantage.machines.LEDBlock; -import zone.moddev.mc.poweradvantage.blocks.BlockPowerSwitch; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.baseelectric.machines.ElectricDrillBlock; +import zone.moddev.mc.baseelectric.machines.ElectricGeneratorBlock; +import zone.moddev.mc.baseelectric.machines.ElectricMachineBlock; +import zone.moddev.mc.baseelectric.machines.LEDBlock; +import zone.moddev.mc.basepower.blocks.BlockPowerSwitch; -/** Registers ElectricAdvantage's 1.10 and 1.12 identities with the shared migration hook. */ +/** Registers previous Electric Advantage and baseElectric saves with the shared migration hook. */ public final class ElectricLegacyMigrations { private static boolean registered; @@ -22,7 +22,7 @@ private ElectricLegacyMigrations() {} public static synchronized void register() { if (registered) return; - LegacyMigrationApi.registerNamespace(ElectricAdvantage.MODID); + LegacyMigrationApi.registerNamespaceAlias(ElectricAdvantage.LEGACY_MODID, ElectricAdvantage.MODID); for (String path : new String[] { "electric_conduit", "li_ore", "sulfur_ore", "electric_track", "laser_turret", "laser_turret_evil", "led_bar", "photovoltaic_generator", @@ -40,31 +40,26 @@ public static synchronized void register() { "led", "hydroelectric_generator", "photovoltaic_generator", "steam_powered_electric_generator", "electric_battery_array", "electric_pump", "electric_still", "plastic_refinery" }) { - registerTile(path); + LegacyMigrationApi.registerTileEntityAliases(id(path)); } - LegacyMigrationApi.registerTileEntityAlias("electricadvantage.l_e_d", id("led").toString()); - LegacyMigrationApi.registerTileEntityAlias("electricadvantage:l_e_d", id("led").toString()); - LegacyMigrationApi.registerTileEntityAlias("minecraft:electricadvantage.l_e_d", id("led").toString()); - + String led = id("led").toString(); String hydroturbine = id("hydroturbine").toString(); - LegacyMigrationApi.registerEntityAlias(hydroturbine, hydroturbine); - LegacyMigrationApi.registerEntityAlias("electricadvantage.hydroturbine", hydroturbine); - LegacyMigrationApi.registerEntityAlias("minecraft:electricadvantage.hydroturbine", hydroturbine); + for (String namespace : new String[] {ElectricAdvantage.LEGACY_MODID, ElectricAdvantage.MODID}) { + LegacyMigrationApi.registerTileEntityAlias(namespace + ".l_e_d", led); + LegacyMigrationApi.registerTileEntityAlias(namespace + ":l_e_d", led); + LegacyMigrationApi.registerTileEntityAlias("minecraft:" + namespace + ".l_e_d", led); + LegacyMigrationApi.registerEntityAlias(namespace + ":hydroturbine", hydroturbine); + LegacyMigrationApi.registerEntityAlias(namespace + ".hydroturbine", hydroturbine); + LegacyMigrationApi.registerEntityAlias("minecraft:" + namespace + ".hydroturbine", hydroturbine); + String repeated = namespace + "." + namespace + ".hydroturbine"; + LegacyMigrationApi.registerEntityAlias(repeated, hydroturbine); + LegacyMigrationApi.registerEntityAlias("minecraft:" + repeated, hydroturbine); + } LegacyMigrationApi.registerEntityAlias("minecraft:electricadvantage.Hydroturbine", hydroturbine); LegacyMigrationApi.registerEntityAlias("electricadvantage.electricadvantage.Hydroturbine", hydroturbine); - LegacyMigrationApi.registerEntityAlias( - "minecraft:electricadvantage.electricadvantage.hydroturbine", hydroturbine); registered = true; } - private static void registerTile(String path) { - String current = id(path).toString(); - LegacyMigrationApi.registerTileEntityAlias(current, current); - LegacyMigrationApi.registerTileEntityAlias(ElectricAdvantage.MODID + "." + path, current); - LegacyMigrationApi.registerTileEntityAlias( - "minecraft:" + ElectricAdvantage.MODID + "." + path, current); - } - private static BlockState decodeState(Block block, int metadata) { if (block instanceof ElectricDrillBlock) { return block.defaultBlockState() diff --git a/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java b/src/main/java/zone/moddev/mc/baseelectric/recipe/RecipeConditions.java similarity index 91% rename from src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java rename to src/main/java/zone/moddev/mc/baseelectric/recipe/RecipeConditions.java index a04a006..300b229 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditions.java +++ b/src/main/java/zone/moddev/mc/baseelectric/recipe/RecipeConditions.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.recipe; +package zone.moddev.mc.baseelectric.recipe; import java.util.Locale; import com.google.gson.JsonObject; @@ -7,9 +7,9 @@ import net.minecraftforge.common.crafting.CraftingHelper; import net.minecraftforge.common.crafting.conditions.ICondition; import net.minecraftforge.common.crafting.conditions.IConditionSerializer; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; -import zone.moddev.mc.poweradvantage.PowerAdvantage; -import zone.moddev.mc.poweradvantage.RecipeMode; +import zone.moddev.mc.baseelectric.ElectricAdvantage; +import zone.moddev.mc.basepower.PowerAdvantage; +import zone.moddev.mc.basepower.RecipeMode; /** Registers the data-pack conditions used by ElectricAdvantage recipes. */ public final class RecipeConditions { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/LegacyFluidHandler.java b/src/main/java/zone/moddev/mc/baseelectric/util/LegacyFluidHandler.java similarity index 82% rename from src/main/java/zone/moddev/mc/electricadvantage/util/LegacyFluidHandler.java rename to src/main/java/zone/moddev/mc/baseelectric/util/LegacyFluidHandler.java index 3e4124d..255287c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/LegacyFluidHandler.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/LegacyFluidHandler.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.util; +package zone.moddev.mc.baseelectric.util; import cyano.poweradvantage.api.fluid.IAdvantageFluidHandler; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemMatcher.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java rename to src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemMatcher.java index 69b7bfb..25b489f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemMatcher.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemMatcher.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.util.crafting; +package zone.moddev.mc.baseelectric.util.crafting; import java.util.ArrayList; import java.util.Arrays; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemRecord.java similarity index 92% rename from src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java rename to src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemRecord.java index 988523f..c9e3a6c 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/ItemRecord.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/ItemRecord.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.util.crafting; +package zone.moddev.mc.baseelectric.util.crafting; import net.minecraft.world.item.ItemStack; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/RecipeDeconstructor.java similarity index 97% rename from src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java rename to src/main/java/zone/moddev/mc/baseelectric/util/crafting/RecipeDeconstructor.java index b76d0ab..b136089 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/RecipeDeconstructor.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/RecipeDeconstructor.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.util.crafting; +package zone.moddev.mc.baseelectric.util.crafting; import java.util.ArrayList; import java.util.Arrays; @@ -12,7 +12,7 @@ import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.level.Level; -import zone.moddev.mc.electricadvantage.ElectricAdvantage; +import zone.moddev.mc.baseelectric.ElectricAdvantage; /** Recursive crafting solver used by the Electric Fabricator. */ public final class RecipeDeconstructor { diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/SerializedInventory.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java rename to src/main/java/zone/moddev/mc/baseelectric/util/crafting/SerializedInventory.java index 9f146f5..7444645 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/crafting/SerializedInventory.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/crafting/SerializedInventory.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.util.crafting; +package zone.moddev.mc.baseelectric.util.crafting; import java.util.ArrayList; import java.util.Arrays; diff --git a/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java b/src/main/java/zone/moddev/mc/baseelectric/util/farming/VirtualCrop.java similarity index 98% rename from src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java rename to src/main/java/zone/moddev/mc/baseelectric/util/farming/VirtualCrop.java index 6fc101d..61b601f 100644 --- a/src/main/java/zone/moddev/mc/electricadvantage/util/farming/VirtualCrop.java +++ b/src/main/java/zone/moddev/mc/baseelectric/util/farming/VirtualCrop.java @@ -1,6 +1,6 @@ -package zone.moddev.mc.electricadvantage.util.farming; +package zone.moddev.mc.baseelectric.util.farming; -import zone.moddev.mc.electricadvantage.util.crafting.ItemRecord; +import zone.moddev.mc.baseelectric.util.crafting.ItemRecord; import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.StemBlock; import net.minecraft.world.level.block.state.properties.Property; diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml index 7b80213..5315889 100644 --- a/src/main/resources/META-INF/mods.toml +++ b/src/main/resources/META-INF/mods.toml @@ -1,42 +1,42 @@ modLoader="javafml" loaderVersion="${loader_version_range}" -issueTrackerURL="https://github.com/MinecraftModDevelopmentMods/ElectricAdvantage/issues" +issueTrackerURL="https://github.com/MinecraftModDevelopmentMods/baseElectric/issues" license="GPL-3.0-only" [[mods]] -modId="electricadvantage" +modId="baseelectric" version="${version}" -displayName="Electric Advantage" -displayURL="https://www.curseforge.com/minecraft/mc-mods/electric-advantage" +displayName="baseElectric" +displayURL="https://www.curseforge.com/minecraft/mc-mods/baseelectric" authors="DrCyano" description=''' -Electric-powered machines and infrastructure for the Power Advantage platform. +Electric-powered machines and infrastructure for basePower. ''' -[[dependencies.electricadvantage]] +[[dependencies.baseelectric]] modId="forge" mandatory=true versionRange="${forge_version_range}" ordering="NONE" side="BOTH" -[[dependencies.electricadvantage]] +[[dependencies.baseelectric]] modId="minecraft" mandatory=true versionRange="${minecraft_version_range}" ordering="NONE" side="BOTH" -[[dependencies.electricadvantage]] -modId="poweradvantage" +[[dependencies.baseelectric]] +modId="basepower" mandatory=true -versionRange="[2.4.8.117011,3.0.0)" +versionRange="[2.4.9.117011,3.0.0)" ordering="AFTER" side="BOTH" -[[dependencies.electricadvantage]] +[[dependencies.baseelectric]] modId="basemetals" mandatory=false -versionRange="[3.1.0.117011,4.0.0)" +versionRange="[3.1.1.117011,4.0.0)" ordering="AFTER" side="BOTH" diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_battery_array.json b/src/main/resources/assets/baseelectric/blockstates/electric_battery_array.json new file mode 100644 index 0000000..fb6ffe2 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_battery_array.json @@ -0,0 +1,12 @@ +{ + "variants": { + "active=true,facing=east": { "model": "baseelectric:block/electric_battery_array", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/electric_battery_array" }, + "active=true,facing=south": { "model": "baseelectric:block/electric_battery_array", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/electric_battery_array", "y": 270 }, + "active=false,facing=east": { "model": "baseelectric:block/electric_battery_array", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/electric_battery_array" }, + "active=false,facing=south": { "model": "baseelectric:block/electric_battery_array", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/electric_battery_array", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_conduit.json b/src/main/resources/assets/baseelectric/blockstates/electric_conduit.json new file mode 100644 index 0000000..e7c713c --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_conduit.json @@ -0,0 +1,70 @@ +{ + "__comment": "blockstate parameters MUST be in alphabetical order!", + "variants": { + "down=false,east=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_n", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_n", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_n", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_n", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_n", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_n", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_ns", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nw", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 270, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_ns", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_ns", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nw", "x": 270, "y": 270, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_dnu", "x": 0, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_dnu", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_dnu", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_dnu", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_dnu", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nuw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_dnu", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nsw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_dnu", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_dnu", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nuw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 180, "y": 180, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 180, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 180, "y": 270, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_ensw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_ensw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 180, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 90, "y": 270, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_nsuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_conduit_desuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_conduit_desuw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_conduit_desuw", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_desuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_desuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_desuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_conduit_densuw", "x": 0, "y": 0, "uvlock": false } + + } +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_crusher.json b/src/main/resources/assets/baseelectric/blockstates/electric_crusher.json new file mode 100644 index 0000000..ed74793 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_crusher.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_crusher_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_crusher_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_crusher_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_crusher_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_crusher_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_crusher_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_crusher_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_crusher_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_crusher_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_crusher_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_crusher_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_crusher_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_crusher_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_crusher_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_crusher_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_crusher_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_drill.json b/src/main/resources/assets/baseelectric/blockstates/electric_drill.json new file mode 100644 index 0000000..5a7b039 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_drill.json @@ -0,0 +1,16 @@ +{ + "variants": { + "active=true,facing=up": { "model": "baseelectric:block/electric_drill_on", "x":270 }, + "active=true,facing=down": { "model": "baseelectric:block/electric_drill_on", "x": 90 }, + "active=true,facing=east": { "model": "baseelectric:block/electric_drill_on", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/electric_drill_on" }, + "active=true,facing=south": { "model": "baseelectric:block/electric_drill_on", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/electric_drill_on", "y": 270 }, + "active=false,facing=up": { "model": "baseelectric:block/electric_drill_off", "x":270 }, + "active=false,facing=down": { "model": "baseelectric:block/electric_drill_off", "x": 90 }, + "active=false,facing=east": { "model": "baseelectric:block/electric_drill_off", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/electric_drill_off" }, + "active=false,facing=south": { "model": "baseelectric:block/electric_drill_off", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/electric_drill_off", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_fabricator.json b/src/main/resources/assets/baseelectric/blockstates/electric_fabricator.json new file mode 100644 index 0000000..82bcee1 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_fabricator.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_fabricator_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_fabricator_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_fabricator_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_fabricator_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_fabricator_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_fabricator_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_fabricator_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_fabricator_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_fabricator_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_fabricator_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_fabricator_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_fabricator_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_fabricator_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_fabricator_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_fabricator_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_fabricator_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_furnace.json b/src/main/resources/assets/baseelectric/blockstates/electric_furnace.json new file mode 100644 index 0000000..e944b1f --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_furnace.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_furnace_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_furnace_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_furnace_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_furnace_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_furnace_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_furnace_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_furnace_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_furnace_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_furnace_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_furnace_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_furnace_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_furnace_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_furnace_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_furnace_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_furnace_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_furnace_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_oven.json b/src/main/resources/assets/baseelectric/blockstates/electric_oven.json new file mode 100644 index 0000000..4de9e56 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_oven.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_oven_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_oven_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_oven_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_oven_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_oven_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_oven_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_oven_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_oven_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_oven_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_oven_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_oven_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_oven_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_oven_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_oven_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_oven_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_oven_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_pcb_printer.json b/src/main/resources/assets/baseelectric/blockstates/electric_pcb_printer.json new file mode 100644 index 0000000..8a735d5 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_pcb_printer.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_pcb_printer_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_pcb_printer_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_pcb_printer_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_pcb_printer_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_pcb_printer_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_pcb_printer_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_pcb_printer_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_pcb_printer_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_pcb_printer_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_pcb_printer_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_pcb_printer_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_pump.json b/src/main/resources/assets/baseelectric/blockstates/electric_pump.json new file mode 100644 index 0000000..824a15b --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_pump.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_pump_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_pump_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_pump_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_pump_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_pump_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_pump_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_pump_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_pump_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_pump_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_pump_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_pump_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_pump_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_pump_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_pump_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_pump_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_pump_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_still.json b/src/main/resources/assets/baseelectric/blockstates/electric_still.json new file mode 100644 index 0000000..7de250f --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_still.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/electric_still_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/electric_still_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/electric_still_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/electric_still_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/electric_still_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/electric_still_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/electric_still_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/electric_still_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/electric_still_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/electric_still_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/electric_still_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/electric_still_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/electric_still_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/electric_still_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/electric_still_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/electric_still_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_switch.json b/src/main/resources/assets/baseelectric/blockstates/electric_switch.json new file mode 100644 index 0000000..6c3dc63 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_switch.json @@ -0,0 +1,6 @@ +{ + "variants": { + "active=false": { "model": "baseelectric:block/electric_switch_off"}, + "active=true": { "model": "baseelectric:block/electric_switch_on"} + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/electric_track.json b/src/main/resources/assets/baseelectric/blockstates/electric_track.json new file mode 100644 index 0000000..dfb86b1 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/electric_track.json @@ -0,0 +1,70 @@ +{ + "__comment": "blockstate parameters MUST be in alphabetical order!", + "variants": { + "down=false,east=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_n", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_n", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_n", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_n", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_n", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_n", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_ns", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_nw", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 270, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_ns", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_ns", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_nw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_nw", "x": 270, "y": 270, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_nw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/electric_track_nuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_nuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_dnu", "x": 0, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_dnu", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_dnu", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_dnu", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_nuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_dnu", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nuw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_dnu", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_nsw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_nuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_nsw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_nuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nsw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_dnu", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_dnu", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nsw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_nuw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_nuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/electric_track_nsuw", "x": 180, "y": 180, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/electric_track_nsuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 180, "y": 90, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_nsuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 180, "y": 270, "uvlock": false }, + "down=true,east=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_ensw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_ensw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 180, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 90, "y": 270, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_nsuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_nsuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/electric_track_desuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/electric_track_desuw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/electric_track_desuw", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_desuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_desuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_desuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/electric_track_densuw", "x": 0, "y": 0, "uvlock": false } + + } +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/blockstates/geothermal_generator.json b/src/main/resources/assets/baseelectric/blockstates/geothermal_generator.json new file mode 100644 index 0000000..2de11c5 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/geothermal_generator.json @@ -0,0 +1,12 @@ +{ + "variants": { + "active=true,facing=east": { "model": "baseelectric:block/geothermal_generator", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/geothermal_generator" }, + "active=true,facing=south": { "model": "baseelectric:block/geothermal_generator", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/geothermal_generator", "y": 270 }, + "active=false,facing=east": { "model": "baseelectric:block/geothermal_generator", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/geothermal_generator" }, + "active=false,facing=south": { "model": "baseelectric:block/geothermal_generator", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/geothermal_generator", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/growth_chamber.json b/src/main/resources/assets/baseelectric/blockstates/growth_chamber.json new file mode 100644 index 0000000..71f94e4 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/growth_chamber.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/growth_chamber_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/growth_chamber_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/growth_chamber_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/growth_chamber_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/growth_chamber_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/growth_chamber_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/growth_chamber_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/growth_chamber_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/growth_chamber_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/growth_chamber_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/growth_chamber_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/growth_chamber_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/growth_chamber_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/growth_chamber_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/growth_chamber_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/growth_chamber_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/growth_chamber_controller.json b/src/main/resources/assets/baseelectric/blockstates/growth_chamber_controller.json new file mode 100644 index 0000000..afc5338 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/growth_chamber_controller.json @@ -0,0 +1,8 @@ +{ + "variants": { + "facing=east": { "model": "baseelectric:block/growth_chamber_controller", "y": 90 }, + "facing=north": { "model": "baseelectric:block/growth_chamber_controller" }, + "facing=south": { "model": "baseelectric:block/growth_chamber_controller", "y": 180 }, + "facing=west": { "model": "baseelectric:block/growth_chamber_controller", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/hydroelectric_generator.json b/src/main/resources/assets/baseelectric/blockstates/hydroelectric_generator.json new file mode 100644 index 0000000..177f2bb --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/hydroelectric_generator.json @@ -0,0 +1,12 @@ +{ + "variants": { + "active=true,facing=east": { "model": "baseelectric:block/hydroelectric_generator_on", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/hydroelectric_generator_on" }, + "active=true,facing=south": { "model": "baseelectric:block/hydroelectric_generator_on", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/hydroelectric_generator_on", "y": 270 }, + "active=false,facing=east": { "model": "baseelectric:block/hydroelectric_generator_off", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/hydroelectric_generator_off" }, + "active=false,facing=south": { "model": "baseelectric:block/hydroelectric_generator_off", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/hydroelectric_generator_off", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/laser_turret.json b/src/main/resources/assets/baseelectric/blockstates/laser_turret.json new file mode 100644 index 0000000..5eea002 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/laser_turret.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/laser_turret" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/laser_turret" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/laser_turret" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/laser_turret" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/laser_turret", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/laser_turret_evil.json b/src/main/resources/assets/baseelectric/blockstates/laser_turret_evil.json new file mode 100644 index 0000000..5eea002 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/laser_turret_evil.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/laser_turret" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/laser_turret" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/laser_turret" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/laser_turret", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/laser_turret", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/laser_turret" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/laser_turret", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/laser_turret", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/led_bar.json b/src/main/resources/assets/baseelectric/blockstates/led_bar.json new file mode 100644 index 0000000..a5e71cf --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/led_bar.json @@ -0,0 +1,134 @@ +{ + "__comment": "blockstate parameters MUST be in alphabetical order!", + "variants": { + "down=false,east=false,lit=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_n", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_n", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_ns", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nw", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 270, "y": 180, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_ns", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_ns", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nw", "x": 270, "y": 270, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_dnu", "x": 0, "y": 90, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_dnu", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_dnu", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_dnu", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_dnu", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nuw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_dnu", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nsw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_dnu", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_dnu", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nuw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 180, "y": 180, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 180, "y": 90, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 180, "y": 270, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_ensw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_ensw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 180, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 90, "y": 270, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,lit=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_nsuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_off_desuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_off_desuw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_off_desuw", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=true,lit=false,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_desuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,lit=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_desuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_desuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=true,lit=false,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_off_densuw", "x": 0, "y": 0, "uvlock": false }, + + "down=false,east=false,lit=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_n", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_n", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_ns", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nw", "x": 90, "y": 0, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 270, "y": 180, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_ns", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_ns", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nw", "x": 270, "y": 270, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=false,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_dnu", "x": 0, "y": 90, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_dnu", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_dnu", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_dnu", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_dnu", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nuw", "x": 90, "y": 270, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_dnu", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nsw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_dnu", "x": 270, "y": 90, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_dnu", "x": 270, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nuw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=false,lit=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=true,up=false,west=false": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 180, "y": 180, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=false,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=false,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 180, "y": 90, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 90, "y": 180, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 180, "y": 270, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_ensw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_ensw", "x": 90, "y": 90, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 180, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 90, "y": 270, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 0, "y": 180, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_ensw", "x": 0, "y": 0, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 0, "y": 270, "uvlock": false }, + "down=false,east=false,lit=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_nsuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=true,up=true,west=false": { "model": "baseelectric:block/led_bar_on_desuw", "x": 0, "y": 270, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=true,up=false,west=true": { "model": "baseelectric:block/led_bar_on_desuw", "x": 270, "y": 0, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=false,up=true,west=true": { "model": "baseelectric:block/led_bar_on_desuw", "x": 0, "y": 180, "uvlock": false }, + "down=true,east=true,lit=true,north=false,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_desuw", "x": 0, "y": 0, "uvlock": false }, + "down=true,east=false,lit=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_desuw", "x": 0, "y": 90, "uvlock": false }, + "down=false,east=true,lit=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_desuw", "x": 90, "y": 0, "uvlock": false }, + "down=true,east=true,lit=true,north=true,south=true,up=true,west=true": { "model": "baseelectric:block/led_bar_on_densuw", "x": 0, "y": 0, "uvlock": false } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/blockstates/li_ore.json b/src/main/resources/assets/baseelectric/blockstates/li_ore.json new file mode 100644 index 0000000..b2d2415 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/li_ore.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "baseelectric:block/li_ore" } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/photovoltaic_generator.json b/src/main/resources/assets/baseelectric/blockstates/photovoltaic_generator.json new file mode 100644 index 0000000..a9a138a --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/photovoltaic_generator.json @@ -0,0 +1,12 @@ +{ + "variants": { + "active=true,facing=east": { "model": "baseelectric:block/photovoltaic_generator", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/photovoltaic_generator" }, + "active=true,facing=south": { "model": "baseelectric:block/photovoltaic_generator", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/photovoltaic_generator", "y": 270 }, + "active=false,facing=east": { "model": "baseelectric:block/photovoltaic_generator", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/photovoltaic_generator" }, + "active=false,facing=south": { "model": "baseelectric:block/photovoltaic_generator", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/photovoltaic_generator", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/plastic_refinery.json b/src/main/resources/assets/baseelectric/blockstates/plastic_refinery.json new file mode 100644 index 0000000..88f0a07 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/plastic_refinery.json @@ -0,0 +1,20 @@ +{ + "variants": { + "active=true,facing=east,powered=true": { "model": "baseelectric:block/plastic_refinery_on", "y": 90 }, + "active=true,facing=north,powered=true": { "model": "baseelectric:block/plastic_refinery_on" }, + "active=true,facing=south,powered=true": { "model": "baseelectric:block/plastic_refinery_on", "y": 180 }, + "active=true,facing=west,powered=true": { "model": "baseelectric:block/plastic_refinery_on", "y": 270 }, + "active=false,facing=east,powered=true": { "model": "baseelectric:block/plastic_refinery_powered", "y": 90 }, + "active=false,facing=north,powered=true": { "model": "baseelectric:block/plastic_refinery_powered" }, + "active=false,facing=south,powered=true": { "model": "baseelectric:block/plastic_refinery_powered", "y": 180 }, + "active=false,facing=west,powered=true": { "model": "baseelectric:block/plastic_refinery_powered", "y": 270 }, + "active=false,facing=east,powered=false": { "model": "baseelectric:block/plastic_refinery_off", "y": 90 }, + "active=false,facing=north,powered=false": { "model": "baseelectric:block/plastic_refinery_off" }, + "active=false,facing=south,powered=false": { "model": "baseelectric:block/plastic_refinery_off", "y": 180 }, + "active=false,facing=west,powered=false": { "model": "baseelectric:block/plastic_refinery_off", "y": 270 }, + "active=true,facing=east,powered=false": { "model": "baseelectric:block/plastic_refinery_on", "y": 90 }, + "active=true,facing=north,powered=false": { "model": "baseelectric:block/plastic_refinery_on" }, + "active=true,facing=south,powered=false": { "model": "baseelectric:block/plastic_refinery_on", "y": 180 }, + "active=true,facing=west,powered=false": { "model": "baseelectric:block/plastic_refinery_on", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/pump_pipe_electric.json b/src/main/resources/assets/baseelectric/blockstates/pump_pipe_electric.json new file mode 100644 index 0000000..1f6c9c3 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/pump_pipe_electric.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": {"model": "basepower:block/fluid_pipe_ns", "x": 90, "y": 0, "uvlock": false } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/steam_powered_generator.json b/src/main/resources/assets/baseelectric/blockstates/steam_powered_generator.json new file mode 100644 index 0000000..4eeddd9 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/steam_powered_generator.json @@ -0,0 +1,12 @@ +{ + "variants": { + "active=true,facing=east": { "model": "baseelectric:block/steam_powered_generator_on", "y": 90 }, + "active=true,facing=north": { "model": "baseelectric:block/steam_powered_generator_on" }, + "active=true,facing=south": { "model": "baseelectric:block/steam_powered_generator_on", "y": 180 }, + "active=true,facing=west": { "model": "baseelectric:block/steam_powered_generator_on", "y": 270 }, + "active=false,facing=east": { "model": "baseelectric:block/steam_powered_generator_off", "y": 90 }, + "active=false,facing=north": { "model": "baseelectric:block/steam_powered_generator_off" }, + "active=false,facing=south": { "model": "baseelectric:block/steam_powered_generator_off", "y": 180 }, + "active=false,facing=west": { "model": "baseelectric:block/steam_powered_generator_off", "y": 270 } + } +} diff --git a/src/main/resources/assets/baseelectric/blockstates/sulfur_ore.json b/src/main/resources/assets/baseelectric/blockstates/sulfur_ore.json new file mode 100644 index 0000000..93bc0c2 --- /dev/null +++ b/src/main/resources/assets/baseelectric/blockstates/sulfur_ore.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "baseelectric:block/sulfur_ore" } + } +} diff --git a/src/main/resources/assets/baseelectric/lang/de_de.json b/src/main/resources/assets/baseelectric/lang/de_de.json new file mode 100644 index 0000000..701f1a8 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/de_de.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "Englisch (en_US, de_DE, en_CA, de_DE, en_AU, en_PT), Spanisch (es_MX, es_ES), Chinesisch (zh_CN), Japanisch (ja_JA), Portugiesisch (pt_BR), Deutsch (de_DE), Italienisch (it_IT), Koreanisch (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Leiterplatte (Leer)", + "item.baseelectric.control_circuit.name": "Steuerstromkreis", + "item.baseelectric.integrated_circuit.name": "Mikrochip", + "item.baseelectric.psu.name": "Netzteil", + "item.baseelectric.silicon_ingot.name": "Silizium-Ingots", + "item.baseelectric.silicon_mix.name": "Silizium-Mischung", + "item.baseelectric.solder_mix.name": "Lötmetall Mischung", + "item.baseelectric.solder.name": "Lötmetall", + "item.baseelectric.li_powder.name": "Pulverisierte Lithium", + "item.baseelectric.li_ingot.name": "Lithium-Barren", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Schwefelpulver", + "item.baseelectric.lead_acid_battery.name": "Blei-Säure-Batterie", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metallhydrid-Batterie", + "item.baseelectric.alkaline_battery.name": "Alkali-Batterie", + "item.baseelectric.lithium_battery.name": "Lithium-Ionen-Batterie", + "tile.baseelectric.electric_conduit.name": "Elektrischen Draht", + "tile.baseelectric.electric_track.name": "Elektro-Gerüst", + "tile.baseelectric.electric_battery_array.name": "Batterie Array", + "tile.baseelectric.electric_crusher.name": "Elektrische Felsen-Zerkleinerungsmaschine", + "tile.baseelectric.laser_turret.name": "Laser-Verteidigung Waffe", + "tile.baseelectric.electric_drill.name": "Laser Bohrer", + "tile.baseelectric.electric_fabricator.name": "Automatisierte Fabrik", + "tile.baseelectric.electric_furnace.name": "Lichtbogenofen", + "tile.baseelectric.electric_oven.name": "Elektro-Ofen", + "tile.baseelectric.electric_pcb_printer.name": "PCB Drucker", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaik-Generator", + "tile.baseelectric.steam_powered_generator.name": "Pumpenlose Stromerzeuger", + "tile.baseelectric.growth_chamber.name": "Wachstumskammer", + "tile.baseelectric.growth_chamber_controller.name": "Wachstumskammer Steuereinheit", + "tile.baseelectric.li_ore.name": "Lithiumerz", + "tile.baseelectric.sulfur_ore.name": "Schwefelerz", + "tile.baseelectric.led_bar.name": "LED Draht", + "tooltip.battery.charge": "Lade", + "tooltip.battery.capacity": "Kapazität", + "death.attack.laser": "%1$s verdampft", + "death.attack.laser.player": "%2$s verdampft %1$s", + "death.attack.propeller": "%1$s wurde von einem Propeller pulverisiert.", + "death.attack.propeller.player": "%2$s geschoben %1$s in einen Propeller.", + "tile.baseelectric.electric_switch.name": "Elektrische Schalter", + "tile.baseelectric.electric_still.name": "Elektro Brennerei", + "tile.baseelectric.electric_pump.name": "Elektropumpe", + "tile.baseelectric.plastic_refinery.name": "Kunststoff-Raffinerie", + "item.baseelectric.petrolplastic_ingot.name": "Erdöl Kunststoff Barren", + "tile.baseelectric.pump_pipe_electric.name": "Pumpenrohr", + "item.baseelectric.blank_circuit_board": "Leiterplatte (Leer)", + "item.baseelectric.control_circuit": "Steuerstromkreis", + "item.baseelectric.integrated_circuit": "Mikrochip", + "item.baseelectric.psu": "Netzteil", + "item.baseelectric.silicon_ingot": "Silizium-Ingots", + "item.baseelectric.silicon_mix": "Silizium-Mischung", + "item.baseelectric.solder_mix": "Lötmetall Mischung", + "item.baseelectric.solder": "Lötmetall", + "item.baseelectric.li_powder": "Pulverisierte Lithium", + "item.baseelectric.li_ingot": "Lithium-Barren", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Schwefelpulver", + "item.baseelectric.lead_acid_battery": "Blei-Säure-Batterie", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metallhydrid-Batterie", + "item.baseelectric.alkaline_battery": "Alkali-Batterie", + "item.baseelectric.lithium_battery": "Lithium-Ionen-Batterie", + "block.baseelectric.electric_conduit": "Elektrischen Draht", + "block.baseelectric.electric_track": "Elektro-Gerüst", + "block.baseelectric.electric_battery_array": "Batterie Array", + "block.baseelectric.electric_crusher": "Elektrische Felsen-Zerkleinerungsmaschine", + "block.baseelectric.laser_turret": "Laser-Verteidigung Waffe", + "block.baseelectric.electric_drill": "Laser Bohrer", + "block.baseelectric.electric_fabricator": "Automatisierte Fabrik", + "block.baseelectric.electric_furnace": "Lichtbogenofen", + "block.baseelectric.electric_oven": "Elektro-Ofen", + "block.baseelectric.electric_pcb_printer": "PCB Drucker", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaik-Generator", + "block.baseelectric.steam_powered_generator": "Pumpenlose Stromerzeuger", + "block.baseelectric.growth_chamber": "Wachstumskammer", + "block.baseelectric.growth_chamber_controller": "Wachstumskammer Steuereinheit", + "block.baseelectric.li_ore": "Lithiumerz", + "block.baseelectric.sulfur_ore": "Schwefelerz", + "block.baseelectric.led_bar": "LED Draht", + "block.baseelectric.electric_switch": "Elektrische Schalter", + "block.baseelectric.electric_still": "Elektro Brennerei", + "block.baseelectric.electric_pump": "Elektropumpe", + "block.baseelectric.plastic_refinery": "Kunststoff-Raffinerie", + "item.baseelectric.petrolplastic_ingot": "Erdöl Kunststoff Barren", + "block.baseelectric.pump_pipe_electric": "Pumpenrohr", + "block.baseelectric.laser_turret_evil": "Laser-Verteidigung Waffe" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_au.json b/src/main/resources/assets/baseelectric/lang/en_au.json new file mode 100644 index 0000000..da4538f --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_au.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Defense Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Defense Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Defense Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_ca.json b/src/main/resources/assets/baseelectric/lang/en_ca.json new file mode 100644 index 0000000..da4538f --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_ca.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Defense Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Defense Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Defense Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_en.json b/src/main/resources/assets/baseelectric/lang/en_en.json new file mode 100644 index 0000000..e92335b --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_en.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_gb.json b/src/main/resources/assets/baseelectric/lang/en_gb.json new file mode 100644 index 0000000..da4538f --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_gb.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Defense Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Defense Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Defense Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_pt.json b/src/main/resources/assets/baseelectric/lang/en_pt.json new file mode 100644 index 0000000..e92335b --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_pt.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/en_us.json b/src/main/resources/assets/baseelectric/lang/en_us.json new file mode 100644 index 0000000..e92335b --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/en_us.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Circuit Board (Blank)", + "item.baseelectric.control_circuit.name": "Control Circuit", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Power Supply Unit", + "item.baseelectric.silicon_ingot.name": "Silicon Ingot", + "item.baseelectric.silicon_mix.name": "Silicon Blend", + "item.baseelectric.solder_mix.name": "Solder Blend", + "item.baseelectric.solder.name": "Solder", + "item.baseelectric.li_powder.name": "Powdered Lithium", + "item.baseelectric.li_ingot.name": "Lithium Ingot", + "item.baseelectric.li_nugget.name": "Lithium Nugget", + "item.baseelectric.sulfur_powder.name": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery.name": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery.name": "Alkaline Battery", + "item.baseelectric.lithium_battery.name": "Lithium-Ion Battery", + "tile.baseelectric.electric_conduit.name": "Electric Power Cable", + "tile.baseelectric.electric_track.name": "Electric Scaffold", + "tile.baseelectric.electric_battery_array.name": "Battery Array", + "tile.baseelectric.electric_crusher.name": "Electric Rock Crusher", + "tile.baseelectric.laser_turret.name": "Laser Turret", + "tile.baseelectric.electric_drill.name": "Electric Mining Drill", + "tile.baseelectric.electric_fabricator.name": "Automated Assembler", + "tile.baseelectric.electric_furnace.name": "Electric Arc Furnace", + "tile.baseelectric.electric_oven.name": "Electric Oven", + "tile.baseelectric.electric_pcb_printer.name": "PCB Printer", + "tile.baseelectric.geothermal_generator.name": "Geothermal Generator", + "tile.baseelectric.hydroelectric_generator.name": "Hydroelectric Generator", + "tile.baseelectric.photovoltaic_generator.name": "Photovoltaic Generator", + "tile.baseelectric.steam_powered_generator.name": "Steam-Powered Electric Generator", + "tile.baseelectric.growth_chamber.name": "Growth Chamber", + "tile.baseelectric.growth_chamber_controller.name": "Growth Chamber Control Unit", + "tile.baseelectric.li_ore.name": "Lithium Ore", + "tile.baseelectric.sulfur_ore.name": "Sulfur Ore", + "tile.baseelectric.led_bar.name": "LED Bar", + "tooltip.battery.charge": "Charge", + "tooltip.battery.capacity": "Capacity", + "death.attack.laser": "%1$s vaporized", + "death.attack.laser.player": "%2$s vaporized %1$s ", + "death.attack.propeller": "%1$s was pulverized by a propeller.", + "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", + "tile.baseelectric.electric_switch.name": "Electric Switch", + "tile.baseelectric.electric_still.name": "Electric Distiller", + "tile.baseelectric.electric_pump.name": "Electric Pump", + "tile.baseelectric.plastic_refinery.name": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot.name": "Petro-Plastic Ingot", + "tile.baseelectric.pump_pipe_electric.name": "Pump Pipe", + "item.baseelectric.blank_circuit_board": "Circuit Board (Blank)", + "item.baseelectric.control_circuit": "Control Circuit", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Power Supply Unit", + "item.baseelectric.silicon_ingot": "Silicon Ingot", + "item.baseelectric.silicon_mix": "Silicon Blend", + "item.baseelectric.solder_mix": "Solder Blend", + "item.baseelectric.solder": "Solder", + "item.baseelectric.li_powder": "Powdered Lithium", + "item.baseelectric.li_ingot": "Lithium Ingot", + "item.baseelectric.li_nugget": "Lithium Nugget", + "item.baseelectric.sulfur_powder": "Powdered Sulfur", + "item.baseelectric.lead_acid_battery": "Lead-Acid Battery", + "item.baseelectric.nickel_hydride_battery": "Nickel-Metal Hydride Battery", + "item.baseelectric.alkaline_battery": "Alkaline Battery", + "item.baseelectric.lithium_battery": "Lithium-Ion Battery", + "block.baseelectric.electric_conduit": "Electric Power Cable", + "block.baseelectric.electric_track": "Electric Scaffold", + "block.baseelectric.electric_battery_array": "Battery Array", + "block.baseelectric.electric_crusher": "Electric Rock Crusher", + "block.baseelectric.laser_turret": "Laser Turret", + "block.baseelectric.electric_drill": "Electric Mining Drill", + "block.baseelectric.electric_fabricator": "Automated Assembler", + "block.baseelectric.electric_furnace": "Electric Arc Furnace", + "block.baseelectric.electric_oven": "Electric Oven", + "block.baseelectric.electric_pcb_printer": "PCB Printer", + "block.baseelectric.geothermal_generator": "Geothermal Generator", + "block.baseelectric.hydroelectric_generator": "Hydroelectric Generator", + "block.baseelectric.photovoltaic_generator": "Photovoltaic Generator", + "block.baseelectric.steam_powered_generator": "Steam-Powered Electric Generator", + "block.baseelectric.growth_chamber": "Growth Chamber", + "block.baseelectric.growth_chamber_controller": "Growth Chamber Control Unit", + "block.baseelectric.li_ore": "Lithium Ore", + "block.baseelectric.sulfur_ore": "Sulfur Ore", + "block.baseelectric.led_bar": "LED Bar", + "block.baseelectric.electric_switch": "Electric Switch", + "block.baseelectric.electric_still": "Electric Distiller", + "block.baseelectric.electric_pump": "Electric Pump", + "block.baseelectric.plastic_refinery": "Petro-Plastic Refinery", + "item.baseelectric.petrolplastic_ingot": "Petro-Plastic Ingot", + "block.baseelectric.pump_pipe_electric": "Pump Pipe", + "block.baseelectric.laser_turret_evil": "Laser Turret" +} diff --git a/src/main/resources/assets/baseelectric/lang/es_es.json b/src/main/resources/assets/baseelectric/lang/es_es.json new file mode 100644 index 0000000..a280b69 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/es_es.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "Inglés (en_US, en_EN, en_CA, es_ES, es_ES, en_PT), Español (es_MX, es_ES), chino (zh_CN), japonés (ja_JA), portugués (pt_BR), Alemán (de_DE), italiano (it_IT), coreano (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Placa de Circuito (Blanco)", + "item.baseelectric.control_circuit.name": "Circuito de Computadora", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Unidad de Fuente de Alimentación", + "item.baseelectric.silicon_ingot.name": "Silicio Lingote", + "item.baseelectric.silicon_mix.name": "Blend Silicio", + "item.baseelectric.solder_mix.name": "Blend Soldadura", + "item.baseelectric.solder.name": "Soldadura", + "item.baseelectric.li_powder.name": "Polvo de Litio", + "item.baseelectric.li_ingot.name": "Litio Lingote", + "item.baseelectric.li_nugget.name": "Pepita de Litio", + "item.baseelectric.sulfur_powder.name": "Azufre en Polvo", + "item.baseelectric.lead_acid_battery.name": "Plomo-Ácido de la Batería", + "item.baseelectric.nickel_hydride_battery.name": "Níquel e Hidruro Metálico", + "item.baseelectric.alkaline_battery.name": "Batería Alcalina", + "item.baseelectric.lithium_battery.name": "Batería de Litio-Ion", + "tile.baseelectric.electric_conduit.name": "Cable de Energía Eléctrica", + "tile.baseelectric.electric_track.name": "Eléctrica Andamios", + "tile.baseelectric.electric_battery_array.name": "Batería Matriz", + "tile.baseelectric.electric_crusher.name": "Eléctrica de la Roca Trituradora", + "tile.baseelectric.laser_turret.name": "Laser Defensa Torreta", + "tile.baseelectric.electric_drill.name": "Eléctrica Minería Taladro", + "tile.baseelectric.electric_fabricator.name": "Automatizado Ensamblador", + "tile.baseelectric.electric_furnace.name": "Horno de Arco Eléctrico", + "tile.baseelectric.electric_oven.name": "Horno Eléctrico", + "tile.baseelectric.electric_pcb_printer.name": "PCB Impresora", + "tile.baseelectric.geothermal_generator.name": "Geotérmica Generador", + "tile.baseelectric.hydroelectric_generator.name": "Hidroeléctrico Generador", + "tile.baseelectric.photovoltaic_generator.name": "Fotovoltaica Generador", + "tile.baseelectric.steam_powered_generator.name": "a Vapor Generador Eléctrico", + "tile.baseelectric.growth_chamber.name": "Cámara Crecimiento", + "tile.baseelectric.growth_chamber_controller.name": "Unidad de Control de Crecimiento Cámara", + "tile.baseelectric.li_ore.name": "Mineral de Litio", + "tile.baseelectric.sulfur_ore.name": "Mineral de Azufre", + "tile.baseelectric.led_bar.name": "Luz LED", + "tooltip.battery.charge": "Carga", + "tooltip.battery.capacity": "Capacidad", + "death.attack.laser": "%1$s vaporiza", + "death.attack.laser.player": "%2$s vaporizado s%1$s", + "death.attack.propeller": "%1$s se pulverizan por una hélice.", + "death.attack.propeller.player": "%2$s empujaron %1$s en la hélice.", + "tile.baseelectric.electric_switch.name": "Interruptor Eléctrico", + "tile.baseelectric.electric_still.name": "Destilador Eléctrico", + "tile.baseelectric.electric_pump.name": "Bomba Eléctrica", + "tile.baseelectric.plastic_refinery.name": "Refinería de Plástico", + "item.baseelectric.petrolplastic_ingot.name": "Petróleo Lingote de Plástico", + "tile.baseelectric.pump_pipe_electric.name": "Tubería de la Bomba", + "item.baseelectric.blank_circuit_board": "Placa de Circuito (Blanco)", + "item.baseelectric.control_circuit": "Circuito de Computadora", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Unidad de Fuente de Alimentación", + "item.baseelectric.silicon_ingot": "Silicio Lingote", + "item.baseelectric.silicon_mix": "Blend Silicio", + "item.baseelectric.solder_mix": "Blend Soldadura", + "item.baseelectric.solder": "Soldadura", + "item.baseelectric.li_powder": "Polvo de Litio", + "item.baseelectric.li_ingot": "Litio Lingote", + "item.baseelectric.li_nugget": "Pepita de Litio", + "item.baseelectric.sulfur_powder": "Azufre en Polvo", + "item.baseelectric.lead_acid_battery": "Plomo-Ácido de la Batería", + "item.baseelectric.nickel_hydride_battery": "Níquel e Hidruro Metálico", + "item.baseelectric.alkaline_battery": "Batería Alcalina", + "item.baseelectric.lithium_battery": "Batería de Litio-Ion", + "block.baseelectric.electric_conduit": "Cable de Energía Eléctrica", + "block.baseelectric.electric_track": "Eléctrica Andamios", + "block.baseelectric.electric_battery_array": "Batería Matriz", + "block.baseelectric.electric_crusher": "Eléctrica de la Roca Trituradora", + "block.baseelectric.laser_turret": "Laser Defensa Torreta", + "block.baseelectric.electric_drill": "Eléctrica Minería Taladro", + "block.baseelectric.electric_fabricator": "Automatizado Ensamblador", + "block.baseelectric.electric_furnace": "Horno de Arco Eléctrico", + "block.baseelectric.electric_oven": "Horno Eléctrico", + "block.baseelectric.electric_pcb_printer": "PCB Impresora", + "block.baseelectric.geothermal_generator": "Geotérmica Generador", + "block.baseelectric.hydroelectric_generator": "Hidroeléctrico Generador", + "block.baseelectric.photovoltaic_generator": "Fotovoltaica Generador", + "block.baseelectric.steam_powered_generator": "a Vapor Generador Eléctrico", + "block.baseelectric.growth_chamber": "Cámara Crecimiento", + "block.baseelectric.growth_chamber_controller": "Unidad de Control de Crecimiento Cámara", + "block.baseelectric.li_ore": "Mineral de Litio", + "block.baseelectric.sulfur_ore": "Mineral de Azufre", + "block.baseelectric.led_bar": "Luz LED", + "block.baseelectric.electric_switch": "Interruptor Eléctrico", + "block.baseelectric.electric_still": "Destilador Eléctrico", + "block.baseelectric.electric_pump": "Bomba Eléctrica", + "block.baseelectric.plastic_refinery": "Refinería de Plástico", + "item.baseelectric.petrolplastic_ingot": "Petróleo Lingote de Plástico", + "block.baseelectric.pump_pipe_electric": "Tubería de la Bomba", + "block.baseelectric.laser_turret_evil": "Laser Defensa Torreta" +} diff --git a/src/main/resources/assets/baseelectric/lang/es_mx.json b/src/main/resources/assets/baseelectric/lang/es_mx.json new file mode 100644 index 0000000..a280b69 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/es_mx.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "Inglés (en_US, en_EN, en_CA, es_ES, es_ES, en_PT), Español (es_MX, es_ES), chino (zh_CN), japonés (ja_JA), portugués (pt_BR), Alemán (de_DE), italiano (it_IT), coreano (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Placa de Circuito (Blanco)", + "item.baseelectric.control_circuit.name": "Circuito de Computadora", + "item.baseelectric.integrated_circuit.name": "Microchip", + "item.baseelectric.psu.name": "Unidad de Fuente de Alimentación", + "item.baseelectric.silicon_ingot.name": "Silicio Lingote", + "item.baseelectric.silicon_mix.name": "Blend Silicio", + "item.baseelectric.solder_mix.name": "Blend Soldadura", + "item.baseelectric.solder.name": "Soldadura", + "item.baseelectric.li_powder.name": "Polvo de Litio", + "item.baseelectric.li_ingot.name": "Litio Lingote", + "item.baseelectric.li_nugget.name": "Pepita de Litio", + "item.baseelectric.sulfur_powder.name": "Azufre en Polvo", + "item.baseelectric.lead_acid_battery.name": "Plomo-Ácido de la Batería", + "item.baseelectric.nickel_hydride_battery.name": "Níquel e Hidruro Metálico", + "item.baseelectric.alkaline_battery.name": "Batería Alcalina", + "item.baseelectric.lithium_battery.name": "Batería de Litio-Ion", + "tile.baseelectric.electric_conduit.name": "Cable de Energía Eléctrica", + "tile.baseelectric.electric_track.name": "Eléctrica Andamios", + "tile.baseelectric.electric_battery_array.name": "Batería Matriz", + "tile.baseelectric.electric_crusher.name": "Eléctrica de la Roca Trituradora", + "tile.baseelectric.laser_turret.name": "Laser Defensa Torreta", + "tile.baseelectric.electric_drill.name": "Eléctrica Minería Taladro", + "tile.baseelectric.electric_fabricator.name": "Automatizado Ensamblador", + "tile.baseelectric.electric_furnace.name": "Horno de Arco Eléctrico", + "tile.baseelectric.electric_oven.name": "Horno Eléctrico", + "tile.baseelectric.electric_pcb_printer.name": "PCB Impresora", + "tile.baseelectric.geothermal_generator.name": "Geotérmica Generador", + "tile.baseelectric.hydroelectric_generator.name": "Hidroeléctrico Generador", + "tile.baseelectric.photovoltaic_generator.name": "Fotovoltaica Generador", + "tile.baseelectric.steam_powered_generator.name": "a Vapor Generador Eléctrico", + "tile.baseelectric.growth_chamber.name": "Cámara Crecimiento", + "tile.baseelectric.growth_chamber_controller.name": "Unidad de Control de Crecimiento Cámara", + "tile.baseelectric.li_ore.name": "Mineral de Litio", + "tile.baseelectric.sulfur_ore.name": "Mineral de Azufre", + "tile.baseelectric.led_bar.name": "Luz LED", + "tooltip.battery.charge": "Carga", + "tooltip.battery.capacity": "Capacidad", + "death.attack.laser": "%1$s vaporiza", + "death.attack.laser.player": "%2$s vaporizado s%1$s", + "death.attack.propeller": "%1$s se pulverizan por una hélice.", + "death.attack.propeller.player": "%2$s empujaron %1$s en la hélice.", + "tile.baseelectric.electric_switch.name": "Interruptor Eléctrico", + "tile.baseelectric.electric_still.name": "Destilador Eléctrico", + "tile.baseelectric.electric_pump.name": "Bomba Eléctrica", + "tile.baseelectric.plastic_refinery.name": "Refinería de Plástico", + "item.baseelectric.petrolplastic_ingot.name": "Petróleo Lingote de Plástico", + "tile.baseelectric.pump_pipe_electric.name": "Tubería de la Bomba", + "item.baseelectric.blank_circuit_board": "Placa de Circuito (Blanco)", + "item.baseelectric.control_circuit": "Circuito de Computadora", + "item.baseelectric.integrated_circuit": "Microchip", + "item.baseelectric.psu": "Unidad de Fuente de Alimentación", + "item.baseelectric.silicon_ingot": "Silicio Lingote", + "item.baseelectric.silicon_mix": "Blend Silicio", + "item.baseelectric.solder_mix": "Blend Soldadura", + "item.baseelectric.solder": "Soldadura", + "item.baseelectric.li_powder": "Polvo de Litio", + "item.baseelectric.li_ingot": "Litio Lingote", + "item.baseelectric.li_nugget": "Pepita de Litio", + "item.baseelectric.sulfur_powder": "Azufre en Polvo", + "item.baseelectric.lead_acid_battery": "Plomo-Ácido de la Batería", + "item.baseelectric.nickel_hydride_battery": "Níquel e Hidruro Metálico", + "item.baseelectric.alkaline_battery": "Batería Alcalina", + "item.baseelectric.lithium_battery": "Batería de Litio-Ion", + "block.baseelectric.electric_conduit": "Cable de Energía Eléctrica", + "block.baseelectric.electric_track": "Eléctrica Andamios", + "block.baseelectric.electric_battery_array": "Batería Matriz", + "block.baseelectric.electric_crusher": "Eléctrica de la Roca Trituradora", + "block.baseelectric.laser_turret": "Laser Defensa Torreta", + "block.baseelectric.electric_drill": "Eléctrica Minería Taladro", + "block.baseelectric.electric_fabricator": "Automatizado Ensamblador", + "block.baseelectric.electric_furnace": "Horno de Arco Eléctrico", + "block.baseelectric.electric_oven": "Horno Eléctrico", + "block.baseelectric.electric_pcb_printer": "PCB Impresora", + "block.baseelectric.geothermal_generator": "Geotérmica Generador", + "block.baseelectric.hydroelectric_generator": "Hidroeléctrico Generador", + "block.baseelectric.photovoltaic_generator": "Fotovoltaica Generador", + "block.baseelectric.steam_powered_generator": "a Vapor Generador Eléctrico", + "block.baseelectric.growth_chamber": "Cámara Crecimiento", + "block.baseelectric.growth_chamber_controller": "Unidad de Control de Crecimiento Cámara", + "block.baseelectric.li_ore": "Mineral de Litio", + "block.baseelectric.sulfur_ore": "Mineral de Azufre", + "block.baseelectric.led_bar": "Luz LED", + "block.baseelectric.electric_switch": "Interruptor Eléctrico", + "block.baseelectric.electric_still": "Destilador Eléctrico", + "block.baseelectric.electric_pump": "Bomba Eléctrica", + "block.baseelectric.plastic_refinery": "Refinería de Plástico", + "item.baseelectric.petrolplastic_ingot": "Petróleo Lingote de Plástico", + "block.baseelectric.pump_pipe_electric": "Tubería de la Bomba", + "block.baseelectric.laser_turret_evil": "Laser Defensa Torreta" +} diff --git a/src/main/resources/assets/baseelectric/lang/it_it.json b/src/main/resources/assets/baseelectric/lang/it_it.json new file mode 100644 index 0000000..aaa17eb --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/it_it.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "inglese (it, en_EN, en_CA, en_GB, en_AU, en_PT), spagnolo (es_MX, es_ES), cinese (zh_CN), giapponese (ja_JA), portoghese (pt_BR), tedesco (de_DE), italiano (it_IT), coreano (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Scheda di Circuito (Vuoto)", + "item.baseelectric.control_circuit.name": "Circuito di Controllo", + "item.baseelectric.integrated_circuit.name": "Microcircuito Integrato", + "item.baseelectric.psu.name": "Alimentatore", + "item.baseelectric.silicon_ingot.name": "Silicio Lingotto", + "item.baseelectric.silicon_mix.name": "Silicio Miscela", + "item.baseelectric.solder_mix.name": "Saldatura Miscela", + "item.baseelectric.solder.name": "Saldatura", + "item.baseelectric.li_powder.name": "Polvere di Litio", + "item.baseelectric.li_ingot.name": "Litio Lingotto", + "item.baseelectric.li_nugget.name": "Pepita d'Litio", + "item.baseelectric.sulfur_powder.name": "Zolfo in Polvere", + "item.baseelectric.lead_acid_battery.name": "Batteria al Piombo", + "item.baseelectric.nickel_hydride_battery.name": "Ni-MH batteria", + "item.baseelectric.alkaline_battery.name": "Batteria Alcalina", + "item.baseelectric.lithium_battery.name": "Agli Ioni di Litio", + "tile.baseelectric.electric_conduit.name": "Cavo Alettrico di Alimentazione", + "tile.baseelectric.electric_track.name": "Ponteggio Elettrico", + "tile.baseelectric.electric_battery_array.name": "Array Batteria", + "tile.baseelectric.electric_crusher.name": "Polverizzatore Masso a Elettrico Alimentata", + "tile.baseelectric.laser_turret.name": "Laser Difesa Torretta", + "tile.baseelectric.electric_drill.name": "Trapano Elettrico", + "tile.baseelectric.electric_fabricator.name": "Fabbrica Automatizzata", + "tile.baseelectric.electric_furnace.name": "Forno Elettrico ad Arco", + "tile.baseelectric.electric_oven.name": "Forno Elettrico", + "tile.baseelectric.electric_pcb_printer.name": "PCB Stampante", + "tile.baseelectric.geothermal_generator.name": "Geotermica Generatore", + "tile.baseelectric.hydroelectric_generator.name": "idroelettrica Generatore", + "tile.baseelectric.photovoltaic_generator.name": "Fotovoltaico Generatore", + "tile.baseelectric.steam_powered_generator.name": "Generatore Elettrico a Vapore", + "tile.baseelectric.growth_chamber.name": "Camera di Crescita", + "tile.baseelectric.growth_chamber_controller.name": "Controllore Camera di Crescita", + "tile.baseelectric.li_ore.name": "Minerale di litio", + "tile.baseelectric.sulfur_ore.name": "Minerale di Zolfo", + "tile.baseelectric.led_bar.name": "Luce a led", + "tooltip.battery.charge": "Carica", + "tooltip.battery.capacity": "Capacità", + "death.attack.laser": "%1$s vaporizzato", + "death.attack.laser.player": "%2$s vaporizzati %1$s", + "death.attack.propeller": "%1$s è stato polverizzato da un'elica.", + "death.attack.propeller.player": "%2$s spinti %1$s nelle eliche.", + "tile.baseelectric.electric_switch.name": "Interruttore Elettrico", + "tile.baseelectric.electric_still.name": "Distillatore Elettrico", + "tile.baseelectric.electric_pump.name": "Pompa Elettricaa", + "tile.baseelectric.plastic_refinery.name": "Raffineria Plastica", + "item.baseelectric.petrolplastic_ingot.name": "Petrolio Plastica Lingotto", + "tile.baseelectric.pump_pipe_electric.name": "Tubo Pompa", + "item.baseelectric.blank_circuit_board": "Scheda di Circuito (Vuoto)", + "item.baseelectric.control_circuit": "Circuito di Controllo", + "item.baseelectric.integrated_circuit": "Microcircuito Integrato", + "item.baseelectric.psu": "Alimentatore", + "item.baseelectric.silicon_ingot": "Silicio Lingotto", + "item.baseelectric.silicon_mix": "Silicio Miscela", + "item.baseelectric.solder_mix": "Saldatura Miscela", + "item.baseelectric.solder": "Saldatura", + "item.baseelectric.li_powder": "Polvere di Litio", + "item.baseelectric.li_ingot": "Litio Lingotto", + "item.baseelectric.li_nugget": "Pepita d'Litio", + "item.baseelectric.sulfur_powder": "Zolfo in Polvere", + "item.baseelectric.lead_acid_battery": "Batteria al Piombo", + "item.baseelectric.nickel_hydride_battery": "Ni-MH batteria", + "item.baseelectric.alkaline_battery": "Batteria Alcalina", + "item.baseelectric.lithium_battery": "Agli Ioni di Litio", + "block.baseelectric.electric_conduit": "Cavo Alettrico di Alimentazione", + "block.baseelectric.electric_track": "Ponteggio Elettrico", + "block.baseelectric.electric_battery_array": "Array Batteria", + "block.baseelectric.electric_crusher": "Polverizzatore Masso a Elettrico Alimentata", + "block.baseelectric.laser_turret": "Laser Difesa Torretta", + "block.baseelectric.electric_drill": "Trapano Elettrico", + "block.baseelectric.electric_fabricator": "Fabbrica Automatizzata", + "block.baseelectric.electric_furnace": "Forno Elettrico ad Arco", + "block.baseelectric.electric_oven": "Forno Elettrico", + "block.baseelectric.electric_pcb_printer": "PCB Stampante", + "block.baseelectric.geothermal_generator": "Geotermica Generatore", + "block.baseelectric.hydroelectric_generator": "idroelettrica Generatore", + "block.baseelectric.photovoltaic_generator": "Fotovoltaico Generatore", + "block.baseelectric.steam_powered_generator": "Generatore Elettrico a Vapore", + "block.baseelectric.growth_chamber": "Camera di Crescita", + "block.baseelectric.growth_chamber_controller": "Controllore Camera di Crescita", + "block.baseelectric.li_ore": "Minerale di litio", + "block.baseelectric.sulfur_ore": "Minerale di Zolfo", + "block.baseelectric.led_bar": "Luce a led", + "block.baseelectric.electric_switch": "Interruttore Elettrico", + "block.baseelectric.electric_still": "Distillatore Elettrico", + "block.baseelectric.electric_pump": "Pompa Elettricaa", + "block.baseelectric.plastic_refinery": "Raffineria Plastica", + "item.baseelectric.petrolplastic_ingot": "Petrolio Plastica Lingotto", + "block.baseelectric.pump_pipe_electric": "Tubo Pompa", + "block.baseelectric.laser_turret_evil": "Laser Difesa Torretta" +} diff --git a/src/main/resources/assets/baseelectric/lang/ja_jp.json b/src/main/resources/assets/baseelectric/lang/ja_jp.json new file mode 100644 index 0000000..2ddfbd7 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/ja_jp.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": " 英語 (en_US en_EN en_CA、en_GB, en_AU, en_PT), スペイン語 (es_MX、es_ES)、中国 (zh_CN)、日本語 (ja_JA)、ポルトガル (pt_BR)、ドイツ語 (de_DE)、イタリア語 (it_IT), 韓国語 (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "回路基板 (空の)", + "item.baseelectric.control_circuit.name": "コンピューター回路", + "item.baseelectric.integrated_circuit.name": "マイクロチップ", + "item.baseelectric.psu.name": "電源ユニット", + "item.baseelectric.silicon_ingot.name": "シリコン", + "item.baseelectric.silicon_mix.name": "シリコンレシピ", + "item.baseelectric.solder_mix.name": "はんだレシピ", + "item.baseelectric.solder.name": "はんだ", + "item.baseelectric.li_powder.name": "リチウム粉末", + "item.baseelectric.li_ingot.name": "リチウム金属", + "item.baseelectric.li_nugget.name": "リチウムナゲット", + "item.baseelectric.sulfur_powder.name": "硫黄粉末", + "item.baseelectric.lead_acid_battery.name": "鉛蓄電池", + "item.baseelectric.nickel_hydride_battery.name": "ニッケル水素バッテリー", + "item.baseelectric.alkaline_battery.name": "アルカリ電池", + "item.baseelectric.lithium_battery.name": "リチウムイオン電池", + "tile.baseelectric.electric_conduit.name": "電線", + "tile.baseelectric.electric_track.name": "電動足場", + "tile.baseelectric.electric_battery_array.name": "電池貯蔵", + "tile.baseelectric.electric_crusher.name": "電気岩クラッシャー", + "tile.baseelectric.laser_turret.name": "レーザー砲塔", + "tile.baseelectric.electric_drill.name": "電気ドリル", + "tile.baseelectric.electric_fabricator.name": "ロボット工場", + "tile.baseelectric.electric_furnace.name": "電気炉", + "tile.baseelectric.electric_oven.name": "電気オーブン", + "tile.baseelectric.electric_pcb_printer.name": "回路基板プリンター", + "tile.baseelectric.geothermal_generator.name": "地熱発電", + "tile.baseelectric.hydroelectric_generator.name": "水力発電機", + "tile.baseelectric.photovoltaic_generator.name": "太陽電池パネル", + "tile.baseelectric.steam_powered_generator.name": "蒸気駆動の発電機", + "tile.baseelectric.growth_chamber.name": "植物生長室", + "tile.baseelectric.growth_chamber_controller.name": "植物成長室コントローラ", + "tile.baseelectric.li_ore.name": "リチウム 鉱石", + "tile.baseelectric.sulfur_ore.name": "硫黄鉱石", + "tile.baseelectric.led_bar.name": "LEDライト", + "tooltip.battery.charge": "量", + "tooltip.battery.capacity": "合計金額", + "death.attack.laser": "%1$s気化", + "蒸発 death.attack.laser.player": "%2$sは%1$sを気化しました", + "death.attack.propeller": "プロペラ殺さ%1$s", + "death.attack.propeller.player": "%2$sはプロペラと%1$sを殺しました", + "tile.baseelectric.electric_switch.name": "電気スイッチ", + "tile.baseelectric.electric_still.name": "電気蒸留器", + "tile.baseelectric.electric_pump.name": "電気ポンプ", + "tile.baseelectric.plastic_refinery.name": "プラスチック製油所", + "item.baseelectric.petrolplastic_ingot.name": "石油系プラスチックインゴット", + "tile.baseelectric.pump_pipe_electric.name": "ポンプ配管", + "item.baseelectric.blank_circuit_board": "回路基板 (空の)", + "item.baseelectric.control_circuit": "コンピューター回路", + "item.baseelectric.integrated_circuit": "マイクロチップ", + "item.baseelectric.psu": "電源ユニット", + "item.baseelectric.silicon_ingot": "シリコン", + "item.baseelectric.silicon_mix": "シリコンレシピ", + "item.baseelectric.solder_mix": "はんだレシピ", + "item.baseelectric.solder": "はんだ", + "item.baseelectric.li_powder": "リチウム粉末", + "item.baseelectric.li_ingot": "リチウム金属", + "item.baseelectric.li_nugget": "リチウムナゲット", + "item.baseelectric.sulfur_powder": "硫黄粉末", + "item.baseelectric.lead_acid_battery": "鉛蓄電池", + "item.baseelectric.nickel_hydride_battery": "ニッケル水素バッテリー", + "item.baseelectric.alkaline_battery": "アルカリ電池", + "item.baseelectric.lithium_battery": "リチウムイオン電池", + "block.baseelectric.electric_conduit": "電線", + "block.baseelectric.electric_track": "電動足場", + "block.baseelectric.electric_battery_array": "電池貯蔵", + "block.baseelectric.electric_crusher": "電気岩クラッシャー", + "block.baseelectric.laser_turret": "レーザー砲塔", + "block.baseelectric.electric_drill": "電気ドリル", + "block.baseelectric.electric_fabricator": "ロボット工場", + "block.baseelectric.electric_furnace": "電気炉", + "block.baseelectric.electric_oven": "電気オーブン", + "block.baseelectric.electric_pcb_printer": "回路基板プリンター", + "block.baseelectric.geothermal_generator": "地熱発電", + "block.baseelectric.hydroelectric_generator": "水力発電機", + "block.baseelectric.photovoltaic_generator": "太陽電池パネル", + "block.baseelectric.steam_powered_generator": "蒸気駆動の発電機", + "block.baseelectric.growth_chamber": "植物生長室", + "block.baseelectric.growth_chamber_controller": "植物成長室コントローラ", + "block.baseelectric.li_ore": "リチウム 鉱石", + "block.baseelectric.sulfur_ore": "硫黄鉱石", + "block.baseelectric.led_bar": "LEDライト", + "block.baseelectric.electric_switch": "電気スイッチ", + "block.baseelectric.electric_still": "電気蒸留器", + "block.baseelectric.electric_pump": "電気ポンプ", + "block.baseelectric.plastic_refinery": "プラスチック製油所", + "item.baseelectric.petrolplastic_ingot": "石油系プラスチックインゴット", + "block.baseelectric.pump_pipe_electric": "ポンプ配管", + "block.baseelectric.laser_turret_evil": "レーザー砲塔" +} diff --git a/src/main/resources/assets/baseelectric/lang/ko_ko.json b/src/main/resources/assets/baseelectric/lang/ko_ko.json new file mode 100644 index 0000000..a7ccaf7 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/ko_ko.json @@ -0,0 +1,91 @@ +{ + "item.baseelectric.blank_circuit_board.name": "회로 기판 (빈)", + "item.baseelectric.control_circuit.name": "제어 회로", + "item.baseelectric.integrated_circuit.name": "마이크로 칩", + "item.baseelectric.psu.name": "전원 공급 장치", + "item.baseelectric.silicon_ingot.name": "실리콘 잉곳", + "item.baseelectric.silicon_mix.name": "실리콘 혼합", + "item.baseelectric.solder_mix.name": "솔더 혼합", + "item.baseelectric.solder.name": "솔더", + "item.baseelectric.li_powder.name": "분말 리튬", + "item.baseelectric.li_ingot.name": "리튬 잉곳", + "item.baseelectric.li_nugget.name": "리튬 너겟", + "item.baseelectric.sulfur_powder.name": "분말 유황", + "item.baseelectric.lead_acid_battery.name": "납 축전지", + "item.baseelectric.nickel_hydride_battery.name": "니켈 수소 배터리", + "item.baseelectric.alkaline_battery.name": "알카라인 배터리", + "item.baseelectric.lithium_battery.name": "리튬 이온 배터리", + "tile.baseelectric.electric_conduit.name": "전력 케이블", + "tile.baseelectric.electric_track.name": "전기 비계", + "tile.baseelectric.electric_battery_array.name": "전지 어레이", + "tile.baseelectric.electric_crusher.name": "전기 락 크러셔", + "tile.baseelectric.laser_turret.name": "레이저 방어 터렛", + "tile.baseelectric.electric_drill.name": "전기 마이닝 드릴", + "tile.baseelectric.electric_fabricator.name": "자동 어셈블러", + "tile.baseelectric.electric_furnace.name": "전기로", + "tile.baseelectric.electric_oven.name": "전기 오븐", + "tile.baseelectric.electric_pcb_printer.name": "회로 기판 프린터", + "tile.baseelectric.geothermal_generator.name": "지열 발전기", + "tile.baseelectric.hydroelectric_generator.name": "수력 발전기", + "tile.baseelectric.photovoltaic_generator.name": "태양 광 발전기", + "tile.baseelectric.steam_powered_generator.name": "증기 발전기", + "tile.baseelectric.growth_chamber.name": "성장 상공 회의소", + "tile.baseelectric.growth_chamber_controller.name": "성장 챔버 제어 장치", + "tile.baseelectric.li_ore.name": "리튬 광석", + "tile.baseelectric.sulfur_ore.name": "유황 광석", + "tile.baseelectric.led_bar.name": "LED 조명", + "tooltip.battery.charge": "요금", + "tooltip.battery.capacity": "생산 능력", + "death.attack.laser": "%1$s이 (가) 증발", + "death.attack.laser.player": "%2$s의 증발 %1$s", + "death.attack.propeller": "%1$s는 프로펠러에 의해 분쇄 하였다.", + "death.attack.propeller.player": "%2$s는 프로펠러에 %1$s을 (를) 밀었다.", + "tile.baseelectric.electric_switch.name": "전기 스위치", + "tile.baseelectric.electric_still.name": "전기 증류기", + "tile.baseelectric.electric_pump.name": "전기 펌프", + "tile.baseelectric.plastic_refinery.name": "플라스틱 정유", + "item.baseelectric.petrolplastic_ingot.name": "석유 수지 잉곳", + "tile.baseelectric.pump_pipe_electric.name": "펌프 파이프", + "item.baseelectric.blank_circuit_board": "회로 기판 (빈)", + "item.baseelectric.control_circuit": "제어 회로", + "item.baseelectric.integrated_circuit": "마이크로 칩", + "item.baseelectric.psu": "전원 공급 장치", + "item.baseelectric.silicon_ingot": "실리콘 잉곳", + "item.baseelectric.silicon_mix": "실리콘 혼합", + "item.baseelectric.solder_mix": "솔더 혼합", + "item.baseelectric.solder": "솔더", + "item.baseelectric.li_powder": "분말 리튬", + "item.baseelectric.li_ingot": "리튬 잉곳", + "item.baseelectric.li_nugget": "리튬 너겟", + "item.baseelectric.sulfur_powder": "분말 유황", + "item.baseelectric.lead_acid_battery": "납 축전지", + "item.baseelectric.nickel_hydride_battery": "니켈 수소 배터리", + "item.baseelectric.alkaline_battery": "알카라인 배터리", + "item.baseelectric.lithium_battery": "리튬 이온 배터리", + "block.baseelectric.electric_conduit": "전력 케이블", + "block.baseelectric.electric_track": "전기 비계", + "block.baseelectric.electric_battery_array": "전지 어레이", + "block.baseelectric.electric_crusher": "전기 락 크러셔", + "block.baseelectric.laser_turret": "레이저 방어 터렛", + "block.baseelectric.electric_drill": "전기 마이닝 드릴", + "block.baseelectric.electric_fabricator": "자동 어셈블러", + "block.baseelectric.electric_furnace": "전기로", + "block.baseelectric.electric_oven": "전기 오븐", + "block.baseelectric.electric_pcb_printer": "회로 기판 프린터", + "block.baseelectric.geothermal_generator": "지열 발전기", + "block.baseelectric.hydroelectric_generator": "수력 발전기", + "block.baseelectric.photovoltaic_generator": "태양 광 발전기", + "block.baseelectric.steam_powered_generator": "증기 발전기", + "block.baseelectric.growth_chamber": "성장 상공 회의소", + "block.baseelectric.growth_chamber_controller": "성장 챔버 제어 장치", + "block.baseelectric.li_ore": "리튬 광석", + "block.baseelectric.sulfur_ore": "유황 광석", + "block.baseelectric.led_bar": "LED 조명", + "block.baseelectric.electric_switch": "전기 스위치", + "block.baseelectric.electric_still": "전기 증류기", + "block.baseelectric.electric_pump": "전기 펌프", + "block.baseelectric.plastic_refinery": "플라스틱 정유", + "item.baseelectric.petrolplastic_ingot": "석유 수지 잉곳", + "block.baseelectric.pump_pipe_electric": "펌프 파이프", + "block.baseelectric.laser_turret_evil": "레이저 방어 터렛" +} diff --git a/src/main/resources/assets/baseelectric/lang/pt_br.json b/src/main/resources/assets/baseelectric/lang/pt_br.json new file mode 100644 index 0000000..ee2b038 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/pt_br.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "inglês (en_US, en_EN, en_CA, en_GB, en_AU, en_PT), espanhol (es_MX, es_ES), chinês (zh_CN), japonês (ja_JA), Português (pt_BR), alemão (de_DE), italiano (it_IT), coreano (ko_KR)", + "item.baseelectric.blank_circuit_board.name": "Placa de Circuito (Vago)", + "item.baseelectric.control_circuit.name": "Circuito de Controle", + "item.baseelectric.integrated_circuit.name": "Circuito Integrado", + "item.baseelectric.psu.name": "Unidade de Alimentação", + "item.baseelectric.silicon_ingot.name": "Silício Lingote", + "item.baseelectric.silicon_mix.name": "Mistura de Silício", + "item.baseelectric.solder_mix.name": "Mistura de Solda", + "item.baseelectric.solder.name": "Solda", + "item.baseelectric.li_powder.name": "Pó de Lítio", + "item.baseelectric.li_ingot.name": "Lítio Lingote", + "item.baseelectric.li_nugget.name": "Pepita de Lítio", + "item.baseelectric.sulfur_powder.name": "Enxofre em Pó", + "item.baseelectric.lead_acid_battery.name": "Bateria de Chumbo Ácido", + "item.baseelectric.nickel_hydride_battery.name": "Bateria Níquel-Hidreto Metálico", + "item.baseelectric.alkaline_battery.name": "Bateria Alcalina", + "item.baseelectric.lithium_battery.name": "Bateria de Lítio", + "tile.baseelectric.electric_conduit.name": "Fio Elétrico", + "tile.baseelectric.electric_track.name": "Elétrica Andaime", + "tile.baseelectric.electric_battery_array.name": "Armazenamento da Bateria", + "tile.baseelectric.electric_crusher.name": "Triturador de Rocha Elétrica", + "tile.baseelectric.laser_turret.name": "Torre de Arma a Laser", + "tile.baseelectric.electric_drill.name": "Broca Mineração Elétrica", + "tile.baseelectric.electric_fabricator.name": "Fábrica Automatizada", + "tile.baseelectric.electric_furnace.name": "Forno Elétrico a Arco", + "tile.baseelectric.electric_oven.name": "Forno Elétrico", + "tile.baseelectric.electric_pcb_printer.name": "Impressora Circuito", + "tile.baseelectric.geothermal_generator.name": "Gerador de Elétrico Geotérmica", + "tile.baseelectric.hydroelectric_generator.name": "Gerador Hidrelétrico", + "tile.baseelectric.photovoltaic_generator.name": "Painel Solar", + "tile.baseelectric.steam_powered_generator.name": "a Vapor Gerador Elétrico", + "tile.baseelectric.growth_chamber.name": "Câmara de Crescimento", + "tile.baseelectric.growth_chamber_controller.name": "Unidade de Controle de Crescimento Câmara", + "tile.baseelectric.li_ore.name": "Minério de Lítio", + "tile.baseelectric.sulfur_ore.name": "Minério de Enxofre", + "tile.baseelectric.led_bar.name": "Luz LED", + "tooltip.battery.charge": "Carga", + "tooltip.battery.capacity": "Capacidade", + "death.attack.laser": "%1$S vaporizado", + "death.attack.laser.player": "%2$s vaporizados %1$s", + "death.attack.propeller": "%1$s foi pulverizado por uma hélice.", + "death.attack.propeller.player": "%2$s empurrou %1$s em uma hélice.", + "tile.baseelectric.electric_switch.name": "Chave Elétrica", + "tile.baseelectric.electric_still.name": "Destilador Elétrico", + "tile.baseelectric.electric_pump.name": "Bomba Elétrica", + "tile.baseelectric.plastic_refinery.name": "Refinaria de Plástico", + "item.baseelectric.petrolplastic_ingot.name": "Petróleo Plástico Lingote", + "tile.baseelectric.pump_pipe_electric.name": "Tubo de Bomba", + "item.baseelectric.blank_circuit_board": "Placa de Circuito (Vago)", + "item.baseelectric.control_circuit": "Circuito de Controle", + "item.baseelectric.integrated_circuit": "Circuito Integrado", + "item.baseelectric.psu": "Unidade de Alimentação", + "item.baseelectric.silicon_ingot": "Silício Lingote", + "item.baseelectric.silicon_mix": "Mistura de Silício", + "item.baseelectric.solder_mix": "Mistura de Solda", + "item.baseelectric.solder": "Solda", + "item.baseelectric.li_powder": "Pó de Lítio", + "item.baseelectric.li_ingot": "Lítio Lingote", + "item.baseelectric.li_nugget": "Pepita de Lítio", + "item.baseelectric.sulfur_powder": "Enxofre em Pó", + "item.baseelectric.lead_acid_battery": "Bateria de Chumbo Ácido", + "item.baseelectric.nickel_hydride_battery": "Bateria Níquel-Hidreto Metálico", + "item.baseelectric.alkaline_battery": "Bateria Alcalina", + "item.baseelectric.lithium_battery": "Bateria de Lítio", + "block.baseelectric.electric_conduit": "Fio Elétrico", + "block.baseelectric.electric_track": "Elétrica Andaime", + "block.baseelectric.electric_battery_array": "Armazenamento da Bateria", + "block.baseelectric.electric_crusher": "Triturador de Rocha Elétrica", + "block.baseelectric.laser_turret": "Torre de Arma a Laser", + "block.baseelectric.electric_drill": "Broca Mineração Elétrica", + "block.baseelectric.electric_fabricator": "Fábrica Automatizada", + "block.baseelectric.electric_furnace": "Forno Elétrico a Arco", + "block.baseelectric.electric_oven": "Forno Elétrico", + "block.baseelectric.electric_pcb_printer": "Impressora Circuito", + "block.baseelectric.geothermal_generator": "Gerador de Elétrico Geotérmica", + "block.baseelectric.hydroelectric_generator": "Gerador Hidrelétrico", + "block.baseelectric.photovoltaic_generator": "Painel Solar", + "block.baseelectric.steam_powered_generator": "a Vapor Gerador Elétrico", + "block.baseelectric.growth_chamber": "Câmara de Crescimento", + "block.baseelectric.growth_chamber_controller": "Unidade de Controle de Crescimento Câmara", + "block.baseelectric.li_ore": "Minério de Lítio", + "block.baseelectric.sulfur_ore": "Minério de Enxofre", + "block.baseelectric.led_bar": "Luz LED", + "block.baseelectric.electric_switch": "Chave Elétrica", + "block.baseelectric.electric_still": "Destilador Elétrico", + "block.baseelectric.electric_pump": "Bomba Elétrica", + "block.baseelectric.plastic_refinery": "Refinaria de Plástico", + "item.baseelectric.petrolplastic_ingot": "Petróleo Plástico Lingote", + "block.baseelectric.pump_pipe_electric": "Tubo de Bomba", + "block.baseelectric.laser_turret_evil": "Torre de Arma a Laser" +} diff --git a/src/main/resources/assets/baseelectric/lang/zh_cn.json b/src/main/resources/assets/baseelectric/lang/zh_cn.json new file mode 100644 index 0000000..cb5bbb6 --- /dev/null +++ b/src/main/resources/assets/baseelectric/lang/zh_cn.json @@ -0,0 +1,92 @@ +{ + "language_support_goals": "英语(EN_US,的en_EN,en_CA,EN_GB,en_AU,en_PT),西班牙语(es_MX,es_ES),中国(zh_CN的),日本(ja_JA),葡萄牙语(PT_BR),德语(de_DE这个),意大利语(it_IT),韩国(ko_KR)", + "item.baseelectric.blank_circuit_board.name": "电路板(空白)", + "item.baseelectric.control_circuit.name": "控制电路", + "item.baseelectric.integrated_circuit.name": "微芯片", + "item.baseelectric.psu.name": "电源单元", + "item.baseelectric.silicon_ingot.name": "硅锭", + "item.baseelectric.silicon_mix.name": "硅混合", + "item.baseelectric.solder_mix.name": "焊接混合", + "item.baseelectric.solder.name": "焊料", + "item.baseelectric.li_powder.name": "粉状锂", + "item.baseelectric.li_ingot.name": "锂锭", + "item.baseelectric.li_nugget.name": "锂掘金", + "item.baseelectric.sulfur_powder.name": "硫粉", + "item.baseelectric.lead_acid_battery.name": "铅酸蓄电池", + "item.baseelectric.nickel_hydride_battery.name": "镍氢电池", + "item.baseelectric.alkaline_battery.name": "碱性电池", + "item.baseelectric.lithium_battery.name": "锂离子电池", + "tile.baseelectric.electric_conduit.name": "电力电缆", + "tile.baseelectric.electric_track.name": "电动脚手架", + "tile.baseelectric.electric_battery_array.name": "电池阵列", + "tile.baseelectric.electric_crusher.name": "电碎石机", + "tile.baseelectric.laser_turret.name": "激光防御炮塔", + "tile.baseelectric.electric_drill.name": "电矿钻", + "tile.baseelectric.electric_fabricator.name": "自动汇编", + "tile.baseelectric.electric_furnace.name": "电弧炉", + "tile.baseelectric.electric_oven.name": "电烤箱", + "tile.baseelectric.electric_pcb_printer.name": " 电路板打印机", + "tile.baseelectric.geothermal_generator.name": "热发电机", + "tile.baseelectric.hydroelectric_generator.name": "水轮发电机", + "tile.baseelectric.photovoltaic_generator.name": "光电发生器", + "tile.baseelectric.steam_powered_generator.name": "蒸汽为动力的电动发电机", + "tile.baseelectric.growth_chamber.name": "生长箱", + "tile.baseelectric.growth_chamber_controller.name": "生长箱控制单元", + "tile.baseelectric.li_ore.name": "锂矿", + "tile.baseelectric.sulfur_ore.name": "硫矿石", + "tile.baseelectric.led_bar.name": "LED燈", + "tooltip.battery.charge": "充电", + "tooltip.battery.capacity": "容量", + "death.attack.laser": "%1$s蒸发", + "death.attack.laser.player": "%2$s汽化%1$s", + "death.attack.propeller": "%1$s被粉碎螺旋桨。", + "death.attack.propeller.player": "%2$s推%1$s转换为螺旋桨。", + "tile.baseelectric.electric_switch.name": "電器開關", + "tile.baseelectric.electric_still.name": "電熱蒸餾水", + "tile.baseelectric.electric_pump.name": "電動泵", + "tile.baseelectric.plastic_refinery.name": "塑料煉油廠", + "item.baseelectric.petrolplastic_ingot.name": "石油膠錠", + "tile.baseelectric.pump_pipe_electric.name": "泵管", + "item.baseelectric.blank_circuit_board": "电路板(空白)", + "item.baseelectric.control_circuit": "控制电路", + "item.baseelectric.integrated_circuit": "微芯片", + "item.baseelectric.psu": "电源单元", + "item.baseelectric.silicon_ingot": "硅锭", + "item.baseelectric.silicon_mix": "硅混合", + "item.baseelectric.solder_mix": "焊接混合", + "item.baseelectric.solder": "焊料", + "item.baseelectric.li_powder": "粉状锂", + "item.baseelectric.li_ingot": "锂锭", + "item.baseelectric.li_nugget": "锂掘金", + "item.baseelectric.sulfur_powder": "硫粉", + "item.baseelectric.lead_acid_battery": "铅酸蓄电池", + "item.baseelectric.nickel_hydride_battery": "镍氢电池", + "item.baseelectric.alkaline_battery": "碱性电池", + "item.baseelectric.lithium_battery": "锂离子电池", + "block.baseelectric.electric_conduit": "电力电缆", + "block.baseelectric.electric_track": "电动脚手架", + "block.baseelectric.electric_battery_array": "电池阵列", + "block.baseelectric.electric_crusher": "电碎石机", + "block.baseelectric.laser_turret": "激光防御炮塔", + "block.baseelectric.electric_drill": "电矿钻", + "block.baseelectric.electric_fabricator": "自动汇编", + "block.baseelectric.electric_furnace": "电弧炉", + "block.baseelectric.electric_oven": "电烤箱", + "block.baseelectric.electric_pcb_printer": " 电路板打印机", + "block.baseelectric.geothermal_generator": "热发电机", + "block.baseelectric.hydroelectric_generator": "水轮发电机", + "block.baseelectric.photovoltaic_generator": "光电发生器", + "block.baseelectric.steam_powered_generator": "蒸汽为动力的电动发电机", + "block.baseelectric.growth_chamber": "生长箱", + "block.baseelectric.growth_chamber_controller": "生长箱控制单元", + "block.baseelectric.li_ore": "锂矿", + "block.baseelectric.sulfur_ore": "硫矿石", + "block.baseelectric.led_bar": "LED燈", + "block.baseelectric.electric_switch": "電器開關", + "block.baseelectric.electric_still": "電熱蒸餾水", + "block.baseelectric.electric_pump": "電動泵", + "block.baseelectric.plastic_refinery": "塑料煉油廠", + "item.baseelectric.petrolplastic_ingot": "石油膠錠", + "block.baseelectric.pump_pipe_electric": "泵管", + "block.baseelectric.laser_turret_evil": "激光防御炮塔" +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_battery_array.json b/src/main/resources/assets/baseelectric/models/block/electric_battery_array.json new file mode 100644 index 0000000..4cd33d4 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_battery_array.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_battery_array", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_0.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_0.json new file mode 100644 index 0000000..0771356 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_0.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ensw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_densuw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_densuw.json new file mode 100644 index 0000000..daf68cd --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_densuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_densuw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_desuw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_desuw.json new file mode 100644 index 0000000..a18647f --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_desuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_desuw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_dnu.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_dnu.json new file mode 100644 index 0000000..082bb93 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_dnu.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_dnu", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_ensw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_ensw.json new file mode 100644 index 0000000..0771356 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_ensw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ensw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_n.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_n.json new file mode 100644 index 0000000..112f395 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_n.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_n", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_ns.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_ns.json new file mode 100644 index 0000000..cd5238e --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_ns.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ns", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsuw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsuw.json new file mode 100644 index 0000000..0758b1b --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsuw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsw.json new file mode 100644 index 0000000..8d04319 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nsw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_nuw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nuw.json new file mode 100644 index 0000000..450f9da --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nuw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_conduit_nw.json b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nw.json new file mode 100644 index 0000000..e252ae0 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_conduit_nw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nw", + "textures": { + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_crusher_off.json b/src/main/resources/assets/baseelectric/models/block/electric_crusher_off.json new file mode 100644 index 0000000..9384cc5 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_crusher_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_crusher_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_crusher_on.json b/src/main/resources/assets/baseelectric/models/block/electric_crusher_on.json new file mode 100644 index 0000000..b10d6f9 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_crusher_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_crusher_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_crusher_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_crusher_powered.json new file mode 100644 index 0000000..29bb992 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_crusher_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_crusher_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_drill_base.json b/src/main/resources/assets/baseelectric/models/block/electric_drill_base.json similarity index 93% rename from src/main/resources/assets/electricadvantage/models/block/electric_drill_base.json rename to src/main/resources/assets/baseelectric/models/block/electric_drill_base.json index 917982f..b69cb83 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_drill_base.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_drill_base.json @@ -1,9 +1,9 @@ { "parent": "block/block", "textures": { - "particle": "electricadvantage:materials/machine_case", - "feet":"poweradvantage:materials/steel", - "side": "electricadvantage:materials/machine_case" + "particle": "baseelectric:materials/machine_case", + "feet":"basepower:materials/steel", + "side": "baseelectric:materials/machine_case" }, "elements": [ diff --git a/src/main/resources/assets/baseelectric/models/block/electric_drill_off.json b/src/main/resources/assets/baseelectric/models/block/electric_drill_off.json new file mode 100644 index 0000000..870a9af --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_drill_off.json @@ -0,0 +1,7 @@ +{ + "parent": "baseelectric:block/electric_drill_base", + "textures": { + "top": "baseelectric:blocks/electric_drill_off", + "bottom": "baseelectric:blocks/laser_drill_optic" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_drill_on.json b/src/main/resources/assets/baseelectric/models/block/electric_drill_on.json new file mode 100644 index 0000000..47fd2ec --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_drill_on.json @@ -0,0 +1,7 @@ +{ + "parent": "baseelectric:block/electric_drill_base", + "textures": { + "top": "baseelectric:blocks/electric_drill_on", + "bottom": "baseelectric:blocks/laser_drill_optic_on" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_fabricator_off.json b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_off.json new file mode 100644 index 0000000..d00668c --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_fabricator_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_fabricator_on.json b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_on.json new file mode 100644 index 0000000..c9c2b8f --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_fabricator_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_fabricator_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_powered.json new file mode 100644 index 0000000..2f19a58 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_fabricator_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_fabricator_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_furnace_off.json b/src/main/resources/assets/baseelectric/models/block/electric_furnace_off.json new file mode 100644 index 0000000..c5fcc99 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_furnace_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_furnace_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_furnace_on.json b/src/main/resources/assets/baseelectric/models/block/electric_furnace_on.json new file mode 100644 index 0000000..9101efc --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_furnace_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_furnace_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_furnace_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_furnace_powered.json new file mode 100644 index 0000000..6f0d52b --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_furnace_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_furnace_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_machine_base.json b/src/main/resources/assets/baseelectric/models/block/electric_machine_base.json similarity index 90% rename from src/main/resources/assets/electricadvantage/models/block/electric_machine_base.json rename to src/main/resources/assets/baseelectric/models/block/electric_machine_base.json index d9b5072..065f242 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_machine_base.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_machine_base.json @@ -1,7 +1,7 @@ { "parent": "block/block", "textures": { - "particle": "electricadvantage:materials/machine_case" + "particle": "baseelectric:materials/machine_case" }, "elements": [ diff --git a/src/main/resources/assets/baseelectric/models/block/electric_oven_off.json b/src/main/resources/assets/baseelectric/models/block/electric_oven_off.json new file mode 100644 index 0000000..c390bed --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_oven_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_oven_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_oven_on.json b/src/main/resources/assets/baseelectric/models/block/electric_oven_on.json new file mode 100644 index 0000000..af61527 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_oven_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_oven_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_oven_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_oven_powered.json new file mode 100644 index 0000000..42cd890 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_oven_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_oven_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_off.json b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_off.json new file mode 100644 index 0000000..20119fa --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pcb_printer_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_on.json b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_on.json new file mode 100644 index 0000000..990c631 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pcb_printer_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_powered.json new file mode 100644 index 0000000..9090958 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pcb_printer_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pcb_printer_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pump_off.json b/src/main/resources/assets/baseelectric/models/block/electric_pump_off.json new file mode 100644 index 0000000..b5f3ed8 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pump_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pump_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pump_on.json b/src/main/resources/assets/baseelectric/models/block/electric_pump_on.json new file mode 100644 index 0000000..975c7f9 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pump_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pump_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_pump_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_pump_powered.json new file mode 100644 index 0000000..975c7f9 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_pump_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_pump_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_still_off.json b/src/main/resources/assets/baseelectric/models/block/electric_still_off.json new file mode 100644 index 0000000..d493a87 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_still_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_still_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_still_on.json b/src/main/resources/assets/baseelectric/models/block/electric_still_on.json new file mode 100644 index 0000000..c1114df --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_still_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_still_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_still_powered.json b/src/main/resources/assets/baseelectric/models/block/electric_still_powered.json new file mode 100644 index 0000000..fa00b86 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_still_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/electric_still_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_switch_off.json b/src/main/resources/assets/baseelectric/models/block/electric_switch_off.json new file mode 100644 index 0000000..da5800b --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_switch_off.json @@ -0,0 +1,7 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "baseelectric:blocks/electric_switch_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/electric_switch_on.json b/src/main/resources/assets/baseelectric/models/block/electric_switch_on.json new file mode 100644 index 0000000..06f8209 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/electric_switch_on.json @@ -0,0 +1,7 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "baseelectric:blocks/electric_switch_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_0.json b/src/main/resources/assets/baseelectric/models/block/electric_track_0.json similarity index 90% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_0.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_0.json index 719a169..ee1f638 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_0.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_0.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_densuw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_densuw.json similarity index 95% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_densuw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_densuw.json index 7072e69..01fa1f2 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_densuw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_densuw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "__comment": "down", diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_desuw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_desuw.json similarity index 95% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_desuw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_desuw.json index f3c0067..e02dc5a 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_desuw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_desuw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_dnu.json b/src/main/resources/assets/baseelectric/models/block/electric_track_dnu.json similarity index 94% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_dnu.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_dnu.json index e456531..c0e6adb 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_dnu.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_dnu.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_ensw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_ensw.json similarity index 94% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_ensw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_ensw.json index f117ed2..e6f32ab 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_ensw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_ensw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_n.json b/src/main/resources/assets/baseelectric/models/block/electric_track_n.json similarity index 93% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_n.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_n.json index bf50242..e8e811c 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_n.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_n.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "__comment": "north-south", diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_ns.json b/src/main/resources/assets/baseelectric/models/block/electric_track_ns.json similarity index 94% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_ns.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_ns.json index 0c3cd91..4fc026e 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_ns.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_ns.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "__comment": "north-south", diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_nsuw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_nsuw.json similarity index 94% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_nsuw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_nsuw.json index 5d68e98..7f084f6 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_nsuw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_nsuw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_nsw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_nsw.json similarity index 93% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_nsw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_nsw.json index 1459629..a796d3a 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_nsw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_nsw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_nuw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_nuw.json similarity index 93% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_nuw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_nuw.json index 27316f8..82adb35 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_nuw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_nuw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_track_nw.json b/src/main/resources/assets/baseelectric/models/block/electric_track_nw.json similarity index 92% rename from src/main/resources/assets/electricadvantage/models/block/electric_track_nw.json rename to src/main/resources/assets/baseelectric/models/block/electric_track_nw.json index f1a7196..831016b 100644 --- a/src/main/resources/assets/electricadvantage/models/block/electric_track_nw.json +++ b/src/main/resources/assets/baseelectric/models/block/electric_track_nw.json @@ -1,9 +1,9 @@ { - "parent": "poweradvantage:block/steel_frame", + "parent": "basepower:block/steel_frame", "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case", - "face": "poweradvantage:blocks/steel_frame" + "texture": "baseelectric:blocks/electric_conduit", + "particle": "baseelectric:materials/machine_case", + "face": "basepower:blocks/steel_frame" }, "elements": [ { "from": [ 6, 6, 6 ], diff --git a/src/main/resources/assets/baseelectric/models/block/geothermal_generator.json b/src/main/resources/assets/baseelectric/models/block/geothermal_generator.json new file mode 100644 index 0000000..e31ab9c --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/geothermal_generator.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/machine_side", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_side", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/growth_chamber_controller.json b/src/main/resources/assets/baseelectric/models/block/growth_chamber_controller.json new file mode 100644 index 0000000..4df783e --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/growth_chamber_controller.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/growth_chamber_controller", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/growth_chamber_off.json b/src/main/resources/assets/baseelectric/models/block/growth_chamber_off.json new file mode 100644 index 0000000..3aa9144 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/growth_chamber_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/growth_chamber_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/growth_chamber_on.json b/src/main/resources/assets/baseelectric/models/block/growth_chamber_on.json new file mode 100644 index 0000000..92f30f1 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/growth_chamber_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/growth_chamber_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/growth_chamber_powered.json b/src/main/resources/assets/baseelectric/models/block/growth_chamber_powered.json new file mode 100644 index 0000000..fbc1bc4 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/growth_chamber_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/growth_chamber_powered", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_off.json b/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_off.json new file mode 100644 index 0000000..750e47f --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/machine_side", + "top": "baseelectric:blocks/hydroelectric_generator_off", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_side", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_on.json b/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_on.json new file mode 100644 index 0000000..caef647 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/hydroelectric_generator_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/machine_side", + "top": "baseelectric:blocks/hydroelectric_generator_on", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_side", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/laser_turret.json b/src/main/resources/assets/baseelectric/models/block/laser_turret.json similarity index 77% rename from src/main/resources/assets/electricadvantage/models/block/laser_turret.json rename to src/main/resources/assets/baseelectric/models/block/laser_turret.json index aa447e3..e08e5fa 100644 --- a/src/main/resources/assets/electricadvantage/models/block/laser_turret.json +++ b/src/main/resources/assets/baseelectric/models/block/laser_turret.json @@ -1,11 +1,11 @@ { "parent": "block/block", "textures": { - "bottom": "electricadvantage:blocks/laser_turret_base", - "top": "electricadvantage:blocks/laser_turret_base", - "side": "electricadvantage:blocks/laser_turret_base", - "shaft": "poweradvantage:materials/steel", - "particle": "poweradvantage:materials/steel" + "bottom": "baseelectric:blocks/laser_turret_base", + "top": "baseelectric:blocks/laser_turret_base", + "side": "baseelectric:blocks/laser_turret_base", + "shaft": "basepower:materials/steel", + "particle": "basepower:materials/steel" }, "elements": [ diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_densuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_densuw.json new file mode 100644 index 0000000..8e82870 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_densuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_densuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_desuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_desuw.json new file mode 100644 index 0000000..5c1c4fa --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_desuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_desuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_dnu.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_dnu.json new file mode 100644 index 0000000..bacd888 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_dnu.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_dnu", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_ensw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_ensw.json new file mode 100644 index 0000000..c501289 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_ensw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ensw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_n.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_n.json new file mode 100644 index 0000000..adba88c --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_n.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_n", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_ns.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_ns.json new file mode 100644 index 0000000..e427dbb --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_ns.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ns", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsuw.json new file mode 100644 index 0000000..bbc2160 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsw.json new file mode 100644 index 0000000..0674e05 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nsw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_nuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nuw.json new file mode 100644 index 0000000..a170043 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_off_nw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nw.json new file mode 100644 index 0000000..6cca400 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_off_nw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nw", + "textures": { + "texture": "baseelectric:blocks/led_bar_off", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_densuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_densuw.json new file mode 100644 index 0000000..b266d61 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_densuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_densuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_desuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_desuw.json new file mode 100644 index 0000000..9809cdb --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_desuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_desuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_dnu.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_dnu.json new file mode 100644 index 0000000..e293e62 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_dnu.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_dnu", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_ensw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_ensw.json new file mode 100644 index 0000000..9ad8906 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_ensw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ensw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_n.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_n.json new file mode 100644 index 0000000..348c1db --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_n.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_n", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_ns.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_ns.json new file mode 100644 index 0000000..db77ddb --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_ns.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_ns", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsuw.json new file mode 100644 index 0000000..5e9aba3 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsw.json new file mode 100644 index 0000000..e837ecb --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nsw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nsw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_nuw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nuw.json new file mode 100644 index 0000000..9699047 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nuw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nuw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/led_bar_on_nw.json b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nw.json new file mode 100644 index 0000000..cc72d11 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/led_bar_on_nw.json @@ -0,0 +1,7 @@ +{ + "parent": "basepower:block/pipe2_nw", + "textures": { + "texture": "baseelectric:blocks/led_bar_on", + "particle": "baseelectric:materials/machine_case" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/li_ore.json b/src/main/resources/assets/baseelectric/models/block/li_ore.json similarity index 50% rename from src/main/resources/assets/electricadvantage/models/block/li_ore.json rename to src/main/resources/assets/baseelectric/models/block/li_ore.json index f7e660c..541b7c7 100644 --- a/src/main/resources/assets/electricadvantage/models/block/li_ore.json +++ b/src/main/resources/assets/baseelectric/models/block/li_ore.json @@ -1,6 +1,6 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "electricadvantage:blocks/lithium_ore" - } -} +{ + "parent": "block/cube_all", + "textures": { + "all": "baseelectric:blocks/lithium_ore" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/block/photovoltaic_generator.json b/src/main/resources/assets/baseelectric/models/block/photovoltaic_generator.json similarity index 50% rename from src/main/resources/assets/electricadvantage/models/block/photovoltaic_generator.json rename to src/main/resources/assets/baseelectric/models/block/photovoltaic_generator.json index 2668019..ebe34e3 100644 --- a/src/main/resources/assets/electricadvantage/models/block/photovoltaic_generator.json +++ b/src/main/resources/assets/baseelectric/models/block/photovoltaic_generator.json @@ -1,6 +1,6 @@ { "parent": "block/cube_all", "textures": { - "all": "electricadvantage:blocks/photovoltaic_cell" + "all": "baseelectric:blocks/photovoltaic_cell" } } diff --git a/src/main/resources/assets/baseelectric/models/block/plastic_refinery_off.json b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_off.json new file mode 100644 index 0000000..454bb36 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/plastic_refinery_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/plastic_refinery_on.json b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_on.json new file mode 100644 index 0000000..8bc96ee --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/plastic_refinery_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/plastic_refinery_powered.json b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_powered.json new file mode 100644 index 0000000..8bc96ee --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/plastic_refinery_powered.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/plastic_refinery_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} diff --git a/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_off.json b/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_off.json new file mode 100644 index 0000000..664378f --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_off.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/steam_powered_generator_off", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_on.json b/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_on.json new file mode 100644 index 0000000..e3cd40e --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/block/steam_powered_generator_on.json @@ -0,0 +1,10 @@ +{ + "parent": "baseelectric:block/electric_machine_base", + "textures": { + "front": "baseelectric:blocks/steam_powered_generator_on", + "top": "baseelectric:blocks/machine_top", + "bottom":"baseelectric:blocks/machine_top", + "back": "baseelectric:blocks/machine_back", + "side": "baseelectric:blocks/machine_side" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/block/sulfur_ore.json b/src/main/resources/assets/baseelectric/models/block/sulfur_ore.json similarity index 52% rename from src/main/resources/assets/electricadvantage/models/block/sulfur_ore.json rename to src/main/resources/assets/baseelectric/models/block/sulfur_ore.json index e7e534c..aacc42b 100644 --- a/src/main/resources/assets/electricadvantage/models/block/sulfur_ore.json +++ b/src/main/resources/assets/baseelectric/models/block/sulfur_ore.json @@ -1,6 +1,6 @@ { "parent": "block/cube_all", "textures": { - "all": "electricadvantage:blocks/sulfur_ore" + "all": "baseelectric:blocks/sulfur_ore" } } \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/alkaline_battery.json b/src/main/resources/assets/baseelectric/models/item/alkaline_battery.json new file mode 100644 index 0000000..14f7e50 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/alkaline_battery.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/battery_base", + "textures": { + "item_texture": "baseelectric:items/alkaline_battery" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/item/battery_base.json b/src/main/resources/assets/baseelectric/models/item/battery_base.json similarity index 91% rename from src/main/resources/assets/electricadvantage/models/item/battery_base.json rename to src/main/resources/assets/baseelectric/models/item/battery_base.json index 62326fd..43bda84 100644 --- a/src/main/resources/assets/electricadvantage/models/item/battery_base.json +++ b/src/main/resources/assets/baseelectric/models/item/battery_base.json @@ -1,7 +1,7 @@ { "parent": "block/block", "textures": { - "particle": "electricadvantage:materials/machine_case" + "particle": "baseelectric:materials/machine_case" }, "ambientocclusion": false, "elements": [ diff --git a/src/main/resources/assets/baseelectric/models/item/blank_circuit_board.json b/src/main/resources/assets/baseelectric/models/item/blank_circuit_board.json new file mode 100644 index 0000000..336d289 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/blank_circuit_board.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/blank_circuit_board" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/control_circuit.json b/src/main/resources/assets/baseelectric/models/item/control_circuit.json new file mode 100644 index 0000000..f71eec0 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/control_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/control_circuit" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_battery_array.json b/src/main/resources/assets/baseelectric/models/item/electric_battery_array.json new file mode 100644 index 0000000..2f202dd --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_battery_array.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_battery_array", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_conduit.json b/src/main/resources/assets/baseelectric/models/item/electric_conduit.json new file mode 100644 index 0000000..ab519e6 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_conduit.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_conduit_ns", + "ambientocclusion": false +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/electric_crusher.json b/src/main/resources/assets/baseelectric/models/item/electric_crusher.json new file mode 100644 index 0000000..5986985 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_crusher.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_crusher_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_drill.json b/src/main/resources/assets/baseelectric/models/item/electric_drill.json new file mode 100644 index 0000000..7eaaf0c --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_drill.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_drill_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_fabricator.json b/src/main/resources/assets/baseelectric/models/item/electric_fabricator.json new file mode 100644 index 0000000..6829af0 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_fabricator.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_fabricator_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_furnace.json b/src/main/resources/assets/baseelectric/models/item/electric_furnace.json new file mode 100644 index 0000000..807954a --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_furnace.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_furnace_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_oven.json b/src/main/resources/assets/baseelectric/models/item/electric_oven.json new file mode 100644 index 0000000..6bf2693 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_oven.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_oven_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_pcb_printer.json b/src/main/resources/assets/baseelectric/models/item/electric_pcb_printer.json new file mode 100644 index 0000000..213a9e6 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_pcb_printer.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_pcb_printer_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_pump.json b/src/main/resources/assets/baseelectric/models/item/electric_pump.json new file mode 100644 index 0000000..7e2cd9a --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_pump.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_pump_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_still.json b/src/main/resources/assets/baseelectric/models/item/electric_still.json new file mode 100644 index 0000000..84bde3a --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_still.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_still_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/electric_switch.json b/src/main/resources/assets/baseelectric/models/item/electric_switch.json new file mode 100644 index 0000000..c280188 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_switch.json @@ -0,0 +1,3 @@ +{ + "parent": "baseelectric:block/electric_switch_on" +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/electric_track.json b/src/main/resources/assets/baseelectric/models/item/electric_track.json new file mode 100644 index 0000000..c15e692 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/electric_track.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/electric_track_ns", + "ambientocclusion": false +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/generic_item.json b/src/main/resources/assets/baseelectric/models/item/generic_item.json new file mode 100644 index 0000000..abf630a --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/generic_item.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "baseelectric:items/blank_circuit_board" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/geothermal_generator.json b/src/main/resources/assets/baseelectric/models/item/geothermal_generator.json new file mode 100644 index 0000000..cce63b0 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/geothermal_generator.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/geothermal_generator", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/growth_chamber.json b/src/main/resources/assets/baseelectric/models/item/growth_chamber.json new file mode 100644 index 0000000..27c3286 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/growth_chamber.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/growth_chamber_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/growth_chamber_controller.json b/src/main/resources/assets/baseelectric/models/item/growth_chamber_controller.json new file mode 100644 index 0000000..c5fbecc --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/growth_chamber_controller.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/growth_chamber_controller", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/hydroelectric_generator.json b/src/main/resources/assets/baseelectric/models/item/hydroelectric_generator.json new file mode 100644 index 0000000..2a13854 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/hydroelectric_generator.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/hydroelectric_generator_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/integrated_circuit.json b/src/main/resources/assets/baseelectric/models/item/integrated_circuit.json new file mode 100644 index 0000000..7c98b3e --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/integrated_circuit.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/integrated_circuit" + } +} diff --git a/src/main/resources/assets/electricadvantage/models/item/laser_turret.json b/src/main/resources/assets/baseelectric/models/item/laser_turret.json similarity index 81% rename from src/main/resources/assets/electricadvantage/models/item/laser_turret.json rename to src/main/resources/assets/baseelectric/models/item/laser_turret.json index 63cfdd5..f667f62 100644 --- a/src/main/resources/assets/electricadvantage/models/item/laser_turret.json +++ b/src/main/resources/assets/baseelectric/models/item/laser_turret.json @@ -1,12 +1,12 @@ { "parent": "block/block", "textures": { - "bottom": "electricadvantage:blocks/laser_turret_base", - "top": "electricadvantage:blocks/laser_turret_base", - "side": "electricadvantage:blocks/laser_turret_base", - "shaft": "poweradvantage:materials/steel", - "head": "electricadvantage:entity/laser_turret", - "particle": "poweradvantage:materials/steel" + "bottom": "baseelectric:blocks/laser_turret_base", + "top": "baseelectric:blocks/laser_turret_base", + "side": "baseelectric:blocks/laser_turret_base", + "shaft": "basepower:materials/steel", + "head": "baseelectric:entity/laser_turret", + "particle": "basepower:materials/steel" }, "elements": [ diff --git a/src/main/resources/assets/electricadvantage/models/item/laser_turret_evil.json b/src/main/resources/assets/baseelectric/models/item/laser_turret_evil.json similarity index 81% rename from src/main/resources/assets/electricadvantage/models/item/laser_turret_evil.json rename to src/main/resources/assets/baseelectric/models/item/laser_turret_evil.json index 63cfdd5..f667f62 100644 --- a/src/main/resources/assets/electricadvantage/models/item/laser_turret_evil.json +++ b/src/main/resources/assets/baseelectric/models/item/laser_turret_evil.json @@ -1,12 +1,12 @@ { "parent": "block/block", "textures": { - "bottom": "electricadvantage:blocks/laser_turret_base", - "top": "electricadvantage:blocks/laser_turret_base", - "side": "electricadvantage:blocks/laser_turret_base", - "shaft": "poweradvantage:materials/steel", - "head": "electricadvantage:entity/laser_turret", - "particle": "poweradvantage:materials/steel" + "bottom": "baseelectric:blocks/laser_turret_base", + "top": "baseelectric:blocks/laser_turret_base", + "side": "baseelectric:blocks/laser_turret_base", + "shaft": "basepower:materials/steel", + "head": "baseelectric:entity/laser_turret", + "particle": "basepower:materials/steel" }, "elements": [ diff --git a/src/main/resources/assets/baseelectric/models/item/lead_acid_battery.json b/src/main/resources/assets/baseelectric/models/item/lead_acid_battery.json new file mode 100644 index 0000000..e24b4c9 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/lead_acid_battery.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/battery_base", + "textures": { + "item_texture": "baseelectric:items/lead_acid_battery" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/led_bar.json b/src/main/resources/assets/baseelectric/models/item/led_bar.json new file mode 100644 index 0000000..82a0c05 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/led_bar.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/led_bar_on_ns", + "ambientocclusion": false +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/li_ingot.json b/src/main/resources/assets/baseelectric/models/item/li_ingot.json new file mode 100644 index 0000000..7495c59 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/li_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/li_ingot" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/li_nugget.json b/src/main/resources/assets/baseelectric/models/item/li_nugget.json new file mode 100644 index 0000000..df7fd05 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/li_nugget.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/li_nugget" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/li_ore.json b/src/main/resources/assets/baseelectric/models/item/li_ore.json new file mode 100644 index 0000000..905935b --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/li_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "baseelectric:block/li_ore" +} diff --git a/src/main/resources/assets/baseelectric/models/item/li_powder.json b/src/main/resources/assets/baseelectric/models/item/li_powder.json new file mode 100644 index 0000000..73b40ef --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/li_powder.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/li_powder" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/lithium_battery.json b/src/main/resources/assets/baseelectric/models/item/lithium_battery.json new file mode 100644 index 0000000..f1e7a57 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/lithium_battery.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/battery_base", + "textures": { + "item_texture": "baseelectric:items/lithium_battery" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/nickel_hydride_battery.json b/src/main/resources/assets/baseelectric/models/item/nickel_hydride_battery.json new file mode 100644 index 0000000..0c38ded --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/nickel_hydride_battery.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/battery_base", + "textures": { + "item_texture": "baseelectric:items/nickel_hydride_battery" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/petrolplastic_ingot.json b/src/main/resources/assets/baseelectric/models/item/petrolplastic_ingot.json new file mode 100644 index 0000000..337293e --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/petrolplastic_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/petrolplastic_ingot" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/photovoltaic_generator.json b/src/main/resources/assets/baseelectric/models/item/photovoltaic_generator.json new file mode 100644 index 0000000..ddf4902 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/photovoltaic_generator.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/photovoltaic_generator", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/plastic_refinery.json b/src/main/resources/assets/baseelectric/models/item/plastic_refinery.json new file mode 100644 index 0000000..f7632a7 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/plastic_refinery.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/plastic_refinery_off", + "ambientocclusion": false +} diff --git a/src/main/resources/assets/baseelectric/models/item/psu.json b/src/main/resources/assets/baseelectric/models/item/psu.json new file mode 100644 index 0000000..0e12fb0 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/psu.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/psu" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/pump_pipe_electric.json b/src/main/resources/assets/baseelectric/models/item/pump_pipe_electric.json new file mode 100644 index 0000000..2cfca62 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/pump_pipe_electric.json @@ -0,0 +1,4 @@ +{ + "parent": "basepower:block/fluid_pipe_ns", + "ambientocclusion": false +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/silicon_ingot.json b/src/main/resources/assets/baseelectric/models/item/silicon_ingot.json new file mode 100644 index 0000000..8f9f1f6 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/silicon_ingot.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/silicon_ingot" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/silicon_mix.json b/src/main/resources/assets/baseelectric/models/item/silicon_mix.json new file mode 100644 index 0000000..e8e077f --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/silicon_mix.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/silicon_mix" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/solder.json b/src/main/resources/assets/baseelectric/models/item/solder.json new file mode 100644 index 0000000..201a206 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/solder.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/solder" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/solder_mix.json b/src/main/resources/assets/baseelectric/models/item/solder_mix.json new file mode 100644 index 0000000..8bf7faf --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/solder_mix.json @@ -0,0 +1,6 @@ +{ + "parent": "baseelectric:item/generic_item", + "textures": { + "layer0": "baseelectric:items/solder_mix" + } +} diff --git a/src/main/resources/assets/baseelectric/models/item/steam_powered_generator.json b/src/main/resources/assets/baseelectric/models/item/steam_powered_generator.json new file mode 100644 index 0000000..3363433 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/steam_powered_generator.json @@ -0,0 +1,4 @@ +{ + "parent": "baseelectric:block/steam_powered_generator_off", + "ambientocclusion": false +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/sulfur_ore.json b/src/main/resources/assets/baseelectric/models/item/sulfur_ore.json new file mode 100644 index 0000000..1299c73 --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/sulfur_ore.json @@ -0,0 +1,3 @@ +{ + "parent": "baseelectric:block/sulfur_ore" +} \ No newline at end of file diff --git a/src/main/resources/assets/baseelectric/models/item/sulfur_powder.json b/src/main/resources/assets/baseelectric/models/item/sulfur_powder.json new file mode 100644 index 0000000..b1b679d --- /dev/null +++ b/src/main/resources/assets/baseelectric/models/item/sulfur_powder.json @@ -0,0 +1,6 @@ +{ + "parent": "item/generated", + "textures": { + "layer0": "baseelectric:items/sulfur_powder" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/shaders/core/unshaded.json b/src/main/resources/assets/baseelectric/shaders/core/unshaded.json similarity index 95% rename from src/main/resources/assets/electricadvantage/shaders/core/unshaded.json rename to src/main/resources/assets/baseelectric/shaders/core/unshaded.json index 19caee4..0dfe265 100644 --- a/src/main/resources/assets/electricadvantage/shaders/core/unshaded.json +++ b/src/main/resources/assets/baseelectric/shaders/core/unshaded.json @@ -1,6 +1,6 @@ { "blend": { "func": "add", "srcrgb": "srcalpha", "dstrgb": "1-srcalpha" }, - "vertex": "electricadvantage:unshaded", + "vertex": "baseelectric:unshaded", "fragment": "minecraft:rendertype_entity_translucent", "attributes": ["Position", "Color", "UV0", "UV1", "UV2", "Normal"], "samplers": [{"name": "Sampler0"}, {"name": "Sampler1"}, {"name": "Sampler2"}], diff --git a/src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh b/src/main/resources/assets/baseelectric/shaders/core/unshaded.vsh similarity index 100% rename from src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh rename to src/main/resources/assets/baseelectric/shaders/core/unshaded.vsh diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_battery_array.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_battery_array.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_battery_array.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_battery_array.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_conduit.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_conduit.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_conduit.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_conduit.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_on.png.mcmeta b/src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_on.png.mcmeta similarity index 88% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_on.png.mcmeta rename to src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_on.png.mcmeta index 72c98b9..dd1bedb 100644 --- a/src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_on.png.mcmeta +++ b/src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_on.png.mcmeta @@ -1,3 +1,3 @@ -{ - "animation": {} -} +{ + "animation": {} +} diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_crusher_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_crusher_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_drill_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_drill_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_drill_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_drill_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_drill_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_drill_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_drill_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_on.png.mcmeta b/src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_on.png.mcmeta similarity index 91% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_on.png.mcmeta rename to src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_on.png.mcmeta index 8e23b64..5c072b7 100644 --- a/src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_on.png.mcmeta +++ b/src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_on.png.mcmeta @@ -1,16 +1,16 @@ -{ - "animation": { - "frametime": 24, - "interpolate": false, - "frames": [ - 0, - 1, - 3, - 2, - 1, - 3, - 0, - 2 - ] - } -} +{ + "animation": { + "frametime": 24, + "interpolate": false, + "frames": [ + 0, + 1, + 3, + 2, + 1, + 3, + 0, + 2 + ] + } +} diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_fabricator_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_fabricator_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_furnace_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_furnace_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_oven_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_oven_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_oven_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_oven_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_oven_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_oven_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_oven_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_pcb_printer_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_pcb_printer_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_pump_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_pump_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_pump_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_pump_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_pump_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_pump_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_pump_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_pump_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_still_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_still_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_still_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_still_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_still_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_still_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_still_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_still_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_still_on.png.mcmeta b/src/main/resources/assets/baseelectric/textures/blocks/electric_still_on.png.mcmeta similarity index 88% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_still_on.png.mcmeta rename to src/main/resources/assets/baseelectric/textures/blocks/electric_still_on.png.mcmeta index 72c98b9..dd1bedb 100644 --- a/src/main/resources/assets/electricadvantage/textures/blocks/electric_still_on.png.mcmeta +++ b/src/main/resources/assets/baseelectric/textures/blocks/electric_still_on.png.mcmeta @@ -1,3 +1,3 @@ -{ - "animation": {} -} +{ + "animation": {} +} diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_still_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_still_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_still_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_still_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_switch_off.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_switch_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_switch_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_switch_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/electric_switch_on.png b/src/main/resources/assets/baseelectric/textures/blocks/electric_switch_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/electric_switch_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/electric_switch_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_controller.png b/src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_controller.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_controller.png rename to src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_controller.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_off.png b/src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_on.png b/src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_powered.png b/src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_powered.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/growth_chamber_powered.png rename to src/main/resources/assets/baseelectric/textures/blocks/growth_chamber_powered.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_off.png b/src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_on.png b/src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_on.png.mcmeta b/src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_on.png.mcmeta similarity index 88% rename from src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_on.png.mcmeta rename to src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_on.png.mcmeta index 72c98b9..dd1bedb 100644 --- a/src/main/resources/assets/electricadvantage/textures/blocks/hydroelectric_generator_on.png.mcmeta +++ b/src/main/resources/assets/baseelectric/textures/blocks/hydroelectric_generator_on.png.mcmeta @@ -1,3 +1,3 @@ -{ - "animation": {} -} +{ + "animation": {} +} diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/laser_drill_optic.png b/src/main/resources/assets/baseelectric/textures/blocks/laser_drill_optic.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/laser_drill_optic.png rename to src/main/resources/assets/baseelectric/textures/blocks/laser_drill_optic.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/laser_drill_optic_on.png b/src/main/resources/assets/baseelectric/textures/blocks/laser_drill_optic_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/laser_drill_optic_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/laser_drill_optic_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/laser_turret_base.png b/src/main/resources/assets/baseelectric/textures/blocks/laser_turret_base.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/laser_turret_base.png rename to src/main/resources/assets/baseelectric/textures/blocks/laser_turret_base.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/led_bar_off.png b/src/main/resources/assets/baseelectric/textures/blocks/led_bar_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/led_bar_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/led_bar_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/led_bar_on.png b/src/main/resources/assets/baseelectric/textures/blocks/led_bar_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/led_bar_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/led_bar_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/lithium_ore.png b/src/main/resources/assets/baseelectric/textures/blocks/lithium_ore.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/lithium_ore.png rename to src/main/resources/assets/baseelectric/textures/blocks/lithium_ore.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/machine_back.png b/src/main/resources/assets/baseelectric/textures/blocks/machine_back.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/machine_back.png rename to src/main/resources/assets/baseelectric/textures/blocks/machine_back.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/machine_side.png b/src/main/resources/assets/baseelectric/textures/blocks/machine_side.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/machine_side.png rename to src/main/resources/assets/baseelectric/textures/blocks/machine_side.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/machine_top.png b/src/main/resources/assets/baseelectric/textures/blocks/machine_top.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/machine_top.png rename to src/main/resources/assets/baseelectric/textures/blocks/machine_top.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/photovoltaic_cell.png b/src/main/resources/assets/baseelectric/textures/blocks/photovoltaic_cell.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/photovoltaic_cell.png rename to src/main/resources/assets/baseelectric/textures/blocks/photovoltaic_cell.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/plastic_refinery_off.png b/src/main/resources/assets/baseelectric/textures/blocks/plastic_refinery_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/plastic_refinery_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/plastic_refinery_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/plastic_refinery_on.png b/src/main/resources/assets/baseelectric/textures/blocks/plastic_refinery_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/plastic_refinery_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/plastic_refinery_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_off.png b/src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_off.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_off.png rename to src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_off.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_on.png b/src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_on.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_on.png rename to src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_on.png diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_on.png.mcmeta b/src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_on.png.mcmeta similarity index 88% rename from src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_on.png.mcmeta rename to src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_on.png.mcmeta index 72c98b9..dd1bedb 100644 --- a/src/main/resources/assets/electricadvantage/textures/blocks/steam_powered_generator_on.png.mcmeta +++ b/src/main/resources/assets/baseelectric/textures/blocks/steam_powered_generator_on.png.mcmeta @@ -1,3 +1,3 @@ -{ - "animation": {} -} +{ + "animation": {} +} diff --git a/src/main/resources/assets/electricadvantage/textures/blocks/sulfur_ore.png b/src/main/resources/assets/baseelectric/textures/blocks/sulfur_ore.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/blocks/sulfur_ore.png rename to src/main/resources/assets/baseelectric/textures/blocks/sulfur_ore.png diff --git a/src/main/resources/assets/electricadvantage/textures/entity/hydroturbine.png b/src/main/resources/assets/baseelectric/textures/entity/hydroturbine.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/entity/hydroturbine.png rename to src/main/resources/assets/baseelectric/textures/entity/hydroturbine.png diff --git a/src/main/resources/assets/electricadvantage/textures/entity/laser_turret.png b/src/main/resources/assets/baseelectric/textures/entity/laser_turret.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/entity/laser_turret.png rename to src/main/resources/assets/baseelectric/textures/entity/laser_turret.png diff --git a/src/main/resources/assets/electricadvantage/textures/entity/windturbine.png b/src/main/resources/assets/baseelectric/textures/entity/windturbine.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/entity/windturbine.png rename to src/main/resources/assets/baseelectric/textures/entity/windturbine.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_battery_array_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_battery_array_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_battery_array_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_battery_array_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_crusher_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_crusher_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_crusher_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_crusher_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_drill_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_drill_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_drill_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_drill_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_fabricator_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_fabricator_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_fabricator_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_fabricator_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_furnace_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_furnace_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_furnace_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_furnace_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_generator_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_generator_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_generator_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_generator_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_machine_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_machine_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_machine_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_machine_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_oven_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_oven_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_oven_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_oven_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_pump_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_pump_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_pump_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_pump_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/electric_still_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/electric_still_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/electric_still_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/electric_still_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/geothermal_generator_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/geothermal_generator_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/geothermal_generator_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/geothermal_generator_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/growth_chamber_controller_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/growth_chamber_controller_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/growth_chamber_controller_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/growth_chamber_controller_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/growth_chamber_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/growth_chamber_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/growth_chamber_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/growth_chamber_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/pcb_printer_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/pcb_printer_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/pcb_printer_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/pcb_printer_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/gui/container/plastic_refinery_gui.png b/src/main/resources/assets/baseelectric/textures/gui/container/plastic_refinery_gui.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/gui/container/plastic_refinery_gui.png rename to src/main/resources/assets/baseelectric/textures/gui/container/plastic_refinery_gui.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/alkaline_battery.png b/src/main/resources/assets/baseelectric/textures/items/alkaline_battery.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/alkaline_battery.png rename to src/main/resources/assets/baseelectric/textures/items/alkaline_battery.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/blank_circuit_board.png b/src/main/resources/assets/baseelectric/textures/items/blank_circuit_board.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/blank_circuit_board.png rename to src/main/resources/assets/baseelectric/textures/items/blank_circuit_board.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/control_circuit.png b/src/main/resources/assets/baseelectric/textures/items/control_circuit.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/control_circuit.png rename to src/main/resources/assets/baseelectric/textures/items/control_circuit.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/integrated_circuit.png b/src/main/resources/assets/baseelectric/textures/items/integrated_circuit.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/integrated_circuit.png rename to src/main/resources/assets/baseelectric/textures/items/integrated_circuit.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/lead_acid_battery.png b/src/main/resources/assets/baseelectric/textures/items/lead_acid_battery.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/lead_acid_battery.png rename to src/main/resources/assets/baseelectric/textures/items/lead_acid_battery.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/li_ingot.png b/src/main/resources/assets/baseelectric/textures/items/li_ingot.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/li_ingot.png rename to src/main/resources/assets/baseelectric/textures/items/li_ingot.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/li_nugget.png b/src/main/resources/assets/baseelectric/textures/items/li_nugget.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/li_nugget.png rename to src/main/resources/assets/baseelectric/textures/items/li_nugget.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/li_powder.png b/src/main/resources/assets/baseelectric/textures/items/li_powder.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/li_powder.png rename to src/main/resources/assets/baseelectric/textures/items/li_powder.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/lithium_battery.png b/src/main/resources/assets/baseelectric/textures/items/lithium_battery.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/lithium_battery.png rename to src/main/resources/assets/baseelectric/textures/items/lithium_battery.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/nickel_hydride_battery.png b/src/main/resources/assets/baseelectric/textures/items/nickel_hydride_battery.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/nickel_hydride_battery.png rename to src/main/resources/assets/baseelectric/textures/items/nickel_hydride_battery.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/petrolplastic_ingot.png b/src/main/resources/assets/baseelectric/textures/items/petrolplastic_ingot.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/petrolplastic_ingot.png rename to src/main/resources/assets/baseelectric/textures/items/petrolplastic_ingot.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/psu.png b/src/main/resources/assets/baseelectric/textures/items/psu.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/psu.png rename to src/main/resources/assets/baseelectric/textures/items/psu.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/silicon_ingot.png b/src/main/resources/assets/baseelectric/textures/items/silicon_ingot.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/silicon_ingot.png rename to src/main/resources/assets/baseelectric/textures/items/silicon_ingot.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/silicon_mix.png b/src/main/resources/assets/baseelectric/textures/items/silicon_mix.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/silicon_mix.png rename to src/main/resources/assets/baseelectric/textures/items/silicon_mix.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/solder.png b/src/main/resources/assets/baseelectric/textures/items/solder.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/solder.png rename to src/main/resources/assets/baseelectric/textures/items/solder.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/solder_mix.png b/src/main/resources/assets/baseelectric/textures/items/solder_mix.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/solder_mix.png rename to src/main/resources/assets/baseelectric/textures/items/solder_mix.png diff --git a/src/main/resources/assets/electricadvantage/textures/items/sulfur_powder.png b/src/main/resources/assets/baseelectric/textures/items/sulfur_powder.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/items/sulfur_powder.png rename to src/main/resources/assets/baseelectric/textures/items/sulfur_powder.png diff --git a/src/main/resources/assets/electricadvantage/textures/materials/laser_beam.png b/src/main/resources/assets/baseelectric/textures/materials/laser_beam.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/materials/laser_beam.png rename to src/main/resources/assets/baseelectric/textures/materials/laser_beam.png diff --git a/src/main/resources/assets/electricadvantage/textures/materials/machine_case.png b/src/main/resources/assets/baseelectric/textures/materials/machine_case.png similarity index 100% rename from src/main/resources/assets/electricadvantage/textures/materials/machine_case.png rename to src/main/resources/assets/baseelectric/textures/materials/machine_case.png diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_battery_array.json b/src/main/resources/assets/electricadvantage/blockstates/electric_battery_array.json deleted file mode 100644 index f26af02..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_battery_array.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "active=true,facing=east": { "model": "electricadvantage:block/electric_battery_array", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/electric_battery_array" }, - "active=true,facing=south": { "model": "electricadvantage:block/electric_battery_array", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/electric_battery_array", "y": 270 }, - "active=false,facing=east": { "model": "electricadvantage:block/electric_battery_array", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/electric_battery_array" }, - "active=false,facing=south": { "model": "electricadvantage:block/electric_battery_array", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/electric_battery_array", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_conduit.json b/src/main/resources/assets/electricadvantage/blockstates/electric_conduit.json deleted file mode 100644 index c85de48..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_conduit.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "__comment": "blockstate parameters MUST be in alphabetical order!", - "variants": { - "down=false,east=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_n", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_n", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_n", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_n", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_n", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_n", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_ns", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nw", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 270, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_ns", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_ns", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nw", "x": 270, "y": 270, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 0, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nsw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_dnu", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 180, "y": 180, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 180, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 180, "y": 270, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_ensw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_ensw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 180, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 90, "y": 270, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_nsuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_desuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_conduit_densuw", "x": 0, "y": 0, "uvlock": false } - - } -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_crusher.json b/src/main/resources/assets/electricadvantage/blockstates/electric_crusher.json deleted file mode 100644 index 9042a82..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_crusher.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_crusher_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_crusher_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_crusher_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_crusher_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_crusher_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_crusher_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_crusher_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_crusher_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_crusher_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_crusher_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_crusher_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_crusher_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_crusher_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_crusher_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_crusher_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_crusher_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_drill.json b/src/main/resources/assets/electricadvantage/blockstates/electric_drill.json deleted file mode 100644 index 1f85ab7..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_drill.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "variants": { - "active=true,facing=up": { "model": "electricadvantage:block/electric_drill_on", "x":270 }, - "active=true,facing=down": { "model": "electricadvantage:block/electric_drill_on", "x": 90 }, - "active=true,facing=east": { "model": "electricadvantage:block/electric_drill_on", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/electric_drill_on" }, - "active=true,facing=south": { "model": "electricadvantage:block/electric_drill_on", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/electric_drill_on", "y": 270 }, - "active=false,facing=up": { "model": "electricadvantage:block/electric_drill_off", "x":270 }, - "active=false,facing=down": { "model": "electricadvantage:block/electric_drill_off", "x": 90 }, - "active=false,facing=east": { "model": "electricadvantage:block/electric_drill_off", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/electric_drill_off" }, - "active=false,facing=south": { "model": "electricadvantage:block/electric_drill_off", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/electric_drill_off", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_fabricator.json b/src/main/resources/assets/electricadvantage/blockstates/electric_fabricator.json deleted file mode 100644 index df2151e..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_fabricator.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_fabricator_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_fabricator_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_fabricator_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_fabricator_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_fabricator_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_fabricator_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_fabricator_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_fabricator_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_fabricator_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_fabricator_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_fabricator_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_fabricator_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_fabricator_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_fabricator_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_fabricator_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_fabricator_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_furnace.json b/src/main/resources/assets/electricadvantage/blockstates/electric_furnace.json deleted file mode 100644 index 6fccb9e..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_furnace.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_furnace_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_furnace_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_furnace_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_furnace_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_furnace_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_furnace_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_furnace_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_furnace_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_furnace_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_furnace_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_furnace_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_furnace_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_furnace_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_furnace_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_furnace_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_furnace_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_oven.json b/src/main/resources/assets/electricadvantage/blockstates/electric_oven.json deleted file mode 100644 index a2d0446..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_oven.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_oven_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_oven_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_oven_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_oven_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_oven_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_oven_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_oven_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_oven_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_oven_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_oven_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_oven_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_oven_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_oven_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_oven_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_oven_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_oven_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_pcb_printer.json b/src/main/resources/assets/electricadvantage/blockstates/electric_pcb_printer.json deleted file mode 100644 index aeb3d1b..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_pcb_printer.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_pcb_printer_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_pcb_printer_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_pump.json b/src/main/resources/assets/electricadvantage/blockstates/electric_pump.json deleted file mode 100644 index 35a48a2..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_pump.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_pump_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_pump_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_pump_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_pump_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_pump_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_pump_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_pump_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_pump_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_pump_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_pump_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_pump_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_pump_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_pump_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_pump_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_pump_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_pump_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_still.json b/src/main/resources/assets/electricadvantage/blockstates/electric_still.json deleted file mode 100644 index 7d8c62a..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_still.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/electric_still_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/electric_still_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/electric_still_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/electric_still_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/electric_still_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/electric_still_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/electric_still_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/electric_still_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/electric_still_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/electric_still_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/electric_still_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/electric_still_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/electric_still_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/electric_still_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/electric_still_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/electric_still_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_switch.json b/src/main/resources/assets/electricadvantage/blockstates/electric_switch.json deleted file mode 100644 index 82b5ec2..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_switch.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "variants": { - "active=false": { "model": "electricadvantage:block/electric_switch_off"}, - "active=true": { "model": "electricadvantage:block/electric_switch_on"} - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/electric_track.json b/src/main/resources/assets/electricadvantage/blockstates/electric_track.json deleted file mode 100644 index 956a5d1..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/electric_track.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "__comment": "blockstate parameters MUST be in alphabetical order!", - "variants": { - "down=false,east=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_n", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_n", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_n", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_n", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_n", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_n", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_ns", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_nw", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 270, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_ns", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_ns", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_nw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_nw", "x": 270, "y": 270, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_nw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/electric_track_nuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_nuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_dnu", "x": 0, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_dnu", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_dnu", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_dnu", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_nuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_dnu", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nuw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_dnu", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_nsw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_nuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_nuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_dnu", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_dnu", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_nuw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_nuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/electric_track_nsuw", "x": 180, "y": 180, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/electric_track_nsuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 180, "y": 90, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_nsuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 180, "y": 270, "uvlock": false }, - "down=true,east=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_ensw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_ensw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 180, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 90, "y": 270, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_nsuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_nsuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/electric_track_desuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/electric_track_desuw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/electric_track_desuw", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_desuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_desuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_desuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/electric_track_densuw", "x": 0, "y": 0, "uvlock": false } - - } -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/blockstates/geothermal_generator.json b/src/main/resources/assets/electricadvantage/blockstates/geothermal_generator.json deleted file mode 100644 index 7ba200e..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/geothermal_generator.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "active=true,facing=east": { "model": "electricadvantage:block/geothermal_generator", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/geothermal_generator" }, - "active=true,facing=south": { "model": "electricadvantage:block/geothermal_generator", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/geothermal_generator", "y": 270 }, - "active=false,facing=east": { "model": "electricadvantage:block/geothermal_generator", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/geothermal_generator" }, - "active=false,facing=south": { "model": "electricadvantage:block/geothermal_generator", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/geothermal_generator", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/growth_chamber.json b/src/main/resources/assets/electricadvantage/blockstates/growth_chamber.json deleted file mode 100644 index 1bd9fd9..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/growth_chamber.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/growth_chamber_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/growth_chamber_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/growth_chamber_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/growth_chamber_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/growth_chamber_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/growth_chamber_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/growth_chamber_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/growth_chamber_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/growth_chamber_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/growth_chamber_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/growth_chamber_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/growth_chamber_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/growth_chamber_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/growth_chamber_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/growth_chamber_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/growth_chamber_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/growth_chamber_controller.json b/src/main/resources/assets/electricadvantage/blockstates/growth_chamber_controller.json deleted file mode 100644 index cb5898e..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/growth_chamber_controller.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "variants": { - "facing=east": { "model": "electricadvantage:block/growth_chamber_controller", "y": 90 }, - "facing=north": { "model": "electricadvantage:block/growth_chamber_controller" }, - "facing=south": { "model": "electricadvantage:block/growth_chamber_controller", "y": 180 }, - "facing=west": { "model": "electricadvantage:block/growth_chamber_controller", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/hydroelectric_generator.json b/src/main/resources/assets/electricadvantage/blockstates/hydroelectric_generator.json deleted file mode 100644 index 09f47e8..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/hydroelectric_generator.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "active=true,facing=east": { "model": "electricadvantage:block/hydroelectric_generator_on", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/hydroelectric_generator_on" }, - "active=true,facing=south": { "model": "electricadvantage:block/hydroelectric_generator_on", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/hydroelectric_generator_on", "y": 270 }, - "active=false,facing=east": { "model": "electricadvantage:block/hydroelectric_generator_off", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/hydroelectric_generator_off" }, - "active=false,facing=south": { "model": "electricadvantage:block/hydroelectric_generator_off", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/hydroelectric_generator_off", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/laser_turret.json b/src/main/resources/assets/electricadvantage/blockstates/laser_turret.json deleted file mode 100644 index fa7adcd..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/laser_turret.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/laser_turret" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/laser_turret" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/laser_turret" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/laser_turret" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/laser_turret_evil.json b/src/main/resources/assets/electricadvantage/blockstates/laser_turret_evil.json deleted file mode 100644 index fa7adcd..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/laser_turret_evil.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/laser_turret" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/laser_turret" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/laser_turret" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/laser_turret" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/laser_turret", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/led_bar.json b/src/main/resources/assets/electricadvantage/blockstates/led_bar.json deleted file mode 100644 index 3a538f5..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/led_bar.json +++ /dev/null @@ -1,134 +0,0 @@ -{ - "__comment": "blockstate parameters MUST be in alphabetical order!", - "variants": { - "down=false,east=false,lit=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_n", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_n", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_ns", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nw", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 270, "y": 180, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_ns", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_ns", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nw", "x": 270, "y": 270, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 0, "y": 90, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nsw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_dnu", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 180, "y": 180, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 180, "y": 90, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 180, "y": 270, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_ensw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_ensw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 180, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 90, "y": 270, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,lit=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_nsuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=true,lit=false,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,lit=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_desuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=true,lit=false,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_off_densuw", "x": 0, "y": 0, "uvlock": false }, - - "down=false,east=false,lit=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_n", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_n", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_ns", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nw", "x": 90, "y": 0, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 270, "y": 180, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_ns", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_ns", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nw", "x": 270, "y": 270, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=false,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 0, "y": 90, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 90, "y": 270, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nsw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 270, "y": 90, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_dnu", "x": 270, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=false,lit=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=true,up=false,west=false": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 180, "y": 180, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=false,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=false,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 180, "y": 90, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 90, "y": 180, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 180, "y": 270, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_ensw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_ensw", "x": 90, "y": 90, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 180, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 90, "y": 270, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 0, "y": 180, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_ensw", "x": 0, "y": 0, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 0, "y": 270, "uvlock": false }, - "down=false,east=false,lit=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_nsuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=true,up=true,west=false": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 0, "y": 270, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=true,up=false,west=true": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 270, "y": 0, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=false,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 0, "y": 180, "uvlock": false }, - "down=true,east=true,lit=true,north=false,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 0, "y": 0, "uvlock": false }, - "down=true,east=false,lit=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 0, "y": 90, "uvlock": false }, - "down=false,east=true,lit=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_desuw", "x": 90, "y": 0, "uvlock": false }, - "down=true,east=true,lit=true,north=true,south=true,up=true,west=true": { "model": "electricadvantage:block/led_bar_on_densuw", "x": 0, "y": 0, "uvlock": false } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/blockstates/li_ore.json b/src/main/resources/assets/electricadvantage/blockstates/li_ore.json deleted file mode 100644 index e35f413..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/li_ore.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "": { "model": "electricadvantage:block/li_ore" } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/photovoltaic_generator.json b/src/main/resources/assets/electricadvantage/blockstates/photovoltaic_generator.json deleted file mode 100644 index c2db894..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/photovoltaic_generator.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "active=true,facing=east": { "model": "electricadvantage:block/photovoltaic_generator", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/photovoltaic_generator" }, - "active=true,facing=south": { "model": "electricadvantage:block/photovoltaic_generator", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/photovoltaic_generator", "y": 270 }, - "active=false,facing=east": { "model": "electricadvantage:block/photovoltaic_generator", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/photovoltaic_generator" }, - "active=false,facing=south": { "model": "electricadvantage:block/photovoltaic_generator", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/photovoltaic_generator", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/plastic_refinery.json b/src/main/resources/assets/electricadvantage/blockstates/plastic_refinery.json deleted file mode 100644 index 2c0dbdc..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/plastic_refinery.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "variants": { - "active=true,facing=east,powered=true": { "model": "electricadvantage:block/plastic_refinery_on", "y": 90 }, - "active=true,facing=north,powered=true": { "model": "electricadvantage:block/plastic_refinery_on" }, - "active=true,facing=south,powered=true": { "model": "electricadvantage:block/plastic_refinery_on", "y": 180 }, - "active=true,facing=west,powered=true": { "model": "electricadvantage:block/plastic_refinery_on", "y": 270 }, - "active=false,facing=east,powered=true": { "model": "electricadvantage:block/plastic_refinery_powered", "y": 90 }, - "active=false,facing=north,powered=true": { "model": "electricadvantage:block/plastic_refinery_powered" }, - "active=false,facing=south,powered=true": { "model": "electricadvantage:block/plastic_refinery_powered", "y": 180 }, - "active=false,facing=west,powered=true": { "model": "electricadvantage:block/plastic_refinery_powered", "y": 270 }, - "active=false,facing=east,powered=false": { "model": "electricadvantage:block/plastic_refinery_off", "y": 90 }, - "active=false,facing=north,powered=false": { "model": "electricadvantage:block/plastic_refinery_off" }, - "active=false,facing=south,powered=false": { "model": "electricadvantage:block/plastic_refinery_off", "y": 180 }, - "active=false,facing=west,powered=false": { "model": "electricadvantage:block/plastic_refinery_off", "y": 270 }, - "active=true,facing=east,powered=false": { "model": "electricadvantage:block/plastic_refinery_on", "y": 90 }, - "active=true,facing=north,powered=false": { "model": "electricadvantage:block/plastic_refinery_on" }, - "active=true,facing=south,powered=false": { "model": "electricadvantage:block/plastic_refinery_on", "y": 180 }, - "active=true,facing=west,powered=false": { "model": "electricadvantage:block/plastic_refinery_on", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/pump_pipe_electric.json b/src/main/resources/assets/electricadvantage/blockstates/pump_pipe_electric.json deleted file mode 100644 index a25407b..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/pump_pipe_electric.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "": {"model": "poweradvantage:block/fluid_pipe_ns", "x": 90, "y": 0, "uvlock": false } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/steam_powered_generator.json b/src/main/resources/assets/electricadvantage/blockstates/steam_powered_generator.json deleted file mode 100644 index 70cfdab..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/steam_powered_generator.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "active=true,facing=east": { "model": "electricadvantage:block/steam_powered_generator_on", "y": 90 }, - "active=true,facing=north": { "model": "electricadvantage:block/steam_powered_generator_on" }, - "active=true,facing=south": { "model": "electricadvantage:block/steam_powered_generator_on", "y": 180 }, - "active=true,facing=west": { "model": "electricadvantage:block/steam_powered_generator_on", "y": 270 }, - "active=false,facing=east": { "model": "electricadvantage:block/steam_powered_generator_off", "y": 90 }, - "active=false,facing=north": { "model": "electricadvantage:block/steam_powered_generator_off" }, - "active=false,facing=south": { "model": "electricadvantage:block/steam_powered_generator_off", "y": 180 }, - "active=false,facing=west": { "model": "electricadvantage:block/steam_powered_generator_off", "y": 270 } - } -} diff --git a/src/main/resources/assets/electricadvantage/blockstates/sulfur_ore.json b/src/main/resources/assets/electricadvantage/blockstates/sulfur_ore.json deleted file mode 100644 index 47c97b3..0000000 --- a/src/main/resources/assets/electricadvantage/blockstates/sulfur_ore.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "": { "model": "electricadvantage:block/sulfur_ore" } - } -} diff --git a/src/main/resources/assets/electricadvantage/lang/de_de.json b/src/main/resources/assets/electricadvantage/lang/de_de.json deleted file mode 100644 index 05039ff..0000000 --- a/src/main/resources/assets/electricadvantage/lang/de_de.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "Englisch (en_US, de_DE, en_CA, de_DE, en_AU, en_PT), Spanisch (es_MX, es_ES), Chinesisch (zh_CN), Japanisch (ja_JA), Portugiesisch (pt_BR), Deutsch (de_DE), Italienisch (it_IT), Koreanisch (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Leiterplatte (Leer)", - "item.electricadvantage.control_circuit.name": "Steuerstromkreis", - "item.electricadvantage.integrated_circuit.name": "Mikrochip", - "item.electricadvantage.psu.name": "Netzteil", - "item.electricadvantage.silicon_ingot.name": "Silizium-Ingots", - "item.electricadvantage.silicon_mix.name": "Silizium-Mischung", - "item.electricadvantage.solder_mix.name": "Lötmetall Mischung", - "item.electricadvantage.solder.name": "Lötmetall", - "item.electricadvantage.li_powder.name": "Pulverisierte Lithium", - "item.electricadvantage.li_ingot.name": "Lithium-Barren", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Schwefelpulver", - "item.electricadvantage.lead_acid_battery.name": "Blei-Säure-Batterie", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metallhydrid-Batterie", - "item.electricadvantage.alkaline_battery.name": "Alkali-Batterie", - "item.electricadvantage.lithium_battery.name": "Lithium-Ionen-Batterie", - "tile.electricadvantage.electric_conduit.name": "Elektrischen Draht", - "tile.electricadvantage.electric_track.name": "Elektro-Gerüst", - "tile.electricadvantage.electric_battery_array.name": "Batterie Array", - "tile.electricadvantage.electric_crusher.name": "Elektrische Felsen-Zerkleinerungsmaschine", - "tile.electricadvantage.laser_turret.name": "Laser-Verteidigung Waffe", - "tile.electricadvantage.electric_drill.name": "Laser Bohrer", - "tile.electricadvantage.electric_fabricator.name": "Automatisierte Fabrik", - "tile.electricadvantage.electric_furnace.name": "Lichtbogenofen", - "tile.electricadvantage.electric_oven.name": "Elektro-Ofen", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Drucker", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaik-Generator", - "tile.electricadvantage.steam_powered_generator.name": "Pumpenlose Stromerzeuger", - "tile.electricadvantage.growth_chamber.name": "Wachstumskammer", - "tile.electricadvantage.growth_chamber_controller.name": "Wachstumskammer Steuereinheit", - "tile.electricadvantage.li_ore.name": "Lithiumerz", - "tile.electricadvantage.sulfur_ore.name": "Schwefelerz", - "tile.electricadvantage.led_bar.name": "LED Draht", - "tooltip.battery.charge": "Lade", - "tooltip.battery.capacity": "Kapazität", - "death.attack.laser": "%1$s verdampft", - "death.attack.laser.player": "%2$s verdampft %1$s", - "death.attack.propeller": "%1$s wurde von einem Propeller pulverisiert.", - "death.attack.propeller.player": "%2$s geschoben %1$s in einen Propeller.", - "tile.electricadvantage.electric_switch.name": "Elektrische Schalter", - "tile.electricadvantage.electric_still.name": "Elektro Brennerei", - "tile.electricadvantage.electric_pump.name": "Elektropumpe", - "tile.electricadvantage.plastic_refinery.name": "Kunststoff-Raffinerie", - "item.electricadvantage.petrolplastic_ingot.name": "Erdöl Kunststoff Barren", - "tile.electricadvantage.pump_pipe_electric.name": "Pumpenrohr", - "item.electricadvantage.blank_circuit_board": "Leiterplatte (Leer)", - "item.electricadvantage.control_circuit": "Steuerstromkreis", - "item.electricadvantage.integrated_circuit": "Mikrochip", - "item.electricadvantage.psu": "Netzteil", - "item.electricadvantage.silicon_ingot": "Silizium-Ingots", - "item.electricadvantage.silicon_mix": "Silizium-Mischung", - "item.electricadvantage.solder_mix": "Lötmetall Mischung", - "item.electricadvantage.solder": "Lötmetall", - "item.electricadvantage.li_powder": "Pulverisierte Lithium", - "item.electricadvantage.li_ingot": "Lithium-Barren", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Schwefelpulver", - "item.electricadvantage.lead_acid_battery": "Blei-Säure-Batterie", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metallhydrid-Batterie", - "item.electricadvantage.alkaline_battery": "Alkali-Batterie", - "item.electricadvantage.lithium_battery": "Lithium-Ionen-Batterie", - "block.electricadvantage.electric_conduit": "Elektrischen Draht", - "block.electricadvantage.electric_track": "Elektro-Gerüst", - "block.electricadvantage.electric_battery_array": "Batterie Array", - "block.electricadvantage.electric_crusher": "Elektrische Felsen-Zerkleinerungsmaschine", - "block.electricadvantage.laser_turret": "Laser-Verteidigung Waffe", - "block.electricadvantage.electric_drill": "Laser Bohrer", - "block.electricadvantage.electric_fabricator": "Automatisierte Fabrik", - "block.electricadvantage.electric_furnace": "Lichtbogenofen", - "block.electricadvantage.electric_oven": "Elektro-Ofen", - "block.electricadvantage.electric_pcb_printer": "PCB Drucker", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaik-Generator", - "block.electricadvantage.steam_powered_generator": "Pumpenlose Stromerzeuger", - "block.electricadvantage.growth_chamber": "Wachstumskammer", - "block.electricadvantage.growth_chamber_controller": "Wachstumskammer Steuereinheit", - "block.electricadvantage.li_ore": "Lithiumerz", - "block.electricadvantage.sulfur_ore": "Schwefelerz", - "block.electricadvantage.led_bar": "LED Draht", - "block.electricadvantage.electric_switch": "Elektrische Schalter", - "block.electricadvantage.electric_still": "Elektro Brennerei", - "block.electricadvantage.electric_pump": "Elektropumpe", - "block.electricadvantage.plastic_refinery": "Kunststoff-Raffinerie", - "item.electricadvantage.petrolplastic_ingot": "Erdöl Kunststoff Barren", - "block.electricadvantage.pump_pipe_electric": "Pumpenrohr", - "block.electricadvantage.laser_turret_evil": "Laser-Verteidigung Waffe" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_au.json b/src/main/resources/assets/electricadvantage/lang/en_au.json deleted file mode 100644 index c629c43..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_au.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Defense Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Defense Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Defense Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_ca.json b/src/main/resources/assets/electricadvantage/lang/en_ca.json deleted file mode 100644 index c629c43..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_ca.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Defense Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Defense Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Defense Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_en.json b/src/main/resources/assets/electricadvantage/lang/en_en.json deleted file mode 100644 index 7c5769c..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_en.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_gb.json b/src/main/resources/assets/electricadvantage/lang/en_gb.json deleted file mode 100644 index c629c43..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_gb.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Defense Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Defense Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Defense Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_pt.json b/src/main/resources/assets/electricadvantage/lang/en_pt.json deleted file mode 100644 index 7c5769c..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_pt.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/en_us.json b/src/main/resources/assets/electricadvantage/lang/en_us.json deleted file mode 100644 index 7c5769c..0000000 --- a/src/main/resources/assets/electricadvantage/lang/en_us.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "english (en_US,en_EN,en_CA,en_GB, en_AU, en_PT), spanish (es_MX,es_ES), chinese (zh_CN), japanese (ja_JA), portugese (pt_BR), german (de_DE), italian (it_IT), korean (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit.name": "Control Circuit", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Power Supply Unit", - "item.electricadvantage.silicon_ingot.name": "Silicon Ingot", - "item.electricadvantage.silicon_mix.name": "Silicon Blend", - "item.electricadvantage.solder_mix.name": "Solder Blend", - "item.electricadvantage.solder.name": "Solder", - "item.electricadvantage.li_powder.name": "Powdered Lithium", - "item.electricadvantage.li_ingot.name": "Lithium Ingot", - "item.electricadvantage.li_nugget.name": "Lithium Nugget", - "item.electricadvantage.sulfur_powder.name": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery.name": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery.name": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery.name": "Alkaline Battery", - "item.electricadvantage.lithium_battery.name": "Lithium-Ion Battery", - "tile.electricadvantage.electric_conduit.name": "Electric Power Cable", - "tile.electricadvantage.electric_track.name": "Electric Scaffold", - "tile.electricadvantage.electric_battery_array.name": "Battery Array", - "tile.electricadvantage.electric_crusher.name": "Electric Rock Crusher", - "tile.electricadvantage.laser_turret.name": "Laser Turret", - "tile.electricadvantage.electric_drill.name": "Electric Mining Drill", - "tile.electricadvantage.electric_fabricator.name": "Automated Assembler", - "tile.electricadvantage.electric_furnace.name": "Electric Arc Furnace", - "tile.electricadvantage.electric_oven.name": "Electric Oven", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Printer", - "tile.electricadvantage.geothermal_generator.name": "Geothermal Generator", - "tile.electricadvantage.hydroelectric_generator.name": "Hydroelectric Generator", - "tile.electricadvantage.photovoltaic_generator.name": "Photovoltaic Generator", - "tile.electricadvantage.steam_powered_generator.name": "Steam-Powered Electric Generator", - "tile.electricadvantage.growth_chamber.name": "Growth Chamber", - "tile.electricadvantage.growth_chamber_controller.name": "Growth Chamber Control Unit", - "tile.electricadvantage.li_ore.name": "Lithium Ore", - "tile.electricadvantage.sulfur_ore.name": "Sulfur Ore", - "tile.electricadvantage.led_bar.name": "LED Bar", - "tooltip.battery.charge": "Charge", - "tooltip.battery.capacity": "Capacity", - "death.attack.laser": "%1$s vaporized", - "death.attack.laser.player": "%2$s vaporized %1$s ", - "death.attack.propeller": "%1$s was pulverized by a propeller.", - "death.attack.propeller.player": "%2$s pushed %1$s into a propeller.", - "tile.electricadvantage.electric_switch.name": "Electric Switch", - "tile.electricadvantage.electric_still.name": "Electric Distiller", - "tile.electricadvantage.electric_pump.name": "Electric Pump", - "tile.electricadvantage.plastic_refinery.name": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot.name": "Petro-Plastic Ingot", - "tile.electricadvantage.pump_pipe_electric.name": "Pump Pipe", - "item.electricadvantage.blank_circuit_board": "Circuit Board (Blank)", - "item.electricadvantage.control_circuit": "Control Circuit", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Power Supply Unit", - "item.electricadvantage.silicon_ingot": "Silicon Ingot", - "item.electricadvantage.silicon_mix": "Silicon Blend", - "item.electricadvantage.solder_mix": "Solder Blend", - "item.electricadvantage.solder": "Solder", - "item.electricadvantage.li_powder": "Powdered Lithium", - "item.electricadvantage.li_ingot": "Lithium Ingot", - "item.electricadvantage.li_nugget": "Lithium Nugget", - "item.electricadvantage.sulfur_powder": "Powdered Sulfur", - "item.electricadvantage.lead_acid_battery": "Lead-Acid Battery", - "item.electricadvantage.nickel_hydride_battery": "Nickel-Metal Hydride Battery", - "item.electricadvantage.alkaline_battery": "Alkaline Battery", - "item.electricadvantage.lithium_battery": "Lithium-Ion Battery", - "block.electricadvantage.electric_conduit": "Electric Power Cable", - "block.electricadvantage.electric_track": "Electric Scaffold", - "block.electricadvantage.electric_battery_array": "Battery Array", - "block.electricadvantage.electric_crusher": "Electric Rock Crusher", - "block.electricadvantage.laser_turret": "Laser Turret", - "block.electricadvantage.electric_drill": "Electric Mining Drill", - "block.electricadvantage.electric_fabricator": "Automated Assembler", - "block.electricadvantage.electric_furnace": "Electric Arc Furnace", - "block.electricadvantage.electric_oven": "Electric Oven", - "block.electricadvantage.electric_pcb_printer": "PCB Printer", - "block.electricadvantage.geothermal_generator": "Geothermal Generator", - "block.electricadvantage.hydroelectric_generator": "Hydroelectric Generator", - "block.electricadvantage.photovoltaic_generator": "Photovoltaic Generator", - "block.electricadvantage.steam_powered_generator": "Steam-Powered Electric Generator", - "block.electricadvantage.growth_chamber": "Growth Chamber", - "block.electricadvantage.growth_chamber_controller": "Growth Chamber Control Unit", - "block.electricadvantage.li_ore": "Lithium Ore", - "block.electricadvantage.sulfur_ore": "Sulfur Ore", - "block.electricadvantage.led_bar": "LED Bar", - "block.electricadvantage.electric_switch": "Electric Switch", - "block.electricadvantage.electric_still": "Electric Distiller", - "block.electricadvantage.electric_pump": "Electric Pump", - "block.electricadvantage.plastic_refinery": "Petro-Plastic Refinery", - "item.electricadvantage.petrolplastic_ingot": "Petro-Plastic Ingot", - "block.electricadvantage.pump_pipe_electric": "Pump Pipe", - "block.electricadvantage.laser_turret_evil": "Laser Turret" -} diff --git a/src/main/resources/assets/electricadvantage/lang/es_es.json b/src/main/resources/assets/electricadvantage/lang/es_es.json deleted file mode 100644 index 30088ae..0000000 --- a/src/main/resources/assets/electricadvantage/lang/es_es.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "Inglés (en_US, en_EN, en_CA, es_ES, es_ES, en_PT), Español (es_MX, es_ES), chino (zh_CN), japonés (ja_JA), portugués (pt_BR), Alemán (de_DE), italiano (it_IT), coreano (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Placa de Circuito (Blanco)", - "item.electricadvantage.control_circuit.name": "Circuito de Computadora", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Unidad de Fuente de Alimentación", - "item.electricadvantage.silicon_ingot.name": "Silicio Lingote", - "item.electricadvantage.silicon_mix.name": "Blend Silicio", - "item.electricadvantage.solder_mix.name": "Blend Soldadura", - "item.electricadvantage.solder.name": "Soldadura", - "item.electricadvantage.li_powder.name": "Polvo de Litio", - "item.electricadvantage.li_ingot.name": "Litio Lingote", - "item.electricadvantage.li_nugget.name": "Pepita de Litio", - "item.electricadvantage.sulfur_powder.name": "Azufre en Polvo", - "item.electricadvantage.lead_acid_battery.name": "Plomo-Ácido de la Batería", - "item.electricadvantage.nickel_hydride_battery.name": "Níquel e Hidruro Metálico", - "item.electricadvantage.alkaline_battery.name": "Batería Alcalina", - "item.electricadvantage.lithium_battery.name": "Batería de Litio-Ion", - "tile.electricadvantage.electric_conduit.name": "Cable de Energía Eléctrica", - "tile.electricadvantage.electric_track.name": "Eléctrica Andamios", - "tile.electricadvantage.electric_battery_array.name": "Batería Matriz", - "tile.electricadvantage.electric_crusher.name": "Eléctrica de la Roca Trituradora", - "tile.electricadvantage.laser_turret.name": "Laser Defensa Torreta", - "tile.electricadvantage.electric_drill.name": "Eléctrica Minería Taladro", - "tile.electricadvantage.electric_fabricator.name": "Automatizado Ensamblador", - "tile.electricadvantage.electric_furnace.name": "Horno de Arco Eléctrico", - "tile.electricadvantage.electric_oven.name": "Horno Eléctrico", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Impresora", - "tile.electricadvantage.geothermal_generator.name": "Geotérmica Generador", - "tile.electricadvantage.hydroelectric_generator.name": "Hidroeléctrico Generador", - "tile.electricadvantage.photovoltaic_generator.name": "Fotovoltaica Generador", - "tile.electricadvantage.steam_powered_generator.name": "a Vapor Generador Eléctrico", - "tile.electricadvantage.growth_chamber.name": "Cámara Crecimiento", - "tile.electricadvantage.growth_chamber_controller.name": "Unidad de Control de Crecimiento Cámara", - "tile.electricadvantage.li_ore.name": "Mineral de Litio", - "tile.electricadvantage.sulfur_ore.name": "Mineral de Azufre", - "tile.electricadvantage.led_bar.name": "Luz LED", - "tooltip.battery.charge": "Carga", - "tooltip.battery.capacity": "Capacidad", - "death.attack.laser": "%1$s vaporiza", - "death.attack.laser.player": "%2$s vaporizado s%1$s", - "death.attack.propeller": "%1$s se pulverizan por una hélice.", - "death.attack.propeller.player": "%2$s empujaron %1$s en la hélice.", - "tile.electricadvantage.electric_switch.name": "Interruptor Eléctrico", - "tile.electricadvantage.electric_still.name": "Destilador Eléctrico", - "tile.electricadvantage.electric_pump.name": "Bomba Eléctrica", - "tile.electricadvantage.plastic_refinery.name": "Refinería de Plástico", - "item.electricadvantage.petrolplastic_ingot.name": "Petróleo Lingote de Plástico", - "tile.electricadvantage.pump_pipe_electric.name": "Tubería de la Bomba", - "item.electricadvantage.blank_circuit_board": "Placa de Circuito (Blanco)", - "item.electricadvantage.control_circuit": "Circuito de Computadora", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Unidad de Fuente de Alimentación", - "item.electricadvantage.silicon_ingot": "Silicio Lingote", - "item.electricadvantage.silicon_mix": "Blend Silicio", - "item.electricadvantage.solder_mix": "Blend Soldadura", - "item.electricadvantage.solder": "Soldadura", - "item.electricadvantage.li_powder": "Polvo de Litio", - "item.electricadvantage.li_ingot": "Litio Lingote", - "item.electricadvantage.li_nugget": "Pepita de Litio", - "item.electricadvantage.sulfur_powder": "Azufre en Polvo", - "item.electricadvantage.lead_acid_battery": "Plomo-Ácido de la Batería", - "item.electricadvantage.nickel_hydride_battery": "Níquel e Hidruro Metálico", - "item.electricadvantage.alkaline_battery": "Batería Alcalina", - "item.electricadvantage.lithium_battery": "Batería de Litio-Ion", - "block.electricadvantage.electric_conduit": "Cable de Energía Eléctrica", - "block.electricadvantage.electric_track": "Eléctrica Andamios", - "block.electricadvantage.electric_battery_array": "Batería Matriz", - "block.electricadvantage.electric_crusher": "Eléctrica de la Roca Trituradora", - "block.electricadvantage.laser_turret": "Laser Defensa Torreta", - "block.electricadvantage.electric_drill": "Eléctrica Minería Taladro", - "block.electricadvantage.electric_fabricator": "Automatizado Ensamblador", - "block.electricadvantage.electric_furnace": "Horno de Arco Eléctrico", - "block.electricadvantage.electric_oven": "Horno Eléctrico", - "block.electricadvantage.electric_pcb_printer": "PCB Impresora", - "block.electricadvantage.geothermal_generator": "Geotérmica Generador", - "block.electricadvantage.hydroelectric_generator": "Hidroeléctrico Generador", - "block.electricadvantage.photovoltaic_generator": "Fotovoltaica Generador", - "block.electricadvantage.steam_powered_generator": "a Vapor Generador Eléctrico", - "block.electricadvantage.growth_chamber": "Cámara Crecimiento", - "block.electricadvantage.growth_chamber_controller": "Unidad de Control de Crecimiento Cámara", - "block.electricadvantage.li_ore": "Mineral de Litio", - "block.electricadvantage.sulfur_ore": "Mineral de Azufre", - "block.electricadvantage.led_bar": "Luz LED", - "block.electricadvantage.electric_switch": "Interruptor Eléctrico", - "block.electricadvantage.electric_still": "Destilador Eléctrico", - "block.electricadvantage.electric_pump": "Bomba Eléctrica", - "block.electricadvantage.plastic_refinery": "Refinería de Plástico", - "item.electricadvantage.petrolplastic_ingot": "Petróleo Lingote de Plástico", - "block.electricadvantage.pump_pipe_electric": "Tubería de la Bomba", - "block.electricadvantage.laser_turret_evil": "Laser Defensa Torreta" -} diff --git a/src/main/resources/assets/electricadvantage/lang/es_mx.json b/src/main/resources/assets/electricadvantage/lang/es_mx.json deleted file mode 100644 index 30088ae..0000000 --- a/src/main/resources/assets/electricadvantage/lang/es_mx.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "Inglés (en_US, en_EN, en_CA, es_ES, es_ES, en_PT), Español (es_MX, es_ES), chino (zh_CN), japonés (ja_JA), portugués (pt_BR), Alemán (de_DE), italiano (it_IT), coreano (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Placa de Circuito (Blanco)", - "item.electricadvantage.control_circuit.name": "Circuito de Computadora", - "item.electricadvantage.integrated_circuit.name": "Microchip", - "item.electricadvantage.psu.name": "Unidad de Fuente de Alimentación", - "item.electricadvantage.silicon_ingot.name": "Silicio Lingote", - "item.electricadvantage.silicon_mix.name": "Blend Silicio", - "item.electricadvantage.solder_mix.name": "Blend Soldadura", - "item.electricadvantage.solder.name": "Soldadura", - "item.electricadvantage.li_powder.name": "Polvo de Litio", - "item.electricadvantage.li_ingot.name": "Litio Lingote", - "item.electricadvantage.li_nugget.name": "Pepita de Litio", - "item.electricadvantage.sulfur_powder.name": "Azufre en Polvo", - "item.electricadvantage.lead_acid_battery.name": "Plomo-Ácido de la Batería", - "item.electricadvantage.nickel_hydride_battery.name": "Níquel e Hidruro Metálico", - "item.electricadvantage.alkaline_battery.name": "Batería Alcalina", - "item.electricadvantage.lithium_battery.name": "Batería de Litio-Ion", - "tile.electricadvantage.electric_conduit.name": "Cable de Energía Eléctrica", - "tile.electricadvantage.electric_track.name": "Eléctrica Andamios", - "tile.electricadvantage.electric_battery_array.name": "Batería Matriz", - "tile.electricadvantage.electric_crusher.name": "Eléctrica de la Roca Trituradora", - "tile.electricadvantage.laser_turret.name": "Laser Defensa Torreta", - "tile.electricadvantage.electric_drill.name": "Eléctrica Minería Taladro", - "tile.electricadvantage.electric_fabricator.name": "Automatizado Ensamblador", - "tile.electricadvantage.electric_furnace.name": "Horno de Arco Eléctrico", - "tile.electricadvantage.electric_oven.name": "Horno Eléctrico", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Impresora", - "tile.electricadvantage.geothermal_generator.name": "Geotérmica Generador", - "tile.electricadvantage.hydroelectric_generator.name": "Hidroeléctrico Generador", - "tile.electricadvantage.photovoltaic_generator.name": "Fotovoltaica Generador", - "tile.electricadvantage.steam_powered_generator.name": "a Vapor Generador Eléctrico", - "tile.electricadvantage.growth_chamber.name": "Cámara Crecimiento", - "tile.electricadvantage.growth_chamber_controller.name": "Unidad de Control de Crecimiento Cámara", - "tile.electricadvantage.li_ore.name": "Mineral de Litio", - "tile.electricadvantage.sulfur_ore.name": "Mineral de Azufre", - "tile.electricadvantage.led_bar.name": "Luz LED", - "tooltip.battery.charge": "Carga", - "tooltip.battery.capacity": "Capacidad", - "death.attack.laser": "%1$s vaporiza", - "death.attack.laser.player": "%2$s vaporizado s%1$s", - "death.attack.propeller": "%1$s se pulverizan por una hélice.", - "death.attack.propeller.player": "%2$s empujaron %1$s en la hélice.", - "tile.electricadvantage.electric_switch.name": "Interruptor Eléctrico", - "tile.electricadvantage.electric_still.name": "Destilador Eléctrico", - "tile.electricadvantage.electric_pump.name": "Bomba Eléctrica", - "tile.electricadvantage.plastic_refinery.name": "Refinería de Plástico", - "item.electricadvantage.petrolplastic_ingot.name": "Petróleo Lingote de Plástico", - "tile.electricadvantage.pump_pipe_electric.name": "Tubería de la Bomba", - "item.electricadvantage.blank_circuit_board": "Placa de Circuito (Blanco)", - "item.electricadvantage.control_circuit": "Circuito de Computadora", - "item.electricadvantage.integrated_circuit": "Microchip", - "item.electricadvantage.psu": "Unidad de Fuente de Alimentación", - "item.electricadvantage.silicon_ingot": "Silicio Lingote", - "item.electricadvantage.silicon_mix": "Blend Silicio", - "item.electricadvantage.solder_mix": "Blend Soldadura", - "item.electricadvantage.solder": "Soldadura", - "item.electricadvantage.li_powder": "Polvo de Litio", - "item.electricadvantage.li_ingot": "Litio Lingote", - "item.electricadvantage.li_nugget": "Pepita de Litio", - "item.electricadvantage.sulfur_powder": "Azufre en Polvo", - "item.electricadvantage.lead_acid_battery": "Plomo-Ácido de la Batería", - "item.electricadvantage.nickel_hydride_battery": "Níquel e Hidruro Metálico", - "item.electricadvantage.alkaline_battery": "Batería Alcalina", - "item.electricadvantage.lithium_battery": "Batería de Litio-Ion", - "block.electricadvantage.electric_conduit": "Cable de Energía Eléctrica", - "block.electricadvantage.electric_track": "Eléctrica Andamios", - "block.electricadvantage.electric_battery_array": "Batería Matriz", - "block.electricadvantage.electric_crusher": "Eléctrica de la Roca Trituradora", - "block.electricadvantage.laser_turret": "Laser Defensa Torreta", - "block.electricadvantage.electric_drill": "Eléctrica Minería Taladro", - "block.electricadvantage.electric_fabricator": "Automatizado Ensamblador", - "block.electricadvantage.electric_furnace": "Horno de Arco Eléctrico", - "block.electricadvantage.electric_oven": "Horno Eléctrico", - "block.electricadvantage.electric_pcb_printer": "PCB Impresora", - "block.electricadvantage.geothermal_generator": "Geotérmica Generador", - "block.electricadvantage.hydroelectric_generator": "Hidroeléctrico Generador", - "block.electricadvantage.photovoltaic_generator": "Fotovoltaica Generador", - "block.electricadvantage.steam_powered_generator": "a Vapor Generador Eléctrico", - "block.electricadvantage.growth_chamber": "Cámara Crecimiento", - "block.electricadvantage.growth_chamber_controller": "Unidad de Control de Crecimiento Cámara", - "block.electricadvantage.li_ore": "Mineral de Litio", - "block.electricadvantage.sulfur_ore": "Mineral de Azufre", - "block.electricadvantage.led_bar": "Luz LED", - "block.electricadvantage.electric_switch": "Interruptor Eléctrico", - "block.electricadvantage.electric_still": "Destilador Eléctrico", - "block.electricadvantage.electric_pump": "Bomba Eléctrica", - "block.electricadvantage.plastic_refinery": "Refinería de Plástico", - "item.electricadvantage.petrolplastic_ingot": "Petróleo Lingote de Plástico", - "block.electricadvantage.pump_pipe_electric": "Tubería de la Bomba", - "block.electricadvantage.laser_turret_evil": "Laser Defensa Torreta" -} diff --git a/src/main/resources/assets/electricadvantage/lang/it_it.json b/src/main/resources/assets/electricadvantage/lang/it_it.json deleted file mode 100644 index 10452d5..0000000 --- a/src/main/resources/assets/electricadvantage/lang/it_it.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "inglese (it, en_EN, en_CA, en_GB, en_AU, en_PT), spagnolo (es_MX, es_ES), cinese (zh_CN), giapponese (ja_JA), portoghese (pt_BR), tedesco (de_DE), italiano (it_IT), coreano (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Scheda di Circuito (Vuoto)", - "item.electricadvantage.control_circuit.name": "Circuito di Controllo", - "item.electricadvantage.integrated_circuit.name": "Microcircuito Integrato", - "item.electricadvantage.psu.name": "Alimentatore", - "item.electricadvantage.silicon_ingot.name": "Silicio Lingotto", - "item.electricadvantage.silicon_mix.name": "Silicio Miscela", - "item.electricadvantage.solder_mix.name": "Saldatura Miscela", - "item.electricadvantage.solder.name": "Saldatura", - "item.electricadvantage.li_powder.name": "Polvere di Litio", - "item.electricadvantage.li_ingot.name": "Litio Lingotto", - "item.electricadvantage.li_nugget.name": "Pepita d'Litio", - "item.electricadvantage.sulfur_powder.name": "Zolfo in Polvere", - "item.electricadvantage.lead_acid_battery.name": "Batteria al Piombo", - "item.electricadvantage.nickel_hydride_battery.name": "Ni-MH batteria", - "item.electricadvantage.alkaline_battery.name": "Batteria Alcalina", - "item.electricadvantage.lithium_battery.name": "Agli Ioni di Litio", - "tile.electricadvantage.electric_conduit.name": "Cavo Alettrico di Alimentazione", - "tile.electricadvantage.electric_track.name": "Ponteggio Elettrico", - "tile.electricadvantage.electric_battery_array.name": "Array Batteria", - "tile.electricadvantage.electric_crusher.name": "Polverizzatore Masso a Elettrico Alimentata", - "tile.electricadvantage.laser_turret.name": "Laser Difesa Torretta", - "tile.electricadvantage.electric_drill.name": "Trapano Elettrico", - "tile.electricadvantage.electric_fabricator.name": "Fabbrica Automatizzata", - "tile.electricadvantage.electric_furnace.name": "Forno Elettrico ad Arco", - "tile.electricadvantage.electric_oven.name": "Forno Elettrico", - "tile.electricadvantage.electric_pcb_printer.name": "PCB Stampante", - "tile.electricadvantage.geothermal_generator.name": "Geotermica Generatore", - "tile.electricadvantage.hydroelectric_generator.name": "idroelettrica Generatore", - "tile.electricadvantage.photovoltaic_generator.name": "Fotovoltaico Generatore", - "tile.electricadvantage.steam_powered_generator.name": "Generatore Elettrico a Vapore", - "tile.electricadvantage.growth_chamber.name": "Camera di Crescita", - "tile.electricadvantage.growth_chamber_controller.name": "Controllore Camera di Crescita", - "tile.electricadvantage.li_ore.name": "Minerale di litio", - "tile.electricadvantage.sulfur_ore.name": "Minerale di Zolfo", - "tile.electricadvantage.led_bar.name": "Luce a led", - "tooltip.battery.charge": "Carica", - "tooltip.battery.capacity": "Capacità", - "death.attack.laser": "%1$s vaporizzato", - "death.attack.laser.player": "%2$s vaporizzati %1$s", - "death.attack.propeller": "%1$s è stato polverizzato da un'elica.", - "death.attack.propeller.player": "%2$s spinti %1$s nelle eliche.", - "tile.electricadvantage.electric_switch.name": "Interruttore Elettrico", - "tile.electricadvantage.electric_still.name": "Distillatore Elettrico", - "tile.electricadvantage.electric_pump.name": "Pompa Elettricaa", - "tile.electricadvantage.plastic_refinery.name": "Raffineria Plastica", - "item.electricadvantage.petrolplastic_ingot.name": "Petrolio Plastica Lingotto", - "tile.electricadvantage.pump_pipe_electric.name": "Tubo Pompa", - "item.electricadvantage.blank_circuit_board": "Scheda di Circuito (Vuoto)", - "item.electricadvantage.control_circuit": "Circuito di Controllo", - "item.electricadvantage.integrated_circuit": "Microcircuito Integrato", - "item.electricadvantage.psu": "Alimentatore", - "item.electricadvantage.silicon_ingot": "Silicio Lingotto", - "item.electricadvantage.silicon_mix": "Silicio Miscela", - "item.electricadvantage.solder_mix": "Saldatura Miscela", - "item.electricadvantage.solder": "Saldatura", - "item.electricadvantage.li_powder": "Polvere di Litio", - "item.electricadvantage.li_ingot": "Litio Lingotto", - "item.electricadvantage.li_nugget": "Pepita d'Litio", - "item.electricadvantage.sulfur_powder": "Zolfo in Polvere", - "item.electricadvantage.lead_acid_battery": "Batteria al Piombo", - "item.electricadvantage.nickel_hydride_battery": "Ni-MH batteria", - "item.electricadvantage.alkaline_battery": "Batteria Alcalina", - "item.electricadvantage.lithium_battery": "Agli Ioni di Litio", - "block.electricadvantage.electric_conduit": "Cavo Alettrico di Alimentazione", - "block.electricadvantage.electric_track": "Ponteggio Elettrico", - "block.electricadvantage.electric_battery_array": "Array Batteria", - "block.electricadvantage.electric_crusher": "Polverizzatore Masso a Elettrico Alimentata", - "block.electricadvantage.laser_turret": "Laser Difesa Torretta", - "block.electricadvantage.electric_drill": "Trapano Elettrico", - "block.electricadvantage.electric_fabricator": "Fabbrica Automatizzata", - "block.electricadvantage.electric_furnace": "Forno Elettrico ad Arco", - "block.electricadvantage.electric_oven": "Forno Elettrico", - "block.electricadvantage.electric_pcb_printer": "PCB Stampante", - "block.electricadvantage.geothermal_generator": "Geotermica Generatore", - "block.electricadvantage.hydroelectric_generator": "idroelettrica Generatore", - "block.electricadvantage.photovoltaic_generator": "Fotovoltaico Generatore", - "block.electricadvantage.steam_powered_generator": "Generatore Elettrico a Vapore", - "block.electricadvantage.growth_chamber": "Camera di Crescita", - "block.electricadvantage.growth_chamber_controller": "Controllore Camera di Crescita", - "block.electricadvantage.li_ore": "Minerale di litio", - "block.electricadvantage.sulfur_ore": "Minerale di Zolfo", - "block.electricadvantage.led_bar": "Luce a led", - "block.electricadvantage.electric_switch": "Interruttore Elettrico", - "block.electricadvantage.electric_still": "Distillatore Elettrico", - "block.electricadvantage.electric_pump": "Pompa Elettricaa", - "block.electricadvantage.plastic_refinery": "Raffineria Plastica", - "item.electricadvantage.petrolplastic_ingot": "Petrolio Plastica Lingotto", - "block.electricadvantage.pump_pipe_electric": "Tubo Pompa", - "block.electricadvantage.laser_turret_evil": "Laser Difesa Torretta" -} diff --git a/src/main/resources/assets/electricadvantage/lang/ja_jp.json b/src/main/resources/assets/electricadvantage/lang/ja_jp.json deleted file mode 100644 index 84d5ee8..0000000 --- a/src/main/resources/assets/electricadvantage/lang/ja_jp.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": " 英語 (en_US en_EN en_CA、en_GB, en_AU, en_PT), スペイン語 (es_MX、es_ES)、中国 (zh_CN)、日本語 (ja_JA)、ポルトガル (pt_BR)、ドイツ語 (de_DE)、イタリア語 (it_IT), 韓国語 (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "回路基板 (空の)", - "item.electricadvantage.control_circuit.name": "コンピューター回路", - "item.electricadvantage.integrated_circuit.name": "マイクロチップ", - "item.electricadvantage.psu.name": "電源ユニット", - "item.electricadvantage.silicon_ingot.name": "シリコン", - "item.electricadvantage.silicon_mix.name": "シリコンレシピ", - "item.electricadvantage.solder_mix.name": "はんだレシピ", - "item.electricadvantage.solder.name": "はんだ", - "item.electricadvantage.li_powder.name": "リチウム粉末", - "item.electricadvantage.li_ingot.name": "リチウム金属", - "item.electricadvantage.li_nugget.name": "リチウムナゲット", - "item.electricadvantage.sulfur_powder.name": "硫黄粉末", - "item.electricadvantage.lead_acid_battery.name": "鉛蓄電池", - "item.electricadvantage.nickel_hydride_battery.name": "ニッケル水素バッテリー", - "item.electricadvantage.alkaline_battery.name": "アルカリ電池", - "item.electricadvantage.lithium_battery.name": "リチウムイオン電池", - "tile.electricadvantage.electric_conduit.name": "電線", - "tile.electricadvantage.electric_track.name": "電動足場", - "tile.electricadvantage.electric_battery_array.name": "電池貯蔵", - "tile.electricadvantage.electric_crusher.name": "電気岩クラッシャー", - "tile.electricadvantage.laser_turret.name": "レーザー砲塔", - "tile.electricadvantage.electric_drill.name": "電気ドリル", - "tile.electricadvantage.electric_fabricator.name": "ロボット工場", - "tile.electricadvantage.electric_furnace.name": "電気炉", - "tile.electricadvantage.electric_oven.name": "電気オーブン", - "tile.electricadvantage.electric_pcb_printer.name": "回路基板プリンター", - "tile.electricadvantage.geothermal_generator.name": "地熱発電", - "tile.electricadvantage.hydroelectric_generator.name": "水力発電機", - "tile.electricadvantage.photovoltaic_generator.name": "太陽電池パネル", - "tile.electricadvantage.steam_powered_generator.name": "蒸気駆動の発電機", - "tile.electricadvantage.growth_chamber.name": "植物生長室", - "tile.electricadvantage.growth_chamber_controller.name": "植物成長室コントローラ", - "tile.electricadvantage.li_ore.name": "リチウム 鉱石", - "tile.electricadvantage.sulfur_ore.name": "硫黄鉱石", - "tile.electricadvantage.led_bar.name": "LEDライト", - "tooltip.battery.charge": "量", - "tooltip.battery.capacity": "合計金額", - "death.attack.laser": "%1$s気化", - "蒸発 death.attack.laser.player": "%2$sは%1$sを気化しました", - "death.attack.propeller": "プロペラ殺さ%1$s", - "death.attack.propeller.player": "%2$sはプロペラと%1$sを殺しました", - "tile.electricadvantage.electric_switch.name": "電気スイッチ", - "tile.electricadvantage.electric_still.name": "電気蒸留器", - "tile.electricadvantage.electric_pump.name": "電気ポンプ", - "tile.electricadvantage.plastic_refinery.name": "プラスチック製油所", - "item.electricadvantage.petrolplastic_ingot.name": "石油系プラスチックインゴット", - "tile.electricadvantage.pump_pipe_electric.name": "ポンプ配管", - "item.electricadvantage.blank_circuit_board": "回路基板 (空の)", - "item.electricadvantage.control_circuit": "コンピューター回路", - "item.electricadvantage.integrated_circuit": "マイクロチップ", - "item.electricadvantage.psu": "電源ユニット", - "item.electricadvantage.silicon_ingot": "シリコン", - "item.electricadvantage.silicon_mix": "シリコンレシピ", - "item.electricadvantage.solder_mix": "はんだレシピ", - "item.electricadvantage.solder": "はんだ", - "item.electricadvantage.li_powder": "リチウム粉末", - "item.electricadvantage.li_ingot": "リチウム金属", - "item.electricadvantage.li_nugget": "リチウムナゲット", - "item.electricadvantage.sulfur_powder": "硫黄粉末", - "item.electricadvantage.lead_acid_battery": "鉛蓄電池", - "item.electricadvantage.nickel_hydride_battery": "ニッケル水素バッテリー", - "item.electricadvantage.alkaline_battery": "アルカリ電池", - "item.electricadvantage.lithium_battery": "リチウムイオン電池", - "block.electricadvantage.electric_conduit": "電線", - "block.electricadvantage.electric_track": "電動足場", - "block.electricadvantage.electric_battery_array": "電池貯蔵", - "block.electricadvantage.electric_crusher": "電気岩クラッシャー", - "block.electricadvantage.laser_turret": "レーザー砲塔", - "block.electricadvantage.electric_drill": "電気ドリル", - "block.electricadvantage.electric_fabricator": "ロボット工場", - "block.electricadvantage.electric_furnace": "電気炉", - "block.electricadvantage.electric_oven": "電気オーブン", - "block.electricadvantage.electric_pcb_printer": "回路基板プリンター", - "block.electricadvantage.geothermal_generator": "地熱発電", - "block.electricadvantage.hydroelectric_generator": "水力発電機", - "block.electricadvantage.photovoltaic_generator": "太陽電池パネル", - "block.electricadvantage.steam_powered_generator": "蒸気駆動の発電機", - "block.electricadvantage.growth_chamber": "植物生長室", - "block.electricadvantage.growth_chamber_controller": "植物成長室コントローラ", - "block.electricadvantage.li_ore": "リチウム 鉱石", - "block.electricadvantage.sulfur_ore": "硫黄鉱石", - "block.electricadvantage.led_bar": "LEDライト", - "block.electricadvantage.electric_switch": "電気スイッチ", - "block.electricadvantage.electric_still": "電気蒸留器", - "block.electricadvantage.electric_pump": "電気ポンプ", - "block.electricadvantage.plastic_refinery": "プラスチック製油所", - "item.electricadvantage.petrolplastic_ingot": "石油系プラスチックインゴット", - "block.electricadvantage.pump_pipe_electric": "ポンプ配管", - "block.electricadvantage.laser_turret_evil": "レーザー砲塔" -} diff --git a/src/main/resources/assets/electricadvantage/lang/ko_ko.json b/src/main/resources/assets/electricadvantage/lang/ko_ko.json deleted file mode 100644 index d527227..0000000 --- a/src/main/resources/assets/electricadvantage/lang/ko_ko.json +++ /dev/null @@ -1,91 +0,0 @@ -{ - "item.electricadvantage.blank_circuit_board.name": "회로 기판 (빈)", - "item.electricadvantage.control_circuit.name": "제어 회로", - "item.electricadvantage.integrated_circuit.name": "마이크로 칩", - "item.electricadvantage.psu.name": "전원 공급 장치", - "item.electricadvantage.silicon_ingot.name": "실리콘 잉곳", - "item.electricadvantage.silicon_mix.name": "실리콘 혼합", - "item.electricadvantage.solder_mix.name": "솔더 혼합", - "item.electricadvantage.solder.name": "솔더", - "item.electricadvantage.li_powder.name": "분말 리튬", - "item.electricadvantage.li_ingot.name": "리튬 잉곳", - "item.electricadvantage.li_nugget.name": "리튬 너겟", - "item.electricadvantage.sulfur_powder.name": "분말 유황", - "item.electricadvantage.lead_acid_battery.name": "납 축전지", - "item.electricadvantage.nickel_hydride_battery.name": "니켈 수소 배터리", - "item.electricadvantage.alkaline_battery.name": "알카라인 배터리", - "item.electricadvantage.lithium_battery.name": "리튬 이온 배터리", - "tile.electricadvantage.electric_conduit.name": "전력 케이블", - "tile.electricadvantage.electric_track.name": "전기 비계", - "tile.electricadvantage.electric_battery_array.name": "전지 어레이", - "tile.electricadvantage.electric_crusher.name": "전기 락 크러셔", - "tile.electricadvantage.laser_turret.name": "레이저 방어 터렛", - "tile.electricadvantage.electric_drill.name": "전기 마이닝 드릴", - "tile.electricadvantage.electric_fabricator.name": "자동 어셈블러", - "tile.electricadvantage.electric_furnace.name": "전기로", - "tile.electricadvantage.electric_oven.name": "전기 오븐", - "tile.electricadvantage.electric_pcb_printer.name": "회로 기판 프린터", - "tile.electricadvantage.geothermal_generator.name": "지열 발전기", - "tile.electricadvantage.hydroelectric_generator.name": "수력 발전기", - "tile.electricadvantage.photovoltaic_generator.name": "태양 광 발전기", - "tile.electricadvantage.steam_powered_generator.name": "증기 발전기", - "tile.electricadvantage.growth_chamber.name": "성장 상공 회의소", - "tile.electricadvantage.growth_chamber_controller.name": "성장 챔버 제어 장치", - "tile.electricadvantage.li_ore.name": "리튬 광석", - "tile.electricadvantage.sulfur_ore.name": "유황 광석", - "tile.electricadvantage.led_bar.name": "LED 조명", - "tooltip.battery.charge": "요금", - "tooltip.battery.capacity": "생산 능력", - "death.attack.laser": "%1$s이 (가) 증발", - "death.attack.laser.player": "%2$s의 증발 %1$s", - "death.attack.propeller": "%1$s는 프로펠러에 의해 분쇄 하였다.", - "death.attack.propeller.player": "%2$s는 프로펠러에 %1$s을 (를) 밀었다.", - "tile.electricadvantage.electric_switch.name": "전기 스위치", - "tile.electricadvantage.electric_still.name": "전기 증류기", - "tile.electricadvantage.electric_pump.name": "전기 펌프", - "tile.electricadvantage.plastic_refinery.name": "플라스틱 정유", - "item.electricadvantage.petrolplastic_ingot.name": "석유 수지 잉곳", - "tile.electricadvantage.pump_pipe_electric.name": "펌프 파이프", - "item.electricadvantage.blank_circuit_board": "회로 기판 (빈)", - "item.electricadvantage.control_circuit": "제어 회로", - "item.electricadvantage.integrated_circuit": "마이크로 칩", - "item.electricadvantage.psu": "전원 공급 장치", - "item.electricadvantage.silicon_ingot": "실리콘 잉곳", - "item.electricadvantage.silicon_mix": "실리콘 혼합", - "item.electricadvantage.solder_mix": "솔더 혼합", - "item.electricadvantage.solder": "솔더", - "item.electricadvantage.li_powder": "분말 리튬", - "item.electricadvantage.li_ingot": "리튬 잉곳", - "item.electricadvantage.li_nugget": "리튬 너겟", - "item.electricadvantage.sulfur_powder": "분말 유황", - "item.electricadvantage.lead_acid_battery": "납 축전지", - "item.electricadvantage.nickel_hydride_battery": "니켈 수소 배터리", - "item.electricadvantage.alkaline_battery": "알카라인 배터리", - "item.electricadvantage.lithium_battery": "리튬 이온 배터리", - "block.electricadvantage.electric_conduit": "전력 케이블", - "block.electricadvantage.electric_track": "전기 비계", - "block.electricadvantage.electric_battery_array": "전지 어레이", - "block.electricadvantage.electric_crusher": "전기 락 크러셔", - "block.electricadvantage.laser_turret": "레이저 방어 터렛", - "block.electricadvantage.electric_drill": "전기 마이닝 드릴", - "block.electricadvantage.electric_fabricator": "자동 어셈블러", - "block.electricadvantage.electric_furnace": "전기로", - "block.electricadvantage.electric_oven": "전기 오븐", - "block.electricadvantage.electric_pcb_printer": "회로 기판 프린터", - "block.electricadvantage.geothermal_generator": "지열 발전기", - "block.electricadvantage.hydroelectric_generator": "수력 발전기", - "block.electricadvantage.photovoltaic_generator": "태양 광 발전기", - "block.electricadvantage.steam_powered_generator": "증기 발전기", - "block.electricadvantage.growth_chamber": "성장 상공 회의소", - "block.electricadvantage.growth_chamber_controller": "성장 챔버 제어 장치", - "block.electricadvantage.li_ore": "리튬 광석", - "block.electricadvantage.sulfur_ore": "유황 광석", - "block.electricadvantage.led_bar": "LED 조명", - "block.electricadvantage.electric_switch": "전기 스위치", - "block.electricadvantage.electric_still": "전기 증류기", - "block.electricadvantage.electric_pump": "전기 펌프", - "block.electricadvantage.plastic_refinery": "플라스틱 정유", - "item.electricadvantage.petrolplastic_ingot": "석유 수지 잉곳", - "block.electricadvantage.pump_pipe_electric": "펌프 파이프", - "block.electricadvantage.laser_turret_evil": "레이저 방어 터렛" -} diff --git a/src/main/resources/assets/electricadvantage/lang/pt_br.json b/src/main/resources/assets/electricadvantage/lang/pt_br.json deleted file mode 100644 index 3140e93..0000000 --- a/src/main/resources/assets/electricadvantage/lang/pt_br.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "inglês (en_US, en_EN, en_CA, en_GB, en_AU, en_PT), espanhol (es_MX, es_ES), chinês (zh_CN), japonês (ja_JA), Português (pt_BR), alemão (de_DE), italiano (it_IT), coreano (ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "Placa de Circuito (Vago)", - "item.electricadvantage.control_circuit.name": "Circuito de Controle", - "item.electricadvantage.integrated_circuit.name": "Circuito Integrado", - "item.electricadvantage.psu.name": "Unidade de Alimentação", - "item.electricadvantage.silicon_ingot.name": "Silício Lingote", - "item.electricadvantage.silicon_mix.name": "Mistura de Silício", - "item.electricadvantage.solder_mix.name": "Mistura de Solda", - "item.electricadvantage.solder.name": "Solda", - "item.electricadvantage.li_powder.name": "Pó de Lítio", - "item.electricadvantage.li_ingot.name": "Lítio Lingote", - "item.electricadvantage.li_nugget.name": "Pepita de Lítio", - "item.electricadvantage.sulfur_powder.name": "Enxofre em Pó", - "item.electricadvantage.lead_acid_battery.name": "Bateria de Chumbo Ácido", - "item.electricadvantage.nickel_hydride_battery.name": "Bateria Níquel-Hidreto Metálico", - "item.electricadvantage.alkaline_battery.name": "Bateria Alcalina", - "item.electricadvantage.lithium_battery.name": "Bateria de Lítio", - "tile.electricadvantage.electric_conduit.name": "Fio Elétrico", - "tile.electricadvantage.electric_track.name": "Elétrica Andaime", - "tile.electricadvantage.electric_battery_array.name": "Armazenamento da Bateria", - "tile.electricadvantage.electric_crusher.name": "Triturador de Rocha Elétrica", - "tile.electricadvantage.laser_turret.name": "Torre de Arma a Laser", - "tile.electricadvantage.electric_drill.name": "Broca Mineração Elétrica", - "tile.electricadvantage.electric_fabricator.name": "Fábrica Automatizada", - "tile.electricadvantage.electric_furnace.name": "Forno Elétrico a Arco", - "tile.electricadvantage.electric_oven.name": "Forno Elétrico", - "tile.electricadvantage.electric_pcb_printer.name": "Impressora Circuito", - "tile.electricadvantage.geothermal_generator.name": "Gerador de Elétrico Geotérmica", - "tile.electricadvantage.hydroelectric_generator.name": "Gerador Hidrelétrico", - "tile.electricadvantage.photovoltaic_generator.name": "Painel Solar", - "tile.electricadvantage.steam_powered_generator.name": "a Vapor Gerador Elétrico", - "tile.electricadvantage.growth_chamber.name": "Câmara de Crescimento", - "tile.electricadvantage.growth_chamber_controller.name": "Unidade de Controle de Crescimento Câmara", - "tile.electricadvantage.li_ore.name": "Minério de Lítio", - "tile.electricadvantage.sulfur_ore.name": "Minério de Enxofre", - "tile.electricadvantage.led_bar.name": "Luz LED", - "tooltip.battery.charge": "Carga", - "tooltip.battery.capacity": "Capacidade", - "death.attack.laser": "%1$S vaporizado", - "death.attack.laser.player": "%2$s vaporizados %1$s", - "death.attack.propeller": "%1$s foi pulverizado por uma hélice.", - "death.attack.propeller.player": "%2$s empurrou %1$s em uma hélice.", - "tile.electricadvantage.electric_switch.name": "Chave Elétrica", - "tile.electricadvantage.electric_still.name": "Destilador Elétrico", - "tile.electricadvantage.electric_pump.name": "Bomba Elétrica", - "tile.electricadvantage.plastic_refinery.name": "Refinaria de Plástico", - "item.electricadvantage.petrolplastic_ingot.name": "Petróleo Plástico Lingote", - "tile.electricadvantage.pump_pipe_electric.name": "Tubo de Bomba", - "item.electricadvantage.blank_circuit_board": "Placa de Circuito (Vago)", - "item.electricadvantage.control_circuit": "Circuito de Controle", - "item.electricadvantage.integrated_circuit": "Circuito Integrado", - "item.electricadvantage.psu": "Unidade de Alimentação", - "item.electricadvantage.silicon_ingot": "Silício Lingote", - "item.electricadvantage.silicon_mix": "Mistura de Silício", - "item.electricadvantage.solder_mix": "Mistura de Solda", - "item.electricadvantage.solder": "Solda", - "item.electricadvantage.li_powder": "Pó de Lítio", - "item.electricadvantage.li_ingot": "Lítio Lingote", - "item.electricadvantage.li_nugget": "Pepita de Lítio", - "item.electricadvantage.sulfur_powder": "Enxofre em Pó", - "item.electricadvantage.lead_acid_battery": "Bateria de Chumbo Ácido", - "item.electricadvantage.nickel_hydride_battery": "Bateria Níquel-Hidreto Metálico", - "item.electricadvantage.alkaline_battery": "Bateria Alcalina", - "item.electricadvantage.lithium_battery": "Bateria de Lítio", - "block.electricadvantage.electric_conduit": "Fio Elétrico", - "block.electricadvantage.electric_track": "Elétrica Andaime", - "block.electricadvantage.electric_battery_array": "Armazenamento da Bateria", - "block.electricadvantage.electric_crusher": "Triturador de Rocha Elétrica", - "block.electricadvantage.laser_turret": "Torre de Arma a Laser", - "block.electricadvantage.electric_drill": "Broca Mineração Elétrica", - "block.electricadvantage.electric_fabricator": "Fábrica Automatizada", - "block.electricadvantage.electric_furnace": "Forno Elétrico a Arco", - "block.electricadvantage.electric_oven": "Forno Elétrico", - "block.electricadvantage.electric_pcb_printer": "Impressora Circuito", - "block.electricadvantage.geothermal_generator": "Gerador de Elétrico Geotérmica", - "block.electricadvantage.hydroelectric_generator": "Gerador Hidrelétrico", - "block.electricadvantage.photovoltaic_generator": "Painel Solar", - "block.electricadvantage.steam_powered_generator": "a Vapor Gerador Elétrico", - "block.electricadvantage.growth_chamber": "Câmara de Crescimento", - "block.electricadvantage.growth_chamber_controller": "Unidade de Controle de Crescimento Câmara", - "block.electricadvantage.li_ore": "Minério de Lítio", - "block.electricadvantage.sulfur_ore": "Minério de Enxofre", - "block.electricadvantage.led_bar": "Luz LED", - "block.electricadvantage.electric_switch": "Chave Elétrica", - "block.electricadvantage.electric_still": "Destilador Elétrico", - "block.electricadvantage.electric_pump": "Bomba Elétrica", - "block.electricadvantage.plastic_refinery": "Refinaria de Plástico", - "item.electricadvantage.petrolplastic_ingot": "Petróleo Plástico Lingote", - "block.electricadvantage.pump_pipe_electric": "Tubo de Bomba", - "block.electricadvantage.laser_turret_evil": "Torre de Arma a Laser" -} diff --git a/src/main/resources/assets/electricadvantage/lang/zh_cn.json b/src/main/resources/assets/electricadvantage/lang/zh_cn.json deleted file mode 100644 index d881a85..0000000 --- a/src/main/resources/assets/electricadvantage/lang/zh_cn.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "language_support_goals": "英语(EN_US,的en_EN,en_CA,EN_GB,en_AU,en_PT),西班牙语(es_MX,es_ES),中国(zh_CN的),日本(ja_JA),葡萄牙语(PT_BR),德语(de_DE这个),意大利语(it_IT),韩国(ko_KR)", - "item.electricadvantage.blank_circuit_board.name": "电路板(空白)", - "item.electricadvantage.control_circuit.name": "控制电路", - "item.electricadvantage.integrated_circuit.name": "微芯片", - "item.electricadvantage.psu.name": "电源单元", - "item.electricadvantage.silicon_ingot.name": "硅锭", - "item.electricadvantage.silicon_mix.name": "硅混合", - "item.electricadvantage.solder_mix.name": "焊接混合", - "item.electricadvantage.solder.name": "焊料", - "item.electricadvantage.li_powder.name": "粉状锂", - "item.electricadvantage.li_ingot.name": "锂锭", - "item.electricadvantage.li_nugget.name": "锂掘金", - "item.electricadvantage.sulfur_powder.name": "硫粉", - "item.electricadvantage.lead_acid_battery.name": "铅酸蓄电池", - "item.electricadvantage.nickel_hydride_battery.name": "镍氢电池", - "item.electricadvantage.alkaline_battery.name": "碱性电池", - "item.electricadvantage.lithium_battery.name": "锂离子电池", - "tile.electricadvantage.electric_conduit.name": "电力电缆", - "tile.electricadvantage.electric_track.name": "电动脚手架", - "tile.electricadvantage.electric_battery_array.name": "电池阵列", - "tile.electricadvantage.electric_crusher.name": "电碎石机", - "tile.electricadvantage.laser_turret.name": "激光防御炮塔", - "tile.electricadvantage.electric_drill.name": "电矿钻", - "tile.electricadvantage.electric_fabricator.name": "自动汇编", - "tile.electricadvantage.electric_furnace.name": "电弧炉", - "tile.electricadvantage.electric_oven.name": "电烤箱", - "tile.electricadvantage.electric_pcb_printer.name": " 电路板打印机", - "tile.electricadvantage.geothermal_generator.name": "热发电机", - "tile.electricadvantage.hydroelectric_generator.name": "水轮发电机", - "tile.electricadvantage.photovoltaic_generator.name": "光电发生器", - "tile.electricadvantage.steam_powered_generator.name": "蒸汽为动力的电动发电机", - "tile.electricadvantage.growth_chamber.name": "生长箱", - "tile.electricadvantage.growth_chamber_controller.name": "生长箱控制单元", - "tile.electricadvantage.li_ore.name": "锂矿", - "tile.electricadvantage.sulfur_ore.name": "硫矿石", - "tile.electricadvantage.led_bar.name": "LED燈", - "tooltip.battery.charge": "充电", - "tooltip.battery.capacity": "容量", - "death.attack.laser": "%1$s蒸发", - "death.attack.laser.player": "%2$s汽化%1$s", - "death.attack.propeller": "%1$s被粉碎螺旋桨。", - "death.attack.propeller.player": "%2$s推%1$s转换为螺旋桨。", - "tile.electricadvantage.electric_switch.name": "電器開關", - "tile.electricadvantage.electric_still.name": "電熱蒸餾水", - "tile.electricadvantage.electric_pump.name": "電動泵", - "tile.electricadvantage.plastic_refinery.name": "塑料煉油廠", - "item.electricadvantage.petrolplastic_ingot.name": "石油膠錠", - "tile.electricadvantage.pump_pipe_electric.name": "泵管", - "item.electricadvantage.blank_circuit_board": "电路板(空白)", - "item.electricadvantage.control_circuit": "控制电路", - "item.electricadvantage.integrated_circuit": "微芯片", - "item.electricadvantage.psu": "电源单元", - "item.electricadvantage.silicon_ingot": "硅锭", - "item.electricadvantage.silicon_mix": "硅混合", - "item.electricadvantage.solder_mix": "焊接混合", - "item.electricadvantage.solder": "焊料", - "item.electricadvantage.li_powder": "粉状锂", - "item.electricadvantage.li_ingot": "锂锭", - "item.electricadvantage.li_nugget": "锂掘金", - "item.electricadvantage.sulfur_powder": "硫粉", - "item.electricadvantage.lead_acid_battery": "铅酸蓄电池", - "item.electricadvantage.nickel_hydride_battery": "镍氢电池", - "item.electricadvantage.alkaline_battery": "碱性电池", - "item.electricadvantage.lithium_battery": "锂离子电池", - "block.electricadvantage.electric_conduit": "电力电缆", - "block.electricadvantage.electric_track": "电动脚手架", - "block.electricadvantage.electric_battery_array": "电池阵列", - "block.electricadvantage.electric_crusher": "电碎石机", - "block.electricadvantage.laser_turret": "激光防御炮塔", - "block.electricadvantage.electric_drill": "电矿钻", - "block.electricadvantage.electric_fabricator": "自动汇编", - "block.electricadvantage.electric_furnace": "电弧炉", - "block.electricadvantage.electric_oven": "电烤箱", - "block.electricadvantage.electric_pcb_printer": " 电路板打印机", - "block.electricadvantage.geothermal_generator": "热发电机", - "block.electricadvantage.hydroelectric_generator": "水轮发电机", - "block.electricadvantage.photovoltaic_generator": "光电发生器", - "block.electricadvantage.steam_powered_generator": "蒸汽为动力的电动发电机", - "block.electricadvantage.growth_chamber": "生长箱", - "block.electricadvantage.growth_chamber_controller": "生长箱控制单元", - "block.electricadvantage.li_ore": "锂矿", - "block.electricadvantage.sulfur_ore": "硫矿石", - "block.electricadvantage.led_bar": "LED燈", - "block.electricadvantage.electric_switch": "電器開關", - "block.electricadvantage.electric_still": "電熱蒸餾水", - "block.electricadvantage.electric_pump": "電動泵", - "block.electricadvantage.plastic_refinery": "塑料煉油廠", - "item.electricadvantage.petrolplastic_ingot": "石油膠錠", - "block.electricadvantage.pump_pipe_electric": "泵管", - "block.electricadvantage.laser_turret_evil": "激光防御炮塔" -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_battery_array.json b/src/main/resources/assets/electricadvantage/models/block/electric_battery_array.json deleted file mode 100644 index 3d42d60..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_battery_array.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_battery_array", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_0.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_0.json deleted file mode 100644 index 35ae031..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_0.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ensw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_densuw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_densuw.json deleted file mode 100644 index 6e81d07..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_densuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_densuw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_desuw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_desuw.json deleted file mode 100644 index 5926a15..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_desuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_desuw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_dnu.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_dnu.json deleted file mode 100644 index b8c0078..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_dnu.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_dnu", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ensw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ensw.json deleted file mode 100644 index 35ae031..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ensw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ensw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_n.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_n.json deleted file mode 100644 index 01b0692..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_n.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_n", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ns.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ns.json deleted file mode 100644 index bc70545..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_ns.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ns", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsuw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsuw.json deleted file mode 100644 index 08913ad..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsuw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsw.json deleted file mode 100644 index 83e661f..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nsw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nuw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nuw.json deleted file mode 100644 index 37e7296..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nuw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nw.json b/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nw.json deleted file mode 100644 index bbdc488..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_conduit_nw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nw", - "textures": { - "texture": "electricadvantage:blocks/electric_conduit", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_crusher_off.json deleted file mode 100644 index 48e1794..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_crusher_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_crusher_on.json deleted file mode 100644 index 971881c..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_crusher_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_crusher_powered.json deleted file mode 100644 index dab4d02..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_crusher_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_crusher_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_drill_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_drill_off.json deleted file mode 100644 index 93365be..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_drill_off.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_drill_base", - "textures": { - "top": "electricadvantage:blocks/electric_drill_off", - "bottom": "electricadvantage:blocks/laser_drill_optic" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_drill_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_drill_on.json deleted file mode 100644 index f227a8e..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_drill_on.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_drill_base", - "textures": { - "top": "electricadvantage:blocks/electric_drill_on", - "bottom": "electricadvantage:blocks/laser_drill_optic_on" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_off.json deleted file mode 100644 index 18ea194..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_fabricator_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_on.json deleted file mode 100644 index a078546..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_fabricator_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_powered.json deleted file mode 100644 index 2d36d3f..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_fabricator_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_fabricator_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_furnace_off.json deleted file mode 100644 index 1572af5..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_furnace_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_furnace_on.json deleted file mode 100644 index 7566f40..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_furnace_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_furnace_powered.json deleted file mode 100644 index 6f2da39..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_furnace_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_furnace_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_oven_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_oven_off.json deleted file mode 100644 index 6bcc5ca..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_oven_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_oven_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_oven_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_oven_on.json deleted file mode 100644 index 5ecce52..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_oven_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_oven_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_oven_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_oven_powered.json deleted file mode 100644 index 3ca23f9..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_oven_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_oven_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_off.json deleted file mode 100644 index 2255595..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pcb_printer_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_on.json deleted file mode 100644 index f150a30..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pcb_printer_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_powered.json deleted file mode 100644 index c9c2cee..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pcb_printer_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pcb_printer_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pump_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_pump_off.json deleted file mode 100644 index 6606e1d..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pump_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pump_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pump_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_pump_on.json deleted file mode 100644 index 0333dc1..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pump_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pump_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_pump_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_pump_powered.json deleted file mode 100644 index 0333dc1..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_pump_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_pump_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_still_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_still_off.json deleted file mode 100644 index 4c86573..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_still_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_still_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_still_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_still_on.json deleted file mode 100644 index 99e5d84..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_still_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_still_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_still_powered.json b/src/main/resources/assets/electricadvantage/models/block/electric_still_powered.json deleted file mode 100644 index 87b8ee9..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_still_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/electric_still_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_switch_off.json b/src/main/resources/assets/electricadvantage/models/block/electric_switch_off.json deleted file mode 100644 index 4b89d53..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_switch_off.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "electricadvantage:blocks/electric_switch_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/electric_switch_on.json b/src/main/resources/assets/electricadvantage/models/block/electric_switch_on.json deleted file mode 100644 index b9d3e78..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/electric_switch_on.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "block/cube_all", - "textures": { - "all": "electricadvantage:blocks/electric_switch_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/geothermal_generator.json b/src/main/resources/assets/electricadvantage/models/block/geothermal_generator.json deleted file mode 100644 index d9cc7b6..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/geothermal_generator.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/machine_side", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_side", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_controller.json b/src/main/resources/assets/electricadvantage/models/block/growth_chamber_controller.json deleted file mode 100644 index 13691ac..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_controller.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/growth_chamber_controller", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_off.json b/src/main/resources/assets/electricadvantage/models/block/growth_chamber_off.json deleted file mode 100644 index 7e5904d..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/growth_chamber_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_on.json b/src/main/resources/assets/electricadvantage/models/block/growth_chamber_on.json deleted file mode 100644 index 3b16e96..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/growth_chamber_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_powered.json b/src/main/resources/assets/electricadvantage/models/block/growth_chamber_powered.json deleted file mode 100644 index 35f67d0..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/growth_chamber_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/growth_chamber_powered", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_off.json b/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_off.json deleted file mode 100644 index bf38aa2..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/machine_side", - "top": "electricadvantage:blocks/hydroelectric_generator_off", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_side", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_on.json b/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_on.json deleted file mode 100644 index 269e7c0..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/hydroelectric_generator_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/machine_side", - "top": "electricadvantage:blocks/hydroelectric_generator_on", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_side", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_densuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_densuw.json deleted file mode 100644 index 23466fc..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_densuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_densuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_desuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_desuw.json deleted file mode 100644 index 2efead2..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_desuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_desuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_dnu.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_dnu.json deleted file mode 100644 index 868a5e8..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_dnu.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_dnu", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ensw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ensw.json deleted file mode 100644 index c674481..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ensw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ensw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_n.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_n.json deleted file mode 100644 index 0fc830e..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_n.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_n", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ns.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ns.json deleted file mode 100644 index ca52052..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_ns.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ns", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsuw.json deleted file mode 100644 index 64a25d2..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsw.json deleted file mode 100644 index 5a29b9a..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nsw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nuw.json deleted file mode 100644 index 04d5256..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nw.json deleted file mode 100644 index b3fe21a..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_off_nw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_off", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_densuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_densuw.json deleted file mode 100644 index 3741344..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_densuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_densuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_desuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_desuw.json deleted file mode 100644 index a164317..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_desuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_desuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_dnu.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_dnu.json deleted file mode 100644 index 0315246..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_dnu.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_dnu", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ensw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ensw.json deleted file mode 100644 index 3bb9645..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ensw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ensw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_n.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_n.json deleted file mode 100644 index ca1a495..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_n.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_n", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ns.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ns.json deleted file mode 100644 index f27e494..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_ns.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_ns", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsuw.json deleted file mode 100644 index 456571a..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsw.json deleted file mode 100644 index c1852e7..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nsw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nsw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nuw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nuw.json deleted file mode 100644 index c675f66..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nuw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nuw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nw.json b/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nw.json deleted file mode 100644 index 4ee7788..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/led_bar_on_nw.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "parent": "poweradvantage:block/pipe2_nw", - "textures": { - "texture": "electricadvantage:blocks/led_bar_on", - "particle": "electricadvantage:materials/machine_case" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_off.json b/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_off.json deleted file mode 100644 index bc1b3c1..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/plastic_refinery_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_on.json b/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_on.json deleted file mode 100644 index b4897bb..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/plastic_refinery_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_powered.json b/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_powered.json deleted file mode 100644 index b4897bb..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/plastic_refinery_powered.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/plastic_refinery_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_off.json b/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_off.json deleted file mode 100644 index ce03184..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_off.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/steam_powered_generator_off", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_on.json b/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_on.json deleted file mode 100644 index 2526493..0000000 --- a/src/main/resources/assets/electricadvantage/models/block/steam_powered_generator_on.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_machine_base", - "textures": { - "front": "electricadvantage:blocks/steam_powered_generator_on", - "top": "electricadvantage:blocks/machine_top", - "bottom":"electricadvantage:blocks/machine_top", - "back": "electricadvantage:blocks/machine_back", - "side": "electricadvantage:blocks/machine_side" - } -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/alkaline_battery.json b/src/main/resources/assets/electricadvantage/models/item/alkaline_battery.json deleted file mode 100644 index 2ca2a33..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/alkaline_battery.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/battery_base", - "textures": { - "item_texture": "electricadvantage:items/alkaline_battery" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/blank_circuit_board.json b/src/main/resources/assets/electricadvantage/models/item/blank_circuit_board.json deleted file mode 100644 index 2eecc46..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/blank_circuit_board.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/blank_circuit_board" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/control_circuit.json b/src/main/resources/assets/electricadvantage/models/item/control_circuit.json deleted file mode 100644 index 38fb66c..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/control_circuit.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/control_circuit" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_battery_array.json b/src/main/resources/assets/electricadvantage/models/item/electric_battery_array.json deleted file mode 100644 index 3e46e60..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_battery_array.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_battery_array", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_conduit.json b/src/main/resources/assets/electricadvantage/models/item/electric_conduit.json deleted file mode 100644 index 243426d..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_conduit.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_conduit_ns", - "ambientocclusion": false -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_crusher.json b/src/main/resources/assets/electricadvantage/models/item/electric_crusher.json deleted file mode 100644 index 41351ba..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_crusher.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_crusher_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_drill.json b/src/main/resources/assets/electricadvantage/models/item/electric_drill.json deleted file mode 100644 index a48c97e..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_drill.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_drill_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_fabricator.json b/src/main/resources/assets/electricadvantage/models/item/electric_fabricator.json deleted file mode 100644 index 913a9ee..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_fabricator.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_fabricator_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_furnace.json b/src/main/resources/assets/electricadvantage/models/item/electric_furnace.json deleted file mode 100644 index cb4a82d..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_furnace.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_furnace_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_oven.json b/src/main/resources/assets/electricadvantage/models/item/electric_oven.json deleted file mode 100644 index e8b3e68..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_oven.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_oven_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_pcb_printer.json b/src/main/resources/assets/electricadvantage/models/item/electric_pcb_printer.json deleted file mode 100644 index 255a5a3..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_pcb_printer.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_pcb_printer_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_pump.json b/src/main/resources/assets/electricadvantage/models/item/electric_pump.json deleted file mode 100644 index 877dff1..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_pump.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_pump_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_still.json b/src/main/resources/assets/electricadvantage/models/item/electric_still.json deleted file mode 100644 index 3e6cabb..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_still.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_still_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_switch.json b/src/main/resources/assets/electricadvantage/models/item/electric_switch.json deleted file mode 100644 index 5df1b13..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_switch.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_switch_on" -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/electric_track.json b/src/main/resources/assets/electricadvantage/models/item/electric_track.json deleted file mode 100644 index 01a8d92..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/electric_track.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/electric_track_ns", - "ambientocclusion": false -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/generic_item.json b/src/main/resources/assets/electricadvantage/models/item/generic_item.json deleted file mode 100644 index a0a6658..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/generic_item.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "item/generated", - "textures": { - "layer0": "electricadvantage:items/blank_circuit_board" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/geothermal_generator.json b/src/main/resources/assets/electricadvantage/models/item/geothermal_generator.json deleted file mode 100644 index e27ebe5..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/geothermal_generator.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/geothermal_generator", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/growth_chamber.json b/src/main/resources/assets/electricadvantage/models/item/growth_chamber.json deleted file mode 100644 index 75f2dba..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/growth_chamber.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/growth_chamber_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/growth_chamber_controller.json b/src/main/resources/assets/electricadvantage/models/item/growth_chamber_controller.json deleted file mode 100644 index 2b80c53..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/growth_chamber_controller.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/growth_chamber_controller", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/hydroelectric_generator.json b/src/main/resources/assets/electricadvantage/models/item/hydroelectric_generator.json deleted file mode 100644 index a11f925..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/hydroelectric_generator.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/hydroelectric_generator_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/integrated_circuit.json b/src/main/resources/assets/electricadvantage/models/item/integrated_circuit.json deleted file mode 100644 index 1cb8270..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/integrated_circuit.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/integrated_circuit" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/lead_acid_battery.json b/src/main/resources/assets/electricadvantage/models/item/lead_acid_battery.json deleted file mode 100644 index 56a40fa..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/lead_acid_battery.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/battery_base", - "textures": { - "item_texture": "electricadvantage:items/lead_acid_battery" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/led_bar.json b/src/main/resources/assets/electricadvantage/models/item/led_bar.json deleted file mode 100644 index 3510d12..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/led_bar.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/led_bar_on_ns", - "ambientocclusion": false -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/li_ingot.json b/src/main/resources/assets/electricadvantage/models/item/li_ingot.json deleted file mode 100644 index 94cc2ce..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/li_ingot.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/li_ingot" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/li_nugget.json b/src/main/resources/assets/electricadvantage/models/item/li_nugget.json deleted file mode 100644 index dbf17f3..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/li_nugget.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/li_nugget" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/li_ore.json b/src/main/resources/assets/electricadvantage/models/item/li_ore.json deleted file mode 100644 index 7350804..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/li_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "electricadvantage:block/li_ore" -} diff --git a/src/main/resources/assets/electricadvantage/models/item/li_powder.json b/src/main/resources/assets/electricadvantage/models/item/li_powder.json deleted file mode 100644 index b8d4fbb..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/li_powder.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/li_powder" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/lithium_battery.json b/src/main/resources/assets/electricadvantage/models/item/lithium_battery.json deleted file mode 100644 index 212f62d..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/lithium_battery.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/battery_base", - "textures": { - "item_texture": "electricadvantage:items/lithium_battery" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/nickel_hydride_battery.json b/src/main/resources/assets/electricadvantage/models/item/nickel_hydride_battery.json deleted file mode 100644 index 2afdd5a..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/nickel_hydride_battery.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/battery_base", - "textures": { - "item_texture": "electricadvantage:items/nickel_hydride_battery" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/petrolplastic_ingot.json b/src/main/resources/assets/electricadvantage/models/item/petrolplastic_ingot.json deleted file mode 100644 index f640ac9..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/petrolplastic_ingot.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/petrolplastic_ingot" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/photovoltaic_generator.json b/src/main/resources/assets/electricadvantage/models/item/photovoltaic_generator.json deleted file mode 100644 index 6f610fa..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/photovoltaic_generator.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/photovoltaic_generator", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/plastic_refinery.json b/src/main/resources/assets/electricadvantage/models/item/plastic_refinery.json deleted file mode 100644 index 3390e0b..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/plastic_refinery.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/plastic_refinery_off", - "ambientocclusion": false -} diff --git a/src/main/resources/assets/electricadvantage/models/item/psu.json b/src/main/resources/assets/electricadvantage/models/item/psu.json deleted file mode 100644 index 06aba98..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/psu.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/psu" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/pump_pipe_electric.json b/src/main/resources/assets/electricadvantage/models/item/pump_pipe_electric.json deleted file mode 100644 index 097b735..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/pump_pipe_electric.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "poweradvantage:block/fluid_pipe_ns", - "ambientocclusion": false -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/silicon_ingot.json b/src/main/resources/assets/electricadvantage/models/item/silicon_ingot.json deleted file mode 100644 index 1e15ca5..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/silicon_ingot.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/silicon_ingot" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/silicon_mix.json b/src/main/resources/assets/electricadvantage/models/item/silicon_mix.json deleted file mode 100644 index f8584b4..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/silicon_mix.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/silicon_mix" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/solder.json b/src/main/resources/assets/electricadvantage/models/item/solder.json deleted file mode 100644 index 35b5559..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/solder.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/solder" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/solder_mix.json b/src/main/resources/assets/electricadvantage/models/item/solder_mix.json deleted file mode 100644 index caad3bf..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/solder_mix.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "electricadvantage:item/generic_item", - "textures": { - "layer0": "electricadvantage:items/solder_mix" - } -} diff --git a/src/main/resources/assets/electricadvantage/models/item/steam_powered_generator.json b/src/main/resources/assets/electricadvantage/models/item/steam_powered_generator.json deleted file mode 100644 index db8679a..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/steam_powered_generator.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "parent": "electricadvantage:block/steam_powered_generator_off", - "ambientocclusion": false -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/sulfur_ore.json b/src/main/resources/assets/electricadvantage/models/item/sulfur_ore.json deleted file mode 100644 index be50704..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/sulfur_ore.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "parent": "electricadvantage:block/sulfur_ore" -} \ No newline at end of file diff --git a/src/main/resources/assets/electricadvantage/models/item/sulfur_powder.json b/src/main/resources/assets/electricadvantage/models/item/sulfur_powder.json deleted file mode 100644 index 393fc64..0000000 --- a/src/main/resources/assets/electricadvantage/models/item/sulfur_powder.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "parent": "item/generated", - "textures": { - "layer0": "electricadvantage:items/sulfur_powder" - } -} \ No newline at end of file diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json b/src/main/resources/data/baseelectric/advancements/recipes/alkaline_battery.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json rename to src/main/resources/data/baseelectric/advancements/recipes/alkaline_battery.json index 284c2a3..701c715 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/alkaline_battery.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/alkaline_battery.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:alkaline_battery" + "recipe": "baseelectric:alkaline_battery" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:alkaline_battery" + "baseelectric:alkaline_battery" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_ingot_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_ingot_normal.json similarity index 84% rename from src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_ingot_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_ingot_normal.json index ef89620..c22123c 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_ingot_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_ingot_normal.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:blank_circuit_board_ingot_normal" + "recipe": "baseelectric:blank_circuit_board_ingot_normal" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:blank_circuit_board_ingot_normal" + "baseelectric:blank_circuit_board_ingot_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_plate.json b/src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_plate.json similarity index 86% rename from src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_plate.json rename to src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_plate.json index 0ac9a97..91e5294 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/blank_circuit_board_plate.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/blank_circuit_board_plate.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:blank_circuit_board_plate" + "recipe": "baseelectric:blank_circuit_board_plate" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:blank_circuit_board_plate" + "baseelectric:blank_circuit_board_plate" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json b/src/main/resources/data/baseelectric/advancements/recipes/control_circuit.json similarity index 86% rename from src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json rename to src/main/resources/data/baseelectric/advancements/recipes/control_circuit.json index 9ded7cc..7ef96a1 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/control_circuit.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/control_circuit.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:blank_circuit_board" + "baseelectric:blank_circuit_board" ] } ] @@ -36,7 +36,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:control_circuit" + "recipe": "baseelectric:control_circuit" } } }, @@ -50,7 +50,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:control_circuit" + "baseelectric:control_circuit" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_battery_array.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_battery_array.json index 139ac87..e183022 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_battery_array.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_battery_array.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_battery_array" + "recipe": "baseelectric:electric_battery_array" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_battery_array" + "baseelectric:electric_battery_array" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_ingot.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_ingot.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_ingot.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_ingot.json index 71d3f2f..81136f5 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_ingot.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_ingot.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_conduit_plastic_ingot" + "recipe": "baseelectric:electric_conduit_plastic_ingot" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_conduit_plastic_ingot" + "baseelectric:electric_conduit_plastic_ingot" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_rod.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_rod.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_rod.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_rod.json index 1113778..6152022 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_plastic_rod.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_plastic_rod.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_conduit_plastic_rod" + "recipe": "baseelectric:electric_conduit_plastic_rod" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_conduit_plastic_rod" + "baseelectric:electric_conduit_plastic_rod" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_ingot.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_ingot.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_ingot.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_ingot.json index 34e1308..ac4e96c 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_ingot.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_ingot.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_conduit_rubber_ingot" + "recipe": "baseelectric:electric_conduit_rubber_ingot" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_conduit_rubber_ingot" + "baseelectric:electric_conduit_rubber_ingot" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_rod.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_rod.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_rod.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_rod.json index 02ebcf7..56f16dc 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_conduit_rubber_rod.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_conduit_rubber_rod.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_conduit_rubber_rod" + "recipe": "baseelectric:electric_conduit_rubber_rod" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_conduit_rubber_rod" + "baseelectric:electric_conduit_rubber_rod" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_crusher.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_crusher.json similarity index 93% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_crusher.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_crusher.json index 3c6d550..705c2c3 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_crusher.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_crusher.json @@ -54,7 +54,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_crusher" + "recipe": "baseelectric:electric_crusher" } } }, @@ -70,7 +70,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_crusher" + "baseelectric:electric_crusher" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_drill.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_drill.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_drill.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_drill.json index 23a9e46..05b5746 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_drill.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_drill.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_drill" + "recipe": "baseelectric:electric_drill" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_drill" + "baseelectric:electric_drill" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_fabricator.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_fabricator.json index 5b435a5..0b70fa3 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_fabricator.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_fabricator.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_fabricator" + "recipe": "baseelectric:electric_fabricator" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_fabricator" + "baseelectric:electric_fabricator" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_furnace.json similarity index 88% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_furnace.json index 0e49a68..011a630 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_furnace.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_furnace.json @@ -26,7 +26,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_furnace" + "recipe": "baseelectric:electric_furnace" } } }, @@ -39,7 +39,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_furnace" + "baseelectric:electric_furnace" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_oven.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_oven.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_oven.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_oven.json index 97f423d..0257ce6 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_oven.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_oven.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_oven" + "recipe": "baseelectric:electric_oven" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_oven" + "baseelectric:electric_oven" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_pump.json similarity index 94% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_pump.json index 7254cec..8aef1cd 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_pump.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_pump.json @@ -58,7 +58,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_pump" + "recipe": "baseelectric:electric_pump" } } }, @@ -74,7 +74,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_pump" + "baseelectric:electric_pump" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_still.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_still.json index 13963fe..972b14f 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_still.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_still.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_still" + "recipe": "baseelectric:electric_still" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_still" + "baseelectric:electric_still" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_switch.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_switch.json index 13bccab..f454146 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_switch.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_switch.json @@ -36,7 +36,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_switch" + "recipe": "baseelectric:electric_switch" } } }, @@ -50,7 +50,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_switch" + "baseelectric:electric_switch" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json b/src/main/resources/data/baseelectric/advancements/recipes/electric_track.json similarity index 79% rename from src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json rename to src/main/resources/data/baseelectric/advancements/recipes/electric_track.json index f78b7aa..ff55e06 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/electric_track.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/electric_track.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:electric_conduit" + "baseelectric:electric_conduit" ] } ] @@ -19,7 +19,7 @@ "items": [ { "items": [ - "poweradvantage:steel_frame" + "basepower:steel_frame" ] } ] @@ -28,7 +28,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:electric_track" + "recipe": "baseelectric:electric_track" } } }, @@ -41,7 +41,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:electric_track" + "baseelectric:electric_track" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json b/src/main/resources/data/baseelectric/advancements/recipes/growth_chamber.json similarity index 93% rename from src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json rename to src/main/resources/data/baseelectric/advancements/recipes/growth_chamber.json index 2737c07..fadd6b5 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/growth_chamber.json @@ -56,7 +56,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:growth_chamber" + "recipe": "baseelectric:growth_chamber" } } }, @@ -72,7 +72,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:growth_chamber" + "baseelectric:growth_chamber" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json b/src/main/resources/data/baseelectric/advancements/recipes/growth_chamber_controller.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json rename to src/main/resources/data/baseelectric/advancements/recipes/growth_chamber_controller.json index 816cd38..fbd4030 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/growth_chamber_controller.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/growth_chamber_controller.json @@ -56,7 +56,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:growth_chamber_controller" + "recipe": "baseelectric:growth_chamber_controller" } } }, @@ -72,7 +72,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:growth_chamber_controller" + "baseelectric:growth_chamber_controller" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/hydroelectric_generator.json b/src/main/resources/data/baseelectric/advancements/recipes/hydroelectric_generator.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/hydroelectric_generator.json rename to src/main/resources/data/baseelectric/advancements/recipes/hydroelectric_generator.json index fc59a9d..bcd7b35 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/hydroelectric_generator.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/hydroelectric_generator.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:hydroelectric_generator" + "recipe": "baseelectric:hydroelectric_generator" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:hydroelectric_generator" + "baseelectric:hydroelectric_generator" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_normal.json similarity index 84% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_normal.json index 8327834..600d50a 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_normal.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_copper_normal" + "recipe": "baseelectric:integrated_circuit_copper_normal" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_copper_normal" + "baseelectric:integrated_circuit_copper_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_tech.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_tech.json similarity index 90% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_tech.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_tech.json index fa1b4cd..f66ada2 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_copper_tech.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_copper_tech.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_copper_tech" + "recipe": "baseelectric:integrated_circuit_copper_tech" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_copper_tech" + "baseelectric:integrated_circuit_copper_tech" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_normal.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_normal.json index dc62986..dada91a 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_normal.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_gold_normal" + "recipe": "baseelectric:integrated_circuit_gold_normal" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_gold_normal" + "baseelectric:integrated_circuit_gold_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_tech.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_tech.json similarity index 90% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_tech.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_tech.json index ee1d711..f4e7a4c 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_gold_tech.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_gold_tech.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_gold_tech" + "recipe": "baseelectric:integrated_circuit_gold_tech" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_gold_tech" + "baseelectric:integrated_circuit_gold_tech" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_normal.json similarity index 85% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_normal.json index b67d971..c453c4c 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_normal.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_tin_normal" + "recipe": "baseelectric:integrated_circuit_tin_normal" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_tin_normal" + "baseelectric:integrated_circuit_tin_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_tech.json b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_tech.json similarity index 90% rename from src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_tech.json rename to src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_tech.json index a234004..a8986dd 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/integrated_circuit_tin_tech.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/integrated_circuit_tin_tech.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:integrated_circuit_tin_tech" + "recipe": "baseelectric:integrated_circuit_tin_tech" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:integrated_circuit_tin_tech" + "baseelectric:integrated_circuit_tin_tech" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_diamond_emerald.json b/src/main/resources/data/baseelectric/advancements/recipes/laser_turret_diamond_emerald.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_diamond_emerald.json rename to src/main/resources/data/baseelectric/advancements/recipes/laser_turret_diamond_emerald.json index d9885ca..4561af3 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_diamond_emerald.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/laser_turret_diamond_emerald.json @@ -54,7 +54,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:laser_turret_diamond_emerald" + "recipe": "baseelectric:laser_turret_diamond_emerald" } } }, @@ -70,7 +70,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:laser_turret_diamond_emerald" + "baseelectric:laser_turret_diamond_emerald" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_emerald_diamond.json b/src/main/resources/data/baseelectric/advancements/recipes/laser_turret_emerald_diamond.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_emerald_diamond.json rename to src/main/resources/data/baseelectric/advancements/recipes/laser_turret_emerald_diamond.json index 0657f86..e85fbf7 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/laser_turret_emerald_diamond.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/laser_turret_emerald_diamond.json @@ -54,7 +54,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:laser_turret_emerald_diamond" + "recipe": "baseelectric:laser_turret_emerald_diamond" } } }, @@ -70,7 +70,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:laser_turret_emerald_diamond" + "baseelectric:laser_turret_emerald_diamond" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json b/src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_dust_sulfur.json similarity index 90% rename from src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json rename to src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_dust_sulfur.json index 3a288d7..fc6b4a6 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_dust_sulfur.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_dust_sulfur.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lead_acid_battery_dust_sulfur" + "recipe": "baseelectric:lead_acid_battery_dust_sulfur" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lead_acid_battery_dust_sulfur" + "baseelectric:lead_acid_battery_dust_sulfur" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json b/src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_sulfur.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json rename to src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_sulfur.json index e0f0a70..1e985ff 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lead_acid_battery_sulfur.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lead_acid_battery_sulfur.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lead_acid_battery_sulfur" + "recipe": "baseelectric:lead_acid_battery_sulfur" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lead_acid_battery_sulfur" + "baseelectric:lead_acid_battery_sulfur" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/led_bar.json b/src/main/resources/data/baseelectric/advancements/recipes/led_bar.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/led_bar.json rename to src/main/resources/data/baseelectric/advancements/recipes/led_bar.json index 2b930e8..2eeb86f 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/led_bar.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/led_bar.json @@ -34,7 +34,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:led_bar" + "recipe": "baseelectric:led_bar" } } }, @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:led_bar" + "baseelectric:led_bar" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_battery.json b/src/main/resources/data/baseelectric/advancements/recipes/lithium_battery.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/lithium_battery.json rename to src/main/resources/data/baseelectric/advancements/recipes/lithium_battery.json index 3f7e590..8a449ca 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_battery.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lithium_battery.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lithium_battery" + "recipe": "baseelectric:lithium_battery" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lithium_battery" + "baseelectric:lithium_battery" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_nuggets.json b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_nuggets.json similarity index 80% rename from src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_nuggets.json rename to src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_nuggets.json index b2c780c..044e5f5 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_nuggets.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_nuggets.json @@ -14,7 +14,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lithium_ingot_from_nuggets" + "recipe": "baseelectric:lithium_ingot_from_nuggets" } } }, @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lithium_ingot_from_nuggets" + "baseelectric:lithium_ingot_from_nuggets" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_ore.json similarity index 76% rename from src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json rename to src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_ore.json index 73f52a0..8d97044 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_ore.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_ore.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:li_ore" + "baseelectric:li_ore" ] } ] @@ -16,7 +16,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lithium_ingot_from_ore" + "recipe": "baseelectric:lithium_ingot_from_ore" } } }, @@ -28,7 +28,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lithium_ingot_from_ore" + "baseelectric:lithium_ingot_from_ore" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_powder.json similarity index 75% rename from src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json rename to src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_powder.json index 9154379..3c8cece 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_ingot_from_powder.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lithium_ingot_from_powder.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:li_powder" + "baseelectric:li_powder" ] } ] @@ -16,7 +16,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lithium_ingot_from_powder" + "recipe": "baseelectric:lithium_ingot_from_powder" } } }, @@ -28,7 +28,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lithium_ingot_from_powder" + "baseelectric:lithium_ingot_from_powder" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_nuggets.json b/src/main/resources/data/baseelectric/advancements/recipes/lithium_nuggets.json similarity index 83% rename from src/main/resources/data/electricadvantage/advancements/recipes/lithium_nuggets.json rename to src/main/resources/data/baseelectric/advancements/recipes/lithium_nuggets.json index 83387d6..4cb6996 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/lithium_nuggets.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/lithium_nuggets.json @@ -14,7 +14,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:lithium_nuggets" + "recipe": "baseelectric:lithium_nuggets" } } }, @@ -26,7 +26,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:lithium_nuggets" + "baseelectric:lithium_nuggets" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json b/src/main/resources/data/baseelectric/advancements/recipes/nickel_hydride_battery.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json rename to src/main/resources/data/baseelectric/advancements/recipes/nickel_hydride_battery.json index 52062bf..10bcc13 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/nickel_hydride_battery.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/nickel_hydride_battery.json @@ -46,7 +46,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:nickel_hydride_battery" + "recipe": "baseelectric:nickel_hydride_battery" } } }, @@ -61,7 +61,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:nickel_hydride_battery" + "baseelectric:nickel_hydride_battery" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/photovoltaic_generator.json b/src/main/resources/data/baseelectric/advancements/recipes/photovoltaic_generator.json similarity index 91% rename from src/main/resources/data/electricadvantage/advancements/recipes/photovoltaic_generator.json rename to src/main/resources/data/baseelectric/advancements/recipes/photovoltaic_generator.json index 10ec133..818e45b 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/photovoltaic_generator.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/photovoltaic_generator.json @@ -44,7 +44,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:photovoltaic_generator" + "recipe": "baseelectric:photovoltaic_generator" } } }, @@ -59,7 +59,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:photovoltaic_generator" + "baseelectric:photovoltaic_generator" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json b/src/main/resources/data/baseelectric/advancements/recipes/plastic_refinery.json similarity index 93% rename from src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json rename to src/main/resources/data/baseelectric/advancements/recipes/plastic_refinery.json index 73525bd..a1593c2 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/plastic_refinery.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/plastic_refinery.json @@ -56,7 +56,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:plastic_refinery" + "recipe": "baseelectric:plastic_refinery" } } }, @@ -72,7 +72,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:plastic_refinery" + "baseelectric:plastic_refinery" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_iron_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_iron_normal.json similarity index 88% rename from src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_iron_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_iron_normal.json index 442d954..4e0cfaa 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_iron_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_iron_normal.json @@ -34,7 +34,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:power_supply_unit_iron_normal" + "recipe": "baseelectric:power_supply_unit_iron_normal" } } }, @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:power_supply_unit_iron_normal" + "baseelectric:power_supply_unit_iron_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json similarity index 86% rename from src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json rename to src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json index 033f918..a92fbf9 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_apocalyptic.json @@ -34,7 +34,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:power_supply_unit_plate_steel_apocalyptic" + "recipe": "baseelectric:power_supply_unit_plate_steel_apocalyptic" } } }, @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:power_supply_unit_plate_steel_apocalyptic" + "baseelectric:power_supply_unit_plate_steel_apocalyptic" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_tech.json b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_tech.json similarity index 87% rename from src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_tech.json rename to src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_tech.json index 68a1ea2..661ed46 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_plate_steel_tech.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_plate_steel_tech.json @@ -34,7 +34,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:power_supply_unit_plate_steel_tech" + "recipe": "baseelectric:power_supply_unit_plate_steel_tech" } } }, @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:power_supply_unit_plate_steel_tech" + "baseelectric:power_supply_unit_plate_steel_tech" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_steel_normal.json b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_steel_normal.json similarity index 88% rename from src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_steel_normal.json rename to src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_steel_normal.json index 9d1ade2..47b79d3 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/power_supply_unit_steel_normal.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/power_supply_unit_steel_normal.json @@ -34,7 +34,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:power_supply_unit_steel_normal" + "recipe": "baseelectric:power_supply_unit_steel_normal" } } }, @@ -48,7 +48,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:power_supply_unit_steel_normal" + "baseelectric:power_supply_unit_steel_normal" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_blend.json b/src/main/resources/data/baseelectric/advancements/recipes/silicon_blend.json similarity index 88% rename from src/main/resources/data/electricadvantage/advancements/recipes/silicon_blend.json rename to src/main/resources/data/baseelectric/advancements/recipes/silicon_blend.json index 835d345..4029923 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_blend.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/silicon_blend.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:silicon_blend" + "recipe": "baseelectric:silicon_blend" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:silicon_blend" + "baseelectric:silicon_blend" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json b/src/main/resources/data/baseelectric/advancements/recipes/silicon_ingot_from_blend.json similarity index 75% rename from src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json rename to src/main/resources/data/baseelectric/advancements/recipes/silicon_ingot_from_blend.json index 1a75987..b79f3a5 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/silicon_ingot_from_blend.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/silicon_ingot_from_blend.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:silicon_mix" + "baseelectric:silicon_mix" ] } ] @@ -16,7 +16,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:silicon_ingot_from_blend" + "recipe": "baseelectric:silicon_ingot_from_blend" } } }, @@ -28,7 +28,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:silicon_ingot_from_blend" + "baseelectric:silicon_ingot_from_blend" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_lead.json b/src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_lead.json similarity index 86% rename from src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_lead.json rename to src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_lead.json index 9054d7e..c1eaa7c 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_lead.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_lead.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:solder_blend_tin_lead" + "recipe": "baseelectric:solder_blend_tin_lead" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:solder_blend_tin_lead" + "baseelectric:solder_blend_tin_lead" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_silver.json b/src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_silver.json similarity index 86% rename from src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_silver.json rename to src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_silver.json index ad40fb0..eafbf22 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/solder_blend_tin_silver.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/solder_blend_tin_silver.json @@ -24,7 +24,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:solder_blend_tin_silver" + "recipe": "baseelectric:solder_blend_tin_silver" } } }, @@ -37,7 +37,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:solder_blend_tin_silver" + "baseelectric:solder_blend_tin_silver" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json b/src/main/resources/data/baseelectric/advancements/recipes/solder_from_blend.json similarity index 77% rename from src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json rename to src/main/resources/data/baseelectric/advancements/recipes/solder_from_blend.json index 5095402..321de25 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/solder_from_blend.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/solder_from_blend.json @@ -7,7 +7,7 @@ "items": [ { "items": [ - "electricadvantage:solder_mix" + "baseelectric:solder_mix" ] } ] @@ -16,7 +16,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:solder_from_blend" + "recipe": "baseelectric:solder_from_blend" } } }, @@ -28,7 +28,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:solder_from_blend" + "baseelectric:solder_from_blend" ] } } diff --git a/src/main/resources/data/electricadvantage/advancements/recipes/steam_powered_generator.json b/src/main/resources/data/baseelectric/advancements/recipes/steam_powered_generator.json similarity index 92% rename from src/main/resources/data/electricadvantage/advancements/recipes/steam_powered_generator.json rename to src/main/resources/data/baseelectric/advancements/recipes/steam_powered_generator.json index 4494cfb..6081d96 100644 --- a/src/main/resources/data/electricadvantage/advancements/recipes/steam_powered_generator.json +++ b/src/main/resources/data/baseelectric/advancements/recipes/steam_powered_generator.json @@ -54,7 +54,7 @@ "has_recipe": { "trigger": "minecraft:recipe_unlocked", "conditions": { - "recipe": "electricadvantage:steam_powered_generator" + "recipe": "baseelectric:steam_powered_generator" } } }, @@ -70,7 +70,7 @@ ], "rewards": { "recipes": [ - "electricadvantage:steam_powered_generator" + "baseelectric:steam_powered_generator" ] } } diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_furnace.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_battery_array.json similarity index 82% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_furnace.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/electric_battery_array.json index 93133a1..6a94f75 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_furnace.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_battery_array.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_furnace" + "name": "baseelectric:electric_battery_array" } ], "conditions": [ diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_conduit.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_conduit.json new file mode 100644 index 0000000..15087c5 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_conduit.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_conduit" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_crusher.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_crusher.json new file mode 100644 index 0000000..818d76f --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_crusher.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_crusher" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_drill.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_drill.json new file mode 100644 index 0000000..2c32b16 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_drill.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_drill" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_still.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_fabricator.json similarity index 83% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_still.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/electric_fabricator.json index 3bf810f..b4ea1cb 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_still.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_fabricator.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_still" + "name": "baseelectric:electric_fabricator" } ], "conditions": [ diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_furnace.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_furnace.json new file mode 100644 index 0000000..68d02a7 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_furnace.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_furnace" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_oven.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_oven.json similarity index 83% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_oven.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/electric_oven.json index 3dbf628..2f571c3 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_oven.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_oven.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_oven" + "name": "baseelectric:electric_oven" } ], "conditions": [ diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_pump.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_pump.json similarity index 83% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_pump.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/electric_pump.json index 3035bfa..9562204 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_pump.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_pump.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_pump" + "name": "baseelectric:electric_pump" } ], "conditions": [ diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_still.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_still.json new file mode 100644 index 0000000..ac7b944 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_still.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_still" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_switch.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_switch.json new file mode 100644 index 0000000..4f0a064 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_switch.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_switch" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/electric_track.json b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_track.json new file mode 100644 index 0000000..460b61c --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/electric_track.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:electric_track" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber.json b/src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber.json new file mode 100644 index 0000000..33a8fe0 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:growth_chamber" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_fabricator.json b/src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber_controller.json similarity index 81% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_fabricator.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber_controller.json index 9710bd3..0f010d3 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_fabricator.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/growth_chamber_controller.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_fabricator" + "name": "baseelectric:growth_chamber_controller" } ], "conditions": [ diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_crusher.json b/src/main/resources/data/baseelectric/loot_tables/blocks/hydroelectric_generator.json similarity index 82% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_crusher.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/hydroelectric_generator.json index 2f6ba03..29434f8 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_crusher.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/hydroelectric_generator.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_crusher" + "name": "baseelectric:hydroelectric_generator" } ], "conditions": [ diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret.json b/src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret.json similarity index 84% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret.json index 9c40877..fc59573 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:laser_turret" + "name": "baseelectric:laser_turret" } ], "conditions": [ diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret_evil.json b/src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret_evil.json new file mode 100644 index 0000000..0a1d9f2 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/laser_turret_evil.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:laser_turret_evil" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/led_bar.json b/src/main/resources/data/baseelectric/loot_tables/blocks/led_bar.json similarity index 85% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/led_bar.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/led_bar.json index 8ebeedd..afba020 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/led_bar.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/led_bar.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:led_bar" + "name": "baseelectric:led_bar" } ], "conditions": [ diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_conduit.json b/src/main/resources/data/baseelectric/loot_tables/blocks/photovoltaic_generator.json similarity index 82% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_conduit.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/photovoltaic_generator.json index b6a5470..5808dc3 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_conduit.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/photovoltaic_generator.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_conduit" + "name": "baseelectric:photovoltaic_generator" } ], "conditions": [ diff --git a/src/main/resources/data/baseelectric/loot_tables/blocks/plastic_refinery.json b/src/main/resources/data/baseelectric/loot_tables/blocks/plastic_refinery.json new file mode 100644 index 0000000..1f7c313 --- /dev/null +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/plastic_refinery.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "baseelectric:plastic_refinery" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_drill.json b/src/main/resources/data/baseelectric/loot_tables/blocks/steam_powered_generator.json similarity index 82% rename from src/main/resources/data/electricadvantage/loot_tables/blocks/electric_drill.json rename to src/main/resources/data/baseelectric/loot_tables/blocks/steam_powered_generator.json index 5082c42..4bc9b77 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_drill.json +++ b/src/main/resources/data/baseelectric/loot_tables/blocks/steam_powered_generator.json @@ -6,7 +6,7 @@ "entries": [ { "type": "minecraft:item", - "name": "electricadvantage:electric_drill" + "name": "baseelectric:steam_powered_generator" } ], "conditions": [ diff --git a/src/main/resources/data/electricadvantage/loot_tables/chests/advantage_parts.json b/src/main/resources/data/baseelectric/loot_tables/chests/advantage_parts.json similarity index 83% rename from src/main/resources/data/electricadvantage/loot_tables/chests/advantage_parts.json rename to src/main/resources/data/baseelectric/loot_tables/chests/advantage_parts.json index 248037f..d6d438b 100644 --- a/src/main/resources/data/electricadvantage/loot_tables/chests/advantage_parts.json +++ b/src/main/resources/data/baseelectric/loot_tables/chests/advantage_parts.json @@ -10,7 +10,7 @@ }, { "type": "item", - "name": "electricadvantage:psu", + "name": "baseelectric:psu", "weight": 6, "functions": [ { @@ -24,7 +24,7 @@ }, { "type": "item", - "name": "electricadvantage:electric_conduit", + "name": "baseelectric:electric_conduit", "weight": 12, "functions": [ { @@ -38,7 +38,7 @@ }, { "type": "item", - "name": "electricadvantage:led_bar", + "name": "baseelectric:led_bar", "weight": 6, "functions": [ { @@ -52,7 +52,7 @@ }, { "type": "item", - "name": "electricadvantage:solder", + "name": "baseelectric:solder", "weight": 6, "functions": [ { @@ -66,7 +66,7 @@ }, { "type": "item", - "name": "electricadvantage:integrated_circuit", + "name": "baseelectric:integrated_circuit", "weight": 3, "functions": [ { @@ -80,7 +80,7 @@ }, { "type": "item", - "name": "electricadvantage:lead_acid_battery", + "name": "baseelectric:lead_acid_battery", "weight": 8, "functions": [ { @@ -94,7 +94,7 @@ }, { "type": "item", - "name": "electricadvantage:nickel_hydride_battery", + "name": "baseelectric:nickel_hydride_battery", "weight": 4, "functions": [ { @@ -108,7 +108,7 @@ }, { "type": "item", - "name": "electricadvantage:alkaline_battery", + "name": "baseelectric:alkaline_battery", "weight": 2, "functions": [ { @@ -122,7 +122,7 @@ }, { "type": "item", - "name": "electricadvantage:lithium_battery", + "name": "baseelectric:lithium_battery", "weight": 1, "functions": [ { @@ -135,7 +135,7 @@ ] } ], - "name": "electricadvantage_legacy_parts_0" + "name": "baseelectric_legacy_parts_0" } ] } diff --git a/src/main/resources/data/electricadvantage/recipes/alkaline_battery.json b/src/main/resources/data/baseelectric/recipes/alkaline_battery.json similarity index 67% rename from src/main/resources/data/electricadvantage/recipes/alkaline_battery.json rename to src/main/resources/data/baseelectric/recipes/alkaline_battery.json index c2e0f6a..c3e8985 100644 --- a/src/main/resources/data/electricadvantage/recipes/alkaline_battery.json +++ b/src/main/resources/data/baseelectric/recipes/alkaline_battery.json @@ -20,20 +20,20 @@ } }, "result": { - "item": "electricadvantage:alkaline_battery" + "item": "baseelectric:alkaline_battery" }, - "group": "electricadvantage:alkaline_battery", + "group": "baseelectric:alkaline_battery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/iron" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/zinc" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/blank_circuit_board_ingot_normal.json b/src/main/resources/data/baseelectric/recipes/blank_circuit_board_ingot_normal.json similarity index 58% rename from src/main/resources/data/electricadvantage/recipes/blank_circuit_board_ingot_normal.json rename to src/main/resources/data/baseelectric/recipes/blank_circuit_board_ingot_normal.json index ef899bb..5853396 100644 --- a/src/main/resources/data/electricadvantage/recipes/blank_circuit_board_ingot_normal.json +++ b/src/main/resources/data/baseelectric/recipes/blank_circuit_board_ingot_normal.json @@ -9,22 +9,22 @@ } ], "result": { - "item": "electricadvantage:blank_circuit_board", + "item": "baseelectric:blank_circuit_board", "count": 2 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/copper" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ], - "group": "electricadvantage:blank_circuit_board" + "group": "baseelectric:blank_circuit_board" } diff --git a/src/main/resources/data/electricadvantage/recipes/blank_circuit_board_plate.json b/src/main/resources/data/baseelectric/recipes/blank_circuit_board_plate.json similarity index 60% rename from src/main/resources/data/electricadvantage/recipes/blank_circuit_board_plate.json rename to src/main/resources/data/baseelectric/recipes/blank_circuit_board_plate.json index fd0b1d7..924834d 100644 --- a/src/main/resources/data/electricadvantage/recipes/blank_circuit_board_plate.json +++ b/src/main/resources/data/baseelectric/recipes/blank_circuit_board_plate.json @@ -9,17 +9,17 @@ } ], "result": { - "item": "electricadvantage:blank_circuit_board", + "item": "baseelectric:blank_circuit_board", "count": 2 }, - "group": "electricadvantage:blank_circuit_board", + "group": "baseelectric:blank_circuit_board", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/copper" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/control_circuit.json b/src/main/resources/data/baseelectric/recipes/control_circuit.json similarity index 54% rename from src/main/resources/data/electricadvantage/recipes/control_circuit.json rename to src/main/resources/data/baseelectric/recipes/control_circuit.json index e7ed909..c5a2557 100644 --- a/src/main/resources/data/electricadvantage/recipes/control_circuit.json +++ b/src/main/resources/data/baseelectric/recipes/control_circuit.json @@ -2,7 +2,7 @@ "type": "minecraft:crafting_shapeless", "ingredients": [ { - "item": "electricadvantage:blank_circuit_board" + "item": "baseelectric:blank_circuit_board" }, { "tag": "forge:microchips" @@ -12,16 +12,16 @@ } ], "result": { - "item": "electricadvantage:control_circuit" + "item": "baseelectric:control_circuit" }, - "group": "electricadvantage:control_circuit", + "group": "baseelectric:control_circuit", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:microchips" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:solder" } ] diff --git a/src/main/resources/data/baseelectric/recipes/crushing_control_circuit.json b/src/main/resources/data/baseelectric/recipes/crushing_control_circuit.json new file mode 100644 index 0000000..2aba934 --- /dev/null +++ b/src/main/resources/data/baseelectric/recipes/crushing_control_circuit.json @@ -0,0 +1,20 @@ +{ + "type": "basemetals:crushing", + "ingredient": { + "item": "baseelectric:control_circuit" + }, + "result": { + "item": "baseelectric:integrated_circuit", + "count": 1 + }, + "conditions": [ + { + "type": "forge:mod_loaded", + "modid": "basemetals" + }, + { + "type": "baseelectric:recipe_mode", + "mode": "APOCALYPTIC" + } + ] +} diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_electric_furnace.json b/src/main/resources/data/baseelectric/recipes/crushing_electric_furnace.json similarity index 63% rename from src/main/resources/data/electricadvantage/recipes/crushing_electric_furnace.json rename to src/main/resources/data/baseelectric/recipes/crushing_electric_furnace.json index 14c925b..b29f0ee 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_electric_furnace.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_electric_furnace.json @@ -1,10 +1,10 @@ { "type": "basemetals:crushing", "ingredient": { - "item": "electricadvantage:electric_furnace" + "item": "baseelectric:electric_furnace" }, "result": { - "item": "electricadvantage:psu", + "item": "baseelectric:psu", "count": 1 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "APOCALYPTIC" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_lithium_ingot.json b/src/main/resources/data/baseelectric/recipes/crushing_lithium_ingot.json similarity index 75% rename from src/main/resources/data/electricadvantage/recipes/crushing_lithium_ingot.json rename to src/main/resources/data/baseelectric/recipes/crushing_lithium_ingot.json index c27ec25..eac6eff 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_lithium_ingot.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_lithium_ingot.json @@ -4,7 +4,7 @@ "tag": "forge:ingots/lithium" }, "result": { - "item": "electricadvantage:li_powder", + "item": "baseelectric:li_powder", "count": 1 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/lithium" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_lithium_ore.json b/src/main/resources/data/baseelectric/recipes/crushing_lithium_ore.json similarity index 75% rename from src/main/resources/data/electricadvantage/recipes/crushing_lithium_ore.json rename to src/main/resources/data/baseelectric/recipes/crushing_lithium_ore.json index f12e324..de3bfc9 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_lithium_ore.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_lithium_ore.json @@ -4,7 +4,7 @@ "tag": "forge:ores/lithium" }, "result": { - "item": "electricadvantage:li_powder", + "item": "baseelectric:li_powder", "count": 2 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ores/lithium" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_photovoltaic_generator.json b/src/main/resources/data/baseelectric/recipes/crushing_photovoltaic_generator.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/crushing_photovoltaic_generator.json rename to src/main/resources/data/baseelectric/recipes/crushing_photovoltaic_generator.json index eb3f0c0..3fd4852 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_photovoltaic_generator.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_photovoltaic_generator.json @@ -1,10 +1,10 @@ { "type": "basemetals:crushing", "ingredient": { - "item": "electricadvantage:photovoltaic_generator" + "item": "baseelectric:photovoltaic_generator" }, "result": { - "item": "electricadvantage:psu", + "item": "baseelectric:psu", "count": 1 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "APOCALYPTIC" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_psu.json b/src/main/resources/data/baseelectric/recipes/crushing_psu.json similarity index 63% rename from src/main/resources/data/electricadvantage/recipes/crushing_psu.json rename to src/main/resources/data/baseelectric/recipes/crushing_psu.json index af2d99b..289c1ed 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_psu.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_psu.json @@ -1,10 +1,10 @@ { "type": "basemetals:crushing", "ingredient": { - "item": "electricadvantage:psu" + "item": "baseelectric:psu" }, "result": { - "item": "electricadvantage:control_circuit", + "item": "baseelectric:control_circuit", "count": 1 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "APOCALYPTIC" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_steam_powered_generator.json b/src/main/resources/data/baseelectric/recipes/crushing_steam_powered_generator.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/crushing_steam_powered_generator.json rename to src/main/resources/data/baseelectric/recipes/crushing_steam_powered_generator.json index 8d18ed4..9f6db76 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_steam_powered_generator.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_steam_powered_generator.json @@ -1,10 +1,10 @@ { "type": "basemetals:crushing", "ingredient": { - "item": "electricadvantage:steam_powered_generator" + "item": "baseelectric:steam_powered_generator" }, "result": { - "item": "electricadvantage:psu", + "item": "baseelectric:psu", "count": 1 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "APOCALYPTIC" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_sulfur_ore.json b/src/main/resources/data/baseelectric/recipes/crushing_sulfur_ore.json similarity index 74% rename from src/main/resources/data/electricadvantage/recipes/crushing_sulfur_ore.json rename to src/main/resources/data/baseelectric/recipes/crushing_sulfur_ore.json index 23ee408..6828fdb 100644 --- a/src/main/resources/data/electricadvantage/recipes/crushing_sulfur_ore.json +++ b/src/main/resources/data/baseelectric/recipes/crushing_sulfur_ore.json @@ -4,7 +4,7 @@ "tag": "forge:ores/sulfur" }, "result": { - "item": "electricadvantage:sulfur_powder", + "item": "baseelectric:sulfur_powder", "count": 4 }, "conditions": [ @@ -13,7 +13,7 @@ "modid": "basemetals" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ores/sulfur" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_battery_array.json b/src/main/resources/data/baseelectric/recipes/electric_battery_array.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/electric_battery_array.json rename to src/main/resources/data/baseelectric/recipes/electric_battery_array.json index d95f596..c7f5733 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_battery_array.json +++ b/src/main/resources/data/baseelectric/recipes/electric_battery_array.json @@ -19,20 +19,20 @@ } }, "result": { - "item": "electricadvantage:electric_battery_array" + "item": "baseelectric:electric_battery_array" }, - "group": "electricadvantage:electric_battery_array", + "group": "baseelectric:electric_battery_array", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_ingot.json b/src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_ingot.json similarity index 65% rename from src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_ingot.json rename to src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_ingot.json index af2b75d..d45b00b 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_ingot.json +++ b/src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_ingot.json @@ -14,17 +14,17 @@ } }, "result": { - "item": "electricadvantage:electric_conduit", + "item": "baseelectric:electric_conduit", "count": 6 }, - "group": "electricadvantage:electric_conduit", + "group": "baseelectric:electric_conduit", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/copper" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_rod.json b/src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_rod.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_rod.json rename to src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_rod.json index c8a341f..45953bf 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_conduit_plastic_rod.json +++ b/src/main/resources/data/baseelectric/recipes/electric_conduit_plastic_rod.json @@ -13,16 +13,16 @@ } }, "result": { - "item": "electricadvantage:electric_conduit" + "item": "baseelectric:electric_conduit" }, - "group": "electricadvantage:electric_conduit", + "group": "baseelectric:electric_conduit", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:rods/copper" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_ingot.json b/src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_ingot.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_ingot.json rename to src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_ingot.json index fdb23cd..c8d6d8a 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_ingot.json +++ b/src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_ingot.json @@ -14,17 +14,17 @@ } }, "result": { - "item": "electricadvantage:electric_conduit", + "item": "baseelectric:electric_conduit", "count": 6 }, - "group": "electricadvantage:electric_conduit", + "group": "baseelectric:electric_conduit", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/copper" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:rubber" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_rod.json b/src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_rod.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_rod.json rename to src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_rod.json index c6eab54..a516ae6 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_conduit_rubber_rod.json +++ b/src/main/resources/data/baseelectric/recipes/electric_conduit_rubber_rod.json @@ -13,16 +13,16 @@ } }, "result": { - "item": "electricadvantage:electric_conduit" + "item": "baseelectric:electric_conduit" }, - "group": "electricadvantage:electric_conduit", + "group": "baseelectric:electric_conduit", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:rods/copper" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:rubber" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_crusher.json b/src/main/resources/data/baseelectric/recipes/electric_crusher.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/electric_crusher.json rename to src/main/resources/data/baseelectric/recipes/electric_crusher.json index 6f78f68..66c42e2 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_crusher.json +++ b/src/main/resources/data/baseelectric/recipes/electric_crusher.json @@ -22,28 +22,28 @@ } }, "result": { - "item": "electricadvantage:electric_crusher" + "item": "baseelectric:electric_crusher" }, - "group": "electricadvantage:electric_crusher", + "group": "baseelectric:electric_crusher", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:gems/diamond" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:sprockets" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_drill.json b/src/main/resources/data/baseelectric/recipes/electric_drill.json similarity index 67% rename from src/main/resources/data/electricadvantage/recipes/electric_drill.json rename to src/main/resources/data/baseelectric/recipes/electric_drill.json index 0d5b52e..1a74a51 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_drill.json +++ b/src/main/resources/data/baseelectric/recipes/electric_drill.json @@ -19,24 +19,24 @@ } }, "result": { - "item": "electricadvantage:electric_drill" + "item": "baseelectric:electric_drill" }, - "group": "electricadvantage:electric_drill", + "group": "baseelectric:electric_drill", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:storage_blocks/diamond" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_fabricator.json b/src/main/resources/data/baseelectric/recipes/electric_fabricator.json similarity index 67% rename from src/main/resources/data/electricadvantage/recipes/electric_fabricator.json rename to src/main/resources/data/baseelectric/recipes/electric_fabricator.json index 896b387..081ff9d 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_fabricator.json +++ b/src/main/resources/data/baseelectric/recipes/electric_fabricator.json @@ -19,20 +19,20 @@ } }, "result": { - "item": "electricadvantage:electric_fabricator" + "item": "baseelectric:electric_fabricator" }, - "group": "electricadvantage:electric_fabricator", + "group": "baseelectric:electric_fabricator", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_furnace.json b/src/main/resources/data/baseelectric/recipes/electric_furnace.json similarity index 68% rename from src/main/resources/data/electricadvantage/recipes/electric_furnace.json rename to src/main/resources/data/baseelectric/recipes/electric_furnace.json index f78493a..2ddcecd 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_furnace.json +++ b/src/main/resources/data/baseelectric/recipes/electric_furnace.json @@ -14,12 +14,12 @@ } }, "result": { - "item": "electricadvantage:electric_furnace" + "item": "baseelectric:electric_furnace" }, - "group": "electricadvantage:electric_furnace", + "group": "baseelectric:electric_furnace", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_oven.json b/src/main/resources/data/baseelectric/recipes/electric_oven.json similarity index 68% rename from src/main/resources/data/electricadvantage/recipes/electric_oven.json rename to src/main/resources/data/baseelectric/recipes/electric_oven.json index cef55cd..6d06a39 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_oven.json +++ b/src/main/resources/data/baseelectric/recipes/electric_oven.json @@ -22,24 +22,24 @@ } }, "result": { - "item": "electricadvantage:electric_oven" + "item": "baseelectric:electric_oven" }, - "group": "electricadvantage:electric_oven", + "group": "baseelectric:electric_oven", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:glass_panes" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_pump.json b/src/main/resources/data/baseelectric/recipes/electric_pump.json similarity index 70% rename from src/main/resources/data/electricadvantage/recipes/electric_pump.json rename to src/main/resources/data/baseelectric/recipes/electric_pump.json index b2d1750..a135d42 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_pump.json +++ b/src/main/resources/data/baseelectric/recipes/electric_pump.json @@ -22,20 +22,20 @@ } }, "result": { - "item": "electricadvantage:electric_pump" + "item": "baseelectric:electric_pump" }, - "group": "electricadvantage:electric_pump", + "group": "baseelectric:electric_pump", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_still.json b/src/main/resources/data/baseelectric/recipes/electric_still.json similarity index 70% rename from src/main/resources/data/electricadvantage/recipes/electric_still.json rename to src/main/resources/data/baseelectric/recipes/electric_still.json index 09ee3c3..85b8c32 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_still.json +++ b/src/main/resources/data/baseelectric/recipes/electric_still.json @@ -22,20 +22,20 @@ } }, "result": { - "item": "electricadvantage:electric_still" + "item": "baseelectric:electric_still" }, - "group": "electricadvantage:electric_still", + "group": "baseelectric:electric_still", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/electric_switch.json b/src/main/resources/data/baseelectric/recipes/electric_switch.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/electric_switch.json rename to src/main/resources/data/baseelectric/recipes/electric_switch.json index 698048a..85a97fe 100644 --- a/src/main/resources/data/electricadvantage/recipes/electric_switch.json +++ b/src/main/resources/data/baseelectric/recipes/electric_switch.json @@ -16,16 +16,16 @@ } }, "result": { - "item": "electricadvantage:electric_switch" + "item": "baseelectric:electric_switch" }, - "group": "electricadvantage:electric_switch", + "group": "baseelectric:electric_switch", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ] diff --git a/src/main/resources/data/baseelectric/recipes/electric_track.json b/src/main/resources/data/baseelectric/recipes/electric_track.json new file mode 100644 index 0000000..1a42bfb --- /dev/null +++ b/src/main/resources/data/baseelectric/recipes/electric_track.json @@ -0,0 +1,15 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "item": "baseelectric:electric_conduit" + }, + { + "item": "basepower:steel_frame" + } + ], + "result": { + "item": "baseelectric:electric_track" + }, + "group": "baseelectric:electric_track" +} diff --git a/src/main/resources/data/electricadvantage/recipes/growth_chamber.json b/src/main/resources/data/baseelectric/recipes/growth_chamber.json similarity index 68% rename from src/main/resources/data/electricadvantage/recipes/growth_chamber.json rename to src/main/resources/data/baseelectric/recipes/growth_chamber.json index 1171b69..1fdac8c 100644 --- a/src/main/resources/data/electricadvantage/recipes/growth_chamber.json +++ b/src/main/resources/data/baseelectric/recipes/growth_chamber.json @@ -22,24 +22,24 @@ } }, "result": { - "item": "electricadvantage:growth_chamber" + "item": "baseelectric:growth_chamber" }, - "group": "electricadvantage:growth_chamber", + "group": "baseelectric:growth_chamber", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:microchips" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/growth_chamber_controller.json b/src/main/resources/data/baseelectric/recipes/growth_chamber_controller.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/growth_chamber_controller.json rename to src/main/resources/data/baseelectric/recipes/growth_chamber_controller.json index e38dcdd..ea97d35 100644 --- a/src/main/resources/data/electricadvantage/recipes/growth_chamber_controller.json +++ b/src/main/resources/data/baseelectric/recipes/growth_chamber_controller.json @@ -22,24 +22,24 @@ } }, "result": { - "item": "electricadvantage:growth_chamber_controller" + "item": "baseelectric:growth_chamber_controller" }, - "group": "electricadvantage:growth_chamber_controller", + "group": "baseelectric:growth_chamber_controller", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:circuit_boards" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/hydroelectric_generator.json b/src/main/resources/data/baseelectric/recipes/hydroelectric_generator.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/hydroelectric_generator.json rename to src/main/resources/data/baseelectric/recipes/hydroelectric_generator.json index 992b730..ab2e969 100644 --- a/src/main/resources/data/electricadvantage/recipes/hydroelectric_generator.json +++ b/src/main/resources/data/baseelectric/recipes/hydroelectric_generator.json @@ -22,24 +22,24 @@ } }, "result": { - "item": "electricadvantage:hydroelectric_generator" + "item": "baseelectric:hydroelectric_generator" }, - "group": "electricadvantage:hydroelectric_generator", + "group": "baseelectric:hydroelectric_generator", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:sprockets" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_normal.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_normal.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_normal.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_normal.json index 793b6a7..cd1a4d9 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_normal.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_normal.json @@ -13,22 +13,22 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/copper" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_tech.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_tech.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_tech.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_tech.json index 3404793..228c158 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_copper_tech.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_copper_tech.json @@ -20,30 +20,30 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "TECH_PROGRESSION" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/redstone" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/copper" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_normal.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_normal.json similarity index 61% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_normal.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_normal.json index 9b1d5b0..f933686 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_normal.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_normal.json @@ -13,22 +13,22 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/gold" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_tech.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_tech.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_tech.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_tech.json index 355a44b..4918b2d 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_gold_tech.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_gold_tech.json @@ -20,30 +20,30 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "TECH_PROGRESSION" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/redstone" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/gold" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_normal.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_normal.json similarity index 61% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_normal.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_normal.json index a3d0c3d..b278159 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_normal.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_normal.json @@ -13,22 +13,22 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/tin" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_tech.json b/src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_tech.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_tech.json rename to src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_tech.json index a33d39e..62da83a 100644 --- a/src/main/resources/data/electricadvantage/recipes/integrated_circuit_tin_tech.json +++ b/src/main/resources/data/baseelectric/recipes/integrated_circuit_tin_tech.json @@ -20,30 +20,30 @@ } }, "result": { - "item": "electricadvantage:integrated_circuit", + "item": "baseelectric:integrated_circuit", "count": 3 }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "TECH_PROGRESSION" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/redstone" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/tin" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ], - "group": "electricadvantage:integrated_circuit" + "group": "baseelectric:integrated_circuit" } diff --git a/src/main/resources/data/electricadvantage/recipes/laser_turret_diamond_emerald.json b/src/main/resources/data/baseelectric/recipes/laser_turret_diamond_emerald.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/laser_turret_diamond_emerald.json rename to src/main/resources/data/baseelectric/recipes/laser_turret_diamond_emerald.json index 73f7d30..c577c55 100644 --- a/src/main/resources/data/electricadvantage/recipes/laser_turret_diamond_emerald.json +++ b/src/main/resources/data/baseelectric/recipes/laser_turret_diamond_emerald.json @@ -22,28 +22,28 @@ } }, "result": { - "item": "electricadvantage:laser_turret" + "item": "baseelectric:laser_turret" }, - "group": "electricadvantage:laser_turret", + "group": "baseelectric:laser_turret", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:gems/diamond" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:gems/emerald" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/laser_turret_emerald_diamond.json b/src/main/resources/data/baseelectric/recipes/laser_turret_emerald_diamond.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/laser_turret_emerald_diamond.json rename to src/main/resources/data/baseelectric/recipes/laser_turret_emerald_diamond.json index 167f6b3..2a4da72 100644 --- a/src/main/resources/data/electricadvantage/recipes/laser_turret_emerald_diamond.json +++ b/src/main/resources/data/baseelectric/recipes/laser_turret_emerald_diamond.json @@ -22,28 +22,28 @@ } }, "result": { - "item": "electricadvantage:laser_turret" + "item": "baseelectric:laser_turret" }, - "group": "electricadvantage:laser_turret", + "group": "baseelectric:laser_turret", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:gems/diamond" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:gems/emerald" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/lead_acid_battery_dust_sulfur.json b/src/main/resources/data/baseelectric/recipes/lead_acid_battery_dust_sulfur.json similarity index 67% rename from src/main/resources/data/electricadvantage/recipes/lead_acid_battery_dust_sulfur.json rename to src/main/resources/data/baseelectric/recipes/lead_acid_battery_dust_sulfur.json index a9b6e05..c1afd53 100644 --- a/src/main/resources/data/electricadvantage/recipes/lead_acid_battery_dust_sulfur.json +++ b/src/main/resources/data/baseelectric/recipes/lead_acid_battery_dust_sulfur.json @@ -20,20 +20,20 @@ } }, "result": { - "item": "electricadvantage:lead_acid_battery" + "item": "baseelectric:lead_acid_battery" }, - "group": "electricadvantage:lead_acid_battery", + "group": "baseelectric:lead_acid_battery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/sulfur" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/lead" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/lead_acid_battery_sulfur.json b/src/main/resources/data/baseelectric/recipes/lead_acid_battery_sulfur.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/lead_acid_battery_sulfur.json rename to src/main/resources/data/baseelectric/recipes/lead_acid_battery_sulfur.json index 830be4d..2924596 100644 --- a/src/main/resources/data/electricadvantage/recipes/lead_acid_battery_sulfur.json +++ b/src/main/resources/data/baseelectric/recipes/lead_acid_battery_sulfur.json @@ -20,20 +20,20 @@ } }, "result": { - "item": "electricadvantage:lead_acid_battery" + "item": "baseelectric:lead_acid_battery" }, - "group": "electricadvantage:lead_acid_battery", + "group": "baseelectric:lead_acid_battery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/lead" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:sulfur" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/led_bar.json b/src/main/resources/data/baseelectric/recipes/led_bar.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/led_bar.json rename to src/main/resources/data/baseelectric/recipes/led_bar.json index 62940d6..1f38a0d 100644 --- a/src/main/resources/data/electricadvantage/recipes/led_bar.json +++ b/src/main/resources/data/baseelectric/recipes/led_bar.json @@ -17,21 +17,21 @@ } }, "result": { - "item": "electricadvantage:led_bar", + "item": "baseelectric:led_bar", "count": 3 }, - "group": "electricadvantage:led_bar", + "group": "baseelectric:led_bar", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:glass_panes" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:microchips" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/lithium_battery.json b/src/main/resources/data/baseelectric/recipes/lithium_battery.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/lithium_battery.json rename to src/main/resources/data/baseelectric/recipes/lithium_battery.json index f6fc936..105bb57 100644 --- a/src/main/resources/data/electricadvantage/recipes/lithium_battery.json +++ b/src/main/resources/data/baseelectric/recipes/lithium_battery.json @@ -20,24 +20,24 @@ } }, "result": { - "item": "electricadvantage:lithium_battery" + "item": "baseelectric:lithium_battery" }, - "group": "electricadvantage:lithium_battery", + "group": "baseelectric:lithium_battery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/carbon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/redstone" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/lithium" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_nuggets.json b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_nuggets.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_nuggets.json rename to src/main/resources/data/baseelectric/recipes/lithium_ingot_from_nuggets.json index 1c63c54..4463c7e 100644 --- a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_nuggets.json +++ b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_nuggets.json @@ -11,13 +11,13 @@ } }, "result": { - "item": "electricadvantage:li_ingot" + "item": "baseelectric:li_ingot" }, "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:nuggets/lithium" } ], - "group": "electricadvantage:li_ingot" + "group": "baseelectric:li_ingot" } diff --git a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_ore.json b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_ore.json similarity index 50% rename from src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_ore.json rename to src/main/resources/data/baseelectric/recipes/lithium_ingot_from_ore.json index 6875bf2..e90ef36 100644 --- a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_ore.json +++ b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_ore.json @@ -1,11 +1,11 @@ { "type": "minecraft:smelting", "ingredient": { - "item": "electricadvantage:li_ore" + "item": "baseelectric:li_ore" }, - "result": "electricadvantage:li_ingot", + "result": "baseelectric:li_ingot", "experience": 0.5, "cookingtime": 200, "conditions": [], - "group": "electricadvantage:li_ingot" + "group": "baseelectric:li_ingot" } diff --git a/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_powder.json b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_powder.json new file mode 100644 index 0000000..c5547c7 --- /dev/null +++ b/src/main/resources/data/baseelectric/recipes/lithium_ingot_from_powder.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "baseelectric:li_powder" + }, + "result": "baseelectric:li_ingot", + "experience": 0.5, + "cookingtime": 200, + "conditions": [], + "group": "baseelectric:li_ingot" +} diff --git a/src/main/resources/data/electricadvantage/recipes/lithium_nuggets.json b/src/main/resources/data/baseelectric/recipes/lithium_nuggets.json similarity index 62% rename from src/main/resources/data/electricadvantage/recipes/lithium_nuggets.json rename to src/main/resources/data/baseelectric/recipes/lithium_nuggets.json index cb8b1ff..67522fd 100644 --- a/src/main/resources/data/electricadvantage/recipes/lithium_nuggets.json +++ b/src/main/resources/data/baseelectric/recipes/lithium_nuggets.json @@ -6,13 +6,13 @@ } ], "result": { - "item": "electricadvantage:li_nugget", + "item": "baseelectric:li_nugget", "count": 9 }, - "group": "electricadvantage:li_nugget", + "group": "baseelectric:li_nugget", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/lithium" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/nickel_hydride_battery.json b/src/main/resources/data/baseelectric/recipes/nickel_hydride_battery.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/nickel_hydride_battery.json rename to src/main/resources/data/baseelectric/recipes/nickel_hydride_battery.json index 16a7abd..3808db2 100644 --- a/src/main/resources/data/electricadvantage/recipes/nickel_hydride_battery.json +++ b/src/main/resources/data/baseelectric/recipes/nickel_hydride_battery.json @@ -20,20 +20,20 @@ } }, "result": { - "item": "electricadvantage:nickel_hydride_battery" + "item": "baseelectric:nickel_hydride_battery" }, - "group": "electricadvantage:nickel_hydride_battery", + "group": "baseelectric:nickel_hydride_battery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/redstone" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/nickel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plastic" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/photovoltaic_generator.json b/src/main/resources/data/baseelectric/recipes/photovoltaic_generator.json similarity index 63% rename from src/main/resources/data/electricadvantage/recipes/photovoltaic_generator.json rename to src/main/resources/data/baseelectric/recipes/photovoltaic_generator.json index 4d30454..85a5f16 100644 --- a/src/main/resources/data/electricadvantage/recipes/photovoltaic_generator.json +++ b/src/main/resources/data/baseelectric/recipes/photovoltaic_generator.json @@ -20,29 +20,29 @@ } }, "result": { - "item": "electricadvantage:photovoltaic_generator" + "item": "baseelectric:photovoltaic_generator" }, "conditions": [ { - "type": "electricadvantage:not_recipe_mode", + "type": "baseelectric:not_recipe_mode", "mode": "APOCALYPTIC" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:glass_panes" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/silicon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ], - "group": "electricadvantage:photovoltaic_generator" + "group": "baseelectric:photovoltaic_generator" } diff --git a/src/main/resources/data/electricadvantage/recipes/plastic_refinery.json b/src/main/resources/data/baseelectric/recipes/plastic_refinery.json similarity index 67% rename from src/main/resources/data/electricadvantage/recipes/plastic_refinery.json rename to src/main/resources/data/baseelectric/recipes/plastic_refinery.json index d6dc1e6..31867b7 100644 --- a/src/main/resources/data/electricadvantage/recipes/plastic_refinery.json +++ b/src/main/resources/data/baseelectric/recipes/plastic_refinery.json @@ -22,24 +22,24 @@ } }, "result": { - "item": "electricadvantage:plastic_refinery" + "item": "baseelectric:plastic_refinery" }, - "group": "electricadvantage:plastic_refinery", + "group": "baseelectric:plastic_refinery", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:sprockets" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_iron_normal.json b/src/main/resources/data/baseelectric/recipes/power_supply_unit_iron_normal.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/power_supply_unit_iron_normal.json rename to src/main/resources/data/baseelectric/recipes/power_supply_unit_iron_normal.json index 5ee3c2e..5d0c8bf 100644 --- a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_iron_normal.json +++ b/src/main/resources/data/baseelectric/recipes/power_supply_unit_iron_normal.json @@ -16,25 +16,25 @@ } }, "result": { - "item": "electricadvantage:psu" + "item": "baseelectric:psu" }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:circuit_boards" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/iron" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ], - "group": "electricadvantage:psu" + "group": "baseelectric:psu" } diff --git a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_apocalyptic.json b/src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_apocalyptic.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_apocalyptic.json rename to src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_apocalyptic.json index 43b04e9..ce3a783 100644 --- a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_apocalyptic.json +++ b/src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_apocalyptic.json @@ -16,25 +16,25 @@ } }, "result": { - "item": "electricadvantage:psu" + "item": "baseelectric:psu" }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "APOCALYPTIC" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:circuit_boards" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ], - "group": "electricadvantage:psu" + "group": "baseelectric:psu" } diff --git a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_tech.json b/src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_tech.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_tech.json rename to src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_tech.json index fabb5ac..a6e6a1c 100644 --- a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_plate_steel_tech.json +++ b/src/main/resources/data/baseelectric/recipes/power_supply_unit_plate_steel_tech.json @@ -16,25 +16,25 @@ } }, "result": { - "item": "electricadvantage:psu" + "item": "baseelectric:psu" }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "TECH_PROGRESSION" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:circuit_boards" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ], - "group": "electricadvantage:psu" + "group": "baseelectric:psu" } diff --git a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_steel_normal.json b/src/main/resources/data/baseelectric/recipes/power_supply_unit_steel_normal.json similarity index 64% rename from src/main/resources/data/electricadvantage/recipes/power_supply_unit_steel_normal.json rename to src/main/resources/data/baseelectric/recipes/power_supply_unit_steel_normal.json index b7a49fd..b8901a5 100644 --- a/src/main/resources/data/electricadvantage/recipes/power_supply_unit_steel_normal.json +++ b/src/main/resources/data/baseelectric/recipes/power_supply_unit_steel_normal.json @@ -16,25 +16,25 @@ } }, "result": { - "item": "electricadvantage:psu" + "item": "baseelectric:psu" }, "conditions": [ { - "type": "electricadvantage:recipe_mode", + "type": "baseelectric:recipe_mode", "mode": "NORMAL" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:circuit_boards" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:ingots/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:wires" } ], - "group": "electricadvantage:psu" + "group": "baseelectric:psu" } diff --git a/src/main/resources/data/electricadvantage/recipes/silicon_blend.json b/src/main/resources/data/baseelectric/recipes/silicon_blend.json similarity index 60% rename from src/main/resources/data/electricadvantage/recipes/silicon_blend.json rename to src/main/resources/data/baseelectric/recipes/silicon_blend.json index 2cf242e..820bd69 100644 --- a/src/main/resources/data/electricadvantage/recipes/silicon_blend.json +++ b/src/main/resources/data/baseelectric/recipes/silicon_blend.json @@ -9,16 +9,16 @@ } ], "result": { - "item": "electricadvantage:silicon_mix" + "item": "baseelectric:silicon_mix" }, - "group": "electricadvantage:silicon_mix", + "group": "baseelectric:silicon_mix", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/carbon" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:sand" } ] diff --git a/src/main/resources/data/baseelectric/recipes/silicon_ingot_from_blend.json b/src/main/resources/data/baseelectric/recipes/silicon_ingot_from_blend.json new file mode 100644 index 0000000..d843ab4 --- /dev/null +++ b/src/main/resources/data/baseelectric/recipes/silicon_ingot_from_blend.json @@ -0,0 +1,11 @@ +{ + "type": "minecraft:smelting", + "ingredient": { + "item": "baseelectric:silicon_mix" + }, + "result": "baseelectric:silicon_ingot", + "experience": 0.5, + "cookingtime": 200, + "conditions": [], + "group": "baseelectric:silicon_ingot" +} diff --git a/src/main/resources/data/electricadvantage/recipes/solder_blend_tin_lead.json b/src/main/resources/data/baseelectric/recipes/solder_blend_tin_lead.json similarity index 65% rename from src/main/resources/data/electricadvantage/recipes/solder_blend_tin_lead.json rename to src/main/resources/data/baseelectric/recipes/solder_blend_tin_lead.json index 06ece9d..4c808f7 100644 --- a/src/main/resources/data/electricadvantage/recipes/solder_blend_tin_lead.json +++ b/src/main/resources/data/baseelectric/recipes/solder_blend_tin_lead.json @@ -12,17 +12,17 @@ } ], "result": { - "item": "electricadvantage:solder_mix", + "item": "baseelectric:solder_mix", "count": 3 }, - "group": "electricadvantage:solder_mix", + "group": "baseelectric:solder_mix", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/lead" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/tin" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/solder_blend_tin_silver.json b/src/main/resources/data/baseelectric/recipes/solder_blend_tin_silver.json similarity index 66% rename from src/main/resources/data/electricadvantage/recipes/solder_blend_tin_silver.json rename to src/main/resources/data/baseelectric/recipes/solder_blend_tin_silver.json index d82bd9c..c9813a0 100644 --- a/src/main/resources/data/electricadvantage/recipes/solder_blend_tin_silver.json +++ b/src/main/resources/data/baseelectric/recipes/solder_blend_tin_silver.json @@ -12,17 +12,17 @@ } ], "result": { - "item": "electricadvantage:solder_mix", + "item": "baseelectric:solder_mix", "count": 3 }, - "group": "electricadvantage:solder_mix", + "group": "baseelectric:solder_mix", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/silver" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:dusts/tin" } ] diff --git a/src/main/resources/data/electricadvantage/recipes/solder_from_blend.json b/src/main/resources/data/baseelectric/recipes/solder_from_blend.json similarity index 50% rename from src/main/resources/data/electricadvantage/recipes/solder_from_blend.json rename to src/main/resources/data/baseelectric/recipes/solder_from_blend.json index 2ed4010..640976f 100644 --- a/src/main/resources/data/electricadvantage/recipes/solder_from_blend.json +++ b/src/main/resources/data/baseelectric/recipes/solder_from_blend.json @@ -1,11 +1,11 @@ { "type": "minecraft:smelting", "ingredient": { - "item": "electricadvantage:solder_mix" + "item": "baseelectric:solder_mix" }, - "result": "electricadvantage:solder", + "result": "baseelectric:solder", "experience": 0.5, "cookingtime": 200, "conditions": [], - "group": "electricadvantage:solder" + "group": "baseelectric:solder" } diff --git a/src/main/resources/data/electricadvantage/recipes/steam_powered_generator.json b/src/main/resources/data/baseelectric/recipes/steam_powered_generator.json similarity index 65% rename from src/main/resources/data/electricadvantage/recipes/steam_powered_generator.json rename to src/main/resources/data/baseelectric/recipes/steam_powered_generator.json index 77050c1..95d1e72 100644 --- a/src/main/resources/data/electricadvantage/recipes/steam_powered_generator.json +++ b/src/main/resources/data/baseelectric/recipes/steam_powered_generator.json @@ -22,28 +22,28 @@ } }, "result": { - "item": "electricadvantage:steam_powered_generator" + "item": "baseelectric:steam_powered_generator" }, - "group": "electricadvantage:steam_powered_generator", + "group": "baseelectric:steam_powered_generator", "conditions": [ { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:conduits/steam" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:frames/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:governors" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:plates/steel" }, { - "type": "poweradvantage:tag_not_empty", + "type": "basepower:tag_not_empty", "tag": "forge:power_supply_units" } ] diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_battery_array.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_battery_array.json deleted file mode 100644 index 612335d..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_battery_array.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:electric_battery_array" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_switch.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_switch.json deleted file mode 100644 index efe2f05..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_switch.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:electric_switch" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_track.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_track.json deleted file mode 100644 index 328b54e..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/electric_track.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:electric_track" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber.json deleted file mode 100644 index b9e4203..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:growth_chamber" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber_controller.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber_controller.json deleted file mode 100644 index 72c25f2..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/growth_chamber_controller.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:growth_chamber_controller" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/hydroelectric_generator.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/hydroelectric_generator.json deleted file mode 100644 index 76ef045..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/hydroelectric_generator.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:hydroelectric_generator" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret_evil.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret_evil.json deleted file mode 100644 index 9d103f7..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/laser_turret_evil.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:laser_turret_evil" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/photovoltaic_generator.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/photovoltaic_generator.json deleted file mode 100644 index 25732f9..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/photovoltaic_generator.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:photovoltaic_generator" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/plastic_refinery.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/plastic_refinery.json deleted file mode 100644 index ed71f92..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/plastic_refinery.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:plastic_refinery" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/loot_tables/blocks/steam_powered_generator.json b/src/main/resources/data/electricadvantage/loot_tables/blocks/steam_powered_generator.json deleted file mode 100644 index 4df7e1f..0000000 --- a/src/main/resources/data/electricadvantage/loot_tables/blocks/steam_powered_generator.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "minecraft:block", - "pools": [ - { - "rolls": 1, - "entries": [ - { - "type": "minecraft:item", - "name": "electricadvantage:steam_powered_generator" - } - ], - "conditions": [ - { - "condition": "minecraft:survives_explosion" - } - ] - } - ] -} diff --git a/src/main/resources/data/electricadvantage/recipes/crushing_control_circuit.json b/src/main/resources/data/electricadvantage/recipes/crushing_control_circuit.json deleted file mode 100644 index 76772ac..0000000 --- a/src/main/resources/data/electricadvantage/recipes/crushing_control_circuit.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "basemetals:crushing", - "ingredient": { - "item": "electricadvantage:control_circuit" - }, - "result": { - "item": "electricadvantage:integrated_circuit", - "count": 1 - }, - "conditions": [ - { - "type": "forge:mod_loaded", - "modid": "basemetals" - }, - { - "type": "electricadvantage:recipe_mode", - "mode": "APOCALYPTIC" - } - ] -} diff --git a/src/main/resources/data/electricadvantage/recipes/electric_track.json b/src/main/resources/data/electricadvantage/recipes/electric_track.json deleted file mode 100644 index 00a93d0..0000000 --- a/src/main/resources/data/electricadvantage/recipes/electric_track.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "ingredients": [ - { - "item": "electricadvantage:electric_conduit" - }, - { - "item": "poweradvantage:steel_frame" - } - ], - "result": { - "item": "electricadvantage:electric_track" - }, - "group": "electricadvantage:electric_track" -} diff --git a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_powder.json b/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_powder.json deleted file mode 100644 index b6c13ea..0000000 --- a/src/main/resources/data/electricadvantage/recipes/lithium_ingot_from_powder.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "minecraft:smelting", - "ingredient": { - "item": "electricadvantage:li_powder" - }, - "result": "electricadvantage:li_ingot", - "experience": 0.5, - "cookingtime": 200, - "conditions": [], - "group": "electricadvantage:li_ingot" -} diff --git a/src/main/resources/data/electricadvantage/recipes/silicon_ingot_from_blend.json b/src/main/resources/data/electricadvantage/recipes/silicon_ingot_from_blend.json deleted file mode 100644 index d0f1cf9..0000000 --- a/src/main/resources/data/electricadvantage/recipes/silicon_ingot_from_blend.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "minecraft:smelting", - "ingredient": { - "item": "electricadvantage:silicon_mix" - }, - "result": "electricadvantage:silicon_ingot", - "experience": 0.5, - "cookingtime": 200, - "conditions": [], - "group": "electricadvantage:silicon_ingot" -} diff --git a/src/main/resources/data/forge/tags/blocks/ores/lithium.json b/src/main/resources/data/forge/tags/blocks/ores/lithium.json index 796eb3c..2d0340c 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/lithium.json +++ b/src/main/resources/data/forge/tags/blocks/ores/lithium.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_ore"] + "values": ["baseelectric:li_ore"] } diff --git a/src/main/resources/data/forge/tags/blocks/ores/sulfur.json b/src/main/resources/data/forge/tags/blocks/ores/sulfur.json index 8be591e..359b663 100644 --- a/src/main/resources/data/forge/tags/blocks/ores/sulfur.json +++ b/src/main/resources/data/forge/tags/blocks/ores/sulfur.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:sulfur_ore"] + "values": ["baseelectric:sulfur_ore"] } diff --git a/src/main/resources/data/forge/tags/items/circuit_boards.json b/src/main/resources/data/forge/tags/items/circuit_boards.json index 6427b28..542fc8e 100644 --- a/src/main/resources/data/forge/tags/items/circuit_boards.json +++ b/src/main/resources/data/forge/tags/items/circuit_boards.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:control_circuit"] + "values": ["baseelectric:control_circuit"] } diff --git a/src/main/resources/data/forge/tags/items/dusts/lithium.json b/src/main/resources/data/forge/tags/items/dusts/lithium.json index 0bb2c09..31aa6e2 100644 --- a/src/main/resources/data/forge/tags/items/dusts/lithium.json +++ b/src/main/resources/data/forge/tags/items/dusts/lithium.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_powder"] + "values": ["baseelectric:li_powder"] } diff --git a/src/main/resources/data/forge/tags/items/dusts/sulfur.json b/src/main/resources/data/forge/tags/items/dusts/sulfur.json index 1f04541..1f9f8ae 100644 --- a/src/main/resources/data/forge/tags/items/dusts/sulfur.json +++ b/src/main/resources/data/forge/tags/items/dusts/sulfur.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:sulfur_powder"] + "values": ["baseelectric:sulfur_powder"] } diff --git a/src/main/resources/data/forge/tags/items/ingots/lithium.json b/src/main/resources/data/forge/tags/items/ingots/lithium.json index dcf9ae1..2beb8c7 100644 --- a/src/main/resources/data/forge/tags/items/ingots/lithium.json +++ b/src/main/resources/data/forge/tags/items/ingots/lithium.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_ingot"] + "values": ["baseelectric:li_ingot"] } diff --git a/src/main/resources/data/forge/tags/items/ingots/plastic.json b/src/main/resources/data/forge/tags/items/ingots/plastic.json index 037a076..02f4e68 100644 --- a/src/main/resources/data/forge/tags/items/ingots/plastic.json +++ b/src/main/resources/data/forge/tags/items/ingots/plastic.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:petrolplastic_ingot"] + "values": ["baseelectric:petrolplastic_ingot"] } diff --git a/src/main/resources/data/forge/tags/items/ingots/silicon.json b/src/main/resources/data/forge/tags/items/ingots/silicon.json index b1e560b..24411ee 100644 --- a/src/main/resources/data/forge/tags/items/ingots/silicon.json +++ b/src/main/resources/data/forge/tags/items/ingots/silicon.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:silicon_ingot"] + "values": ["baseelectric:silicon_ingot"] } diff --git a/src/main/resources/data/forge/tags/items/microchips.json b/src/main/resources/data/forge/tags/items/microchips.json index cd3cc2c..44a272c 100644 --- a/src/main/resources/data/forge/tags/items/microchips.json +++ b/src/main/resources/data/forge/tags/items/microchips.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:integrated_circuit"] + "values": ["baseelectric:integrated_circuit"] } diff --git a/src/main/resources/data/forge/tags/items/nuggets/lithium.json b/src/main/resources/data/forge/tags/items/nuggets/lithium.json index 3044471..7d1c44d 100644 --- a/src/main/resources/data/forge/tags/items/nuggets/lithium.json +++ b/src/main/resources/data/forge/tags/items/nuggets/lithium.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_nugget"] + "values": ["baseelectric:li_nugget"] } diff --git a/src/main/resources/data/forge/tags/items/ores/lithium.json b/src/main/resources/data/forge/tags/items/ores/lithium.json index 796eb3c..2d0340c 100644 --- a/src/main/resources/data/forge/tags/items/ores/lithium.json +++ b/src/main/resources/data/forge/tags/items/ores/lithium.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_ore"] + "values": ["baseelectric:li_ore"] } diff --git a/src/main/resources/data/forge/tags/items/ores/sulfur.json b/src/main/resources/data/forge/tags/items/ores/sulfur.json index 8be591e..359b663 100644 --- a/src/main/resources/data/forge/tags/items/ores/sulfur.json +++ b/src/main/resources/data/forge/tags/items/ores/sulfur.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:sulfur_ore"] + "values": ["baseelectric:sulfur_ore"] } diff --git a/src/main/resources/data/forge/tags/items/plastic.json b/src/main/resources/data/forge/tags/items/plastic.json index 037a076..02f4e68 100644 --- a/src/main/resources/data/forge/tags/items/plastic.json +++ b/src/main/resources/data/forge/tags/items/plastic.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:petrolplastic_ingot"] + "values": ["baseelectric:petrolplastic_ingot"] } diff --git a/src/main/resources/data/forge/tags/items/power_supply_units.json b/src/main/resources/data/forge/tags/items/power_supply_units.json index 69b2004..6b2175d 100644 --- a/src/main/resources/data/forge/tags/items/power_supply_units.json +++ b/src/main/resources/data/forge/tags/items/power_supply_units.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:psu"] + "values": ["baseelectric:psu"] } diff --git a/src/main/resources/data/forge/tags/items/solder.json b/src/main/resources/data/forge/tags/items/solder.json index 8abd047..c7e1e20 100644 --- a/src/main/resources/data/forge/tags/items/solder.json +++ b/src/main/resources/data/forge/tags/items/solder.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:solder"] + "values": ["baseelectric:solder"] } diff --git a/src/main/resources/data/forge/tags/items/sulfur.json b/src/main/resources/data/forge/tags/items/sulfur.json index 1f04541..1f9f8ae 100644 --- a/src/main/resources/data/forge/tags/items/sulfur.json +++ b/src/main/resources/data/forge/tags/items/sulfur.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:sulfur_powder"] + "values": ["baseelectric:sulfur_powder"] } diff --git a/src/main/resources/data/forge/tags/items/wires.json b/src/main/resources/data/forge/tags/items/wires.json index 1391f4f..8bd1a4b 100644 --- a/src/main/resources/data/forge/tags/items/wires.json +++ b/src/main/resources/data/forge/tags/items/wires.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:electric_conduit"] + "values": ["baseelectric:electric_conduit"] } diff --git a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json index 593c2df..a3d89d4 100644 --- a/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json +++ b/src/main/resources/data/minecraft/tags/blocks/mineable/pickaxe.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_ore", "electricadvantage:sulfur_ore"] + "values": ["baseelectric:li_ore", "baseelectric:sulfur_ore"] } diff --git a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json index 796eb3c..2d0340c 100644 --- a/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json +++ b/src/main/resources/data/minecraft/tags/blocks/needs_stone_tool.json @@ -1,4 +1,4 @@ { "replace": false, - "values": ["electricadvantage:li_ore"] + "values": ["baseelectric:li_ore"] } diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta index e18b05b..a1f06d6 100644 --- a/src/main/resources/pack.mcmeta +++ b/src/main/resources/pack.mcmeta @@ -1,6 +1,6 @@ { "pack":{ "pack_format":7, - "description":"Electric Advantage" + "description":"baseElectric" } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/blocks/NativeBlockContractTest.java similarity index 94% rename from src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/blocks/NativeBlockContractTest.java index f1dda51..b91499b 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/blocks/NativeBlockContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/blocks/NativeBlockContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; import cyano.poweradvantage.api.ConduitBlock; import cyano.poweradvantage.api.PowerConnectorContext; @@ -16,10 +16,10 @@ import net.minecraft.world.level.Level; import org.junit.BeforeClass; import org.junit.Test; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock; -import zone.moddev.mc.electricadvantage.machines.LaserTurretBlock; -import zone.moddev.mc.electricadvantage.machines.PhotovoltaicGeneratorBlock; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.baseelectric.machines.ElectricDrillBlock; +import zone.moddev.mc.baseelectric.machines.LaserTurretBlock; +import zone.moddev.mc.baseelectric.machines.PhotovoltaicGeneratorBlock; import static org.junit.Assert.*; public class NativeBlockContractTest { diff --git a/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/blocks/OreHarvestContractTest.java similarity index 96% rename from src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/blocks/OreHarvestContractTest.java index fccbf3f..e26d7d0 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/blocks/OreHarvestContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/blocks/OreHarvestContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.blocks; +package zone.moddev.mc.baseelectric.blocks; import com.mojang.authlib.GameProfile; import java.lang.reflect.Field; @@ -46,7 +46,7 @@ public class OreHarvestContractTest { @Test public void lithiumRetainsStonePickaxeMinimumThroughNativeHarvestChecks() throws Exception { BlockState lithium = new Ore(1).defaultBlockState(); - bindHarvestTags(lithium.getBlock(), "electricadvantage:li_ore"); + bindHarvestTags(lithium.getBlock(), "baseelectric:li_ore"); assertTrue(lithium.requiresCorrectToolForDrops()); assertTrue(lithium.is(BlockTags.MINEABLE_WITH_PICKAXE)); assertTrue(lithium.is(BlockTags.NEEDS_STONE_TOOL)); @@ -60,7 +60,7 @@ public class OreHarvestContractTest { @Test public void sulfurRetainsWoodenPickaxeMinimumThroughNativeHarvestChecks() throws Exception { BlockState sulfur = new Ore(new ItemStack(Items.GUNPOWDER), 0, 3).defaultBlockState(); - bindHarvestTags(sulfur.getBlock(), "electricadvantage:sulfur_ore"); + bindHarvestTags(sulfur.getBlock(), "baseelectric:sulfur_ore"); assertTrue(sulfur.requiresCorrectToolForDrops()); assertTrue(sulfur.is(BlockTags.MINEABLE_WITH_PICKAXE)); assertFalse(sulfur.is(BlockTags.NEEDS_STONE_TOOL)); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java b/src/test/java/zone/moddev/mc/baseelectric/entities/ElectricOperationalHydroturbineAnchorTest.java similarity index 95% rename from src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java rename to src/test/java/zone/moddev/mc/baseelectric/entities/ElectricOperationalHydroturbineAnchorTest.java index 93c52d5..514bf3f 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/entities/ElectricOperationalHydroturbineAnchorTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/entities/ElectricOperationalHydroturbineAnchorTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.entities; +package zone.moddev.mc.baseelectric.entities; import java.lang.reflect.Field; import java.util.Collections; @@ -76,12 +76,12 @@ private static ListTag motion(double x, double y, double z) { private static EntityType turbineType() { return EntityType.Builder.of(HydroturbineEntity::new, MobCategory.MISC) - .sized(1, 1).build("electricadvantage:test_anchored_turbine"); + .sized(1, 1).build("baseelectric:test_anchored_turbine"); } private static EntityType controlType() { return EntityType.Builder.of(ControlEntity::new, MobCategory.MISC) - .sized(1, 1).build("electricadvantage:test_native_motion_control"); + .sized(1, 1).build("baseelectric:test_native_motion_control"); } private static Level world() throws Exception { diff --git a/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java b/src/test/java/zone/moddev/mc/baseelectric/entities/HydroturbinePersistenceTest.java similarity index 89% rename from src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java rename to src/test/java/zone/moddev/mc/baseelectric/entities/HydroturbinePersistenceTest.java index 23f5b6e..0648f82 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/entities/HydroturbinePersistenceTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/entities/HydroturbinePersistenceTest.java @@ -1,9 +1,9 @@ -package zone.moddev.mc.electricadvantage.entities; +package zone.moddev.mc.baseelectric.entities; import java.lang.reflect.Field; import net.minecraft.nbt.CompoundTag; import net.minecraft.core.BlockPos; -import zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorTileEntity; +import zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorTileEntity; import org.junit.Test; import static org.junit.Assert.*; @@ -11,10 +11,10 @@ public class HydroturbinePersistenceTest { @org.junit.BeforeClass public static void bootstrap() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void generatorGuiOutputIsNormalizedWithoutChangingGenerationRate() { - HydroelectricGeneratorTileEntity active = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()) { + HydroelectricGeneratorTileEntity active = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorBlock().defaultBlockState()) { @Override public boolean isActive() { return true; } }; - HydroelectricGeneratorTileEntity inactive = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()) { + HydroelectricGeneratorTileEntity inactive = new HydroelectricGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorBlock().defaultBlockState()) { @Override public boolean isActive() { return false; } }; assertEquals(1F, active.getPowerOutput(), 0F); @@ -48,7 +48,7 @@ public class HydroturbinePersistenceTest { @Test public void savesAttachedGeneratorUsingTheSameLegacyCoordinateKey() throws Exception { HydroturbineEntity turbine = withoutWorld(); - HydroelectricGeneratorTileEntity generator = new HydroelectricGeneratorTileEntity(new BlockPos(31, 72, -18), new zone.moddev.mc.electricadvantage.machines.HydroelectricGeneratorBlock().defaultBlockState()); + HydroelectricGeneratorTileEntity generator = new HydroelectricGeneratorTileEntity(new BlockPos(31, 72, -18), new zone.moddev.mc.baseelectric.machines.HydroelectricGeneratorBlock().defaultBlockState()); turbine.parent = generator; CompoundTag saved = new CompoundTag(); turbine.addAdditionalSaveData(saved); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/graphics/RendererBufferContractTest.java similarity index 94% rename from src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/graphics/RendererBufferContractTest.java index 2ef2e63..0779fff 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/graphics/RendererBufferContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/graphics/RendererBufferContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.graphics; +package zone.moddev.mc.baseelectric.graphics; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; @@ -13,9 +13,9 @@ import net.minecraft.server.Bootstrap; import org.junit.BeforeClass; import org.junit.Test; -import zone.moddev.mc.electricadvantage.init.Power; -import zone.moddev.mc.electricadvantage.machines.ElectricDrillTileEntity; -import zone.moddev.mc.electricadvantage.machines.LaserTurretTileEntity; +import zone.moddev.mc.baseelectric.init.Power; +import zone.moddev.mc.baseelectric.machines.ElectricDrillTileEntity; +import zone.moddev.mc.baseelectric.machines.LaserTurretTileEntity; import cyano.poweradvantage.api.ConduitType; import cyano.poweradvantage.api.simple.TileEntitySimplePowerMachine; @@ -51,7 +51,7 @@ public class RendererBufferContractTest { } @Test public void drillRetainsSixDirectionsSixteenVerticesAndLegacyUvs() throws Exception { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); set(ElectricDrillTileEntity.class, drill, "laserLength", 5); LaserDrillRenderer renderer = new LaserDrillRenderer(null); for (Direction direction : Direction.values()) { @@ -84,7 +84,7 @@ public class RendererBufferContractTest { PoseStack matrices = new PoseStack(); PoseStack.Pose before = matrices.last(); RecordingBuffer buffer = new RecordingBuffer(); - new LaserDrillRenderer(null).render(new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()), 0, matrices, buffer, 0, 0); + new LaserDrillRenderer(null).render(new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()), 0, matrices, buffer, 0, 0); assertSame(before, matrices.last()); assertTrue(matrices.clear()); assertTrue(buffer.vertices.isEmpty()); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/gui/GUIHelperTest.java b/src/test/java/zone/moddev/mc/baseelectric/gui/GUIHelperTest.java similarity index 95% rename from src/test/java/zone/moddev/mc/electricadvantage/gui/GUIHelperTest.java rename to src/test/java/zone/moddev/mc/baseelectric/gui/GUIHelperTest.java index d575f97..a0f38ca 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/gui/GUIHelperTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/gui/GUIHelperTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.gui; +package zone.moddev.mc.baseelectric.gui; import org.junit.Test; import static org.junit.Assert.*; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGenTest.java b/src/test/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGenTest.java similarity index 81% rename from src/test/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGenTest.java rename to src/test/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGenTest.java index 7d2c7fe..ab029c8 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/init/OreSpawnWorldGenTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/init/OreSpawnWorldGenTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import static org.junit.Assert.assertEquals; @@ -27,9 +27,9 @@ private static void assertDefaults(boolean mineralogy, boolean baseMinerals, JsonObject root = OreSpawnWorldGen.createProvider(mineralogy, baseMinerals).toJson(); JsonObject ores = root.getAsJsonObject("ores"); assertEquals(sulfurEnabled, - ores.getAsJsonObject("electricadvantage:ore/sulfur").get("enabled").getAsBoolean()); + ores.getAsJsonObject("baseelectric:ore/sulfur").get("enabled").getAsBoolean()); assertEquals(lithiumEnabled, - ores.getAsJsonObject("electricadvantage:ore/lithium").get("enabled").getAsBoolean()); + ores.getAsJsonObject("baseelectric:ore/lithium").get("enabled").getAsBoolean()); assertEquals(2, ores.size()); } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java b/src/test/java/zone/moddev/mc/baseelectric/init/VillagesTest.java similarity index 97% rename from src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java rename to src/test/java/zone/moddev/mc/baseelectric/init/VillagesTest.java index 796027f..a789e6c 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/init/VillagesTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/init/VillagesTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.init; +package zone.moddev.mc.baseelectric.init; import java.util.Random; import net.minecraft.world.item.trading.MerchantOffer; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricDrillPersistenceTest.java similarity index 85% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricDrillPersistenceTest.java index fa0a4aa..006a3f6 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricDrillPersistenceTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricDrillPersistenceTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; @@ -18,14 +18,14 @@ public class ElectricDrillPersistenceTest { @BeforeClass public static void bootstrapNativeRegistries() { net.minecraft.SharedConstants.tryDetectVersion(); net.minecraft.server.Bootstrap.bootStrap(); } @Test public void retainsLegacyProgressUntilWorldIsAttached() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); drill.load(target(94)); drill.prepareDataFieldsForSync(); assertEquals(94, drill.getDataFieldArray()[1]); } @Test public void clearsPreviousProgressOnReadingAnUntargetedTile() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); drill.load(target(94)); drill.load(new CompoundTag()); drill.prepareDataFieldsForSync(); @@ -40,7 +40,7 @@ public class ElectricDrillPersistenceTest { for (int i = 0; i < 9; i++) states.add(state.copy()); source.put("TargetStates", states); for (int pass = 0; pass < 3; pass++) { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); drill.loadFrom(source); CompoundTag saved = new CompoundTag(); drill.saveTo(saved); @@ -50,7 +50,7 @@ public class ElectricDrillPersistenceTest { } @Test public void targetPlaneRemainsNineUniqueBlocksForEveryDrillDirection() throws Exception { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); Field facing = ElectricDrillTileEntity.class.getDeclaredField("facingCache"); facing.setAccessible(true); Method area = ElectricDrillTileEntity.class.getDeclaredMethod("getArea", BlockPos.class); @@ -72,7 +72,7 @@ public class ElectricDrillPersistenceTest { } @Test public void nativeDataFieldsRetainEnergyAndMiningProgress() { - ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricDrillBlock().defaultBlockState()); + ElectricDrillTileEntity drill = new ElectricDrillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricDrillBlock().defaultBlockState()); drill.load(target(94)); drill.setEnergy(416.0F, drill.getEnergyType()); drill.prepareDataFieldsForSync(); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalNativeDefectsTest.java similarity index 97% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalNativeDefectsTest.java index 61dac35..80fbcb0 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalNativeDefectsTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalNativeDefectsTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.fluid.FluidStack; import java.lang.reflect.Field; @@ -16,7 +16,7 @@ import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import static org.junit.Assert.*; @@ -89,7 +89,7 @@ public class ElectricOperationalNativeDefectsTest { } private static GrowthChamberControllerTileEntity controller() throws Exception { - GrowthChamberControllerTileEntity controller = new GrowthChamberControllerTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberControllerBlock().defaultBlockState()); + GrowthChamberControllerTileEntity controller = new GrowthChamberControllerTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.GrowthChamberControllerBlock().defaultBlockState()); controller.setSoil(1000); controller.getTank().setFluid(new FluidStack(Fluids.WATER, 1800)); Field redstone = GrowthChamberControllerTileEntity.class.getDeclaredField("redstone"); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalPumpPickupTest.java similarity index 98% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalPumpPickupTest.java index 6e4a034..eaabebc 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalPumpPickupTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalPumpPickupTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.fluid.FluidStack; import java.lang.reflect.Field; @@ -30,7 +30,7 @@ import net.minecraft.server.level.ServerLevel; import org.junit.BeforeClass; import org.junit.Test; -import zone.moddev.mc.electricadvantage.init.Power; +import zone.moddev.mc.baseelectric.init.Power; import static org.junit.Assert.*; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalRedstoneCacheTest.java similarity index 99% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalRedstoneCacheTest.java index 2ab560a..fe3a937 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalRedstoneCacheTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalRedstoneCacheTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.PoweredEntity; import java.lang.reflect.Field; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalSoundBroadcastTest.java similarity index 94% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalSoundBroadcastTest.java index 3657f60..f94d4f5 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalSoundBroadcastTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalSoundBroadcastTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import java.lang.reflect.Field; import java.util.ArrayList; @@ -26,7 +26,7 @@ public class ElectricOperationalSoundBroadcastTest { @Test public void machineBroadcastUsesOnlyExistingIntersectingConnectedPlayers() throws Exception { QueryRejectingWorld world = fixture(); - ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricOvenBlock().defaultBlockState()) { + ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricOvenBlock().defaultBlockState()) { @Override public Level getLevel() { return world; } }; machine.playSoundEffect(100, 80, -20, SoundEvents.ANVIL_LAND, 0.25f, 0.75f); @@ -35,7 +35,7 @@ public class ElectricOperationalSoundBroadcastTest { @Test public void generatorBroadcastUsesOnlyExistingIntersectingConnectedPlayers() throws Exception { QueryRejectingWorld world = fixture(); - PhotovoltaicGeneratorTileEntity generator = new PhotovoltaicGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.PhotovoltaicGeneratorBlock().defaultBlockState()) { + PhotovoltaicGeneratorTileEntity generator = new PhotovoltaicGeneratorTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.PhotovoltaicGeneratorBlock().defaultBlockState()) { @Override public Level getLevel() { return world; } }; generator.playSoundEffect(100, 80, -20, SoundEvents.ANVIL_LAND, 0.25f, 0.75f); @@ -45,7 +45,7 @@ public class ElectricOperationalSoundBroadcastTest { @Test public void emptyPlayerListNeverQueriesChunks() throws Exception { QueryRejectingWorld world = withoutConstructor(QueryRejectingWorld.class); world.existingPlayers = Collections.emptyList(); - ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricOvenBlock().defaultBlockState()) { + ElectricOvenTileEntity machine = new ElectricOvenTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricOvenBlock().defaultBlockState()) { @Override public Level getLevel() { return world; } }; machine.playSoundEffect(50000, 82, 50000, SoundEvents.ANVIL_LAND, 1, 1); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalStillCapacityTest.java similarity index 89% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalStillCapacityTest.java index fb0bfcc..645785b 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/ElectricOperationalStillCapacityTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/ElectricOperationalStillCapacityTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import cyano.poweradvantage.api.fluid.FluidStack; import java.lang.reflect.Method; @@ -6,8 +6,8 @@ import net.minecraft.server.Bootstrap; import org.junit.BeforeClass; import org.junit.Test; -import zone.moddev.mc.poweradvantage.registry.still.recipe.DistillationRecipe; -import zone.moddev.mc.poweradvantage.registry.still.recipe.ExplicitFluidReference; +import zone.moddev.mc.basepower.registry.still.recipe.DistillationRecipe; +import zone.moddev.mc.basepower.registry.still.recipe.ExplicitFluidReference; import static org.junit.Assert.*; @@ -52,7 +52,7 @@ public class ElectricOperationalStillCapacityTest { } private static ElectricStillTileEntity fixture(int output) { - ElectricStillTileEntity still = new ElectricStillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.ElectricStillBlock().defaultBlockState()); + ElectricStillTileEntity still = new ElectricStillTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.ElectricStillBlock().defaultBlockState()); still.getInputTank().setFluid(new FluidStack(Fluids.WATER, 4)); if (output > 0) still.getOutputTank().setFluid(new FluidStack(Fluids.LAVA, output)); return still; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/GrowthChamberPersistenceTest.java similarity index 85% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/GrowthChamberPersistenceTest.java index 3a2dde7..28d518e 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/GrowthChamberPersistenceTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/GrowthChamberPersistenceTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.nbt.CompoundTag; import org.junit.Test; @@ -11,7 +11,7 @@ public class GrowthChamberPersistenceTest { source.putByteArray("growth", new byte[] {2, 4, 6}); source.putIntArray("prog", new int[] {245, 468, 627}); for (int pass = 0; pass < 3; pass++) { - GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberBlock().defaultBlockState()); + GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.GrowthChamberBlock().defaultBlockState()); chamber.loadFrom(source); CompoundTag saved = new CompoundTag(); chamber.saveTo(saved); @@ -22,7 +22,7 @@ public class GrowthChamberPersistenceTest { } @Test public void shortArraysArePaddedAndNewNbtClearsOldPendingWork() { - GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.electricadvantage.machines.GrowthChamberBlock().defaultBlockState()); + GrowthChamberTileEntity chamber = new GrowthChamberTileEntity(net.minecraft.core.BlockPos.ZERO, new zone.moddev.mc.baseelectric.machines.GrowthChamberBlock().defaultBlockState()); CompoundTag source = new CompoundTag(); source.putByteArray("growth", new byte[] {2}); source.putIntArray("prog", new int[] {245}); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/LaserTurretGeometryTest.java similarity index 96% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/LaserTurretGeometryTest.java index 062dbc0..10b63c7 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/LaserTurretGeometryTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/LaserTurretGeometryTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.core.Direction; import net.minecraft.world.phys.AABB; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java b/src/test/java/zone/moddev/mc/baseelectric/machines/Native117ConstructionTest.java similarity index 92% rename from src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java rename to src/test/java/zone/moddev/mc/baseelectric/machines/Native117ConstructionTest.java index 7349495..3a62658 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/machines/Native117ConstructionTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/machines/Native117ConstructionTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.machines; +package zone.moddev.mc.baseelectric.machines; import net.minecraft.core.BlockPos; import net.minecraft.nbt.CompoundTag; @@ -42,13 +42,13 @@ public class Native117ConstructionTest { @Test public void ledOnlyOffersItsOwnNativeTicker() { LEDBlock block = new LEDBlock(); BlockEntityType type = BlockEntityType.Builder.of(LEDTileEntity::new, block).build(null); - BlockEntityType previous = zone.moddev.mc.electricadvantage.init.Entities.LED; + BlockEntityType previous = zone.moddev.mc.baseelectric.init.Entities.LED; try { - zone.moddev.mc.electricadvantage.init.Entities.LED = type; + zone.moddev.mc.baseelectric.init.Entities.LED = type; assertNotNull(block.getTicker(null, block.defaultBlockState(), type)); assertNull(block.getTicker(null, block.defaultBlockState(), BlockEntityType.CHEST)); } finally { - zone.moddev.mc.electricadvantage.init.Entities.LED = previous; + zone.moddev.mc.baseelectric.init.Entities.LED = previous; } } diff --git a/src/test/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrationsTest.java b/src/test/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrationsTest.java new file mode 100644 index 0000000..488a5a0 --- /dev/null +++ b/src/test/java/zone/moddev/mc/baseelectric/migration/ElectricLegacyMigrationsTest.java @@ -0,0 +1,35 @@ +package zone.moddev.mc.baseelectric.migration; + +import static org.junit.Assert.assertEquals; + +import cyano.poweradvantage.api.migration.LegacyMigrationApi; +import net.minecraft.core.Direction; +import org.junit.Test; + +public class ElectricLegacyMigrationsTest { + @Test public void preservesAllSixDrillFacingsAndActiveFlag() { + for (Direction facing : Direction.values()) { + int metadata = facing.get3DDataValue() | 8; + assertEquals(facing, ElectricLegacyMigrations.legacyDrillFacing(metadata)); + assertEquals(true, ElectricLegacyMigrations.legacyDrillActive(metadata)); + } + } + + @Test public void aliasesLegacyTileAndHydroturbineIds() { + ElectricLegacyMigrations.register(); + for (String namespace : new String[] {"electricadvantage", "baseelectric"}) { + for (String prefix : new String[] {namespace + ":", namespace + ".", "minecraft:" + namespace + "."}) { + assertEquals("baseelectric:led", LegacyMigrationApi.tileTarget(prefix + "l_e_d")); + assertEquals("baseelectric:electric_furnace", LegacyMigrationApi.tileTarget(prefix + "electric_furnace")); + assertEquals("baseelectric:hydroturbine", LegacyMigrationApi.entityTarget(prefix + "hydroturbine")); + } + String repeated = namespace + "." + namespace + ".hydroturbine"; + assertEquals("baseelectric:hydroturbine", LegacyMigrationApi.entityTarget(repeated)); + assertEquals("baseelectric:hydroturbine", LegacyMigrationApi.entityTarget("minecraft:" + repeated)); + } + assertEquals("baseelectric:hydroturbine", + LegacyMigrationApi.entityTarget("minecraft:electricadvantage.Hydroturbine")); + assertEquals("baseelectric:hydroturbine", + LegacyMigrationApi.entityTarget("electricadvantage.electricadvantage.Hydroturbine")); + } +} diff --git a/src/test/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditionsTest.java b/src/test/java/zone/moddev/mc/baseelectric/recipe/RecipeConditionsTest.java similarity index 92% rename from src/test/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditionsTest.java rename to src/test/java/zone/moddev/mc/baseelectric/recipe/RecipeConditionsTest.java index 7e7ffd6..13db56f 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/recipe/RecipeConditionsTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/recipe/RecipeConditionsTest.java @@ -1,10 +1,10 @@ -package zone.moddev.mc.electricadvantage.recipe; +package zone.moddev.mc.baseelectric.recipe; import java.util.Locale; import com.google.gson.JsonObject; import org.junit.Test; -import zone.moddev.mc.poweradvantage.PowerAdvantage; -import zone.moddev.mc.poweradvantage.RecipeMode; +import zone.moddev.mc.basepower.PowerAdvantage; +import zone.moddev.mc.basepower.RecipeMode; import static org.junit.Assert.*; public class RecipeConditionsTest { diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/BaseMetalsRawRecipeContractTest.java similarity index 96% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/BaseMetalsRawRecipeContractTest.java index 985fcdd..59361c4 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BaseMetalsRawRecipeContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/BaseMetalsRawRecipeContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import com.google.gson.JsonObject; import com.google.gson.JsonParser; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/BlockLootResourceTest.java similarity index 87% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/BlockLootResourceTest.java index dcdbfa2..9ab7f52 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BlockLootResourceTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/BlockLootResourceTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import java.nio.charset.StandardCharsets; import java.nio.file.Files; @@ -12,8 +12,8 @@ public class BlockLootResourceTest { @Test public void everyOrdinaryBlockKeepsItsOwnNativeItemDrop() throws Exception { - Path root = Paths.get("src/main/resources/data/electricadvantage/loot_tables/blocks"); - try (Stream states = Files.list(Paths.get("src/main/resources/assets/electricadvantage/blockstates"))) { + Path root = Paths.get("src/main/resources/data/baseelectric/loot_tables/blocks"); + try (Stream states = Files.list(Paths.get("src/main/resources/assets/baseelectric/blockstates"))) { for (Path state : (Iterable) states.filter(path -> path.toString().endsWith(".json"))::iterator) { String id = state.getFileName().toString().replace(".json", ""); // Two retained asset-only models are not registered blocks. @@ -27,7 +27,7 @@ public class BlockLootResourceTest { assertEquals(1, pool.get("rolls").getAsInt()); JsonObject entry = pool.getAsJsonArray("entries").get(0).getAsJsonObject(); assertEquals("minecraft:item", entry.get("type").getAsString()); - assertEquals("electricadvantage:" + id, entry.get("name").getAsString()); + assertEquals("baseelectric:" + id, entry.get("name").getAsString()); } } assertFalse(Files.exists(root.resolve("pump_pipe_electric.json"))); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/BuildWorkflowContractTest.java similarity index 63% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/BuildWorkflowContractTest.java index d24b3e1..cc3fe9b 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/BuildWorkflowContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/BuildWorkflowContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import java.nio.charset.StandardCharsets; import java.nio.file.Files; @@ -30,33 +30,35 @@ public class BuildWorkflowContractTest { } @Test public void dependencyPolicyPrecedesEveryPinnedCheckout() throws Exception { - for (String helper : new String[] {"tools/verify-native-port.js", "tools/verification/Verify-ElectricEcj.ps1"}) { - String source = new String(Files.readAllBytes(Paths.get(helper)), StandardCharsets.UTF_8); - assertTrue(helper, source.contains("API_PIN_PROVISIONAL")); - assertTrue(helper, source.contains("5b9abe578b053d2ef59b1962cf9e04f6880c91b9")); - assertTrue(helper, source.contains("799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8")); - assertFalse(helper, source.contains("2116a35a40dd150d79e7dfdcdc891637793178b7")); - assertFalse(helper, source.contains("F58B93DAF03CF303F32B18CCCA140E55E886A2BA82732A3F286ADF3E31194B6A")); - } for (String workflow : new String[] {"ci.yml", "codeql-analysis.yml"}) { String source = new String(Files.readAllBytes(Paths.get(".github/workflows", workflow)), StandardCharsets.UTF_8); int policy = source.indexOf("git config --global core.autocrlf false"); + int pins = source.indexOf("- name: Require coordinated 1.17.1 dependency pins"); assertTrue(policy > 0); - assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/OreSpawn")); - assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/BaseMetals")); - assertTrue(policy < source.indexOf("repository: MinecraftModDevelopmentMods/PowerAdvantage")); + assertTrue(policy < pins); + for (String repository : new String[] {"OreSpawn", "BaseMetals", "basePower"}) { + assertTrue(pins < source.indexOf("repository: MinecraftModDevelopmentMods/" + repository)); + } assertTrue(source.contains("ref: b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf")); - assertTrue(source.contains("ref: dacfaa3af2e3310d5cb6b081da79f09260ae103d")); - assertTrue(source.contains("BaseMetals-3.1.0.117011-deobf.jar")); + assertTrue(source.contains("BaseMetals-3.1.1.117011-deobf.jar")); + assertTrue(source.contains("basePower-2.4.9.117011-deobf.jar")); + assertTrue(source.contains("ref: ${{ steps.pins.outputs.basemetals_ref }}")); assertTrue(source.contains("ref: ${{ steps.pins.outputs.power_ref }}")); - assertTrue(source.contains("API_PIN_PROVISIONAL")); - assertTrue(source.contains("5b9abe578b053d2ef59b1962cf9e04f6880c91b9")); - assertTrue(source.contains("799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8")); + assertTrue(source.contains("\"$pin_state\" != \"LOCAL_CHECKPOINT\"")); + assertTrue(source.contains("! \"$power_ref\" =~ ^[a-f0-9]{40}$")); + assertTrue(source.contains("! \"$bm_ref\" =~ ^[a-f0-9]{40}$")); + for (String hash : new String[] {"power_sha", "bm_sha", "bootstrap_sha"}) { + assertTrue(source.contains("! \"$" + hash + "\" =~ ^[A-F0-9]{64}$")); + } + assertTrue(source.contains("git -C \"$power\" rev-parse HEAD")); + assertTrue(source.contains("git -C \"$basemetals\" rev-parse HEAD")); + assertFalse(source.contains("5b9abe578b053d2ef59b1962cf9e04f6880c91b9")); + assertFalse(source.contains("799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8")); + assertFalse(source.contains("dacfaa3af2e3310d5cb6b081da79f09260ae103d")); assertFalse(source.contains("098d4625abc8a849bd1a11dcf697b3fee0cade7b")); assertFalse(source.contains("78E58DD2AB04E2B9F3267E5735C64AAE7E93EAC97571CB04485038862C853ED3")); assertFalse(source.contains("ce90c24c302d0ff3565db2db0c6c94a3b5f21f83")); assertFalse(source.contains("8BBB03DD7E4AF08A7390A161ED5AA94E292BEE56EF60E550B5512E967E0E9174")); - assertTrue(source.indexOf("- name: Require final PowerAdvantage pin") < source.indexOf("- name: Check out pinned OreSpawn")); assertTrue(source.contains("branches: [master-1.17.1")); assertFalse(source.contains("master-1.14.4")); } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/ClientResourceContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/ClientResourceContractTest.java similarity index 92% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/ClientResourceContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/ClientResourceContractTest.java index 7f984dc..053fdfa 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/ClientResourceContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/ClientResourceContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -15,7 +15,7 @@ public class ClientResourceContractTest { private static final Path ROOT = Paths.get("src/main/resources"); - private static final Path ASSETS = ROOT.resolve("assets/electricadvantage"); + private static final Path ASSETS = ROOT.resolve("assets/baseelectric"); @Test public void blockstatesUseLiteralModelPaths() throws Exception { try (Stream files = Files.walk(ASSETS.resolve("blockstates"))) { @@ -55,7 +55,7 @@ public class ClientResourceContractTest { JsonObject locale = read(file); for (Map.Entry entry : locale.entrySet()) { String key = entry.getKey(); - if (!(key.startsWith("tile.electricadvantage.") || key.startsWith("item.electricadvantage.")) + if (!(key.startsWith("tile.baseelectric.") || key.startsWith("item.baseelectric.")) || !key.endsWith(".name")) continue; String alias = key.substring(0, key.length() - 5); if (alias.startsWith("tile.")) alias = "block." + alias.substring(5); @@ -80,7 +80,7 @@ private static void reference(String id, String directory, String suffix, Path f String path = parts.length == 2 ? parts[1] : parts[0]; if ("minecraft".equals(namespace) && path.startsWith("builtin/")) return; String resource = "assets/" + namespace + "/" + directory + "/" + path + suffix; - boolean exists = "electricadvantage".equals(namespace) ? Files.isRegularFile(ROOT.resolve(resource)) + boolean exists = "baseelectric".equals(namespace) ? Files.isRegularFile(ROOT.resolve(resource)) : ClientResourceContractTest.class.getClassLoader().getResource(resource) != null; assertTrue(file + " references missing " + resource, exists); } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeRegistrationThreadTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeRegistrationThreadTest.java similarity index 91% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeRegistrationThreadTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/RecipeRegistrationThreadTest.java index e7ffab3..58ecefb 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeRegistrationThreadTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeRegistrationThreadTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import java.io.InputStream; import org.junit.Test; @@ -14,11 +14,11 @@ public class RecipeRegistrationThreadTest { @Test public void sharedForgeConditionsAreRegisteredAfterParallelSetup() throws Exception { ClassNode node = new ClassNode(); - try (InputStream input = getClass().getResourceAsStream("/zone/moddev/mc/electricadvantage/ElectricAdvantage.class")) { + try (InputStream input = getClass().getResourceAsStream("/zone/moddev/mc/baseelectric/ElectricAdvantage.class")) { assertNotNull(input); new ClassReader(input).accept(node, 0); } - String conditions = "zone/moddev/mc/electricadvantage/recipe/RecipeConditions"; + String conditions = "zone/moddev/mc/baseelectric/recipe/RecipeConditions"; int queued = 0; for (MethodNode method : node.methods) { boolean registrationRunnable = false; diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeResourceTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeResourceTest.java similarity index 91% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeResourceTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/RecipeResourceTest.java index e8ce5cc..5c2aed4 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeResourceTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeResourceTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -19,7 +19,7 @@ public class RecipeResourceTest { @Test public void allRecipesUseTheNativeOneFifteenDataPackLocationAndSerializers() throws IOException { - Path recipes = Paths.get("src/main/resources/data/electricadvantage/recipes"); + Path recipes = Paths.get("src/main/resources/data/baseelectric/recipes"); List files; try (Stream stream = Files.list(recipes)) { files = stream.filter(path -> path.toString().endsWith(".json")) @@ -44,6 +44,6 @@ public class RecipeResourceTest { assertEquals(46, crafting); assertEquals(4, smelting); assertEquals(8, crushing); - assertFalse(Files.exists(Paths.get("src/main/resources/assets/electricadvantage/recipes"))); + assertFalse(Files.exists(Paths.get("src/main/resources/assets/baseelectric/recipes"))); } } diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeUnlockContractTest.java similarity index 98% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/RecipeUnlockContractTest.java index 24d9cb6..1accdd3 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/RecipeUnlockContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/RecipeUnlockContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import com.google.gson.JsonArray; import com.google.gson.JsonElement; @@ -24,7 +24,7 @@ import static org.junit.Assert.*; public class RecipeUnlockContractTest { - private static final String MOD = "electricadvantage"; + private static final String MOD = "baseelectric"; private static final Path DATA = Paths.get("src/main/resources/data", MOD); private static final Set IGNORED = new LinkedHashSet<>(java.util.Arrays.asList( "item:minecraft:stick", "item:minecraft:string", "item:minecraft:feather", "tag:forge:rods/wooden")); diff --git a/src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java b/src/test/java/zone/moddev/mc/baseelectric/resources/ShaderResourceContractTest.java similarity index 90% rename from src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java rename to src/test/java/zone/moddev/mc/baseelectric/resources/ShaderResourceContractTest.java index 12025e7..1a97af9 100644 --- a/src/test/java/zone/moddev/mc/electricadvantage/resources/ShaderResourceContractTest.java +++ b/src/test/java/zone/moddev/mc/baseelectric/resources/ShaderResourceContractTest.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.resources; +package zone.moddev.mc.baseelectric.resources; import com.google.gson.JsonObject; import com.google.gson.JsonParser; @@ -11,11 +11,11 @@ /** Resource contracts do not prove GPU shader compilation or visual acceptance. */ public class ShaderResourceContractTest { - private static final Path ROOT = Path.of("src/main/resources/assets/electricadvantage/shaders/core"); + private static final Path ROOT = Path.of("src/main/resources/assets/baseelectric/shaders/core"); @Test public void nativeShaderRetainsTheEntityVertexLayoutAndVanillaFogFragment() throws Exception { JsonObject json = new JsonParser().parse(Files.readString(ROOT.resolve("unshaded.json"))).getAsJsonObject(); - assertEquals("electricadvantage:unshaded", json.get("vertex").getAsString()); + assertEquals("baseelectric:unshaded", json.get("vertex").getAsString()); assertEquals("minecraft:rendertype_entity_translucent", json.get("fragment").getAsString()); assertEquals(Arrays.asList("Position", "Color", "UV0", "UV1", "UV2", "Normal"), java.util.stream.StreamSupport.stream(json.getAsJsonArray("attributes").spliterator(), false) diff --git a/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java b/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java deleted file mode 100644 index c7257e3..0000000 --- a/src/test/java/zone/moddev/mc/electricadvantage/migration/ElectricLegacyMigrationsTest.java +++ /dev/null @@ -1,29 +0,0 @@ -package zone.moddev.mc.electricadvantage.migration; - -import static org.junit.Assert.assertEquals; - -import cyano.poweradvantage.api.migration.LegacyMigrationApi; -import net.minecraft.core.Direction; -import org.junit.Test; - -public class ElectricLegacyMigrationsTest { - @Test public void preservesAllSixDrillFacingsAndActiveFlag() { - for (Direction facing : Direction.values()) { - int metadata = facing.get3DDataValue() | 8; - assertEquals(facing, ElectricLegacyMigrations.legacyDrillFacing(metadata)); - assertEquals(true, ElectricLegacyMigrations.legacyDrillActive(metadata)); - } - } - - @Test public void aliasesLegacyTileAndHydroturbineIds() { - ElectricLegacyMigrations.register(); - assertEquals("electricadvantage:led", LegacyMigrationApi.tileTarget("electricadvantage:l_e_d")); - assertEquals("electricadvantage:led", LegacyMigrationApi.tileTarget("electricadvantage.l_e_d")); - assertEquals("electricadvantage:electric_furnace", - LegacyMigrationApi.tileTarget("minecraft:electricadvantage.electric_furnace")); - assertEquals("electricadvantage:hydroturbine", - LegacyMigrationApi.entityTarget("minecraft:electricadvantage.Hydroturbine")); - assertEquals("electricadvantage:hydroturbine", - LegacyMigrationApi.entityTarget("electricadvantage.electricadvantage.Hydroturbine")); - } -} diff --git a/tools/verification/AuditedJUnit.java b/tools/verification/AuditedJUnit.java index 8279849..2e6907e 100644 --- a/tools/verification/AuditedJUnit.java +++ b/tools/verification/AuditedJUnit.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.verification; +package zone.moddev.mc.baseelectric.verification; import java.io.FileOutputStream; import javax.xml.stream.XMLOutputFactory; @@ -30,7 +30,7 @@ public static void main(String[] args) throws Exception { XMLStreamWriter xml = XMLOutputFactory.newFactory().createXMLStreamWriter(output, "UTF-8"); xml.writeStartDocument("UTF-8", "1.0"); xml.writeStartElement("testsuite"); - xml.writeAttribute("name", "ElectricAdvantage-1.17.1-ECJ"); + xml.writeAttribute("name", "baseElectric-1.17.1-ECJ"); xml.writeAttribute("tests", Integer.toString(result.getRunCount())); xml.writeAttribute("failures", Integer.toString(result.getFailureCount())); xml.writeAttribute("ignored", Integer.toString(result.getIgnoreCount())); diff --git a/tools/verification/ForgeNativeTestBootstrap.java b/tools/verification/ForgeNativeTestBootstrap.java index 09c9744..958aea0 100644 --- a/tools/verification/ForgeNativeTestBootstrap.java +++ b/tools/verification/ForgeNativeTestBootstrap.java @@ -1,4 +1,4 @@ -package zone.moddev.mc.electricadvantage.verification; +package zone.moddev.mc.baseelectric.verification; import java.lang.instrument.ClassFileTransformer; import java.lang.instrument.Instrumentation; diff --git a/tools/verification/Verify-ElectricEcj.ps1 b/tools/verification/Verify-ElectricEcj.ps1 index 69af88f..626fdaf 100644 --- a/tools/verification/Verify-ElectricEcj.ps1 +++ b/tools/verification/Verify-ElectricEcj.ps1 @@ -62,17 +62,21 @@ function Invoke-Ecj([string]$Name, [string[]]$Sources, [string[]]$Libraries) { } $report = [ordered]@{ status = 'RUNNING'; project = $ProjectRoot; evidence = $Evidence - scope = 'Pinned Electric 1.17.1 candidate; fresh ECJ main/test/helper outputs and worldless Java 16 JUnit; no Gradle or Minecraft launch' + scope = 'Pinned baseElectric 1.17.1 candidate; fresh ECJ main/test/helper outputs and worldless Java 16 JUnit; no Gradle or Minecraft launch' compiler = $null; toolchains = $null; libraries = @(); sources = @(); gradleInventory = @() compilations = [ordered]@{}; junit = $null; negativeControl = $null; apiPinState = $null; capabilityBootstrap = $null } try { $properties = ConvertFrom-StringData -StringData (Get-Content -LiteralPath (Join-Path $ProjectRoot 'gradle.properties') -Raw) $report.apiPinState = $properties.poweradvantage_pin_state - $provisional = $properties.poweradvantage_pin_state -eq 'API_PIN_PROVISIONAL' - if ($properties.mod_id -ne 'electricadvantage' -or $properties.mod_version -ne '2.2.9.117011' -or - (!$provisional -and $properties.poweradvantage_source_ref -ne '5b9abe578b053d2ef59b1962cf9e04f6880c91b9') -or - $properties.poweradvantage_deobf_sha256 -ne '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8') { - throw 'This verifier requires the pinned Electric 1.17.1 candidate' + if ($properties.mod_id -ne 'baseelectric' -or $properties.mod_version -ne '2.2.10.117011' -or + $properties.poweradvantage_version -ne '2.4.9.117011' -or $properties.basemetals_version -ne '3.1.1.117011' -or + $properties.poweradvantage_pin_state -ne 'LOCAL_CHECKPOINT' -or + $properties.poweradvantage_source_ref -cnotmatch '^[a-f0-9]{40}$' -or + $properties.basemetals_source_commit -cnotmatch '^[a-f0-9]{40}$' -or + $properties.poweradvantage_deobf_sha256 -cnotmatch '^[A-F0-9]{64}$' -or + $properties.poweradvantage_unit_bootstrap_sha256 -cnotmatch '^[A-F0-9]{64}$' -or + $properties.basemetals_deobf_sha256 -cnotmatch '^[A-F0-9]{64}$') { + throw 'This verifier requires the coordinated baseElectric 1.17.1 inputs' } $report.compiler = Get-Pin $Compiler if ($report.compiler.sha256 -ne 'D0D43F8E2D7003E5EFED612E2CBB5F01870043397D8F1BBE536FD9128F4FCBF7') { throw 'ECJ compiler pin mismatch' } @@ -103,7 +107,10 @@ try { foreach ($entry in @($classpath.classpath.classpathentry | Where-Object { $_.kind -eq 'lib' })) { $file = if ([IO.Path]::IsPathRooted([string]$entry.path)) { [IO.Path]::GetFullPath([string]$entry.path) } else { [IO.Path]::GetFullPath((Join-Path $ProjectRoot ([string]$entry.path))) } - if ([IO.Path]::GetFileName($file) -like 'ElectricAdvantage*.jar') { throw 'Electric output jar cannot satisfy its own ECJ compilation' } + if ([IO.Path]::GetFileName($file) -like 'baseElectric*.jar' -or + [IO.Path]::GetFileName($file) -like 'ElectricAdvantage*.jar') { + throw 'Electric output jar cannot satisfy its own ECJ compilation' + } $scopeNode = $entry.SelectSingleNode('attributes/attribute[@name="gradle_used_by_scope"]/@value') $scope = if ($scopeNode) { $scopeNode.Value } else { '' } $pin = Get-Pin $file @@ -112,7 +119,7 @@ try { if (!$scope -or $scope.Split(',') -contains 'main') { $mainLibraries += $file } if (!$scope -or $scope.Split(',') -contains 'test') { $testLibraries += $file } } - foreach ($dependency in @(@{ prefix = 'PowerAdvantage-'; hash = $properties.poweradvantage_deobf_sha256 }, + foreach ($dependency in @(@{ prefix = 'basePower-'; hash = $properties.poweradvantage_deobf_sha256 }, @{ prefix = 'BaseMetals-'; hash = $properties.basemetals_deobf_sha256 }, @{ prefix = 'OreSpawn-'; hash = $properties.orespawn_deobf_sha256 })) { $matching = @($report.libraries | Where-Object { [IO.Path]::GetFileName($_.path).StartsWith($dependency.prefix) }) if ($matching.Count -ne 1 -or $matching[0].sha256 -ne $dependency.hash) { throw "Typed dependency pin mismatch: $($dependency.prefix)" } @@ -142,7 +149,7 @@ try { $report.runtime = $runtime Push-Location $ProjectRoot try { - & $java16 "-javaagent:$capabilityBootstrap" -Xmx2G -cp ($runtime -join ';') zone.moddev.mc.electricadvantage.verification.AuditedJUnit $junitXml $expected @classes *> (Join-Path $Evidence 'junit.log') + & $java16 "-javaagent:$capabilityBootstrap" -Xmx2G -cp ($runtime -join ';') zone.moddev.mc.baseelectric.verification.AuditedJUnit $junitXml $expected @classes *> (Join-Path $Evidence 'junit.log') $junitExit = $LASTEXITCODE } finally { Pop-Location } $report.junit = [ordered]@{ exitCode = $junitExit; expected = $expected; suites = $classes; log = 'junit.log'; xml = 'junit.xml' } diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index 94590cf..f4e8591 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -6,10 +6,19 @@ const { createHash } = require('node:crypto'); const root = path.resolve(__dirname, '..'); const baseline = 'c5c8c9ea1d6f2010b8cff61e4bfae86f4c96c978'; -const javaRoot = 'src/main/java/zone/moddev/mc/electricadvantage/'; +const nativeBaseline = 'ce6b075f1d0e417e46e1742b9a2ca856b24dc67f'; +const oldJavaRoot = 'src/main/java/zone/moddev/mc/electricadvantage/'; +const javaRoot = 'src/main/java/zone/moddev/mc/baseelectric/'; +const migratePath = name => name.startsWith('src/test/resources/') + ? name : name.replaceAll('/electricadvantage/', '/baseelectric/'); +// Some historical blobs predate the checkout's canonical LF policy. +const migrateText = source => source.replaceAll('\r\n', '\n').replaceAll('electricadvantage', 'baseelectric') + .replaceAll('zone.moddev.mc.poweradvantage', 'zone.moddev.mc.basepower') + .replaceAll('poweradvantage:', 'basepower:'); const read = name => fs.readFileSync(path.join(root, name), 'utf8'); const git = (...args) => execFileSync('git', args, { cwd: root }); const tracked = git('ls-tree', '-r', '--name-only', baseline).toString().trim().split('\n'); +const nativeFiles = git('ls-tree', '-r', '--name-only', nativeBaseline, 'src').toString().trim().split('\n'); const results = []; const properties = Object.fromEntries(read('gradle.properties').split(/\r?\n/) .filter(line => line && !line.startsWith('#')).map(line => { @@ -23,9 +32,11 @@ function tokens(source) { return source.match(/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\/\/[^\n]*|\/\*[\s\S]*?\*\/|[A-Za-z_$][A-Za-z0-9_$]*|(?:0[xX][\da-fA-F_]+|(?:\d[\d_]*\.?[\d_]*|\.\d[\d_]*)(?:[eE][+-]?[\d_]+)?)[dDfFlL]?/g) || []; } const strings = source => tokens(source).filter(t => t.startsWith('"') - && !['"2.2.8.116051"', '"2.2.9.117011"'].includes(t)).sort(); + && !['"2.2.8.116051"', '"2.2.9.117011"', '"2.2.10.117011"'].includes(t)).sort(); const numbers = source => tokens(source).filter(t => /^\d|^\.\d/.test(t)); -const production = tracked.filter(n => n.startsWith(javaRoot) && n.endsWith('.java')); +const production = tracked.filter(n => n.startsWith(oldJavaRoot) && n.endsWith('.java')); +const entry = javaRoot + 'ElectricAdvantage.java'; +const migration = javaRoot + 'migration/ElectricLegacyMigrations.java'; function nativeUnlockFromLegacy(source) { const document = JSON.parse(source); @@ -54,46 +65,62 @@ function assertNativeUnlock(source, actual) { check('Exact native 1.17.1 build target', () => { for (const [key, value] of Object.entries({minecraft_version:'1.17.1', forge_version:'37.1.1', mapping_channel:'official', mapping_version:'1.17.1', mcp_version:'20210706.113038', - mod_version:'2.2.9.117011', mod_group:'zone.moddev.mc.electricadvantage', + mod_id:'baseelectric', mod_name:'baseElectric', mod_version:'2.2.10.117011', + mod_group:'zone.moddev.mc.baseelectric', curseforge_project_id:'1783006', cf_requirements:'basepower,base-metals', java_version:'16', java_toolchain_version:'16.0.2+7', gradle_java_version:'17', - basemetals_version:'3.1.0.117011', orespawn_version:'4.1.0.117011'})) { + poweradvantage_version:'2.4.9.117011', basemetals_version:'3.1.1.117011', orespawn_version:'4.1.0.117011'})) { assert.equal(properties[key], value, key); } - assert.equal(JSON.parse(read('src/main/resources/pack.mcmeta')).pack.pack_format, 7); + assert.deepEqual(JSON.parse(read('src/main/resources/pack.mcmeta')).pack, {pack_format:7, description:'baseElectric'}); assert(read('build.gradle').includes('major != 60')); + const metadata = read('src/main/resources/META-INF/mods.toml'); + assert.match(metadata, /modId="basepower"\s+mandatory=true\s+versionRange="\[2\.4\.9\.117011,3\.0\.0\)"/); + assert.match(metadata, /modId="basemetals"\s+mandatory=false\s+versionRange="\[3\.1\.1\.117011,4\.0\.0\)"/); + assert(metadata.includes('modId="baseelectric"') && metadata.includes('displayName="baseElectric"')); }); -check('Approved 1.17 API source and artifact pins', () => { - assert.equal(properties.poweradvantage_deobf_sha256, '799B59B06EB2AC3FC4682AA64BF42C3A2A2C1D89D7FFFE9C72745DEC7DFBE0D8'); - assert.equal(properties.poweradvantage_source_ref, '5b9abe578b053d2ef59b1962cf9e04f6880c91b9'); - assert.notEqual(properties.poweradvantage_pin_state, 'API_PIN_PROVISIONAL', 'Power API remains provisional; source freeze pending'); - assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/, 'Power source pin pending parent'); - assert.match(properties.poweradvantage_deobf_sha256, /^[A-F0-9]{64}$/, 'Power development jar pin pending parent'); - assert.match(properties.poweradvantage_version, /^\d+\.\d+\.\d+\.117011$/); +check('Pending basePower API pins fail closed; exact Base Metals and OreSpawn pins are retained', () => { + const artifactPins = ['poweradvantage_deobf_sha256', 'poweradvantage_unit_bootstrap_sha256']; + assert.equal(properties.poweradvantage_source_repository, 'MinecraftModDevelopmentMods/basePower'); + if (properties.poweradvantage_pin_state === 'PENDING') { + for (const key of ['poweradvantage_source_ref', ...artifactPins]) { + assert.equal(properties[key], '', key); + } + } else { + assert.equal(properties.poweradvantage_pin_state, 'LOCAL_CHECKPOINT'); + assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/); + for (const key of artifactPins) assert.match(properties[key], /^[A-F0-9]{64}$/, key); + } + const build = read('build.gradle'); + assert.match(build, /poweradvantage_pin_state != 'LOCAL_CHECKPOINT'/); + assert.match(build, /requireDevelopmentPins\(\)\s+def powerAdvantageDeobfJarPath/); + assert(!build.includes('defaultPowerAdvantageDeobfJar')); for (const [key, value] of Object.entries({ - basemetals_source_commit:'dacfaa3af2e3310d5cb6b081da79f09260ae103d', - basemetals_deobf_sha256:'4EB49B12ED17211296F5FEC67FC4307174702BE096D3F1C02DD67B45AED587FA', - basemetals_runtime_sha256:'9276FA7E8A1E5BD6B9E336CF83CFEE9B178167DA09CE2B231C8DFF733F351B0C', + basemetals_source_commit:'0deeeeecdbbc1fbcdecf910c59477de8efe164d7', + basemetals_deobf_sha256:'83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1', orespawn_source_commit:'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf', orespawn_deobf_sha256:'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39', orespawn_runtime_sha256:'1BDEDCBB179CB5A3B169E5C8A6B301E3888AE15B94108B0AEC627D705CFAD833'})) { assert.equal(properties[key], value, key); } }); -check('Resource bytes retained except exact native advancement predicate conversion', () => { +check('Resources retained except namespace moves, canonical LF and exact native advancement conversion', () => { let changedFiles = 0, changedPredicates = 0; for (const name of tracked.filter(n => n.startsWith('src/main/resources/') && !['src/main/resources/pack.mcmeta', 'src/main/resources/META-INF/mods.toml'].includes(n))) { const before = git('show', `${baseline}:${name}`); + const target = migratePath(name); + const expected = /\.(json|fsh|vsh|mcmeta)$/.test(name) + ? Buffer.from(migrateText(before.toString())) : before; if (name.startsWith('src/main/resources/data/electricadvantage/advancements/recipes/')) { - const converted = nativeUnlockFromLegacy(before.toString()).converted; + const converted = nativeUnlockFromLegacy(expected.toString()).converted; if (converted) { - assert.equal(assertNativeUnlock(before.toString(), read(name)), converted, name); + assert.equal(assertNativeUnlock(expected.toString(), read(target)), converted, target); changedFiles++; changedPredicates += converted; continue; } } - assert.deepEqual(fs.readFileSync(path.join(root, name)), before, name); + assert.deepEqual(fs.readFileSync(path.join(root, target)), expected, target); } assert.equal(changedFiles, 19); assert.equal(changedPredicates, 21); @@ -117,11 +144,13 @@ check('Advancement compatibility allowance rejects unrelated changes and old tri }); check('Registry, asset, provider and NBT string identities retained', () => { for (const name of production) { - const actual = strings(read(name)); + const target = migratePath(name); + if (target === entry || target === migration) continue; // Checked against the native baseline below. + const actual = strings(read(target)); if (name.endsWith('/ElectricRenderTypes.java')) { assert.equal(actual.splice(actual.indexOf('"unshaded"'), 1)[0], '"unshaded"'); } - assert.deepEqual(actual, strings(git('show', `${baseline}:${name}`).toString()), name); + assert.deepEqual(actual, strings(migrateText(git('show', `${baseline}:${name}`).toString())), target); } }); check('Machine balance and renderer test tolerances retained', () => { @@ -131,14 +160,14 @@ check('Machine balance and renderer test tolerances retained', () => { if (name.endsWith('/ElectricRenderTypes.java')) { assert.equal(expected.splice(expected.indexOf('7'), 1)[0], '7'); // Native enum replaces GL_QUADS. } - assert.deepEqual(numbers(read(name)), expected, name); + assert.deepEqual(numbers(read(migratePath(name))), expected, name); } }); check('Inherited regression tests remain present with no skip or assume bypass', () => { let count = 0; for (const name of tracked.filter(n => n.startsWith('src/test/') && n.endsWith('.java'))) { const before = git('show', `${baseline}:${name}`).toString(); - const after = read(name); + const after = read(migratePath(name)); const methods = s => [...s.matchAll(/@Test\s+public void (\w+)\(/g)].map(m => m[1]); const expected = methods(before).map(n => n.replace('resourcePackDeclaresTheNativeOneSixteenFormat', 'resourcePackDeclaresTheNativeOneSeventeenFormat')); @@ -179,7 +208,7 @@ check('Native helper ticker, bucket pickup, renderer context and shader', () => assert(render.includes('DefaultVertexFormat.NEW_ENTITY')); assert(render.includes('VertexFormat.Mode.QUADS')); assert(render.includes('new ShaderStateShard(() -> unshadedShader)')); - const shader = read('src/main/resources/assets/electricadvantage/shaders/core/unshaded.vsh'); + const shader = read('src/main/resources/assets/baseelectric/shaders/core/unshaded.vsh'); assert(shader.includes('vertexColor = Color;')); assert(shader.includes('lightMapColor = texelFetch(Sampler2, UV2 / 16, 0);')); assert(shader.includes('overlayColor = texelFetch(Sampler1, UV1, 0);')); @@ -188,8 +217,8 @@ check('Native helper ticker, bucket pickup, renderer context and shader', () => }); check('Native harvest tags preserve lithium and sulfur tool tiers', () => { const tag = name => JSON.parse(read(`src/main/resources/data/minecraft/tags/blocks/${name}.json`)); - assert.deepEqual(tag('mineable/pickaxe'), {replace:false, values:['electricadvantage:li_ore','electricadvantage:sulfur_ore']}); - assert.deepEqual(tag('needs_stone_tool'), {replace:false, values:['electricadvantage:li_ore']}); + assert.deepEqual(tag('mineable/pickaxe'), {replace:false, values:['baseelectric:li_ore','baseelectric:sulfur_ore']}); + assert.deepEqual(tag('needs_stone_tool'), {replace:false, values:['baseelectric:li_ore']}); assert.equal((read(javaRoot + 'blocks/Ore.java').match(/requiresCorrectToolForDrops\(\)/g) || []).length, 2); }); check('Shared capabilities, legacy cyano API and first-tick interlocks retained', () => { @@ -198,21 +227,67 @@ check('Shared capabilities, legacy cyano API and first-tick interlocks retained' const source = read(javaRoot + `machines/${name}.java`); assert(source.includes('!redstoneInitialized && getLevel() != null && !getLevel().isClientSide')); } - assert(!production.some(n => /invalidateCaps\(|reviveCaps\(|LazyOptional/.test(read(n)))); + assert(!production.some(n => /invalidateCaps\(|reviveCaps\(|LazyOptional/.test(read(migratePath(n))))); assert(read(javaRoot + 'ElectricAdvantage.java').includes('event.enqueueWork(RecipeConditions::register)')); assert(read(javaRoot + 'machines/PhotovoltaicGeneratorTileEntity.java').includes('BlockPos lightPos = pos.above()')); }); +check('Native 1.17 source, tests and binary assets are preserved beyond the identity changes', () => { + const actualFiles = fs.readdirSync(path.join(root, 'src'), {recursive:true, withFileTypes:true}) + .filter(file => file.isFile()).map(file => path.relative(root, path.join(file.parentPath, file.name)) + .split(path.sep).join('/')).sort(); + assert.deepEqual(actualFiles, nativeFiles.map(migratePath).sort(), 'Source path inventory'); + for (const name of nativeFiles) { + const target = migratePath(name); + if ([entry, migration, 'src/main/resources/META-INF/mods.toml', 'src/main/resources/pack.mcmeta'].includes(target) + || /\/(ElectricLegacyMigrationsTest|BuildWorkflowContractTest)\.java$/.test(target)) continue; + const before = git('show', `${nativeBaseline}:${name}`); + const expected = !name.startsWith('src/test/resources/') && /\.(java|json|fsh|vsh|mcmeta)$/.test(name) + ? Buffer.from(migrateText(before.toString())) : before; + assert.deepEqual(fs.readFileSync(path.join(root, target)), expected, target); + } +}); +check('Original and baseElectric aliases retain the native registry paths and state decoding', () => { + const old = git('show', `${nativeBaseline}:${oldJavaRoot}migration/ElectricLegacyMigrations.java`).toString(); + const source = read(migration); + const ids = text => [...text.matchAll(/for \(String path : new String\[\] \{([^}]+)\}/g)] + .map(match => [...match[1].matchAll(/"([^"]+)"/g)].map(id => id[1])); + assert.equal(ids(old).length, 2); + assert.deepEqual(ids(source), ids(old)); + const decoder = ' private static BlockState decodeState'; + assert.equal(source.slice(source.indexOf(decoder)), old.slice(old.indexOf(decoder))); + assert(source.includes('LegacyMigrationApi.registerNamespaceAlias(ElectricAdvantage.LEGACY_MODID, ElectricAdvantage.MODID)')); + assert(source.includes('LegacyMigrationApi.registerTileEntityAliases(id(path))')); + assert(source.includes('new String[] {ElectricAdvantage.LEGACY_MODID, ElectricAdvantage.MODID}')); + for (const alias of ['minecraft:electricadvantage.Hydroturbine', 'electricadvantage.electricadvantage.Hydroturbine']) { + assert(source.includes(`registerEntityAlias("${alias}", hydroturbine)`), alias); + } + const main = read(entry); + assert(main.includes('LEGACY_MODID = "electricadvantage"')); + for (const bridge of ['LegacyConfigMigration', 'LegacyOreSpawnConfigBridge']) { + assert(main.includes(`${bridge}.migrate(FMLPaths.CONFIGDIR.get(), MODID, LEGACY_MODID`)); + } + for (const name of ['Blocks', 'Items']) { + const registration = read(javaRoot + `init/${name}.java`); + assert(registration.includes('import zone.moddev.mc.basepower.init.ItemGroups;')); + assert(registration.includes('tab(ItemGroups.tab_powerAdvantage)')); + } +}); const changedFiles = [...new Set([ ...git('diff', '--name-only', baseline).toString().trim().split('\n'), ...git('ls-files', '--others', '--exclude-standard').toString().trim().split('\n') ])].filter(Boolean).sort(); -const testFiles = [...tracked, ...changedFiles].filter((n, i, all) => all.indexOf(n) === i - && n.startsWith('src/test/java/') && n.endsWith('.java')); -const report = {baseline, scope:'Static source/resource contracts only; not compilation, runtime or manual acceptance', - inventory: {productionFiles:production.length, testFiles:testFiles.length, - tests:testFiles.reduce((n, file) => n + (read(file).match(/@Test\b/g) || []).length, 0)}, - changedFiles:changedFiles.map(file => ({file, sha256:createHash('sha256').update(fs.readFileSync(path.join(root, file))).digest('hex')})), +const testFiles = nativeFiles.map(migratePath).filter(n => n.startsWith('src/test/java/') + && n.endsWith('.java') && fs.existsSync(path.join(root, n))); +const tests = testFiles.reduce((n, file) => n + (read(file).match(/@Test\b/g) || []).length, 0); +check('The complete native 1.17.1 test inventory is retained', () => { + assert.equal(testFiles.length, 27); + assert.equal(tests, 96); +}); +const report = {baseline, nativeBaseline, scope:'Static source/resource contracts only; not compilation, runtime or manual acceptance', + inventory: {productionFiles:production.length, testFiles:testFiles.length, tests}, + changedFiles:changedFiles.map(file => ({file, sha256:fs.existsSync(path.join(root, file)) + ? createHash('sha256').update(fs.readFileSync(path.join(root, file))).digest('hex') : null})), results}; const reportFlag = process.argv.indexOf('--report'); if (reportFlag !== -1) { From 9c5f628c9d70eeb2778802afd17f2e99e297a4c0 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 7 Nov 2026 23:03:13 +0000 Subject: [PATCH 07/10] Pin the local basePower 1.17.1 inputs --- README.md | 5 +++-- build.gradle | 6 +++++- docs/NATIVE117.md | 11 +++++------ gradle.properties | 11 ++++++----- tools/verify-native-port.js | 17 ++++++----------- 5 files changed, 25 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index aaf215e..be72214 100644 --- a/README.md +++ b/README.md @@ -35,8 +35,9 @@ that this one passes. ## Dependencies -The coordinated basePower `2.4.9.117011` source and artifact pins are pending -in `gradle.properties`. Builds deliberately stop until those inputs are recorded. +The coordinated basePower `2.4.9.117011` is pinned to local source +`308d42a89483d56d0fad4805cdb65dac483d9e31`. Its development jar, player jar, +and test bootstrap have separate SHA-256 pins in `gradle.properties`. Base Metals `3.1.1.117011` is pinned to the local startup fix `0deeeeecdbbc1fbcdecf910c59477de8efe164d7` and its verified deobf SHA-256 in `gradle.properties`. That source is unpushed; hosted builds cannot fetch it. diff --git a/build.gradle b/build.gradle index aa6690c..5ed1073 100644 --- a/build.gradle +++ b/build.gradle @@ -423,7 +423,11 @@ tasks.register('verifyReleaseConfiguration') { throw new GradleException('Unexpected CurseForge dependency or game-version metadata') } if (project.poweradvantage_version != '2.4.9.117011' - || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/basePower') { + || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/basePower' + || project.poweradvantage_source_ref != '308d42a89483d56d0fad4805cdb65dac483d9e31' + || project.poweradvantage_deobf_sha256 != '312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E' + || project.poweradvantage_unit_bootstrap_sha256 != '28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095' + || project.poweradvantage_runtime_sha256 != 'C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F') { throw new GradleException('Unexpected basePower compile dependency identity') } if (project.basemetals_version != '3.1.1.117011' diff --git a/docs/NATIVE117.md b/docs/NATIVE117.md index 227c613..1fb4fb9 100644 --- a/docs/NATIVE117.md +++ b/docs/NATIVE117.md @@ -9,12 +9,11 @@ namespace changes, with specific checks for the retained old IDs and the shared basePower creative tab. The Eclipse refresh fix replaces stale runtime archives without changing the Forge bootstrap order or the launch runtime. -The basePower `2.4.9.117011` pins are pending. Base Metals `3.1.1.117011` is -pinned for local development to the unpushed startup fix; hosted qualification -requires authorized source availability. Its runtime SHA-256 remains pending. -Run fresh deterministic and ECJ checks, a repeated Eclipse refresh, and packaged -migration on disposable worlds after the coordinated inputs arrive. The results -below belong to the pre-rename port and do not qualify this candidate. +The basePower `2.4.9.117011` source, development jar, player jar and bootstrap +are pinned separately. Base Metals `3.1.1.117011` is pinned for local development +to the unpushed startup fix; hosted qualification requires authorized source +availability. Its runtime SHA-256 remains pending. The historical results below +belong to the pre-rename port and do not qualify this candidate. ## Historical Electric Advantage Checkpoint diff --git a/gradle.properties b/gradle.properties index 238e49b..138a826 100644 --- a/gradle.properties +++ b/gradle.properties @@ -36,12 +36,13 @@ cf_optionals= cf_versions=1.17.1 poweradvantage_version=2.4.9.117011 -poweradvantage_pin_state=PENDING +poweradvantage_pin_state=LOCAL_CHECKPOINT poweradvantage_source_repository=MinecraftModDevelopmentMods/basePower -# Fill from the coordinated, immutable 1.17.1 inputs before building. -poweradvantage_source_ref= -poweradvantage_deobf_sha256= -poweradvantage_unit_bootstrap_sha256= +# Local-only source checkpoint; development and player jars are distinct. +poweradvantage_source_ref=308d42a89483d56d0fad4805cdb65dac483d9e31 +poweradvantage_deobf_sha256=312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E +poweradvantage_runtime_sha256=C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F +poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 basemetals_version=3.1.1.117011 # Local startup fix; exact source is not available to hosted builds. diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index f4e8591..12bd3b8 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -78,23 +78,18 @@ check('Exact native 1.17.1 build target', () => { assert.match(metadata, /modId="basemetals"\s+mandatory=false\s+versionRange="\[3\.1\.1\.117011,4\.0\.0\)"/); assert(metadata.includes('modId="baseelectric"') && metadata.includes('displayName="baseElectric"')); }); -check('Pending basePower API pins fail closed; exact Base Metals and OreSpawn pins are retained', () => { - const artifactPins = ['poweradvantage_deobf_sha256', 'poweradvantage_unit_bootstrap_sha256']; +check('Exact local basePower, Base Metals and OreSpawn pins are retained', () => { assert.equal(properties.poweradvantage_source_repository, 'MinecraftModDevelopmentMods/basePower'); - if (properties.poweradvantage_pin_state === 'PENDING') { - for (const key of ['poweradvantage_source_ref', ...artifactPins]) { - assert.equal(properties[key], '', key); - } - } else { - assert.equal(properties.poweradvantage_pin_state, 'LOCAL_CHECKPOINT'); - assert.match(properties.poweradvantage_source_ref, /^[a-f0-9]{40}$/); - for (const key of artifactPins) assert.match(properties[key], /^[A-F0-9]{64}$/, key); - } + assert.equal(properties.poweradvantage_pin_state, 'LOCAL_CHECKPOINT'); const build = read('build.gradle'); assert.match(build, /poweradvantage_pin_state != 'LOCAL_CHECKPOINT'/); assert.match(build, /requireDevelopmentPins\(\)\s+def powerAdvantageDeobfJarPath/); assert(!build.includes('defaultPowerAdvantageDeobfJar')); for (const [key, value] of Object.entries({ + poweradvantage_source_ref:'308d42a89483d56d0fad4805cdb65dac483d9e31', + poweradvantage_deobf_sha256:'312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E', + poweradvantage_runtime_sha256:'C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F', + poweradvantage_unit_bootstrap_sha256:'28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095', basemetals_source_commit:'0deeeeecdbbc1fbcdecf910c59477de8efe164d7', basemetals_deobf_sha256:'83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1', orespawn_source_commit:'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf', From 390b774bef91dcf7636650cc0f6d4cb7ea516168 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 7 Nov 2026 23:07:57 +0000 Subject: [PATCH 08/10] Document Java 8 for the Eclipse generator --- README.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index be72214..aca65bc 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,8 @@ older Electric Advantage saves, as well as saves that already use baseElectric I - Forge `37.1.1`, official `1.17.1` mappings, MCP `20210706.113038`. - ForgeGradle `7.0.34`, Renamer `1.1.5`, Gradle `9.6.1`. - Java 17 runs Gradle; Java 25 runs Mavenizer. Production and tests use - Java `16.0.2+7`, class major `60`. Java 8 is only for old dependency build utilities. + Java `16.0.2+7`, class major `60`. The Eclipse generator also needs Java 8 + for ForgeGradle's Slime Launcher tooling; the game launches use Java 16. - Production artifact: `build/libs/baseElectric-2.2.10.117011.jar`. The separate deobfuscated API artifact stays under `build/libs-dev`. @@ -26,8 +27,9 @@ basePower, Base Metals and OreSpawn are separate dependencies, never embedded. The identity port keeps the native 1.17.1 models, shader, GUI, loot and recipe book behavior. The 96-test suite is retained, with additional legacy ID cases in the existing migration test. The prior Electric Advantage build and ECJ results -are historical; they do not qualify this candidate. Compilation, packaged world -migration and manual gameplay checks are still pending. +are historical; they do not qualify this candidate. Local builds are recorded +against exact source and artifact hashes. Packaged world migration and manual +gameplay are separate checks. See [the native port notes](docs/NATIVE117.md) for the API audit and remaining gates. The retained [1.16 notes](docs/NATIVE116.md) describe the previous target, not proof @@ -54,8 +56,8 @@ Once the pins are set, run from this repository with the arguments below: ``` On Windows, use `gradlew.bat` instead of `./gradlew`. Set `JAVA_HOME` to Java 17 -for Gradle and install the Java 16 production toolchain and Java 25 Mavenizer -runtime listed above. The older dependency build utilities also need Java 8. +for Gradle and install the Java 16 production toolchain, Java 25 Mavenizer +runtime and Java 8 build tooling listed above. Append these arguments using immutable local inputs. In particular, the build does not discover a basePower jar or bootstrap source in a sibling checkout: From cf3d4b0e2d1591b2ae8e5d638002ca016e46eac4 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Sat, 7 Nov 2026 23:15:33 +0000 Subject: [PATCH 09/10] Quote Eclipse data launch paths on refresh --- build.gradle | 63 +++++++++++++++++++++++++++++++++++----------------- 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/build.gradle b/build.gradle index 5ed1073..74cd8ce 100644 --- a/build.gradle +++ b/build.gradle @@ -830,6 +830,35 @@ tasks.register('configureEclipseBuildship') { } } +def quoteEclipseLaunchPaths = { String name, String arguments -> + // ForgeGradle flattens path arguments without quoting them for Eclipse. + Map nextOptions = [ + '--cache': '--metadata', '--metadata': '--to-srg', + '--to-srg': '--to-obf', '--to-obf': '--' + ] + if (name == 'runData.launch') { + nextOptions.put('--output', '--existing') + nextOptions.put('--existing', null) + } + nextOptions.each { String option, String next -> + String prefix = " ${option} " + int start = arguments.indexOf(prefix) + if (start < 0) { + throw new GradleException("${name} is missing path argument ${option}") + } + start += prefix.length() + int end = next == null ? arguments.length() : arguments.indexOf(" ${next} ", start) + if (end <= start) { + throw new GradleException("${name} has malformed path argument ${option}") + } + String value = arguments.substring(start, end) + if (value.find(/\s/) != null && !(value.startsWith('"') && value.endsWith('"'))) { + arguments = arguments.substring(0, start) + '"' + value + '"' + arguments.substring(end) + } + } + arguments +} + tasks.register('isolateEclipseProductionRuns') { group = 'ide' description = 'Normalizes ForgeGradle Eclipse launches for production-only execution.' @@ -871,6 +900,13 @@ tasks.register('isolateEclipseProductionRuns') { String eclipseModClasses = "${project.mod_id}%%${mainOutput}" + "${File.pathSeparator}${project.mod_id}%%${mainOutput}" modClasses[0].@value = eclipseModClasses + def programArguments = launchXml.stringAttribute.find { + it.@key == 'org.eclipse.jdt.launching.PROGRAM_ARGUMENTS' + } + if (programArguments == null) { + throw new GradleException("${launch.name} is missing its program arguments") + } + programArguments.@value = quoteEclipseLaunchPaths(launch.name, programArguments.@value) // A launch reused across the rename may still point at the old Eclipse project. launchXml.stringAttribute.findAll { it.@key == 'org.eclipse.jdt.launching.PROJECT_ATTR' }.each { it.@value = project.name @@ -935,26 +971,7 @@ tasks.register('isolateEclipseProductionRuns') { new Node(null, 'listEntry', [value: groovy.xml.XmlUtil.serialize(archive)]) } classpath.children().addAll(runtimeIndex, runtimeEntries) - contents = groovy.xml.XmlUtil.serialize(launchXml) - - ['--cache', '--metadata', '--to-srg', '--to-obf'].each { option -> - String prefix = option + ' ' - int valueStart = contents.indexOf(prefix) - if (valueStart < 0) { - throw new GradleException("${name} is missing Slime Launcher argument ${option}") - } - valueStart += prefix.length() - int valueEnd = contents.indexOf(' --', valueStart) - if (valueEnd < 0) { - throw new GradleException("${name} has malformed Slime Launcher argument ${option}") - } - String value = contents.substring(valueStart, valueEnd) - if (value.find(/\s/) != null && !value.startsWith('"')) { - contents = (contents.substring(0, valueStart) - + '"' + value + '"' + contents.substring(valueEnd)) - } - } - launch.setText(contents.replace('\r\n', '\n'), 'UTF-8') + launch.setText(groovy.xml.XmlUtil.serialize(launchXml).replace('\r\n', '\n'), 'UTF-8') } } } @@ -1017,6 +1034,12 @@ tasks.register('verifyEclipseProductionClasspath') { if (modClasses != expectedModClasses) { throw new GradleException("${name} does not discover the Eclipse production mod in bin/main") } + String programArguments = launch.stringAttribute.find { + it.@key.text() == 'org.eclipse.jdt.launching.PROGRAM_ARGUMENTS' + }.@value.text() + if (quoteEclipseLaunchPaths(name, programArguments) != programArguments) { + throw new GradleException("${name} has an unquoted path argument") + } } ['runClient.launch', 'runServer.launch'].each { name -> def launch = new groovy.xml.XmlSlurper().parse(file(name)) From c0d6a7aa282d7fd013943ad8f8b78175dbf95082 Mon Sep 17 00:00:00 2001 From: JohnBraham Date: Mon, 9 Nov 2026 13:51:29 +0000 Subject: [PATCH 10/10] Use the published basePower build for baseElectric 1.17.1 --- .github/workflows/ci.yml | 5 +++++ CHANGELOG.txt | 1 + README.md | 11 +++++------ build.gradle | 8 ++++---- gradle.properties | 10 +++++----- tools/verify-native-port.js | 8 ++++---- 6 files changed, 24 insertions(+), 19 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9cb14e1..8d0bfcc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -111,6 +111,11 @@ jobs: --no-daemon --stacktrace) powerjar="$power/build/libs-dev/basePower-2.4.9.117011-deobf.jar" test -f "$osjar" && test -f "$bmjar" && test -f "$powerjar" + release="$RUNNER_TEMP/basePower-2.4.9.117011.jar" + curl --fail --silent --show-error --location --retry 3 --output "$release" \ + 'https://maven.moddev.zone/releases/zone/moddev/mc/basepower/basePower/2.4.9.117011/basePower-2.4.9.117011.jar' + power_release_sha=$(sed -n 's/^poweradvantage_runtime_sha256=//p' gradle.properties | tr -d '\r') + printf '%s %s\n' "$power_release_sha" "$release" | sha256sum --check echo "orespawn=$osjar" >> "$GITHUB_OUTPUT" echo "basemetals=$bmjar" >> "$GITHUB_OUTPUT" echo "power=$powerjar" >> "$GITHUB_OUTPUT" diff --git a/CHANGELOG.txt b/CHANGELOG.txt index ba796bc..f960d3a 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -3,6 +3,7 @@ baseElectric 2.2.10.117011 (Minecraft 1.17.1) - Continue Electric Advantage as baseElectric, with its blocks and items in the shared basePower creative tab. - Recognize older Electric Advantage blocks, items, machines and hydroturbines when upgrading. - Keep the native 1.17.1 machine controls, drops and recipe discoveries. +- Build and test against the published basePower 2.4.9.117011 release. Electric Advantage 2.2.9.117011 - Minecraft 1.17.1 local port candidate diff --git a/README.md b/README.md index aca65bc..d6a44c0 100644 --- a/README.md +++ b/README.md @@ -37,12 +37,11 @@ that this one passes. ## Dependencies -The coordinated basePower `2.4.9.117011` is pinned to local source -`308d42a89483d56d0fad4805cdb65dac483d9e31`. Its development jar, player jar, -and test bootstrap have separate SHA-256 pins in `gradle.properties`. -Base Metals `3.1.1.117011` is pinned to the local startup fix -`0deeeeecdbbc1fbcdecf910c59477de8efe164d7` and its verified deobf SHA-256 in -`gradle.properties`. That source is unpushed; hosted builds cannot fetch it. +The build pins the merged source and the published +[basePower 2.4.9.117011 player jar](https://maven.moddev.zone/releases/zone/moddev/mc/basepower/basePower/2.4.9.117011/basePower-2.4.9.117011.jar). +The development jar, player jar and test bootstrap have separate SHA-256 +pins in `gradle.properties`. Base Metals `3.1.1.117011` includes the published +startup fix; its source and artifacts are pinned there too. OreSpawn `4.1.0.117011` uses public source `b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf`. Record the runtime SHA-256 values separately from the development jar hashes. diff --git a/build.gradle b/build.gradle index 74cd8ce..cb30e36 100644 --- a/build.gradle +++ b/build.gradle @@ -424,15 +424,15 @@ tasks.register('verifyReleaseConfiguration') { } if (project.poweradvantage_version != '2.4.9.117011' || project.poweradvantage_source_repository != 'MinecraftModDevelopmentMods/basePower' - || project.poweradvantage_source_ref != '308d42a89483d56d0fad4805cdb65dac483d9e31' - || project.poweradvantage_deobf_sha256 != '312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E' + || project.poweradvantage_source_ref != 'bb7023835fd41aefe89c92275caa74da9e126cc7' + || project.poweradvantage_deobf_sha256 != 'AFC3FBDF84FF7E8FF8929F8192FDBCEC170C9AE1CF1B248E1C4B9C6ED17AA357' || project.poweradvantage_unit_bootstrap_sha256 != '28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095' - || project.poweradvantage_runtime_sha256 != 'C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F') { + || project.poweradvantage_runtime_sha256 != 'A788C08163CECE1C6D33FBDC295BE6EC272DE9AF7911BE74E707D0EE9121DF73') { throw new GradleException('Unexpected basePower compile dependency identity') } if (project.basemetals_version != '3.1.1.117011' || project.orespawn_version != '4.1.0.117011' - || project.basemetals_source_commit != '0deeeeecdbbc1fbcdecf910c59477de8efe164d7' + || project.basemetals_source_commit != '65f9956c07d5d0c0b6ec0ac2108ce69c3ce52c6e' || project.basemetals_deobf_sha256 != '83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1' || project.orespawn_source_commit != 'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf' || project.orespawn_deobf_sha256 != 'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39' diff --git a/gradle.properties b/gradle.properties index 138a826..c634424 100644 --- a/gradle.properties +++ b/gradle.properties @@ -39,16 +39,16 @@ poweradvantage_version=2.4.9.117011 poweradvantage_pin_state=LOCAL_CHECKPOINT poweradvantage_source_repository=MinecraftModDevelopmentMods/basePower # Local-only source checkpoint; development and player jars are distinct. -poweradvantage_source_ref=308d42a89483d56d0fad4805cdb65dac483d9e31 -poweradvantage_deobf_sha256=312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E -poweradvantage_runtime_sha256=C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F +poweradvantage_source_ref=bb7023835fd41aefe89c92275caa74da9e126cc7 +poweradvantage_deobf_sha256=AFC3FBDF84FF7E8FF8929F8192FDBCEC170C9AE1CF1B248E1C4B9C6ED17AA357 +poweradvantage_runtime_sha256=A788C08163CECE1C6D33FBDC295BE6EC272DE9AF7911BE74E707D0EE9121DF73 poweradvantage_unit_bootstrap_sha256=28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095 basemetals_version=3.1.1.117011 # Local startup fix; exact source is not available to hosted builds. -basemetals_source_commit=0deeeeecdbbc1fbcdecf910c59477de8efe164d7 +basemetals_source_commit=65f9956c07d5d0c0b6ec0ac2108ce69c3ce52c6e basemetals_deobf_sha256=83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1 -basemetals_runtime_sha256= +basemetals_runtime_sha256=F3053F23D2415476FC52426A24E3B0B828198A678FBD5DD789923DB2063E0FEB orespawn_version=4.1.0.117011 orespawn_source_commit=b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf diff --git a/tools/verify-native-port.js b/tools/verify-native-port.js index 12bd3b8..2b3e1b7 100644 --- a/tools/verify-native-port.js +++ b/tools/verify-native-port.js @@ -86,11 +86,11 @@ check('Exact local basePower, Base Metals and OreSpawn pins are retained', () => assert.match(build, /requireDevelopmentPins\(\)\s+def powerAdvantageDeobfJarPath/); assert(!build.includes('defaultPowerAdvantageDeobfJar')); for (const [key, value] of Object.entries({ - poweradvantage_source_ref:'308d42a89483d56d0fad4805cdb65dac483d9e31', - poweradvantage_deobf_sha256:'312FA3012CB57C91F5F22079DA4778D481BA45EF7B8A0587D9993899E1B6D08E', - poweradvantage_runtime_sha256:'C55782CA1B0F3B8F7B358BE3150229F5AD92F8C8CE15E3989AAAD1B4F182886F', + poweradvantage_source_ref:'bb7023835fd41aefe89c92275caa74da9e126cc7', + poweradvantage_deobf_sha256:'AFC3FBDF84FF7E8FF8929F8192FDBCEC170C9AE1CF1B248E1C4B9C6ED17AA357', + poweradvantage_runtime_sha256:'A788C08163CECE1C6D33FBDC295BE6EC272DE9AF7911BE74E707D0EE9121DF73', poweradvantage_unit_bootstrap_sha256:'28080BD563D6D2F378AD2735BBEFEBB079DBFC87A9457E066DDB99F43C3D4095', - basemetals_source_commit:'0deeeeecdbbc1fbcdecf910c59477de8efe164d7', + basemetals_source_commit:'65f9956c07d5d0c0b6ec0ac2108ce69c3ce52c6e', basemetals_deobf_sha256:'83A8C32C633B56BB7E4405E8B3B24A4DEA32B9119216E5097B884056D679CAD1', orespawn_source_commit:'b56e2b62a1a6ea4d1dd96f8646a87801a817dbdf', orespawn_deobf_sha256:'CB7A736314842B110B2E4788FBD5E21D4AE8803C5ED34A49199B034BE572DA39',