mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
🅱️alls
This commit is contained in:
parent
345fe2ef06
commit
9085dc5f0c
@ -13,6 +13,7 @@ Things you should also avoid include:
|
|||||||
* duplicate util functions (just use what we have, man)
|
* duplicate util functions (just use what we have, man)
|
||||||
* unused or half finished util functions (for obvious reasons)
|
* unused or half finished util functions (for obvious reasons)
|
||||||
* half finished or obviously broken features (à la "bob will fix it, i'm sure of it", please don't do that)
|
* half finished or obviously broken features (à la "bob will fix it, i'm sure of it", please don't do that)
|
||||||
|
* updating the changelog (you're guaranteed to cause a merge conflict with that)
|
||||||
|
|
||||||
## Test your code
|
## Test your code
|
||||||
|
|
||||||
|
|||||||
48
changelog
48
changelog
@ -1,47 +1,7 @@
|
|||||||
## Added
|
|
||||||
* Sandbags
|
|
||||||
* Connect to other sandbags or solid blocks
|
|
||||||
* Pretty
|
|
||||||
* Wooden barrier
|
|
||||||
* Pretty
|
|
||||||
* Automatically walls off connected solid blocks in addition to the direction it was placed in
|
|
||||||
* Some other wooden blocks like a roof, ceiling and scaffold
|
|
||||||
* Flow control pump
|
|
||||||
* The fluid equivalent to a diode
|
|
||||||
* Supports up to 10,000mB/t
|
|
||||||
* Unlike the diode, it is configured via GUI
|
|
||||||
* Can be shut off with redstone like a fluid valve
|
|
||||||
* Charge thrower
|
|
||||||
* A new weapon/tool
|
|
||||||
* Can fire two tiers of demolition charges or a grappling hook
|
|
||||||
* The grappling hook's line can be controlled via left and right mouse buttons
|
|
||||||
* Anti-materiel rifle
|
|
||||||
* Fires 12.7mm of fun
|
|
||||||
* x5 magnification scope
|
|
||||||
|
|
||||||
## Changed
|
## Changed
|
||||||
* Increased bayonet damage from 5 to 7.5 hearts
|
* All compound plates can now also be made in the assembler
|
||||||
* Two numeric redstone over radio signals sent over the same channel will now be added together instead of one signal replacing the other
|
|
||||||
* This means that reading the fill state of multiple batteries over the same channel should result the combined fill state of all batteries
|
|
||||||
* Halved base spread of the .22 SMG
|
|
||||||
* Certain secret guns now have a proper way of being obtained
|
|
||||||
* Demolition mini nukes now create fire again
|
|
||||||
* New server configs
|
|
||||||
* `CRATE_OPEN_HELD` can toggle whether crates can be opened when held
|
|
||||||
* `CRATE_KEEP_CONTENTS` can toggle whether crates keep their contents when broken
|
|
||||||
* `ITEM_HAZARD_DROP_TICKRATE` can change the time between ticks for dropped item hazard checks (gunpowder, lithium), default is 2, lowest is 1
|
|
||||||
* Duds now have multiple variants
|
|
||||||
* Dismantling different variants yields different drops
|
|
||||||
* Magnetic extraction can no longer be performed
|
|
||||||
* `isItemBlacklisted` on the item hazard checks now employs caching instead of doing a full ore dictionary lookup for every single check, this should make it marginally more performant
|
|
||||||
* The unfinished trains stuff is no longer listed in the creative tabs
|
|
||||||
|
|
||||||
## Fixed
|
## Fixed
|
||||||
* Fixed RoR controller having the wrong recipe
|
* Fixed all dud variants having the balefire explosion effect
|
||||||
* Either fixed the crate dupe/voiding issues or made them even worse
|
* Fixed demolition charges being able to explode multiple times when hitting entities
|
||||||
* Fixed skeletons and pedestals allowing blocks to be placed inside the player
|
* Condensers are no longer affected by post-impact effects, fixing an issue where HP condenser tanks would go into the negatives
|
||||||
* Fixed artillery shells not playing the explosion animation when directly impacting entities
|
|
||||||
* Fixed bauxite and malachite vein toggles being on backwards
|
|
||||||
* Fixed pneumatic tube order settings not saving
|
|
||||||
* Fixed crash caused by launching ABMs with blank target designators
|
|
||||||
* Fixed particle source throwing errors when trying to save nonexistant particles
|
|
||||||
@ -83,8 +83,8 @@ public class BlockCrashedBomb extends BlockEnumMulti implements ITileEntityProvi
|
|||||||
|
|
||||||
if(!world.isRemote) {
|
if(!world.isRemote) {
|
||||||
|
|
||||||
world.setBlockToAir(x, y, z);
|
|
||||||
EnumDudType type = EnumUtil.grabEnumSafely(EnumDudType.class, world.getBlockMetadata(x, y, z));
|
EnumDudType type = EnumUtil.grabEnumSafely(EnumDudType.class, world.getBlockMetadata(x, y, z));
|
||||||
|
world.setBlockToAir(x, y, z);
|
||||||
|
|
||||||
if(type == type.BALEFIRE) {
|
if(type == type.BALEFIRE) {
|
||||||
EntityBalefire bf = new EntityBalefire(world);
|
EntityBalefire bf = new EntityBalefire(world);
|
||||||
|
|||||||
@ -1075,6 +1075,31 @@ public class AssemblerRecipes extends SerializableRecipe {
|
|||||||
new ComparableStack(ModItems.motor, 4),
|
new ComparableStack(ModItems.motor, 4),
|
||||||
new ComparableStack(ModItems.circuit, 1, EnumCircuitType.BISMOID)
|
new ComparableStack(ModItems.circuit, 1, EnumCircuitType.BISMOID)
|
||||||
}, 100);
|
}, 100);
|
||||||
|
|
||||||
|
|
||||||
|
/// PLATES ///
|
||||||
|
makeRecipe(new ComparableStack(ModItems.plate_desh, 4), new AStack[] {
|
||||||
|
new OreDictStack(DESH.ingot(), 4),
|
||||||
|
new OreDictStack(ANY_PLASTIC.dust(), 2),
|
||||||
|
new OreDictStack(DURA.ingot(), 1),
|
||||||
|
}, 200);
|
||||||
|
makeRecipe(new ComparableStack(ModItems.plate_bismuth, 1), new AStack[] {
|
||||||
|
new ComparableStack(ModItems.nugget_bismuth, 2),
|
||||||
|
new OreDictStack(U238.billet(), 2),
|
||||||
|
new OreDictStack(NB.dust(), 1),
|
||||||
|
}, 200);
|
||||||
|
makeRecipe(new ComparableStack(ModItems.plate_euphemium, 1), new AStack[] {
|
||||||
|
new OreDictStack(EUPH.ingot(), 4),
|
||||||
|
new OreDictStack(AT.dust(), 3),
|
||||||
|
new OreDictStack(BI.dust(), 1),
|
||||||
|
new OreDictStack(VOLCANIC.gem(), 1),
|
||||||
|
new ComparableStack(ModItems.ingot_osmiridium),
|
||||||
|
}, 600);
|
||||||
|
makeRecipe(new ComparableStack(ModItems.plate_dineutronium, 4), new AStack[] {
|
||||||
|
new OreDictStack(DNT.ingot(), 4),
|
||||||
|
new ComparableStack(ModItems.powder_spark_mix, 2),
|
||||||
|
new OreDictStack(DESH.ingot(), 1),
|
||||||
|
}, 600);
|
||||||
|
|
||||||
makeRecipe(new ComparableStack(DictFrame.fromOne(ModBlocks.block_cap, EnumCapBlock.NUKA)), new AStack[] { new ComparableStack(ModItems.cap_nuka, 128) }, 10);
|
makeRecipe(new ComparableStack(DictFrame.fromOne(ModBlocks.block_cap, EnumCapBlock.NUKA)), new AStack[] { new ComparableStack(ModItems.cap_nuka, 128) }, 10);
|
||||||
makeRecipe(new ComparableStack(DictFrame.fromOne(ModBlocks.block_cap, EnumCapBlock.QUANTUM)), new AStack[] { new ComparableStack(ModItems.cap_quantum, 128) }, 10);
|
makeRecipe(new ComparableStack(DictFrame.fromOne(ModBlocks.block_cap, EnumCapBlock.QUANTUM)), new AStack[] { new ComparableStack(ModItems.cap_quantum, 128) }, 10);
|
||||||
@ -1239,6 +1264,7 @@ public class AssemblerRecipes extends SerializableRecipe {
|
|||||||
new OreDictStack(DURA.bolt(), 16),
|
new OreDictStack(DURA.bolt(), 16),
|
||||||
new ComparableStack(ModItems.motor, 2)
|
new ComparableStack(ModItems.motor, 2)
|
||||||
}, 200);
|
}, 200);
|
||||||
|
|
||||||
makeRecipe(new ComparableStack(ModBlocks.large_vehicle_door, 1), new AStack[]{new OreDictStack(STEEL.plateCast(), 16), new ComparableStack(ModItems.plate_polymer, 4), new ComparableStack(ModItems.motor, 4), new OreDictStack(DURA.bolt(), 16), new OreDictStack("dyeGreen", 4)}, 400);
|
makeRecipe(new ComparableStack(ModBlocks.large_vehicle_door, 1), new AStack[]{new OreDictStack(STEEL.plateCast(), 16), new ComparableStack(ModItems.plate_polymer, 4), new ComparableStack(ModItems.motor, 4), new OreDictStack(DURA.bolt(), 16), new OreDictStack("dyeGreen", 4)}, 400);
|
||||||
makeRecipe(new ComparableStack(ModBlocks.water_door, 1), new AStack[]{new OreDictStack(STEEL.plate(), 16), new OreDictStack(DURA.bolt(), 4), new OreDictStack("dyeRed", 1)}, 200);
|
makeRecipe(new ComparableStack(ModBlocks.water_door, 1), new AStack[]{new OreDictStack(STEEL.plate(), 16), new OreDictStack(DURA.bolt(), 4), new OreDictStack("dyeRed", 1)}, 200);
|
||||||
makeRecipe(new ComparableStack(ModBlocks.qe_containment, 1), new AStack[]{new OreDictStack(STEEL.plateCast(), 4), new OreDictStack(ALLOY.plate(), 4), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.motor, 2), new OreDictStack(DURA.bolt(), 32), new OreDictStack("dyeBlack", 4)}, 400);
|
makeRecipe(new ComparableStack(ModBlocks.qe_containment, 1), new AStack[]{new OreDictStack(STEEL.plateCast(), 4), new OreDictStack(ALLOY.plate(), 4), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.motor, 2), new OreDictStack(DURA.bolt(), 32), new OreDictStack("dyeBlack", 4)}, 400);
|
||||||
|
|||||||
@ -71,6 +71,7 @@ public class XFactoryTool {
|
|||||||
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
||||||
vnt.setSFX(new ExplosionEffectWeapon(10, 2.5F, 1F));
|
vnt.setSFX(new ExplosionEffectWeapon(10, 2.5F, 1F));
|
||||||
vnt.explode();
|
vnt.explode();
|
||||||
|
bullet.setDead();
|
||||||
};
|
};
|
||||||
|
|
||||||
public static BiConsumer<EntityBulletBaseMK4, MovingObjectPosition> LAMBDA_MORTAR_CHARGE = (bullet, mop) -> {
|
public static BiConsumer<EntityBulletBaseMK4, MovingObjectPosition> LAMBDA_MORTAR_CHARGE = (bullet, mop) -> {
|
||||||
@ -82,6 +83,7 @@ public class XFactoryTool {
|
|||||||
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
vnt.setPlayerProcessor(new PlayerProcessorStandard());
|
||||||
ExplosionCreator.composeEffectSmall(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord);
|
ExplosionCreator.composeEffectSmall(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord + 0.5, mop.hitVec.zCoord);
|
||||||
vnt.explode();
|
vnt.explode();
|
||||||
|
bullet.setDead();
|
||||||
};
|
};
|
||||||
|
|
||||||
public static void init() {
|
public static void init() {
|
||||||
|
|||||||
@ -6,7 +6,6 @@ import com.google.gson.JsonObject;
|
|||||||
import com.google.gson.stream.JsonWriter;
|
import com.google.gson.stream.JsonWriter;
|
||||||
import com.hbm.inventory.fluid.Fluids;
|
import com.hbm.inventory.fluid.Fluids;
|
||||||
import com.hbm.inventory.fluid.tank.FluidTank;
|
import com.hbm.inventory.fluid.tank.FluidTank;
|
||||||
import com.hbm.saveddata.TomSaveData;
|
|
||||||
import com.hbm.tileentity.IBufPacketReceiver;
|
import com.hbm.tileentity.IBufPacketReceiver;
|
||||||
import com.hbm.tileentity.IFluidCopiable;
|
import com.hbm.tileentity.IFluidCopiable;
|
||||||
import com.hbm.tileentity.IConfigurableMachine;
|
import com.hbm.tileentity.IConfigurableMachine;
|
||||||
@ -17,7 +16,6 @@ import api.hbm.fluid.IFluidStandardTransceiver;
|
|||||||
import api.hbm.tile.IInfoProviderEC;
|
import api.hbm.tile.IInfoProviderEC;
|
||||||
import io.netty.buffer.ByteBuf;
|
import io.netty.buffer.ByteBuf;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.world.EnumSkyBlock;
|
|
||||||
|
|
||||||
public class TileEntityCondenser extends TileEntityLoadedBase implements IFluidStandardTransceiver, IInfoProviderEC, IConfigurableMachine, IBufPacketReceiver, IFluidCopiable {
|
public class TileEntityCondenser extends TileEntityLoadedBase implements IFluidStandardTransceiver, IInfoProviderEC, IConfigurableMachine, IBufPacketReceiver, IFluidCopiable {
|
||||||
|
|
||||||
@ -75,15 +73,8 @@ public class TileEntityCondenser extends TileEntityLoadedBase implements IFluidS
|
|||||||
|
|
||||||
if(convert > 0)
|
if(convert > 0)
|
||||||
this.waterTimer = 20;
|
this.waterTimer = 20;
|
||||||
|
|
||||||
int light = this.worldObj.getSavedLightValue(EnumSkyBlock.Sky, this.xCoord, this.yCoord, this.zCoord);
|
tanks[1].setFill(tanks[1].getFill() + convert);
|
||||||
|
|
||||||
if(TomSaveData.forWorld(worldObj).fire > 1e-5 && light > 7) { // Make both steam and water evaporate during firestorms...
|
|
||||||
tanks[1].setFill(tanks[1].getFill() - convert);
|
|
||||||
} else {
|
|
||||||
tanks[1].setFill(tanks[1].getFill() + convert);
|
|
||||||
}
|
|
||||||
|
|
||||||
postConvert(convert);
|
postConvert(convert);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user