Skip to content

Commit

Permalink
1.20.4
Browse files Browse the repository at this point in the history
  • Loading branch information
RogueLogix committed Feb 17, 2024
1 parent 077a68f commit a2146d0
Show file tree
Hide file tree
Showing 28 changed files with 275 additions and 176 deletions.
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ out
*.ipr
*.iws
*.iml
.idea

# gradle
build
Expand Down
11 changes: 11 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions .idea/codeStyles/Project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/codeStyles/codeStyleConfig.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/compiler.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

19 changes: 19 additions & 0 deletions .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions .idea/inspectionProfiles/QuartzCodeStyle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/inspectionProfiles/profiles_settings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 15 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Phosphophyllite
Submodule Phosphophyllite updated 73 files
+0 −1 .gitignore
+11 −0 .idea/.gitignore
+20 −0 .idea/codeStyles/Project.xml
+5 −0 .idea/codeStyles/codeStyleConfig.xml
+6 −0 .idea/compiler.xml
+18 −0 .idea/gradle.xml
+28 −0 .idea/inspectionProfiles/PhosCodeStyle.xml
+6 −0 .idea/inspectionProfiles/profiles_settings.xml
+16 −0 .idea/misc.xml
+8 −0 .idea/modules.xml
+6 −0 .idea/vcs.xml
+35 −58 build.gradle
+5 −4 gradle.properties
+10 −10 src/main/java/net/roguelogix/phosphophyllite/Phosphophyllite.java
+0 −1 src/main/java/net/roguelogix/phosphophyllite/blocks/PhosphophylliteOre.java
+0 −63 src/main/java/net/roguelogix/phosphophyllite/blocks/PhosphophylliteOreTile.java
+8 −16 src/main/java/net/roguelogix/phosphophyllite/blocks/blackholes/FluidBlackHoleTile.java
+7 −15 src/main/java/net/roguelogix/phosphophyllite/blocks/blackholes/ItemBlackHoleTile.java
+8 −8 src/main/java/net/roguelogix/phosphophyllite/blocks/blackholes/PowerBlackHole.java
+53 −57 src/main/java/net/roguelogix/phosphophyllite/blocks/blackholes/PowerBlackHoleTile.java
+12 −19 src/main/java/net/roguelogix/phosphophyllite/blocks/whiteholes/FluidWhiteHoleTile.java
+12 −26 src/main/java/net/roguelogix/phosphophyllite/blocks/whiteholes/ItemWhiteHoleTile.java
+7 −8 src/main/java/net/roguelogix/phosphophyllite/blocks/whiteholes/PowerWhiteHole.java
+28 −48 src/main/java/net/roguelogix/phosphophyllite/blocks/whiteholes/PowerWhiteHoleTile.java
+100 −0 src/main/java/net/roguelogix/phosphophyllite/capability/CachedWrappedBlockCapability.java
+37 −95 src/main/java/net/roguelogix/phosphophyllite/client/gui/GuiSync.java
+3 −3 src/main/java/net/roguelogix/phosphophyllite/client/gui/RenderHelper.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/ScreenCallbacks.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/api/IRender.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/api/ITooltip.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/elements/AbstractElement.java
+4 −4 src/main/java/net/roguelogix/phosphophyllite/client/gui/elements/InteractiveElement.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/elements/RenderedElement.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/client/gui/elements/TooltipElement.java
+6 −6 src/main/java/net/roguelogix/phosphophyllite/client/gui/screens/PhosphophylliteScreen.java
+43 −59 src/main/java/net/roguelogix/phosphophyllite/config/ConfigManager.java
+3 −3 src/main/java/net/roguelogix/phosphophyllite/config/ConfigRegistration.java
+2 −1 src/main/java/net/roguelogix/phosphophyllite/config/ConfigType.java
+270 −280 src/main/java/net/roguelogix/phosphophyllite/energy/EnergyHandlerWrappers.java
+21 −70 src/main/java/net/roguelogix/phosphophyllite/energy/IEnergyTile.java
+7 −6 src/main/java/net/roguelogix/phosphophyllite/energy/IPhosphophylliteEnergyHandler.java
+2 −1 src/main/java/net/roguelogix/phosphophyllite/event/ReloadDataEvent.java
+3 −3 src/main/java/net/roguelogix/phosphophyllite/fluids/FluidHandlerWrapper.java
+5 −6 src/main/java/net/roguelogix/phosphophyllite/fluids/IPhosphophylliteFluidHandler.java
+25 −21 src/main/java/net/roguelogix/phosphophyllite/fluids/MekanismGasWrappers.java
+9 −8 src/main/java/net/roguelogix/phosphophyllite/fluids/PhosphophylliteFluidStack.java
+25 −0 src/main/java/net/roguelogix/phosphophyllite/items/Wrench.java
+0 −8 src/main/java/net/roguelogix/phosphophyllite/mixin/helpers/IPhosphophylliteLazyOptional.java
+0 −21 src/main/java/net/roguelogix/phosphophyllite/mixin/mixins/LazyOptionalMixin.java
+1 −19 src/main/java/net/roguelogix/phosphophyllite/modular/api/TileModule.java
+4 −4 src/main/java/net/roguelogix/phosphophyllite/modular/tile/IIsTickingTracker.java
+0 −271 src/main/java/net/roguelogix/phosphophyllite/modular/tile/ISidedMultipart.java
+8 −50 src/main/java/net/roguelogix/phosphophyllite/modular/tile/PhosphophylliteTile.java
+7 −7 src/main/java/net/roguelogix/phosphophyllite/multiblock/MultiblockRegistry.java
+56 −29 src/main/java/net/roguelogix/phosphophyllite/networking/SimplePhosChannel.java
+70 −0 src/main/java/net/roguelogix/phosphophyllite/registry/CapabilityRegistration.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/registry/PhosphophylliteFluid.java
+7 −0 src/main/java/net/roguelogix/phosphophyllite/registry/RegisterCapability.java
+153 −58 src/main/java/net/roguelogix/phosphophyllite/registry/Registry.java
+0 −14 src/main/java/net/roguelogix/phosphophyllite/registry/SideOnly.java
+12 −0 src/main/java/net/roguelogix/phosphophyllite/serialization/PhosphophylliteCompound.java
+2 −2 src/main/java/net/roguelogix/phosphophyllite/threading/Queues.java
+1 −1 src/main/java/net/roguelogix/phosphophyllite/threading/WorkQueue.java
+15 −0 src/main/java/net/roguelogix/phosphophyllite/util/API.java
+1 −1 src/main/java/net/roguelogix/phosphophyllite/util/NonnullDefault.java
+1 −8 src/main/java/net/roguelogix/phosphophyllite/util/Pair.java
+3 −3 src/main/java/net/roguelogix/phosphophyllite/util/Util.java
+2 −2 src/main/resources/META-INF/accesstransformer.cfg
+8 −5 src/main/resources/META-INF/mods.toml
+6 −0 src/main/resources/assets/phosphophyllite/models/item/wrench.json
+6 −0 src/main/resources/data/forge/tags/items/tools/wrench.json
+2 −3 src/main/resources/phosphophyllite.mixins.json
+ src/main/resources/phosphophyllite.png
125 changes: 47 additions & 78 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
plugins {
id 'java-library'
id 'eclipse'
id 'idea'
id 'maven-publish'
id 'net.neoforged.gradle' version '[6.0.18,6.2)'
id 'org.spongepowered.mixin' version '0.7.+'
id 'org.parchmentmc.librarian.forgegradle' version '1.+'
id 'net.neoforged.gradle.userdev' version '7.0.+'
id 'net.neoforged.gradle.mixin' version '7.0.+'
}

evaluationDependsOnChildren()
Expand Down Expand Up @@ -40,90 +40,67 @@ if (version.contains("alpha") || version.contains("beta")) {
setProperty("compatibility", "[" + version + ", " + nextIncompatibleVersion + ")")
}


java.toolchain.languageVersion = JavaLanguageVersion.of(17)

println "Java: ${System.getProperty 'java.version'}, JVM: ${System.getProperty 'java.vm.version'} (${System.getProperty 'java.vendor'}), Arch: ${System.getProperty 'os.arch'}"
accessTransformers {
file 'src/main/resources/META-INF/accesstransformer.cfg'
}

minecraft {
mappings channel: mapping_channel, version: mapping_version

copyIdeResources = true
accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg')
runs {
configureEach {
workingDirectory project.file("run/${it.name}")

runs {
// applies to all the run configs below
configureEach {
workingDirectory project.file("run/${it.name}")
systemProperty 'forge.logging.markers', 'SCAN,REGISTRIES'
systemProperty 'forge.logging.console.level', 'debug'

property 'forge.logging.markers', 'SCAN,REGISTRIES'
property 'forge.logging.console.level', 'debug'
modSource project.sourceSets.main
modSource project(':Phosphophyllite').sourceSets.main

mods {
"${mod_id}" {
source sourceSets.main
}
Phosphophyllite {
source project(':Phosphophyllite').sourceSets.main
}
dependencies {
runtime("org.lwjgl:lwjgl-vulkan:3.3.1") {
transitive(false)
}
}
}

client {
// Comma-separated list of namespaces to load gametests from. Empty = all namespaces.
property 'forge.enabledGameTestNamespaces', mod_id
}

server {
property 'forge.enabledGameTestNamespaces', mod_id
args '--nogui'
}
client {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
}

// This run config launches GameTestServer and runs all registered gametests, then exits.
// By default, the server will crash when no gametests are provided.
// The gametest system is also enabled by default for other run configs under the /test command.
gameTestServer {
property 'forge.enabledGameTestNamespaces', mod_id
}
server {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
programArgument '--nogui'
}

data {
// example of overriding the workingDirectory set in configureEach above, uncomment if you want to use it
// workingDirectory project.file('run-data')
gameTestServer {
systemProperty 'forge.enabledGameTestNamespaces', project.mod_id
}

// Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources.
args '--mod', mod_id, '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/')
}
data {
programArguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath()
}
}


// Include resources generated by data generators.
sourceSets.main.resources { srcDir 'src/generated/resources' }

mixin {
add sourceSets.main, "quartz.refmap.json"
config 'quartz.mixins.json'
config 'phosphophyllite.mixins.json'
}

repositories {
maven {
url = "https://www.cursemaven.com"
}
}

dependencies {
minecraft "net.neoforged:forge:${mc_version}-${neo_version}"

annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
implementation "net.neoforged:neoforge:${neo_version}"

compileOnly project(':Phosphophyllite')
minecraftLibrary ("org.lwjgl:lwjgl-vulkan:3.3.1"){
compileOnly("org.lwjgl:lwjgl-vulkan:3.3.1") {
transitive(false)
}

compileOnly fg.deobf('curse.maven:Rubidium-574856:4684247')
compileOnly fg.deobf('curse.maven:Oculus-581495:4578741')
compileOnly 'curse.maven:Rubidium-574856:4684247'
compileOnly 'curse.maven:Oculus-581495:4578741'
}

gradle.projectsEvaluated {
Expand All @@ -138,13 +115,13 @@ gradle.projectsEvaluated {
var replaceProperties = [
minecraft_version : mc_version,
neo_version : neo_version,
loader_version : neo_version.substring(0, neo_version.indexOf('.')),
loader_version : loader_version,
version : version,
phos_version_range: project.project(":Phosphophyllite").property("compatibility").toString(),
]
inputs.properties replaceProperties

filesMatching(['META-INF/mods.toml', 'pack.mcmeta']) {
filesMatching(['META-INF/mods.toml']) {
expand replaceProperties + [project: project]
}
}
Expand Down Expand Up @@ -193,27 +170,19 @@ publishing {
}
}

// NeoGradle is dumb, and generates the run configs incorrectly, this fixes them
tasks.register('zzz_copyRunConfigsToTmpDir', Copy) {
from '.idea/runConfigurations'
into '.idea/runConfigurations1'
}

tasks.register('zzz_depeteTmpDir', Delete) {
delete '.idea/runConfigurations1'
}
// NeoGradle bug, this works around it
gradle.projectsEvaluated {
var subProject = project('Phosphophyllite')

tasks.register('_createIntellijRunsThatWork', Copy) {
dependsOn 'genIntellijRuns'
mustRunAfter 'genIntellijRuns'
dependsOn 'zzz_copyRunConfigsToTmpDir'
mustRunAfter 'zzz_copyRunConfigsToTmpDir'
var neoFormJoinDownloadAssetsTaskName = null
for (final def taskName in project.tasks.getNames()) {
if (taskName.contains("neoFormJoined") && taskName.contains("DownloadAssets")) {
neoFormJoinDownloadAssetsTaskName = taskName
break
}
}

from '.idea/runConfigurations1'
into '.idea/runConfigurations'
filter { String line -> line.replace("out/production/classes", "build/classes/java/main") }
filter { String line -> line.replace("out/production/resources", "build/resources/main") }
filter { String line -> line.replace("copyIntellijResources", "prepareRunClientCompile") }
println(neoFormJoinDownloadAssetsTaskName)

finalizedBy 'zzz_depeteTmpDir'
project.tasks.getByPath(neoFormJoinDownloadAssetsTaskName).mustRunAfter(subProject.tasks.getByPath(neoFormJoinDownloadAssetsTaskName))
}
9 changes: 5 additions & 4 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false

mc_version=1.20.1
mapping_channel=parchment
mapping_version=2023.07.09-1.20.1
neo_version=47.1.76
mc_version=1.20.4
mapping_channel=official
mapping_version=1.20.4
neo_version=20.4.156-beta
loader_version=1

majorVersion=0
minorVersion=2
Expand Down
15 changes: 6 additions & 9 deletions src/main/java/net/roguelogix/quartz/Quartz.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,21 @@

import it.unimi.dsi.fastutil.objects.ReferenceArrayList;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.model.ModelBakery;
import net.minecraft.core.BlockPos;
import net.minecraft.core.SectionPos;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.RandomSource;
import net.minecraft.world.level.BlockAndTintGetter;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraftforge.client.event.ModelEvent;
import net.minecraftforge.client.model.data.ModelData;
import net.minecraftforge.eventbus.api.BusBuilder;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.fml.common.Mod;
import net.neoforged.bus.api.BusBuilder;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.fml.common.Mod;
import net.neoforged.neoforge.client.model.data.ModelData;
import net.roguelogix.phosphophyllite.Phosphophyllite;
import net.roguelogix.phosphophyllite.registry.Registry;
import org.joml.Vector3ic;
import net.roguelogix.phosphophyllite.util.NonnullDefault;
import net.roguelogix.quartz.internal.QuartzCore;
import org.joml.Vector3ic;

import java.util.function.Consumer;

Expand All @@ -32,7 +29,7 @@ public Quartz(){
new Registry(ReferenceArrayList.of(new ResourceLocation(Phosphophyllite.modid, "creative_tab")), new ReferenceArrayList<>());
}

public static IEventBus EVENT_BUS = BusBuilder.builder().setTrackPhases(false).build();
public static IEventBus EVENT_BUS = BusBuilder.builder().allowPerPhasePost().build();

public static Mesh createStaticMesh(BlockState blockState) {
return createStaticMesh(builder -> {
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/net/roguelogix/quartz/QuartzConfig.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package net.roguelogix.quartz;

import net.minecraftforge.fml.loading.FMLLoader;
import net.neoforged.fml.loading.FMLLoader;
import net.roguelogix.phosphophyllite.Phosphophyllite;
import net.roguelogix.phosphophyllite.config.ConfigManager;
import net.roguelogix.phosphophyllite.config.ConfigType;
Expand Down
Loading

0 comments on commit a2146d0

Please sign in to comment.