diff options
-rw-r--r-- | build.gradle | 9 | ||||
-rw-r--r-- | dependencies.gradle | 26 | ||||
-rw-r--r-- | src/main/java/kubatech/loaders/MobHandlerLoader.java | 35 | ||||
-rw-r--r-- | src/main/java/kubatech/tileentity/gregtech/multiblock/GT_MetaTileEntity_ExtremeExterminationChamber.java | 16 |
4 files changed, 61 insertions, 25 deletions
diff --git a/build.gradle b/build.gradle index 15ec201925..c5af340745 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,4 @@ -//version: 1690818808 +//version: 1691351470 /* DO NOT CHANGE THIS FILE! Also, you may replace this file at any time if there is an update available. @@ -69,7 +69,7 @@ plugins { id 'com.diffplug.spotless' version '6.13.0' apply false // 6.13.0 is the last jvm8 supporting version id 'com.modrinth.minotaur' version '2.+' apply false id 'com.matthewprenger.cursegradle' version '1.4.0' apply false - id 'com.gtnewhorizons.retrofuturagradle' version '1.3.21' + id 'com.gtnewhorizons.retrofuturagradle' version '1.3.24' } print("You might want to check out './gradlew :faq' if your build fails.\n") @@ -1152,7 +1152,10 @@ tasks.named("processIdeaSettings").configure { tasks.named("ideVirtualMainClasses").configure { // Make IntelliJ "Build project" build the mod jars - dependsOn("jar", "reobfJar", "spotlessCheck") + dependsOn("jar", "reobfJar") + if (!disableSpotless) { + dependsOn("spotlessCheck") + } } // workaround variable hiding in pom processing diff --git a/dependencies.gradle b/dependencies.gradle index 94cc2de249..aae4742a5b 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -35,21 +35,21 @@ */ dependencies { - api('com.github.GTNewHorizons:GT5-Unofficial:5.09.43.160:dev') + api('com.github.GTNewHorizons:GT5-Unofficial:5.09.43.171:dev') api("com.github.GTNewHorizons:EnderCore:0.2.17:dev") api("com.github.GTNewHorizons:EnderIO:2.4.24:dev") - api("com.github.GTNewHorizons:ForestryMC:4.6.13:dev") + api("com.github.GTNewHorizons:ForestryMC:4.6.14:dev") api("com.github.GTNewHorizons:ModularUI:1.1.16:dev") - api("com.github.GTNewHorizons:Mobs-Info:0.0.8-GTNH:dev") + api("com.github.GTNewHorizons:Mobs-Info:0.1.4-GTNH:dev") devOnlyNonPublishable("com.github.GTNewHorizons:Infernal-Mobs:1.7.9-GTNH:dev") //compileOnly("curse.maven:extrautilities-225561:2264384") { // transitive = false //} - compileOnly("com.github.GTNewHorizons:GTplusplus:1.9.71:dev") + compileOnly("com.github.GTNewHorizons:GTplusplus:1.9.76:dev") { transitive = false } - compileOnly("com.github.GTNewHorizons:BloodMagic:1.4.2:dev") + compileOnly("com.github.GTNewHorizons:BloodMagic:1.4.3:dev") { transitive = false } @@ -61,15 +61,15 @@ dependencies { { transitive = false } - compileOnly("com.github.GTNewHorizons:bartworks:0.7.36:dev") + compileOnly("com.github.GTNewHorizons:bartworks:0.7.38:dev") { transitive = false } - compileOnly("com.github.GTNewHorizons:NewHorizonsCoreMod:2.1.93:dev") + compileOnly("com.github.GTNewHorizons:NewHorizonsCoreMod:2.1.99:dev") { transitive = false } - compileOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.4.2-GTNH:dev") + compileOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.4.3-GTNH:dev") { transitive = false } @@ -83,18 +83,18 @@ dependencies { */ // For testing - //runtimeOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.4.2-GTNH:dev") - //runtimeOnly("com.github.GTNewHorizons:GTplusplus:1.9.71:dev") + //runtimeOnly("com.github.GTNewHorizons:BetterLoadingScreen:1.4.3-GTNH:dev") + //runtimeOnly("com.github.GTNewHorizons:GTplusplus:1.9.76:dev") //runtimeOnly("com.github.GTNewHorizons:harvestcraft:1.1.0-GTNH:dev") - //runtimeOnly("com.github.GTNewHorizons:NewHorizonsCoreMod:2.1.93:dev") + //runtimeOnly("com.github.GTNewHorizons:NewHorizonsCoreMod:2.1.99:dev") //runtimeOnly("com.github.GTNewHorizons:OpenBlocks:1.7.0-GTNH:dev") - //runtimeOnly("com.github.GTNewHorizons:bartworks:0.7.36:dev") + //runtimeOnly("com.github.GTNewHorizons:bartworks:0.7.38:dev") //runtimeOnly("com.github.GTNewHorizons:CraftTweaker:3.2.13:dev") //api("com.github.GTNewHorizons:SpecialMobs:3.4.3:dev") //api("com.github.GTNewHorizons:twilightforest:2.4.4:dev") //api("com.github.GTNewHorizons:EnderZoo:1.0.23:dev") //runtimeOnly("com.github.GTNewHorizons:Draconic-Evolution:1.1.19-GTNH:dev") //runtimeOnly("thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev") - //runtimeOnly("com.github.GTNewHorizons:BloodMagic:1.4.2:dev") + //runtimeOnly("com.github.GTNewHorizons:BloodMagic:1.4.3:dev") //api("curse.maven:witchery-69673:2234410") } diff --git a/src/main/java/kubatech/loaders/MobHandlerLoader.java b/src/main/java/kubatech/loaders/MobHandlerLoader.java index c56c397308..7089aa6f6e 100644 --- a/src/main/java/kubatech/loaders/MobHandlerLoader.java +++ b/src/main/java/kubatech/loaders/MobHandlerLoader.java @@ -46,6 +46,7 @@ import org.apache.logging.log4j.Logger; import com.dreammaster.main.MainRegistry; import com.dreammaster.modcustomdrops.CustomDrops; +import com.kuba6000.mobsinfo.api.IChanceModifier; import com.kuba6000.mobsinfo.api.MobDrop; import com.kuba6000.mobsinfo.api.MobOverride; import com.kuba6000.mobsinfo.api.MobRecipe; @@ -106,8 +107,30 @@ public class MobHandlerLoader { MTE.lEUt = mEUt; MTE.mMaxProgresstime = Math.max(MOB_SPAWN_INTERVAL, (int) ((recipe.maxEntityHealth / attackDamage) * 10d)); ArrayList<ItemStack> stacks = new ArrayList<>(this.mOutputs.size()); + this.entityCopy.setPosition( + MTE.getBaseMetaTileEntity() + .getXCoord(), + MTE.getBaseMetaTileEntity() + .getYCoord(), + MTE.getBaseMetaTileEntity() + .getZCoord()); for (MobDrop o : this.mOutputs) { int chance = o.chance; + + double dChance = (double) chance / 100d; + for (IChanceModifier chanceModifier : o.chanceModifiers) { + dChance = chanceModifier.apply( + dChance, + MTE.getBaseMetaTileEntity() + .getWorld(), + stacks, + MTE.EECPlayer, + this.entityCopy); + } + + chance = (int) (dChance * 100d); + if (chance == 0) continue; + if (o.playerOnly) { chance = (int) ((double) chance * Config.MobHandler.playerOnlyDropsModifier); if (chance < 1) chance = 1; @@ -199,13 +222,15 @@ public class MobHandlerLoader { public void onPostMobRegistration(PostMobRegistrationEvent event) { if (!event.drops.isEmpty() && event.recipe.isUsableInVial) { ArrayList<MobDrop> drops = (ArrayList<MobDrop>) event.drops.clone(); - drops.removeIf(d -> d.chance == 0); + // drops.removeIf(d -> d.chance == 0); if (!drops.isEmpty()) { recipeMap.put(event.currentMob, new MobEECRecipe(drops, event.recipe)); - event.drops.stream() - .filter(d -> d.chance == 0) - .forEach( - d -> d.additionalInfo.add(StatCollector.translateToLocal("kubatech.mobhandler.eec_disabled"))); + /* + * event.drops.stream() + * .filter(d -> d.chance == 0) + * .forEach( + * d -> d.additionalInfo.add(StatCollector.translateToLocal("kubatech.mobhandler.eec_disabled"))); + */ } } } diff --git a/src/main/java/kubatech/tileentity/gregtech/multiblock/GT_MetaTileEntity_ExtremeExterminationChamber.java b/src/main/java/kubatech/tileentity/gregtech/multiblock/GT_MetaTileEntity_ExtremeExterminationChamber.java index bea621232f..ce311dfc3a 100644 --- a/src/main/java/kubatech/tileentity/gregtech/multiblock/GT_MetaTileEntity_ExtremeExterminationChamber.java +++ b/src/main/java/kubatech/tileentity/gregtech/multiblock/GT_MetaTileEntity_ExtremeExterminationChamber.java @@ -209,7 +209,7 @@ public class GT_MetaTileEntity_ExtremeExterminationChamber private EntityRenderer entityRenderer = null; private boolean renderEntity = false; - private EECFakePlayer EECPlayer = null; + public EECFakePlayer EECPlayer = null; @Override public void saveNBTData(NBTTagCompound aNBT) { @@ -549,24 +549,27 @@ public class GT_MetaTileEntity_ExtremeExterminationChamber } if (weaponCache.isValid) attackDamage += weaponCache.attackDamage; + if (EECPlayer == null) EECPlayer = new EECFakePlayer(this); + EECPlayer.currentWeapon = lootingHolder; + this.mOutputItems = recipe.generateOutputs( rand, this, attackDamage, weaponCache.isValid ? weaponCache.looting : 0, mIsProducingInfernalDrops); + + EECPlayer.currentWeapon = null; + this.mOutputFluids = new FluidStack[] { FluidRegistry.getFluidStack("xpjuice", 120) }; int times = this.calculatePerfectOverclock(this.lEUt, this.mMaxProgresstime); - // noinspection ConstantConditions if (weaponCache.isValid && lootingHolder.isItemStackDamageable()) { - if (EECPlayer == null) EECPlayer = new EECFakePlayer(this); EECPlayer.currentWeapon = lootingHolder; Item lootingHolderItem = lootingHolder.getItem(); for (int i = 0; i < times + 1; i++) { // noinspection ConstantConditions if (!lootingHolderItem.hitEntity(lootingHolder, recipe.recipe.entity, EECPlayer)) break; if (lootingHolder.stackSize == 0) { - // noinspection ConstantConditions inputbus.setInventorySlotContents(0, null); break; } @@ -880,5 +883,10 @@ public class GT_MetaTileEntity_ExtremeExterminationChamber public ItemStack getCurrentEquippedItem() { return currentWeapon; } + + @Override + public ItemStack getHeldItem() { + return currentWeapon; + } } } |