mirror of
https://github.com/GTNewHorizons/ThaumicHorizons.git
synced 2026-10-26 22:48:59 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
916808e245 | ||
|
|
31cd11ae4e | ||
|
|
84da10d17e | ||
|
|
7f576cc7d9 | ||
|
|
bd9ddad84c | ||
|
|
7ff16faec3 | ||
|
|
5104fb5871 | ||
|
|
c0a91fde66 | ||
|
|
632ef1bc56 | ||
|
|
b34849271b | ||
|
|
ac25bc65d4 | ||
|
|
7b128f0670 | ||
|
|
fcd0c9e762 | ||
|
|
4db0b1ac07 | ||
|
|
835386352e | ||
|
|
83bed04da1 | ||
|
|
5a6b05f13c | ||
|
|
16d9b525db | ||
|
|
b7291f8456 | ||
|
|
9e52237a2c | ||
|
|
ab3ee05667 | ||
|
|
a458218979 | ||
|
|
66e3b422ca | ||
|
|
51763e0f80 | ||
|
|
c88f2117f1 | ||
|
|
ce1a38322d | ||
|
|
3d41f068be | ||
|
|
44563de7c4 | ||
|
|
1e92c12a02 | ||
|
|
5cd824635f | ||
|
|
f692f4e072 | ||
|
|
4feb0093ca | ||
|
|
e8e06d158c | ||
|
|
23fd27450c | ||
|
|
61282f78b3 | ||
|
|
4ca137f310 | ||
|
|
93bb3ebe20 | ||
|
|
308cd69e21 | ||
|
|
224c3e9693 | ||
|
|
695bcfbb5b | ||
|
|
f6fd32b557 | ||
|
|
95c5e6d1f3 | ||
|
|
2599dd85c9 | ||
|
|
4799d7b2cd | ||
|
|
3b869b8c74 | ||
|
|
21ab790045 | ||
|
|
3f4f2ca548 | ||
|
|
79dc3475e0 | ||
|
|
e1dbd7fd2f | ||
|
|
0479b655f6 | ||
|
|
abdb44b545 | ||
|
|
f42bcf230b | ||
|
|
c1b0d26bd5 | ||
|
|
d8788d1d22 | ||
|
|
3935278dd7 | ||
|
|
49c37a05d8 |
No files matched your search
@@ -27,6 +27,7 @@ whitelist.json
|
||||
*.iws
|
||||
src/main/resources/mixins.*.json
|
||||
*.bat
|
||||
*.sh
|
||||
*.DS_Store
|
||||
!gradlew.bat
|
||||
layout.json
|
||||
+4
-3
@@ -1,10 +1,11 @@
|
||||
// Add your dependencies here
|
||||
|
||||
dependencies {
|
||||
api('com.github.GTNewHorizons:Baubles-Expanded:2.2.22-GTNH:dev')
|
||||
api('com.github.GTNewHorizons:Baubles-Expanded:2.2.24-GTNH:dev')
|
||||
api('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
|
||||
|
||||
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.54.135:dev') {transitive = false}
|
||||
api("com.github.GTNewHorizons:GT5-Unofficial:5.99.99-mu57:dev") {transitive = false}
|
||||
api("com.ruling_0:MaterialLib:0.24.0-mu:dev")
|
||||
|
||||
runtimeOnlyNonPublishable('com.github.GTNewHorizons:AspectRecipeIndex:1.1.4:dev')
|
||||
runtimeOnlyNonPublishable('com.github.GTNewHorizons:AspectRecipeIndex:1.1.5:dev')
|
||||
}
|
||||
@@ -186,6 +186,11 @@ modrinthRelations =
|
||||
# Leave this empty if you don't want to publish on CurseForge.
|
||||
curseForgeProjectId = 227914
|
||||
|
||||
# Comma-separated supported CurseForge environments: client, server (case-insensitive).
|
||||
# Use client or server for mods that only support one environment. Defaults to client,server.
|
||||
# These tags describe where the mod can run, not whether installation is required on both sides.
|
||||
curseForgeEnvironments = client,server
|
||||
|
||||
# The project's relations on CurseForge. You can use this to refer to other projects on CurseForge.
|
||||
# Syntax: type1:name1;type2:name2;...
|
||||
# Where type can be one of [requiredDependency, embeddedLibrary, optionalDependency, tool, incompatible],
|
||||
|
||||
Vendored
BIN
Binary file not shown.
+3
-1
@@ -1,7 +1,9 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-9.4.0-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.1-bin.zip
|
||||
networkTimeout=10000
|
||||
retries=0
|
||||
retryBackOffMs=500
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# Gradle start up script for POSIX generated by Gradle.
|
||||
# gradlew start up script for POSIX generated by Gradle.
|
||||
#
|
||||
# Important for running:
|
||||
#
|
||||
@@ -29,7 +29,7 @@
|
||||
# bash, then to run this script, type that shell name before the whole
|
||||
# command line, like:
|
||||
#
|
||||
# ksh Gradle
|
||||
# ksh gradlew
|
||||
#
|
||||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
@@ -57,7 +57,7 @@
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/b631911858264c0b6e4d6603d677ff5218766cee/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
|
||||
Vendored
+12
-23
@@ -19,12 +19,12 @@
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem gradlew startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
@rem Set local scope for the variables, and ensure extensions are enabled
|
||||
setlocal EnableExtensions
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
@@ -51,7 +51,7 @@ echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
"%COMSPEC%" /c exit 1
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
@@ -65,29 +65,18 @@ echo. 1>&2
|
||||
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||
echo location of your Java installation. 1>&2
|
||||
|
||||
goto fail
|
||||
"%COMSPEC%" /c exit 1
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
|
||||
@rem Execute gradlew
|
||||
@rem endlocal doesn't take effect until after the line is parsed and variables are expanded
|
||||
@rem which allows us to clear the local environment before executing the java command
|
||||
endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if %ERRORLEVEL% equ 0 goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
set EXIT_CODE=%ERRORLEVEL%
|
||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||
exit /b %EXIT_CODE%
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
||||
:exitWithErrorLevel
|
||||
@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts
|
||||
"%COMSPEC%" /c exit %ERRORLEVEL%
|
||||
@@ -1,4 +1,5 @@
|
||||
// Add any additional repositories for your dependencies here
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
}
|
||||
+1
-1
@@ -17,7 +17,7 @@ pluginManagement {
|
||||
}
|
||||
|
||||
plugins {
|
||||
id 'com.gtnewhorizons.gtnhsettingsconvention' version '2.0.29'
|
||||
id 'com.gtnewhorizons.gtnhsettingsconvention' version '2.0.31'
|
||||
}
|
||||
|
||||
|
||||
@@ -225,6 +225,7 @@ import com.kentington.thaumichorizons.common.tiles.TileVatSlave;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVisDynamo;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortex;
|
||||
import com.kentington.thaumichorizons.common.tiles.TileVortexStabilizer;
|
||||
import com.ruling_0.materiallib.api.MaterialLibAPI;
|
||||
|
||||
import cpw.mods.fml.client.event.ConfigChangedEvent.OnConfigChangedEvent;
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
@@ -240,9 +241,8 @@ import cpw.mods.fml.common.eventhandler.SubscribeEvent;
|
||||
import cpw.mods.fml.common.network.NetworkRegistry;
|
||||
import cpw.mods.fml.common.registry.EntityRegistry;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import gregtech.api.enums.Materials;
|
||||
import gregtech.api.enums.OrePrefixes;
|
||||
import gregtech.api.util.GTOreDictUnificator;
|
||||
import gregtech.api.enums.materials.Materials;
|
||||
import gregtech.api.enums.materials.Shapes;
|
||||
import thaumcraft.api.ThaumcraftApi;
|
||||
import thaumcraft.api.aspects.Aspect;
|
||||
import thaumcraft.api.aspects.AspectList;
|
||||
@@ -2082,17 +2082,17 @@ public class ThaumicHorizons {
|
||||
.add(Aspect.AURA, 32).add(Aspect.MIND, 16).add(Aspect.ELDRITCH, 64),
|
||||
new ItemStack(itemPlanarConduit),
|
||||
new ItemStack[] { new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Glass, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedOrder, 1L),
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.gemExquisite, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedOrder, Shapes.lens, 1),
|
||||
new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Glass, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedOrder, 1L),
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.gemExquisite, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedOrder, Shapes.lens, 1),
|
||||
new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Glass, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedOrder, 1L),
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.gemExquisite, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedOrder, Shapes.lens, 1),
|
||||
new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
GTOreDictUnificator.get(OrePrefixes.gemExquisite, Materials.Glass, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.InfusedOrder, 1L) });
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.gemExquisite, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedOrder, Shapes.lens, 1) });
|
||||
recipeKeystone1 = ThaumcraftApi.addInfusionCraftingRecipe(
|
||||
"planarKeystone",
|
||||
new ItemStack(itemKeystone),
|
||||
@@ -2102,11 +2102,11 @@ public class ThaumicHorizons {
|
||||
new ItemStack(Items.ender_eye),
|
||||
new ItemStack[] { new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
new ItemStack(ConfigItems.itemResource, 1, 3),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.Glass, 1L),
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.lens, 1),
|
||||
new ItemStack(ConfigItems.itemResource, 1, 3),
|
||||
new ItemStack(ConfigItems.itemShard, 1, 6),
|
||||
new ItemStack(ConfigItems.itemResource, 1, 3),
|
||||
GTOreDictUnificator.get(OrePrefixes.lens, Materials.Glass, 1L),
|
||||
MaterialLibAPI.getStack(Materials.Glass, Shapes.lens, 1),
|
||||
new ItemStack(ConfigItems.itemResource, 1, 3) });
|
||||
recipeSlot = ThaumcraftApi.addInfusionCraftingRecipe(
|
||||
"planarKeystone",
|
||||
@@ -2115,18 +2115,18 @@ public class ThaumicHorizons {
|
||||
(new AspectList()).add(Aspect.VOID, 48).add(Aspect.TRAVEL, 64).add(Aspect.AIR, 64)
|
||||
.add(Aspect.MECHANISM, 32).add(Aspect.ELDRITCH, 64).add(Aspect.MAGIC, 16),
|
||||
new ItemStack(itemPlanarConduit),
|
||||
new ItemStack[] { GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Void, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Enderium, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Void, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.InfusedGold, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Void, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.InfusedGold, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Void, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.plateDense, Materials.Enderium, 1L),
|
||||
GTOreDictUnificator.get(OrePrefixes.screw, Materials.Titanium, 1L) });
|
||||
new ItemStack[] { MaterialLibAPI.getStack(Materials.Void, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Titanium, Shapes.screw, 1),
|
||||
MaterialLibAPI.getStack(Materials.Enderium, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Void, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedGold, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Titanium, Shapes.screw, 1),
|
||||
MaterialLibAPI.getStack(Materials.Void, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Titanium, Shapes.screw, 1),
|
||||
MaterialLibAPI.getStack(Materials.InfusedGold, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Void, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Enderium, Shapes.plateDense, 1),
|
||||
MaterialLibAPI.getStack(Materials.Titanium, Shapes.screw, 1) });
|
||||
} else {
|
||||
recipeKeystone = ThaumcraftApi.addInfusionCraftingRecipe(
|
||||
"pocketPlane",
|
||||
|
||||
+21
-18
@@ -401,7 +401,27 @@ public class ItemFocusLiquefaction extends ItemFocusBasic {
|
||||
final int meltable = this.isMeltableBlock(bi, md);
|
||||
final boolean flammable = bi.isFlammable(p.worldObj, x, y, z, ForgeDirection.UNKNOWN);
|
||||
ItemStack result = FurnaceRecipes.smelting().getSmeltingResult(new ItemStack(bi, 1, md));
|
||||
if (result != null && wand.consumeAllVis(stack, p, this.getVisCost(stack), true, true)) {
|
||||
// Meltable blocks (e.g. stone) take priority over any furnace smelting recipe they may have,
|
||||
// otherwise mods that add a smelting recipe for stone (such as Et Futurum Requiem's smooth
|
||||
// stone) would prevent the stone -> lava transmutation.
|
||||
if (meltable > 0 && wand.consumeAllVis(stack, p, this.getVisCost(stack), true, true)) {
|
||||
if (meltable == 1) {
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
} else if (meltable == 2) {
|
||||
if (p.worldObj.provider.dimensionId != -1) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.water, 0, 3);
|
||||
} else {
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
}
|
||||
} else if (meltable == 3) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.dirt, 0, 3);
|
||||
} else if (meltable == 4) {
|
||||
Blocks.tnt.onBlockDestroyedByPlayer(p.worldObj, x, y, z, 1);
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
} else if (meltable == 6) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.lava, 0, 3);
|
||||
}
|
||||
} else if (result != null && wand.consumeAllVis(stack, p, this.getVisCost(stack), true, true)) {
|
||||
if (this.getUpgradeLevel(wand.getFocusItem(stack), ItemFocusLiquefaction.purity) > 0
|
||||
&& Utils.findSpecialMiningResult(new ItemStack(bi, 1, md), 9999.0f, p.worldObj.rand) != null) {
|
||||
final ItemStack pure = Utils
|
||||
@@ -433,23 +453,6 @@ public class ItemFocusLiquefaction extends ItemFocusBasic {
|
||||
theItem.setEntityItemStack(result.copy());
|
||||
p.worldObj.spawnEntityInWorld(theItem);
|
||||
}
|
||||
} else if (meltable > 0 && wand.consumeAllVis(stack, p, this.getVisCost(stack), true, true)) {
|
||||
if (meltable == 1) {
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
} else if (meltable == 2) {
|
||||
if (p.worldObj.provider.dimensionId != -1) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.water, 0, 3);
|
||||
} else {
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
}
|
||||
} else if (meltable == 3) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.dirt, 0, 3);
|
||||
} else if (meltable == 4) {
|
||||
Blocks.tnt.onBlockDestroyedByPlayer(p.worldObj, x, y, z, 1);
|
||||
p.worldObj.setBlockToAir(x, y, z);
|
||||
} else if (meltable == 6) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.lava, 0, 3);
|
||||
}
|
||||
} else if (flammable && wand.consumeAllVis(stack, p, this.getVisCost(stack), true, true)) {
|
||||
p.worldObj.setBlock(x, y, z, Blocks.fire);
|
||||
}
|
||||
|
||||
@@ -68,6 +68,11 @@ public class ItemSyringeEmpty extends Item {
|
||||
final NBTTagCompound critterTag = new NBTTagCompound();
|
||||
critter.writeToNBT(critterTag);
|
||||
critterTag.setString("id", EntityList.getEntityString(ent));
|
||||
// Strip inventory-related tags - a blood sample should only carry genetic data
|
||||
critterTag.removeTag("Items");
|
||||
critterTag.removeTag("ArmorItem");
|
||||
critterTag.removeTag("SaddleItem");
|
||||
critterTag.removeTag("ChestedHorse");
|
||||
bloodSample.stackTagCompound.setString("critterName", ent.getCommandSenderName());
|
||||
bloodSample.stackTagCompound.setTag("critter", critterTag);
|
||||
if (p.inventory.addItemStackToInventory(bloodSample)) {
|
||||
|
||||
@@ -339,6 +339,7 @@ public class EventHandlerEntity {
|
||||
}
|
||||
}
|
||||
if (prop.hasPlayerInfusion(6) && event.entity.ticksExisted % 200 == 0
|
||||
&& player.getFoodStats().needFood()
|
||||
&& player.worldObj.isDaytime()
|
||||
&& player.worldObj.canBlockSeeTheSky(
|
||||
MathHelper.floor_double(player.posX),
|
||||
|
||||
Reference in new issue
Block a user